.ah-hero{--ah-bg:#f3f0e9;--ah-ink:#151a18;--ah-muted:#5d635e;--ah-accent:#7c6a50;height:620svh;color:var(--ah-ink);background:var(--ah-bg);position:relative}.ah-stage-frame{isolation:isolate;height:100svh;min-height:620px;position:sticky;top:0;overflow:hidden}.ah-visual{z-index:0;position:absolute;inset:0}.ah-visual .ah-canvas{opacity:0;transition:opacity .9s var(--ease-out);inset:0;position:absolute!important}.ah-visual.is-ready .ah-canvas{opacity:1}.ah-poster{--poster-bg-at:66% 44%;background:radial-gradient(circle at var(--poster-bg-at), #f2f1ec 15svh, #eeede8 40svh, #e6e6e0 65svh, #ddded7 90svh, #d9dad3 115svh);position:absolute;inset:0;overflow:hidden}.ah-poster img{top:0;left:var(--poster-x,65%);width:auto;max-width:none;height:100%;position:absolute;translate:-65%;-webkit-mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000);mask-image:linear-gradient(90deg,#0000,#000 4% 96%,#0000)}.ah-visual.is-ready .ah-poster{opacity:0;transition:opacity 0s linear .9s}.ah-stage-frame:after{z-index:4;content:"";pointer-events:none;background:linear-gradient(0deg, var(--ivory), #f4f2ec00);height:16%;position:absolute;bottom:0;left:0;right:0}.ah-opening,.ah-final{z-index:5;top:50%;left:var(--edge);width:min(560px,40vw);position:absolute;translate:0 -50%}.ah-eyebrow{color:var(--ah-accent);letter-spacing:-.01em;align-items:center;gap:12px;margin:0 0 22px;font-size:17px;font-weight:600;display:flex}.ah-eyebrow span{opacity:.6;background:currentColor;width:40px;height:1px}.ah-opening h1,.ah-final-title{letter-spacing:-.048em;text-wrap:balance;margin:0;font-size:clamp(56px,6.2vw,104px);font-weight:600;line-height:1}.ah-opening h1 em,.ah-final-title em{color:var(--ah-accent);letter-spacing:-.02em;font-size:1.06em}.ah-lead{max-width:420px;color:var(--ah-muted);letter-spacing:-.016em;margin:28px 0 0;font-size:clamp(19px,1.45vw,22px);font-weight:450;line-height:1.4}.ah-final{pointer-events:auto}.ah-link{--btn-h:50px;--btn-px:26px;--btn-fs:17px;gap:10px;margin-top:34px}.ah-cue svg{fill:none;stroke:currentColor;stroke-width:1.4px;width:15px}.ah-stages{z-index:5;top:50%;left:var(--edge);width:min(430px,34vw);height:0;position:absolute}.ah-stage{width:100%;position:absolute;bottom:-120px;left:0}.ah-stage,.ah-opening,.ah-final{will-change:transform, opacity, filter}.ah-stage .ah-eyebrow{margin-bottom:16px}.ah-stage h2{letter-spacing:-.04em;margin:0 0 16px;font-size:clamp(38px,3.6vw,60px);font-weight:600;line-height:1.02}.ah-stage p:last-child{max-width:380px;color:var(--ah-muted);letter-spacing:-.015em;margin:0;font-size:clamp(18px,1.35vw,21px);line-height:1.45}.ah-cue{z-index:5;bottom:9svh;left:var(--edge);color:var(--ah-muted);align-items:center;gap:10px;margin:0;font-size:14px;font-weight:500;display:flex;position:absolute}.ah-rail{z-index:5;right:var(--edge);bottom:5.5svh;left:var(--edge);pointer-events:none;grid-template-columns:repeat(5,1fr);gap:18px;margin:0;padding:0;list-style:none;display:grid;position:absolute}.ah-rail li{color:var(--ah-ink);flex-direction:column;gap:10px;font-size:12px;font-weight:500;display:flex;position:relative}.ah-rail li span{text-wrap:balance}.ah-rail li:after{content:"";background:#151a1829;width:100%;height:1px;position:absolute;bottom:0;left:0}.ah-rail i{z-index:1;background:var(--ah-ink);transform-origin:0;height:1px;margin-top:auto;display:block;position:relative}.ah-cue~.ah-rail{bottom:calc(3.6svh + env(safe-area-inset-bottom,0px))}.ah-cue{bottom:calc(3.6svh + 44px + env(safe-area-inset-bottom,0px))}.ah-hero .ah-visual .scene-label span{translate:calc(44px - var(--out,0) * 14px) -50%;scale:calc(1 - var(--out,0) * .06);animation:none}.ah-hero .ah-visual.is-ready .scene-label span{animation:scene-label-in .7s var(--ease-out) calc(.6s + var(--i,0) * 80ms) backwards}.ah-hero .ah-visual .scene-label.is-left span{translate:calc(-44px + var(--out,0) * 14px) -50%}.ah-hero .ah-visual .scene-label span:before{scale:calc(1 - var(--out,0)) 1;transform-origin:100%}.ah-hero .ah-visual .scene-label.is-left span:before{transform-origin:0}.ah-hero .ah-visual .scene-label i{scale:calc(1 - var(--out,0) * .5)}.ah-hero .ah-visual .scene-label>*{transition:opacity .24s var(--ease-out)}.ah-hero .ah-visual .scene-label.is-covered>*{opacity:0}@media (max-width:800px),(max-aspect-ratio:9/10){.ah-hero{height:520svh}.ah-stage-frame:after{background:linear-gradient(180deg, #f3f0e900 calc(var(--ah-copy-top,55%) - 64px), #f3f0e957 calc(var(--ah-copy-top,55%) - 40px), #f3f0e9b8 calc(var(--ah-copy-top,55%) - 14px), #f3f0e9e0 calc(var(--ah-copy-top,55%) + 8px), #f3f0e9f7 calc(var(--ah-copy-top,55%) + 120px));height:auto;top:0}.ah-opening,.ah-final,.ah-stages{width:auto;inset:auto 22px calc(14svh + 20px);translate:none}.ah-stages{height:auto}.ah-stage{bottom:0}.ah-opening h1,.ah-final-title{font-size:clamp(46px,13vw,66px)}.ah-lead{margin-top:20px;font-size:18px}.ah-eyebrow{margin-bottom:20px}.ah-stage h2{font-size:clamp(34px,10vw,46px)}.ah-stage p:last-child{font-size:16px}.ah-rail{gap:8px;left:22px;right:22px}.ah-rail li{font-size:10px}.ah-cue{display:none}.ah-stage,.ah-opening,.ah-final{will-change:transform, opacity;filter:none!important}}@media (max-aspect-ratio:9/10){.ah-poster{--poster-bg-at:50% 38%}.ah-poster img{left:50%;translate:-50%;-webkit-mask-image:none;mask-image:none}}@media (min-aspect-ratio:12/25) and (max-aspect-ratio:9/10){.ah-poster img{-webkit-mask-image:linear-gradient(90deg,#0000,#000 3% 97%,#0000);mask-image:linear-gradient(90deg,#0000,#000 3% 97%,#0000)}}@media (max-width:800px){.ah-hero .ah-visual .scene-label span{translate:calc(26px - var(--out,0) * 10px) -50%}.ah-hero .ah-visual .scene-label.is-left span{translate:calc(-26px + var(--out,0) * 10px) -50%}}@media (prefers-reduced-motion:reduce){.ah-hero,.ah-hero--static{height:100svh}.ah-hero--static .ah-final{display:none}.ah-hero .ah-visual.is-ready .scene-label span{animation:none}.ah-visual .ah-canvas{transition-duration:.3s}.ah-visual.is-ready .ah-poster{transition-delay:.3s}}.ah-hero--poster{height:100svh}.ah-hero--poster .ah-stages,.ah-hero--poster .ah-rail,.ah-hero--poster .ah-cue,.ah-hero--poster .ah-final{display:none}.ah-hero--poster .ah-opening{opacity:1!important;transform:none!important}@media (max-width:360px){.ah-eyebrow{gap:8px;font-size:13px}.ah-eyebrow span{width:20px}.ah-opening h1,.ah-final-title{font-size:40px}.ah-lead{font-size:16px}}
