/* R013: Home-only progressive enhancement. No typography overrides. */
.home-scroll-scene,.home-scroll-stage{display:contents}
.hero-silhouette,.hero-people,.hero-scroll-cue{display:none!important}
.hero-word-window,.hero-word{display:inline}
@media(prefers-reduced-motion:no-preference){
 .home-motion-ready .home-scroll-scene{display:block;height:var(--hero-scene-height, calc(100svh + 95svh))}
 .home-motion-ready .home-scroll-stage{display:block;position:sticky;top:20px}
 .home-motion-ready .home-portrait{position:relative;isolation:isolate}
 .home-motion-ready .home-portrait>img:first-child{opacity:var(--photo-reveal,0)}
 .home-motion-ready .hero-silhouette,.home-motion-ready .home-portrait>.hero-people{display:block!important;position:absolute;inset:0;width:100%;height:100%;-webkit-mask-image:var(--hero-alpha-mask);mask-image:var(--hero-alpha-mask);mask-mode:alpha;-webkit-mask-size:cover;mask-size:cover;-webkit-mask-position:center 60%;mask-position:center 60%;mask-repeat:no-repeat}
 .home-motion-ready .hero-silhouette{background:var(--color-ink);opacity:var(--silhouette-opacity,1)}
 .home-motion-ready .home-portrait>.hero-people{object-fit:cover;object-position:center 60%;opacity:var(--people-reveal,0)}
 .home-motion-ready .hero-scroll-cue{display:flex!important;align-items:center;justify-content:space-between;margin-top:20px;opacity:var(--cue-opacity,1)}
 .home-motion-ready .hero-word-window{display:inline-block;overflow:clip;vertical-align:top;padding-block:.12em;margin-block:-.12em}
 .home-motion-ready .hero-word{display:inline-block;animation:hero-word-enter 1000ms cubic-bezier(.16,1,.3,1) both}
 .home-motion-ready .hero-word-window:last-child .hero-word{animation-delay:100ms}
 .home-motion-ready .home-reveal{opacity:0;transform:translateY(26px);transition:opacity 800ms ease,transform 1000ms cubic-bezier(.16,1,.3,1)}
 .home-motion-ready .home-reveal.is-revealed,.home-motion-ready .home-reveal:focus-within{opacity:1;transform:none}
 @keyframes hero-word-enter{from{transform:translateY(115%)}to{transform:translateY(0)}}
}
@media(max-width:767px){
 .home-motion-ready .home-scroll-scene{--hero-travel:65svh}
 .home-motion-ready .home-scroll-stage{top:18px}
 .home-motion-ready .hero-silhouette,.home-motion-ready .home-portrait>.hero-people{-webkit-mask-position:center bottom;mask-position:center bottom;object-position:center bottom}
}

