/* Keep the original media boxes; only the decorative cover is out of flow. */
:where(.ambient-video-host) { position: relative; }
.ambient-poster {
  display: block;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  pointer-events: none;
  opacity: 1;
  transition: opacity 180ms linear;
}
.introduction-image > .ambient-poster { aspect-ratio: 1122 / 1402; }
.gate-image > .ambient-poster { height: 100%; object-position: center bottom; }
.interior-video-media > .ambient-poster { height: 100%; }
.ambient-poster.is-video-ready { opacity: 0; }
.ambient-poster > img { width: 100%; height: 100%; object-fit: cover; }
@media (min-width: 900px) {
  .interior-video-media > .ambient-poster { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .ambient-poster { transition: none; }
}

/* A quiet, persistent action inside the full walkthrough (not the teaser). */
.tour-sound-toggle {
  position: absolute;
  z-index: 5;
  top: calc(62px + env(safe-area-inset-top, 0px));
  right: 16px;
  display: inline-flex;
  min-height: 44px;
  padding: 0 12px;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(240, 235, 222, .7);
  border-radius: 2px;
  background: rgba(27, 33, 29, .68);
  color: #f0ebde;
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  font: 600 10px/1 var(--font-mono);
  letter-spacing: .06em;
  text-transform: uppercase;
  white-space: nowrap;
  cursor: pointer;
  opacity: calc(1 - var(--film-fade, 0));
}
.tour-sound-toggle[hidden],
.interior-feature:not(.is-tour-playing) .tour-sound-toggle { display: none; }
.tour-sound-toggle svg { display: block; width: 18px; height: 18px; flex: none; }
.tour-sound-toggle .sound-off-cross { display: none; }
.tour-sound-toggle.is-muted .sound-on-waves { display: none; }
.tour-sound-toggle.is-muted .sound-off-cross { display: block; }
.tour-sound-toggle:focus-visible { outline: 2px solid #f0ebde; outline-offset: 3px; }
@media (min-width: 900px) {
  .tour-sound-toggle { top: 80px; right: 24px; }
}
