/* The opening film and the house tour share one pinned visual stage. */
#opening-video{position:absolute;top:0;right:0;width:56%;height:100%;object-fit:contain;object-position:center;background:#f1eee7;z-index:3;opacity:0;visibility:hidden;pointer-events:none}
.opening-story{position:absolute;inset:0 auto 0 0;width:44%;z-index:9;display:flex;flex-direction:column;justify-content:space-between;padding:clamp(28px,3.6vw,56px);padding-top:135px;color:#25312c;background:#f1eee7;visibility:hidden;opacity:0;pointer-events:none}
.house-tour.is-intro #opening-video,.house-tour.is-intro .opening-story{visibility:visible}
.house-tour.is-intro .opening-story{opacity:1;pointer-events:auto}
.house-tour.is-intro .tour-shade,.house-tour.is-intro .tour-location,.house-tour.is-intro .tour-tools,.house-tour.is-intro .tour-hotspots,.house-tour.is-intro .tour-copy,.house-tour.is-intro .tour-toolbar,.house-tour.is-intro .tour-route,.house-tour.is-intro .tour-footnote,.house-tour.is-intro .tour-outdoor-nav{visibility:hidden!important;pointer-events:none!important}
body:has(.house-tour.is-intro) .nav{background:#25312c;color:#fff}
.opening-kicker,.opening-controls{font-family:var(--sans);font-size:11px;line-height:1.5}
.opening-kicker{letter-spacing:.12em}
.opening-story h2{font-family:var(--serif);font-size:clamp(58px,6vw,108px);line-height:.93;letter-spacing:-.03em}
.opening-description{max-width:440px;margin-top:32px;font-size:clamp(14px,1.1vw,17px);line-height:1.7;color:#405047}
.opening-controls{display:flex;align-items:center;gap:18px}
.opening-progress-track{height:1px;flex:1;min-width:30px;background:#a6afa5}
.opening-progress-track>span{display:block;width:100%;height:2px;background:#34453a;transform:scaleX(0);transform-origin:left center}
.opening-controls button{border-bottom:1px solid currentColor;padding:8px 0;white-space:nowrap;font-size:12px;letter-spacing:.02em}
.opening-controls button:focus-visible{outline:2px solid #25312c;outline-offset:5px}
@media(max-width:800px){#opening-video{left:0;right:0;width:100%;object-fit:cover}.opening-story{inset:0;width:100%;padding:140px 22px 18px;background:transparent;color:#fff}.opening-kicker,.opening-story h2,.opening-description{display:none}.opening-controls{margin-top:auto;padding:10px 12px;background:#1b2825;color:#fff;border-radius:3px;gap:12px}.opening-controls button{font-size:11px}.opening-progress-track>span{background:#fff}}
@media(prefers-reduced-motion:reduce){.opening-progress-track>span{transform:scaleX(1)}}