/* R014 — Full-screen stage and delayed, persistent navigation. */
@media(prefers-reduced-motion:no-preference){
 .home-motion-ready .home-chrome{position:fixed;inset:0 0 auto;z-index:50;background:var(--color-paper);visibility:hidden;opacity:0;transform:translateY(-100%);transition:transform 450ms cubic-bezier(.16,1,.3,1),opacity 300ms ease,visibility 450ms}
 .home-motion-ready.is-nav-visible .home-chrome{visibility:visible;opacity:1;transform:none}
 .home-motion-ready .home-chrome .mobile-nav{max-height:calc(100svh - 125px);overflow:auto}
 .home-motion-ready .home-hero{width:100%;max-width:none;padding-top:0}
 .home-motion-ready .home-scroll-stage{top:0;height:100svh;min-height:460px;overflow:clip;background:var(--color-paper)}
 .home-motion-ready .home-scroll-stage h1{position:absolute;z-index:2;top:clamp(40px,7svh,90px);left:50%;transform:translateX(-50%);width:calc(100% - 100px);max-width:1460px;margin:0;opacity:var(--title-opacity,1)}
 .home-motion-ready .home-portrait{position:absolute;inset:0;margin:0}
 .home-motion-ready .home-portrait>img:first-child{width:100%;height:100%;object-fit:cover;object-position:center 55%;aspect-ratio:auto}
 .home-motion-ready .hero-silhouette,.home-motion-ready .home-portrait>.hero-people{-webkit-mask-position:center 55%;mask-position:center 55%;object-position:center 55%}
 .home-motion-ready .hero-scroll-cue{position:absolute;z-index:3;bottom:max(28px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:calc(100% - 100px);max-width:1460px;margin:0;opacity:1}
 .home-motion-ready .hero-reveal-button{display:inline-flex;align-items:center;gap:20px;min-height:44px;padding-block:12px;opacity:var(--cue-opacity,1);transition:opacity 150ms}
 .home-motion-ready .home-introduction{width:calc(100% - 100px);max-width:1460px;margin-inline:auto;padding-top:40px;scroll-margin-top:calc(var(--home-nav-height,146px) + 24px)}
 .home-motion-ready #main{scroll-margin-top:var(--home-nav-height,146px)}
}
@media(max-width:1023px) and (prefers-reduced-motion:no-preference){
 .home-motion-ready .home-scroll-stage h1,.home-motion-ready .hero-scroll-cue,.home-motion-ready .home-introduction{width:calc(100% - 56px)}
}
@media(max-width:767px) and (prefers-reduced-motion:no-preference){
 .home-motion-ready .home-scroll-stage{min-height:400px}
 .home-motion-ready .home-scroll-stage h1,.home-motion-ready .hero-scroll-cue,.home-motion-ready .home-introduction{width:calc(100% - 36px)}
 .home-motion-ready .home-portrait{top:18svh;bottom:14svh}
 .home-motion-ready .home-portrait>img:first-child,.home-motion-ready .home-portrait>.hero-people{object-fit:contain;object-position:center}
 .home-motion-ready .hero-silhouette,.home-motion-ready .home-portrait>.hero-people{-webkit-mask-size:contain;mask-size:contain;mask-position:center}
}

@media(max-width:767px) and (prefers-reduced-motion:no-preference){
 .home-motion-ready .home-portrait>img,.home-motion-ready .hero-silhouette{transform:scale(1.2)}
}


/* R015 — Centre actual lettering; allow negative-tracking glyph overhang. */
@media(prefers-reduced-motion:no-preference){
 .home-motion-ready .home-scroll-stage h1{text-align:center}
 .home-motion-ready .hero-word-window{padding-inline:.12em;margin-inline:-.12em}
 .home-motion-ready .home-chrome{transition:none}
 .home-motion-ready.is-nav-visible .home-chrome{opacity:var(--nav-reveal,1);transform:translateY(calc((1 - var(--nav-reveal,1)) * -100%))}
}
@media(max-width:767px) and (prefers-reduced-motion:no-preference){
 /* A bottom-aligned square image keeps the original photograph and mask registered.
    Controls are positioned separately below the title (R018). */
 .home-motion-ready .home-portrait{top:18svh;bottom:0;overflow:hidden}
 .home-motion-ready .home-portrait>img:first-child,.home-motion-ready .home-portrait>.hero-people{object-position:center bottom;transform-origin:center bottom}
 .home-motion-ready .hero-silhouette,.home-motion-ready .home-portrait>.hero-people{-webkit-mask-position:center bottom;mask-position:center bottom;transform-origin:center bottom}
}

/* R018 — Mobile controls under the title; the band meets the screen edge. */
@media(max-width:767px) and (prefers-reduced-motion:no-preference){
 .home-motion-ready .hero-scroll-cue{top:calc(clamp(40px,7svh,90px) + 10.384vw + 28px);bottom:auto;justify-content:center;gap:24px}
}


/* R019 — Extend only the photograph's empty upper wall behind the mobile frame.
   The original people/photo and silhouette remain proportionate and bottom aligned. */
@media(max-width:767px) and (prefers-reduced-motion:no-preference){
 .home-motion-ready .home-portrait{top:0}
 .home-motion-ready .home-portrait::before{content:"";position:absolute;inset:0;background-image:var(--hero-photo-source);background-size:auto 300%;background-position:center top;background-repeat:no-repeat;opacity:var(--photo-reveal,0)}
 .home-motion-ready .home-portrait>img:first-child{position:relative;mask-image:linear-gradient(to bottom,transparent calc(100% - 100vw),#000 calc(100% - 100vw + 70px))}
}
