/* Homepage desktop only; the approved Head stylesheet itself is unchanged. */
@media all {
  body.home-pilot-area {
    --mg-text: #382c22;
    --mg-paper: #fffdf9f5;
    --mg-label-color: #a78355;
    --mg-label-width: .85px;
    --mg-line-color: #a58456;
    --mg-line-width: .8px;
    --mg-booking-width: 1.3px;
    --mg-mode-width: 1.3px;
    --mg-search-width: .85px;
    --mg-serif: 'Times New Roman', Georgia, serif;
    color: var(--mg-text);
    min-height: 100vh;
    --hp-room-height: max(1212px,56.28vw);
    --hp-room-top: 0px;
    --hp-room-bottom: var(--hp-room-height);
    background-color: #f8f3eb;
    background-image: linear-gradient(to bottom,transparent calc(var(--hp-room-bottom) - 100px),#f8f3eb var(--hp-room-bottom)),var(--hp-room);
    background-size: 100% 100%,auto var(--hp-room-height);
    background-position: 0 0,right var(--hp-room-top);
    background-repeat: no-repeat;
  }
  .home-pilot-area > .site-header, .home-pilot-area > .site-footer,
  .home-pilot-area main.page > :not(.hp-pilot) { display: none; }
  .home-pilot-area main.page { max-width: none; width: 100%; padding: 0; margin: 0; min-height: 0; }
  .hp-pilot { position: relative; isolation: isolate; max-width: 1600px; margin: auto; }
  .hp-wall-art { position: absolute; display: none; z-index: -2; pointer-events: none; opacity: .4; overflow: hidden; }
  .hp-wall-art img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: 70% top; }
  .hp-wall-art-ready .hp-wall-art { display: block; }
  .large-text .hp-wall-art { display: none; }
  .hp-floor-clip { position: absolute; inset: 0; overflow: hidden; pointer-events: none; z-index: -1; }
  .hp-floor-clip:has([data-floor-reflection]) { mask-image: linear-gradient(to bottom,#000 calc(100% - 64px),transparent 100%); }
  .hp-floor { display: none; position: absolute; left: 50%; transform: translateX(-50%); overflow: visible; pointer-events: none; z-index: -1; }
  .hp-floor-ready .hp-floor { display: block; }
  .hp-map { position: relative; z-index: 1; isolation: isolate; width: calc(100% - 64px); max-width: 1120px; margin: 0 auto; }
  .hp-pilot .hd-bottom { z-index: 0; }
  .hp-figure { display: block; position: absolute; left: 50%; transform: translateX(-50%); z-index: 1; pointer-events: none; }
  .hp-figure img { display: block; width: 100%; height: auto; max-width: none; }
  .hp-connectors { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; pointer-events: none; z-index: 2; }
  .hp-connectors-rear { z-index: 0; }
  .hp-connectors path, .hp-connectors circle { fill: none; stroke: var(--mg-line-color); stroke-width: var(--mg-line-width); vector-effect: non-scaling-stroke; }
  .hp-connectors circle { fill: #fffdf9; }
  .hp-labels .mg-area { position: absolute; z-index: 3; width: 160px; min-height: 48px; transform: translate(-50%,-50%); padding: 8px 16px; white-space: nowrap; }
  .home-pilot-area form.mg-search { position: relative; display: flex; align-items: center; gap: 14px; min-height: 56px; max-width: none; margin: 10px 24px 0; padding: 4px 14px; }
  .hp-image-error { position: absolute; top: 30%; left: 35%; width: 30%; padding: 20px; text-align: center; background: #fffdf9; }
  .hp-figure-failed .hp-connectors { display: none; }
  .hp-figure-failed .hp-floor, .large-text .hp-floor { display: none; }
  .large-text .hp-map { height: auto !important; }
  .large-text .hp-figure { width: 600px !important; }
  .large-text .hp-map { aspect-ratio: auto; display: flex; flex-direction: column; gap: 24px; }
  .large-text .hp-figure { position: static; transform: none; width: 600px; max-width: 100%; margin: auto; }
  .large-text .hp-connectors { display: none; }
  .large-text .hp-labels { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .large-text .hp-labels .mg-area { position: relative; left: auto; top: auto; transform: none; width: auto; min-height: 72px; padding: 16px; }
}
@media (forced-colors:active) { .hp-floor { display: none !important; } }
@media (min-width:1024px) and (max-width:1199px) {
  .hp-labels .mg-area { width: 140px; font-size: 1.25rem; }
}
