/* Only the opening scene contains moving media. */
.scene-media,.scene-media img{animation:none!important;transform:none!important;will-change:auto}
/* 100svh for the viewport, plus 350svh of pinned scroll travel. */
.opening-sequence{position:relative;height:450svh;--hero-opacity:1;--residence-opacity:0;--opening-position:64% center}
.opening-sticky{position:sticky;top:0;height:100svh;overflow:hidden;isolation:isolate;background:#101617}
.opening-anchor{position:absolute;top:6svh;left:0}
.opening-media{position:absolute;inset:0;z-index:0;pointer-events:none;background:#101617}
.opening-media>img,.opening-media>video,.opening-media>canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--opening-position);filter:saturate(.62)}
.opening-media>video{opacity:0}
.opening-final{opacity:0;z-index:1}
.opening-sequence[data-frame-ready="true"] .opening-media>video{opacity:1}
.opening-sequence[data-still="villa"] .opening-final{opacity:1}
.opening-sticky>.scene{position:absolute;inset:0;z-index:1;width:100%;height:100%;min-height:0;background:transparent;isolation:auto;pointer-events:none}
.opening-sticky>.scene>.scene-media{display:none}
.opening-sticky>.scene>.scene-shade{z-index:0}
.opening-sticky .hero-content,.opening-sticky .world-content,.opening-sticky .scene-footer{z-index:1}
.opening-sticky .hero-content,.opening-sticky .world-content{position:relative}
.opening-sticky #home{opacity:var(--hero-opacity)}
.opening-sticky #residences{opacity:var(--residence-opacity)}
.opening-sticky .scene:not([inert]) .hero-content,.opening-sticky .scene:not([inert]) .world-content,.opening-sticky .scene:not([inert]) .scene-footer{pointer-events:auto}
.experience-ready .opening-sticky .hero-content,.experience-ready .opening-sticky .world-content>*{animation:none;opacity:1;transform:none;transition:none}
@media(max-width:700px){.opening-sequence{--opening-position:85% center}}
@media(max-height:650px){.opening-sticky .world-content{margin-top:45px}.opening-sticky .world h2{font-size:clamp(32px,7vh,52px)}}
