/* A scroll-led signature. Without its controller, the original hero stays readable. */
.hero-sequence{position:relative;overflow:visible;background:var(--cream)}
.hero-stage{position:relative;isolation:isolate}
.hero-sequence .hero-portrait-silence,.hero-story-noise,.hero-story-word,.hero-story-outro,.hero-story-footer,.hero-story-skip{display:none}
.hero-sequence.hero-story-ready{height:260svh}
.hero-story-ready .hero-stage{position:sticky;top:0;height:100svh;min-height:0;max-height:none;overflow:hidden}
.hero-story-ready .hero-stage:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 78% 70%,#d2ff0066,transparent 67%),#e7ebd8;opacity:var(--intro-outro,0);pointer-events:none}
.hero-story-ready .hero-visual{inset:180px 0 60px;grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);transform:translate3d(calc(var(--intro-outro,0)*23vw),calc(var(--intro-gesture,0)*-18px),0) scale(calc(1 - var(--intro-outro,0)*.15));opacity:1;transform-origin:50% 65%;z-index:3}
.hero-story-ready .hero-portrait{grid-area:1/1;min-height:0;min-width:0;width:auto;height:100%;max-width:80%;max-height:100%;object-fit:contain;object-position:50% 100%;align-self:end;transform:translate3d(calc(var(--mx)*12px),calc(var(--my)*6px),0) rotateY(calc(var(--mx)*12deg)) rotateX(calc(var(--my)*-6deg));filter:drop-shadow(0 18px 22px #282c2018)}
.hero-story-ready .hero-portrait-base{opacity:calc(1 - var(--intro-gesture,0))}
.hero-story-ready .hero-portrait-silence{display:block;opacity:var(--intro-gesture,0)}
.hero-story-ready .hero-headline{opacity:var(--intro-opening,1);transform:translateY(calc((1 - var(--intro-opening,1))*-45px));pointer-events:none}
.hero-story-ready .hero-role,.hero-story-ready .hero-index,.hero-story-ready .hero-chip,.hero-story-ready .floating-word{opacity:var(--intro-opening,1)}
.hero-story-ready .hero-index{pointer-events:auto}
.hero-story-ready .hero-bottom{display:none}
.hero-story-ready .hero-controls{opacity:1}
.hero-story-ready .hero-controls>*{opacity:var(--intro-opening,1)}
.hero-story-ready[data-intro-step="3"] .hero-controls,.hero-story-ready[data-intro-step="3"] .hero-index{pointer-events:none;visibility:hidden}
.hero-story-ready .hero-story-noise{display:block;position:absolute;inset:0;z-index:1;pointer-events:none;opacity:var(--intro-noise,1);transform:scale(calc(.86 + var(--intro-noise,1)*.14))}
.noise-label{position:absolute;font-size:clamp(11px,1.1vw,16px);font-weight:650;letter-spacing:.12em;color:#777f68}
.noise-label-one{left:var(--pad);top:35%;transform:rotate(-5deg)}
.noise-label-two{right:var(--pad);top:35%;transform:rotate(5deg)}
.noise-wave{position:absolute;display:flex;align-items:center;gap:clamp(5px,.6vw,10px);height:160px;top:43%;width:25%;justify-content:center;transform:scaleY(calc(.06 + var(--intro-noise,1)*.94));transform-origin:center}
.noise-wave-one{left:2%}.noise-wave-two{right:2%}
.noise-wave i{display:block;width:3px;height:var(--band);border-radius:3px;background:var(--olive);opacity:.15}
.noise-wave i:nth-child(3n){background:#a6bd39;opacity:.55}
.hero-story-ready .hero-story-word{display:block;position:absolute;z-index:0;top:39%;left:50%;transform:translate(-50%,-50%) scale(calc(.7 + var(--intro-gesture,0)*.3));font-family:var(--serif);font-style:italic;font-size:45vw;line-height:.9;letter-spacing:-.08em;color:#bac4a1;opacity:calc(var(--intro-gesture,0)*.28);pointer-events:none}
.hero-story-ready .hero-story-outro{display:block;position:absolute;z-index:5;left:var(--pad);top:34%;width:57%;max-width:900px;opacity:var(--intro-outro,0);transform:translate3d(0,calc((1 - var(--intro-outro,0))*50px),0);pointer-events:none}
.hero-story-outro .eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:25px}
.hero-story-outro h2{font-size:clamp(52px,6.1vw,104px);letter-spacing:-.065em;line-height:.98}
.hero-story-outro h2 em{font-size:1.13em}
.hero-story-outro>p:not(.eyebrow){font-size:14px;line-height:1.6;color:#5b6550;margin-top:25px}
.hero-story-continue{display:inline-flex;align-items:center;gap:25px;margin-top:30px;padding:14px 19px;border:1px solid #282c2040;border-radius:32px;font-size:9px;font-weight:650;background:#f4f4edaa;pointer-events:auto}
.hero-story-continue:hover{background:var(--lime)}
.hero-story-continue>span{font-size:18px}
.hero-story-ready .hero-story-skip{display:flex;align-items:center;gap:12px;position:absolute;z-index:8;right:var(--pad);top:77px;font-size:8px;letter-spacing:.06em;padding:7px 0;color:#5b6550}
.hero-story-skip span{font-size:15px}
.hero-story-ready .hero-story-footer{display:flex;flex-direction:column;gap:11px;position:absolute;left:var(--pad);bottom:65px;z-index:5;pointer-events:none;max-width:260px}
.hero-story-step{font-size:9px;font-weight:650;letter-spacing:.06em}
.hero-story-rail{display:block;width:160px;height:2px;background:#282c2025;overflow:hidden}
.hero-story-rail i{display:block;height:100%;width:100%;background:var(--olive);transform:scaleX(var(--intro-progress,0));transform-origin:left}
.hero-story-scroll{font-size:7px;letter-spacing:.07em;color:#727b63}
.hero-story-ready .hero-index{bottom:180px}
.hero-story-ready .motion-toggle{z-index:8}
/* Reserve a running story's height when motion is paused to avoid moving the page. */
.hero-story-static .hero-story-noise{display:none}
.hero-story-static .hero-visual{transform:none!important}
.hero-story-static.hero-story-ready .hero-story-word{display:none}
.hero-story-static:not(.hero-story-ready) .hero-portrait-base{display:none}
.hero-story-static:not(.hero-story-ready) .hero-portrait-silence{display:block}
.hero-story-static:not(.hero-story-ready) .hero-story-skip{display:flex;position:absolute;right:var(--pad);top:77px;font-size:8px;gap:12px;z-index:8}
@media(min-width:1700px){.hero-story-ready .hero-visual{inset:200px 0 55px}.hero-story-outro h2{font-size:clamp(90px,6vw,150px)}}
@media(max-width:1050px) and (min-width:701px){.hero-story-ready .hero-visual{inset:190px 0 75px}.hero-story-outro h2{font-size:6.7vw}.hero-story-outro .eyebrow{font-size:8px}.hero-story-ready .hero-story-outro{top:33%;width:59%}}
@media(max-width:700px){
  .hero-sequence.hero-story-ready{height:240svh}
  .hero-story-ready .hero-headline{top:103px}
  .hero-story-ready .hero-visual{inset:285px -28px 75px;transform:translate3d(calc(var(--intro-outro,0)*18vw),calc(var(--intro-outro,0)*45px),0) scale(calc(1 - var(--intro-outro,0)*.1));transform-origin:50% 70%}
  .hero-story-ready .hero-portrait{width:auto;max-width:100%;max-height:100%;height:100%;transition:transform .16s ease-out}
  .hero-story-ready .hero-controls{top:240px}
  .hero-story-ready .hero-index{bottom:145px;left:22px;width:70px;padding:8px 9px}
  .hero-story-ready .hero-index strong{font-size:36px}
  .hero-story-ready .hero-index .eyebrow,.hero-story-ready .hero-index>span:last-child{font-size:5.5px}
  .hero-story-ready .hero-story-skip,.hero-story-static:not(.hero-story-ready) .hero-story-skip{top:72px;right:22px;font-size:7px}
  .noise-label-one{top:33%;left:22px;font-size:7px}.noise-label-two{top:33%;right:22px;font-size:7px}
  .noise-wave{top:44%;height:120px;width:20%;gap:4px}.noise-wave i{width:2px;height:calc(var(--band)*.55)}
  .hero-story-ready .hero-story-word{font-size:76vw;top:45%}
  .hero-story-ready .hero-story-outro{top:135px;left:22px;right:22px;width:auto;max-width:none}
  .hero-story-outro .eyebrow{font-size:7px;margin-bottom:14px;max-width:260px}
  .hero-story-outro h2{font-size:11.4vw;line-height:1.02}
  .hero-story-outro>p:not(.eyebrow){font-size:11px;line-height:1.45;margin-top:14px}
  .hero-story-continue{font-size:7px;margin-top:16px;padding:10px 14px;gap:18px}
  .hero-story-ready .hero-story-footer{left:22px;bottom:62px;gap:8px;max-width:190px}
  .hero-story-step{font-size:7px}.hero-story-scroll{font-size:5.5px}.hero-story-rail{width:105px}
  .hero-story-ready .motion-label{display:none}.hero-story-ready .motion-toggle{right:22px;bottom:57px}
}
@media(max-height:650px) and (min-width:701px){.hero-story-ready .hero-headline{top:95px}.hero-story-ready .hero-visual{inset:150px 0 45px}.hero-story-ready .hero-story-outro{top:28%}.hero-story-outro h2{font-size:5.6vw;max-width:750px}.hero-story-outro>p:not(.eyebrow){margin-top:15px}.hero-story-continue{margin-top:16px}.hero-story-ready .hero-index{bottom:145px}.hero-story-ready .hero-story-footer{bottom:50px}}
@media(max-width:700px) and (max-height:680px){.hero-story-ready .hero-headline{top:88px}.hero-story-ready .hero-headline h1{font-size:56px}.hero-story-ready .hero-headline .eyebrow{font-size:7px}.hero-story-ready .hero-role{top:171px;font-size:7px}.hero-story-ready .hero-controls{top:210px}.hero-story-ready .hero-visual{inset:250px -25px 65px}.hero-story-ready .hero-story-outro{top:115px}.hero-story-outro h2{font-size:10.8vw}.hero-story-outro>p:not(.eyebrow){font-size:10px;margin-top:10px}.hero-story-continue{margin-top:12px;padding:9px 12px}.hero-story-ready .hero-index{bottom:130px}}
@media print{.hero-sequence.hero-story-ready{height:auto}.hero-story-ready .hero-stage{position:relative;height:760px}.hero-story-skip,.hero-story-controls,.hero-story-footer{display:none!important}}
