/* One continuous, native-scroll handover between the opening and the showroom. */
.opening-sequence{position:relative;height:calc(var(--opening-height,950px) + var(--handover-run,70svh));isolation:isolate}
.opening-frame{position:sticky;top:var(--opening-top,0);background:var(--paper);padding-bottom:65px;transform-origin:50% 65%;transform:scale(var(--opening-scale,1));opacity:var(--opening-opacity,1);border-radius:0 0 36px 36px}
.hero-scroll-cue{display:grid;place-items:center;position:absolute;bottom:10px;left:50%;transform:translateX(-50%);width:46px;height:46px;border:1px solid #b98a692f;border-radius:50%;background:#ffffffb3;color:#a84f2c;transition:background .3s,border-color .3s;z-index:5}
.hero-scroll-cue svg{width:36px;height:36px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;animation:chapter-arrow 2.6s ease-in-out infinite}
.showroom{margin-top:calc(-1 * var(--handover-run,70svh));z-index:2;border-radius:var(--chapter-radius,38px) var(--chapter-radius,38px) 0 0;box-shadow:0 -16px 55px -35px #35271925;padding-top:23px;padding-bottom:13px}
.showroom-heading{margin-bottom:12px}.showroom-heading h2{font-size:36px}.showroom-heading>p{font-size:11px}.showroom-switcher{margin-bottom:13px}.showroom-switcher>button{padding-top:8px;padding-bottom:8px}.showroom-foot{margin-top:13px}.showroom-note{margin-top:10px}.showroom-film-toggle{bottom:9px}
.growth-scroll-cue{display:flex;align-items:center;gap:13px;background:transparent;color:#a84f2c;padding:0;margin-top:24px;min-width:70px;min-height:56px;text-align:left}.growth-scroll-cue>svg{width:37px;height:49px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.cue-track{stroke:#a98c7459}.cue-travel{animation:chapter-travel 2.6s ease-in-out infinite}.cue-chevrons{animation:chapter-chevrons 2.6s ease-in-out infinite}.cue-page{font-size:9px;letter-spacing:1.2px;color:#978473}.growth[data-act="2"] .cue-travel,.growth[data-act="2"] .cue-chevrons{animation-play-state:paused}.growth-scroll-cue:focus-visible{outline:2px solid #b4512b;outline-offset:5px;border-radius:8px}
@keyframes chapter-arrow{0%,20%,100%{transform:translateY(-2px)}55%{transform:translateY(3px)}}
@keyframes chapter-travel{0%,100%{transform:translateY(0);opacity:.45}55%{transform:translateY(7px);opacity:1}}
@keyframes chapter-chevrons{0%,100%{opacity:.25;transform:translateY(-2px)}55%{opacity:.9;transform:translateY(1px)}}
@media(hover:hover){.hero-scroll-cue:hover{background:#f8e9de;border-color:#c77b4f70}}
@media(max-width:640px){.opening-frame{padding-bottom:68px}.showroom{padding-top:35px;padding-bottom:22px}.showroom-heading{margin-bottom:20px}.showroom-heading h2{font-size:36px}.showroom-heading>p{font-size:13px}.showroom-switcher{margin-bottom:22px}.showroom-switcher>button{padding-top:12px;padding-bottom:12px}.showroom-foot{margin-top:22px}.showroom-note{margin-top:20px}.showroom-film-toggle{bottom:22px}.growth-scroll-cue{margin-top:8px;margin-bottom:4px;min-height:28px;gap:7px}.growth-scroll-cue>svg{width:23px;height:31px;transform:rotate(-90deg)}.cue-page{font-size:8px}.growth-canvas{margin-top:4px}}
@media(prefers-reduced-motion:reduce){.opening-sequence{height:auto}.opening-frame{position:relative;top:0;transform:none!important;opacity:1!important}.showroom{margin-top:0;border-radius:0}.hero-scroll-cue svg,.cue-travel,.cue-chevrons{animation:none!important}}
/* The next scene resolves in the same viewport before returning to normal scroll. */
.showroom-reveal{position:relative;z-index:2;margin-top:calc(-1 * var(--handover-run,70svh))}
.showroom{margin-top:0;scroll-margin-top:0;transform:translate3d(0,var(--chapter-y,0px),0);opacity:var(--chapter-opacity,1)}
@media(min-width:801px){.hero-scroll-cue{top:min(calc(100svh - 66px),calc(100% - 56px));bottom:auto}}
@media(prefers-reduced-motion:reduce){.showroom-reveal{margin-top:0}.showroom{transform:none!important;opacity:1!important}}

/* Natural editorial handover. No pinned/faded sections or hidden interaction layers. */
.opening-sequence{height:auto;isolation:isolate}
.opening-frame{position:relative;top:auto;transform:none;opacity:1;border-radius:0}
.showroom-reveal{margin-top:0}
.showroom{transform:none;opacity:1;border-radius:0;min-height:calc(100svh - 12px)}
