/* Scroll choreography. Every scene follows scroll position in both directions. */
@media (prefers-reduced-motion:no-preference){
.motion-ready .hero-sequence{height:215svh;position:relative;background:var(--bg)}
.motion-ready .hero{position:sticky;top:0;height:100svh;min-height:700px;max-height:none;isolation:isolate}
.motion-ready .hero h1{animation:none;opacity:var(--hero-text,1);transform:translate3d(calc(var(--hero-progress,0) * -180px),calc(var(--hero-progress,0) * -90px),0);will-change:transform,opacity}
.motion-ready .hero h1 .yellow{display:inline-block;transform:translateX(calc(var(--hero-progress,0) * 360px))}
.motion-ready .hero-art{animation:none;transform:translate3d(var(--hero-x,0px),var(--hero-y,0px),0) rotate(var(--hero-rotation,8deg)) scale(var(--hero-scale,1));opacity:var(--hero-art-opacity,1);will-change:transform,opacity;z-index:1}
.motion-ready .hero-top,.motion-ready .hero-bottom,.motion-ready .hero-index{opacity:var(--hero-meta,1)}
.motion-ready .hero .art-stamp{transform:rotate(calc(-18deg + var(--hero-progress,0) * 150deg))}
.motion-ready .ticker{position:relative;z-index:2}
.motion-ready .manifesto{height:205svh;padding:0;position:relative}
.motion-ready .manifesto-stage{position:sticky;top:0;min-height:650px;height:100svh;padding:65px var(--pad) 50px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.motion-ready .manifesto-text{margin:35px auto;font-size:clamp(45px,7vw,105px);opacity:1!important;transform:none!important;transition:none}
.motion-ready .manifesto-word{opacity:var(--word-opacity,.13);filter:blur(var(--word-blur,0px));transition:none}
.motion-ready .manifesto-bottom{transform:translateY(var(--manifesto-rise,35px));opacity:var(--manifesto-opacity,0);will-change:transform,opacity}
.motion-ready .manifesto-bottom p{opacity:1!important;transform:none!important}
.motion-ready .manifesto .asterisk{display:block;transform:rotate(var(--manifesto-spin,0deg))}
.motion-ready .work{height:270svh}
.motion-ready .work-sticky{perspective:1300px;min-height:620px}
.motion-ready .work-card{transform:translate3d(var(--card-x,0px),var(--card-y,0px),0) rotate(var(--card-rotation,0deg)) rotateY(var(--card-tilt,0deg)) scale(var(--card-scale,1));opacity:var(--card-opacity,1);transform-origin:center 85%;will-change:transform,opacity}
.motion-ready .work-heading h2{transform:translateX(var(--work-title-x,0px));will-change:transform}
.motion-ready .interlude{height:340svh;min-height:0;max-height:none;display:block;overflow:visible}
.motion-ready .interlude-stage{position:sticky;top:0;height:100svh;min-height:620px;overflow:hidden;isolation:isolate;background:#0c0e09}
.motion-ready .interlude-art{inset:auto;left:50%;top:50%;width:90vw;height:120svh;opacity:1;transform:translate(-50%,-50%) translate3d(var(--detail-x,50vw),var(--detail-y,80vh),0) rotate(var(--detail-rotation,-28deg)) scale(var(--detail-scale,.2));will-change:transform;border:1px solid #e8fb4340;box-shadow:0 0 100px #0006;z-index:1}
.motion-ready .interlude-art:after{background:linear-gradient(90deg,transparent 30%,#0c0e0966 80%),linear-gradient(0deg,#0c0e0944,transparent 30%);opacity:var(--detail-shade,0)}
.motion-ready .interlude-art img{object-fit:cover;object-position:center;transform:none}
.motion-ready .interlude-copy{position:absolute;left:55%;top:50%;bottom:auto;right:var(--pad);padding:0;z-index:3;transform:translate3d(var(--detail-copy-x,150px),-50%,0);opacity:var(--detail-copy-opacity,0);will-change:transform,opacity}
.motion-ready .interlude-copy h2{opacity:1!important;transform:none!important;font-size:clamp(42px,5.3vw,85px)}
.detail-orbit{position:absolute;width:70vmin;height:70vmin;top:50%;left:50%;border:1px solid #e8fb4330;border-radius:50%;transform:translate(-50%,-50%) rotate(var(--orbit-rotation,0deg));opacity:var(--orbit-opacity,1)}
.detail-orbit:before,.detail-orbit:after{content:'+';position:absolute;color:var(--accent);font:40px 'Courier New',monospace;left:50%;top:-22px}
.detail-orbit:after{top:auto;bottom:-22px}
.detail-marker{position:absolute;top:45px;left:var(--pad);right:var(--pad);display:flex;justify-content:space-between;z-index:4;color:var(--accent);opacity:var(--detail-label-opacity,1);font-size:9px}
.detail-marker b{font-size:20px;font-weight:400}
.vision-collage{height:85svh;min-height:620px;position:relative;margin:25px calc(var(--pad) * -1) 80px;overflow:hidden;perspective:1500px;isolation:isolate}
.collage-type{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;font-size:23vw;font-weight:700;line-height:.8;letter-spacing:-.08em;color:#e8fb4326;transform:translateY(var(--collage-type-y,0px)) scale(var(--collage-type-scale,1));will-change:transform}
.vision-print{position:absolute;width:25vw;height:64svh;max-height:670px;top:13%;left:37.5%;background:#20251a;padding:9px;border:1px solid #aeb49b50;box-shadow:0 30px 50px #0009;transform:translate3d(var(--print-x,0px),var(--print-y,0px),0) rotate(var(--print-rotation,0deg)) rotateY(var(--print-tilt,0deg)) scale(var(--print-scale,1));will-change:transform;transform-origin:50% 70%;}
.vision-print img{height:calc(100% - 30px)}
.vision-print>span{display:block;font:8px 'Courier New',monospace;color:#c4c8b3;padding:12px 3px;letter-spacing:.08em}
.print-one{z-index:1}.print-two{z-index:3}.print-three{z-index:2}
.collage-cross{position:absolute;right:9%;bottom:5%;color:var(--accent);font-size:110px;transform:rotate(var(--collage-spin,0deg));z-index:4}
.motion-ready .booking{clip-path:inset(var(--booking-inset,0%) var(--booking-inset,0%) 0 round var(--booking-radius,0px));will-change:clip-path}
.motion-ready .booking-star{transform:rotate(var(--booking-spin,0deg));width:max-content}
}
@media(max-width:650px) and (prefers-reduced-motion:no-preference){
.motion-ready .hero-sequence{height:195svh}
.motion-ready .hero{height:100svh;min-height:740px}
.motion-ready .hero-art{height:46svh;min-height:340px;top:140px;width:70vw}
.motion-ready .hero-bottom{position:absolute;left:var(--pad);right:var(--pad);bottom:90px;margin:0}
.motion-ready .hero-index{bottom:27px}
.motion-ready .manifesto{height:175svh}
.motion-ready .manifesto-stage{min-height:600px;padding:65px var(--pad) 60px}
.motion-ready .manifesto-text{font-size:10.3vw;margin:25px 0;width:100%}
.motion-ready .manifesto-bottom{grid-template-columns:40px 1fr;gap:22px}
.motion-ready .manifesto-bottom p{font-size:12px}
.motion-ready .manifesto-bottom .asterisk{font-size:45px}
.motion-ready .work{height:auto}
.motion-ready .work-sticky{min-height:0;position:relative;perspective:none}
.motion-ready .work-card{transform:translate3d(0,var(--card-y,0px),0) rotate(var(--card-rotation,0deg)) scale(var(--card-scale,1))}
.motion-ready .interlude{height:290svh}
.motion-ready .interlude-stage{min-height:600px}
.motion-ready .interlude-art{width:130vw;height:105svh}
.motion-ready .interlude-copy{left:var(--pad);right:var(--pad);top:62%}
.motion-ready .interlude-copy h2{font-size:11.5vw;text-shadow:0 3px 25px #000}
.motion-ready .interlude-copy>.eyebrow{font-size:9px}
.vision-collage{height:72svh;min-height:520px;margin-bottom:35px}
.vision-print{width:49vw;left:25.5%;height:48svh;top:17%;padding:6px}
.vision-print>span{font-size:5px;padding:10px 0;letter-spacing:0}
.collage-type{font-size:28vw}
.collage-cross{font-size:65px;right:6%;bottom:8%}
}
@media(prefers-reduced-motion:reduce){.vision-collage{display:flex;gap:15px;margin:40px 0}.vision-print{position:relative;flex:1;min-width:0}.vision-print span{font:8px 'Courier New',monospace}.collage-type,.collage-cross,.detail-orbit,.detail-marker{display:none}}
/* Keep the original document layout when motion is disabled or JavaScript is absent. */
.interlude-stage{display:contents}
.detail-orbit,.detail-marker{display:none}
@media(prefers-reduced-motion:no-preference){
.motion-ready .interlude-stage{display:block}
.motion-ready .detail-orbit,.motion-ready .detail-marker{display:flex}
.motion-ready header{position:fixed;transition:height .35s,background .35s;transform:translateZ(0)}
.motion-ready.has-scrolled header{height:76px;background:#11120ee8;backdrop-filter:blur(16px)}
.motion-ready .detail-marker{top:105px}
}
