/* Native incoming layers: 120vh, sticky at 0, increasing z-index. */
html{scroll-behavior:auto;scroll-snap-type:none;scroll-padding-top:96px}
#main{position:relative;isolation:isolate}
#main>.stack-panel{position:relative;overflow:visible;background:var(--bg);z-index:var(--panel-index);min-height:120svh}
.stack-enabled #main>.stack-panel{position:sticky;top:var(--sticky-top,0px)}
#main>.cinema-scene.stack-panel{height:120svh;min-height:max(120svh,936px);padding:0}
.cinema-scene>.scene-sticky{position:relative!important;top:auto!important;height:100svh;min-height:780px;overflow:hidden;isolation:isolate}
.hero .hero-interlude,.scene-progress-line{display:none!important}
.hero-art img{opacity:1;transform:none!important}
.hero-copy,.hero-context,.hero-bottom,.hero-eyebrow{opacity:1;transform:none}
.hero-art{top:106px!important;width:min(64svh,78vw,calc(1254px / var(--asset-dpr)))!important}
.cinema-scene:not(.hero) .scene-art .art-paper{transform:scale(var(--arrival-scale,1));transform-origin:50% 50%;will-change:transform}
.cinema-scene:not(.hero) .scene-art,.scope-scene .scene-art{width:min(90svh,86vw,calc(1254px / var(--asset-dpr)));position:absolute;left:50%;right:auto;top:48%;bottom:auto;transform:translate(-50%,-50%);margin:0}
.cinema-scene:not(.hero) .scene-sticky::after{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(0deg,var(--bg) 0%,color-mix(in srgb,var(--bg) 88%,transparent) 9%,transparent 47%)}
.cinema-scene:not(.hero) .scene-copy,.scope-scene .scene-copy{position:absolute;inset:0;left:0;top:0;width:100%;max-width:none;padding:0;z-index:3;pointer-events:none}
.cinema-scene .scene-copy>*{pointer-events:auto}
.cinema-scene .scene-copy h2{position:absolute;left:4vw;right:4vw;bottom:30px;max-width:none;text-align:center;font-size:clamp(78px,8.5vw,155px);line-height:.82;letter-spacing:-.04em;margin:0;transform:translateY(var(--arrival-title,0%));will-change:transform}
.cinema-scene .scene-copy>.eyebrow{position:absolute;top:125px;left:40px;margin:0;font-size:11px}
.cinema-scene .scene-copy>p:not(.eyebrow){position:absolute;top:165px;left:40px;max-width:290px;font-size:15px;line-height:1.8;margin:0}
.cinema-scene .scene-copy>.pill{position:absolute;right:40px;bottom:275px;margin:0;min-height:46px;font-size:12px;transform:translateY(var(--arrival-title,0%))}
.cinema-scene .scene-example{display:none}
.cinema-scene .scene-art figcaption{position:absolute;left:0;bottom:0;font-size:9px;opacity:.75;max-width:290px}
.scope-scene{padding-bottom:0!important}.approach-notes{padding:110px 0}.approach-notes .approach-steps{margin-top:0}
.stack-panel.possibilities{padding-top:105px}
.stack-panel.experience,.stack-panel.potential,.stack-panel.faq,.stack-panel.contact,.stack-panel.company{padding-top:110px}
#main>.manifesto.stack-panel{height:120svh;min-height:936px;padding:0;background:transparent}
.manifesto.stack-panel::before{content:"";position:absolute;z-index:0;inset:-100svh 0 0;background:var(--bg);opacity:var(--manifesto-veil,1);pointer-events:none}
.manifesto.stack-panel>.wrap{position:relative;z-index:1;height:100svh;min-height:780px;width:min(1120px,calc(100% - 100px));display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:70px 0;gap:24px}
.manifesto.stack-panel .eyebrow{margin:0;font-size:11px}
.manifesto.stack-panel h2{font-size:clamp(55px,4.3vw,82px);line-height:.98;margin:0;max-width:1000px}
.manifesto.stack-panel p:not(.eyebrow){font-family:Editorial,Georgia,serif;font-size:clamp(29px,2.7vw,48px);line-height:1.12;max-width:1100px;margin:0;color:var(--text)}
.manifesto.stack-panel .statements{margin:10px 0 0;font-size:27px;justify-content:center;gap:24px;color:var(--muted)}
.manifesto.stack-panel .statements span+span::before{margin-right:24px}
.word-mask{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.1em;margin-bottom:-.1em}.reveal-word{display:inline-block;will-change:transform}
.stack-enabled .site-header.header-hidden{transform:translateY(-110%)}
.site-header,.has-scrolled .site-header{transition:transform .35s ease,height .2s;background:var(--header)}
.site-header:focus-within,.site-header:has([aria-expanded=true]){transform:none!important}
.site-footer{position:relative;z-index:2;background:var(--bg)}.stack-panel:focus-within{scroll-margin-top:90px}
@media(min-width:761px) and (max-width:1100px){.cinema-scene .scene-copy>p:not(.eyebrow){left:28px;top:145px;max-width:220px;font-size:14px}.cinema-scene .scene-copy>.eyebrow{left:28px;top:112px;font-size:10px}.cinema-scene .scene-copy h2{font-size:9vw;bottom:60px}.cinema-scene .scene-copy>.pill{right:28px;bottom:260px}.cinema-scene:not(.hero) .scene-art,.scope-scene .scene-art{width:min(78svh,85vw,calc(1254px / var(--asset-dpr)));top:50%}.manifesto.stack-panel>.wrap{width:calc(100% - 90px)}}
@media(min-width:761px) and (max-width:900px){.hero-art{top:155px!important;width:min(49svh,70vw,calc(1254px / var(--asset-dpr)))!important}}
@media(max-width:760px){
 html{scroll-padding-top:88px}
 #main>.cinema-scene.stack-panel,#main>.manifesto.stack-panel{height:120svh;min-height:948px}
 .cinema-scene>.scene-sticky{height:100svh;min-height:790px;display:block!important;padding:0!important}
 .hero-art{top:139px!important;width:min(78vw,380px,calc(1254px / var(--asset-dpr)))!important}
 .cinema-scene:not(.hero) .scene-art,.scope-scene .scene-art{position:absolute;top:47%;left:50%;right:auto;bottom:auto;transform:translate(-50%,-50%);width:min(94vw,450px,calc(1254px / var(--asset-dpr)));margin:0}
 .cinema-scene .scene-copy{position:absolute!important;inset:0!important;width:100%!important;padding:0!important}
 .cinema-scene .scene-copy>.eyebrow{left:22px;right:22px;top:108px;text-align:center;font-size:9px}
 .cinema-scene .scene-copy>p:not(.eyebrow){left:25px;right:25px;top:140px;max-width:340px;margin:0 auto;text-align:center;font-size:14px;line-height:1.75}
 .cinema-scene .scene-copy h2,.scope-scene .scene-copy h2{bottom:143px;left:20px;right:20px;font-size:clamp(45px,12vw,77px);line-height:.91;text-align:center;margin:0}
 .cinema-scene .scene-copy>.pill{bottom:65px;right:auto;left:50%;transform:translate(-50%,var(--arrival-title,0%));white-space:nowrap;font-size:11px}
 .cinema-scene .scene-art figcaption{bottom:0;font-size:8px;max-width:210px}
 .manifesto.stack-panel>.wrap{height:100svh;min-height:790px;width:calc(100% - 46px);padding:70px 0;gap:22px}
 .manifesto.stack-panel .eyebrow{font-size:9px}.manifesto.stack-panel h2{font-size:clamp(42px,11.5vw,66px);line-height:1}
 .manifesto.stack-panel p:not(.eyebrow){font-size:clamp(25px,6.4vw,37px);line-height:1.18;max-width:600px}
 .manifesto.stack-panel .statements{font-size:22px;gap:9px;margin-top:3px}
 .approach-notes{padding:80px 0}.stack-panel.experience,.stack-panel.potential,.stack-panel.faq,.stack-panel.contact,.stack-panel.company,.stack-panel.possibilities{padding-top:90px}
}
@media(max-width:370px){#main>.cinema-scene.stack-panel,#main>.manifesto.stack-panel{min-height:888px}.hero>.scene-sticky,.cinema-scene>.scene-sticky,.manifesto.stack-panel>.wrap{min-height:740px}.hero-art{top:133px!important;width:77vw!important}.cinema-scene .scene-copy h2{font-size:43px}.cinema-scene .scene-copy>p:not(.eyebrow){font-size:14px;top:134px}.manifesto.stack-panel>.wrap{gap:18px}.manifesto.stack-panel h2{font-size:39px}.manifesto.stack-panel p:not(.eyebrow){font-size:25px}.manifesto.stack-panel .statements{font-size:20px}}
@media(prefers-reduced-motion:reduce){#main>.stack-panel{position:relative!important;top:auto!important;min-height:0}#main>.cinema-scene,#main>.manifesto{height:auto;min-height:0}.manifesto.stack-panel{background:var(--bg)}.manifesto.stack-panel>.wrap{height:auto;min-height:0;padding:95px 0}.manifesto.stack-panel::before{display:none}.scene-copy h2,.scene-copy>.pill,.reveal-word{transform:none!important;will-change:auto}.site-header{transform:none!important;transition:none}}
@media(max-width:760px) and (prefers-reduced-motion:reduce){.cinema-scene .scene-copy>.pill{transform:translateX(-50%)!important}}
/* Keep native 120vh chapters and visible controls when browser bars shorten the phone viewport. */
@media(max-width:760px) and (max-height:789px){
 #main>.cinema-scene.stack-panel,#main>.manifesto.stack-panel{height:120svh;min-height:120svh}
 .cinema-scene>.scene-sticky,.hero>.scene-sticky,.manifesto.stack-panel>.wrap{height:100svh;min-height:0}
 .hero-art{top:120px!important;width:min(78vw,max(120px,calc(100svh - 440px)))!important}
 .cinema-scene:not(.hero) .scene-art,.scope-scene .scene-art{top:230px;transform:translateX(-50%);width:min(90vw,calc(100svh - 370px))}
 .manifesto.stack-panel>.wrap{padding:45px 0;gap:16px}
 .manifesto.stack-panel .statements{font-size:20px;gap:5px}
}
