.opening-scroll{height:360vh;position:relative;background:var(--paper);color:var(--ink)}
.opening-stage{position:sticky;top:0;height:100svh;overflow:hidden;display:grid;place-items:center}
.opening-copy{position:absolute;z-index:3;inset:0;display:flex;flex-direction:column;justify-content:center;padding:10vh clamp(1.3rem,8vw,8rem);pointer-events:none}
.opening-copy h1{font-family:var(--serif);font-weight:400;font-size:clamp(3.7rem,8vw,8rem);line-height:.88;letter-spacing:-.045em;margin:2rem 0}
.opening-copy h1 span{display:block;will-change:opacity,transform;opacity:0}
.opening-copy h1 span:first-child{opacity:1;transform:translateY(0)}
.opening-copy h1 span+span{text-align:right;margin-top:.3em}
.opening-copy h1 em{color:#8d6e37}
.opening-note{align-self:flex-end;max-width:360px;font-size:1rem;will-change:opacity,transform;opacity:0}
.opening-film{position:absolute;z-index:2;left:50%;top:50%;width:34vw;aspect-ratio:16/9;transform:translate(-50%,-50%) scale(.78);overflow:hidden;background:#000;box-shadow:0 2rem 7rem rgba(7,10,15,.3);opacity:0;will-change:width,height,transform,opacity}
.opening-film video{width:100%;height:100%;object-fit:cover;display:block}
.film-grain{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,rgba(7,10,15,.18),transparent 45%)}
.prototype-label{position:absolute;left:1rem;bottom:.8rem;margin:0;color:rgba(255,255,255,.65);text-transform:uppercase;letter-spacing:.18em;font-size:.6rem}
.scroll-cue{position:absolute;z-index:4;bottom:2rem;margin:0;text-transform:uppercase;letter-spacing:.22em;font-size:.62rem;color:#6f675a;display:flex;align-items:center;gap:1rem}
.scroll-cue i{width:48px;height:1px;background:var(--gold)}
.brand-reveal{min-height:125svh;display:flex;flex-direction:column;justify-content:center;padding:15vh clamp(1.3rem,8vw,8rem)}
.brand-prelude{font-family:var(--serif);font-style:italic;color:var(--gold);font-size:clamp(1.4rem,2vw,2rem);margin-bottom:10vh}
.brand-reveal h2{font-family:var(--serif);font-size:clamp(4.5rem,11vw,11rem);font-weight:400;letter-spacing:-.055em;line-height:.72;margin:0}
.brand-reveal h2 span{display:block}
.brand-reveal h2 span:last-child{text-align:right;color:var(--gold);margin-top:.22em}
.brand-answer{max-width:520px;align-self:flex-end;margin-top:12vh;font-size:clamp(1rem,1.4vw,1.2rem);font-weight:300}
.evidence-scroll{height:280vh;position:relative;background:#000}.evidence-stage{position:sticky;top:0;height:100svh;overflow:hidden}.evidence-stage video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.08);will-change:transform,filter}.evidence-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,10,15,.78),rgba(7,10,15,.08) 65%),linear-gradient(0deg,rgba(7,10,15,.62),transparent 60%)}.evidence-copy{position:absolute;left:clamp(1.5rem,8vw,8rem);top:50%;transform:translateY(-35%);max-width:850px;will-change:opacity,transform}.evidence-copy h2{font-family:var(--serif);font-weight:400;font-size:clamp(4rem,8vw,8.6rem);line-height:.82;letter-spacing:-.05em;margin:1.2rem 0}.evidence-copy h2 em{color:var(--gold)}.evidence-copy p{font-size:clamp(1rem,1.4vw,1.2rem);font-weight:300}.evidence-caption{position:absolute;right:clamp(1.5rem,8vw,8rem);bottom:10vh;max-width:400px;text-align:right;font-family:var(--serif);font-style:italic;font-size:clamp(1.5rem,2.5vw,2.5rem);line-height:1.1;color:var(--paper);opacity:0;will-change:opacity,transform}.world{background:var(--paper);color:var(--ink);padding:15vh clamp(1.3rem,8vw,8rem)}.world-intro{min-height:65vh;display:flex;flex-direction:column;justify-content:center}.world-intro h2{font-family:var(--serif);font-size:clamp(3.5rem,7.5vw,7.5rem);font-weight:400;letter-spacing:-.05em;line-height:.88;margin:2rem 0}.world-intro h2 em{color:#8d6e37}.world-list{border-top:1px solid rgba(7,10,15,.25)}.world-item{display:grid;grid-template-columns:70px minmax(270px,.9fr) 1fr;gap:4vw;align-items:start;padding:3.2rem 0;border-bottom:1px solid rgba(7,10,15,.25)}.world-item>span{font-size:.68rem;letter-spacing:.18em;color:#8d6e37}.world-item h3{font-family:var(--serif);font-size:clamp(2rem,3.4vw,3.6rem);font-weight:400;line-height:.95;margin:0}.world-item>p{max-width:540px;margin:0;font-size:1rem}.world-item.experience{background:var(--ink);color:var(--paper);margin:5rem calc(clamp(1.3rem,8vw,8rem) * -1) 0;padding:clamp(3rem,8vw,8rem);grid-template-columns:70px minmax(270px,.9fr) 1fr;border-bottom:0}.experience-label{margin:0 0 1rem;text-transform:uppercase;letter-spacing:.2em;color:var(--gold);font-size:.65rem}.definition-scroll{height:330vh;position:relative;background:var(--ink);color:var(--paper)}.definition-stage{height:100svh;position:sticky;top:0;overflow:hidden;display:grid;place-items:center;padding:8vh clamp(1.3rem,8vw,8rem)}.word-build{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--serif);font-size:clamp(6rem,20vw,20rem);line-height:.72;letter-spacing:-.06em;overflow:hidden}.word-build span{position:absolute;will-change:opacity,transform}.word-story{transform:translateX(-25vw)}.word-arc{transform:translateX(25vw)}.word-resolve{font-size:.48em;color:var(--gold);opacity:0}.definition-copy{position:relative;z-index:2;max-width:980px;text-align:center;opacity:0;transform:translateY(40px);will-change:opacity,transform}.definition-copy .term{font-size:clamp(2rem,4vw,4rem)}.definition-copy .meaning{font-size:clamp(2.2rem,4.6vw,4.8rem)}.definition-copy img{width:min(360px,65vw);margin:3rem auto 0}.contact{position:relative}.contact:before{content:"";position:absolute;left:clamp(1.3rem,8vw,8rem);top:12vh;width:1px;height:12vh;background:var(--gold)}
@media (max-width:720px){.opening-scroll{height:300vh}.opening-copy{padding:11vh 1.25rem}.opening-copy h1{font-size:clamp(3.4rem,15.5vw,5.4rem);line-height:.9}.opening-copy h1 span+span{text-align:left;margin-top:.65em}.opening-note{align-self:flex-start;max-width:85%}.opening-film{width:78vw}.prototype-label{font-size:.5rem}.brand-reveal{min-height:115svh;padding:14vh 1.25rem}.brand-reveal h2{font-size:clamp(4rem,20vw,6.3rem);line-height:.77}.brand-reveal h2 span:last-child{text-align:left}.brand-answer{align-self:flex-start;margin-top:10vh}.evidence-scroll{height:230vh}.evidence-stage video{object-position:56% center}.evidence-shade{background:linear-gradient(0deg,rgba(7,10,15,.88),rgba(7,10,15,.08) 75%)}.evidence-copy{left:1.25rem;right:1.25rem;top:auto;bottom:12vh;transform:none}.evidence-copy h2{font-size:clamp(3.6rem,16vw,5.5rem)}.evidence-caption{left:1.25rem;right:1.25rem;bottom:8vh;text-align:left}.world{padding:12vh 1.25rem}.world-intro{min-height:70vh}.world-item{grid-template-columns:40px 1fr;gap:1.5rem;padding:2.5rem 0}.world-item>p{grid-column:2}.world-item.experience{margin:4rem -1.25rem 0;padding:4rem 1.25rem;grid-template-columns:40px 1fr}.definition-scroll{height:280vh}.definition-stage{padding:8vh 1.25rem}.word-build{font-size:clamp(6rem,32vw,10rem)}.word-resolve{font-size:.38em}.definition-copy{text-align:left}.definition-copy img{margin-left:0}}
@media (prefers-reduced-motion:reduce){.opening-scroll{height:auto;min-height:100svh}.opening-stage{position:relative;min-height:100svh}.opening-film{position:relative;left:auto;top:auto;width:min(86vw,860px);opacity:1;transform:none}.opening-copy{display:none}.scroll-cue{display:none}.evidence-scroll,.definition-scroll{height:auto;min-height:100svh}.evidence-stage,.definition-stage{position:relative;min-height:100svh}.evidence-copy{opacity:1!important}.evidence-caption{opacity:1}.word-build{display:none}.definition-copy{opacity:1;transform:none}}

/* Scroll-directed proof and work chapters */
.pivot{height:240vh;position:relative;padding:0 clamp(1.3rem,7vw,7rem)}
.pivot-stage{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.pivot-word,.pivot-rule,.pivot-foot,.pivot-stage>.section-kicker{will-change:opacity,transform}
.world{padding:0 clamp(1.3rem,8vw,8rem) 15vh}
.world-intro{height:220vh;position:relative;min-height:0;display:block}
.world-intro-stage{position:sticky;top:0;height:100svh;display:flex;flex-direction:column;justify-content:center;overflow:hidden}
.world-intro h2 span{display:block;will-change:opacity,transform}
.world-intro h2 span:last-child{text-align:right;margin-top:.12em}
.documentary-proof{display:grid;grid-template-columns:1.25fr .72fr 1fr;gap:clamp(1.2rem,3vw,3rem);align-items:center;padding:4vh 0 16vh}
.documentary-frame{margin:0}
.documentary-frame img{width:100%;height:clamp(340px,48vw,680px);object-fit:cover;filter:saturate(.78) contrast(1.03)}
.documentary-interview{transform:translateY(9vh)}
.documentary-frame figcaption,.experience-shot figcaption{text-transform:uppercase;letter-spacing:.18em;font-size:.62rem;margin-top:.8rem;color:#756b59}
.documentary-note p:last-child{font-family:var(--serif);font-size:clamp(1.5rem,2.2vw,2.3rem);line-height:1.12}
.experience-gallery{grid-column:1/-1;display:grid;grid-template-columns:1.25fr .9fr .9fr;gap:clamp(1rem,2vw,2rem);margin-top:clamp(3rem,7vw,7rem);align-items:end}
.experience-shot{margin:0}
.experience-shot img{width:100%;height:clamp(250px,34vw,520px);object-fit:cover}
.experience-phone img,.experience-interface img{height:clamp(220px,28vw,420px)}
.experience-shot figcaption{color:var(--smoke)}

@media (max-width:720px){
  .pivot{height:210vh;padding:0 1.25rem}
  .world{padding:0 1.25rem 12vh}
  .world-intro{height:190vh;min-height:0}
  .world-intro h2 span:last-child{text-align:left;margin-top:.4em}
  .documentary-proof{grid-template-columns:1fr 1fr;padding:0 0 12vh}
  .documentary-note{grid-column:1/-1;grid-row:1}
  .documentary-frame img{height:44vh}
  .documentary-interview{transform:translateY(5vh)}
  .experience-gallery{grid-template-columns:1fr 1fr}
  .experience-people{grid-column:1/-1}
  .experience-shot img,.experience-phone img,.experience-interface img{height:34vh}
}

@media (prefers-reduced-motion:reduce){
  .pivot,.world-intro{height:auto;min-height:100svh}
  .pivot-stage,.world-intro-stage{position:relative;min-height:100svh}
  .pivot-word,.pivot-rule,.pivot-foot,.pivot-stage>.section-kicker,.world-intro h2 span,.world-intro-stage>.section-kicker{opacity:1!important;transform:none!important}
}
