.hero{position:relative;min-height:680px;height:100svh;overflow:hidden;background:#000}
.opener{position:absolute;inset:0;overflow:hidden}.hero-night{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.hero-copy{position:absolute;left:0;right:0;top:45%;transform:translateY(-50%);text-align:center;padding:0 24px;z-index:1;opacity:1}
.hero-icon{width:88px;margin:0 auto 24px;--shift:0px}.hero-icon img{display:block;width:100%;height:auto;border-radius:23%}
html.logo-intro .hero-icon{animation:icon-up .85s cubic-bezier(.65,0,.25,1) 1.65s both}
html.logo-intro .hi-real{animation:icon-real .5s ease 1.15s both}
@keyframes icon-up{from{transform:translateY(var(--shift)) scale(1.55)}to{transform:none}}
@keyframes icon-real{from{opacity:0}to{opacity:1}}
.hero-wordmark{font:900 15px/1 Archivo,system-ui,sans-serif;font-stretch:125%;letter-spacing:.117em;color:#fff;margin:0 0 26px}
.hero-wordmark .ch{display:inline-block;animation:word-in .5s var(--ease) both}
@keyframes word-in{from{opacity:0;transform:translateY(.4em)}to{opacity:1;transform:none}}
.hero-claim{font-size:clamp(46px,7.4vw,104px);font-stretch:118%;font-weight:850;line-height:.99;letter-spacing:-.02em;color:#fff}
.hero-claim .cl{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}
html.logo-intro .hero-claim .ci{display:inline-block;animation:claim-in .7s var(--ease) both}
html.logo-intro .hero-claim .cl:first-child .ci{animation-delay:2.5s}html.logo-intro .hero-claim .cl:last-child .ci{animation-delay:2.65s}
@keyframes claim-in{from{transform:translateY(110%)}to{transform:none}}
.hero-line{max-width:570px;margin:26px auto 0;font-size:18px;line-height:1.5;color:var(--muted)}
html.logo-intro .hero-line{animation:line-in .55s var(--ease) 3s both}
.hero-access{font-size:11px;letter-spacing:.04em;color:var(--quiet);margin-top:17px}
html.logo-intro .hero-access{animation:line-in .5s var(--ease) 2s both}
@keyframes line-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
html.logo-intro .hero{--p:0}html.logo-intro .hero-copy{transform:translateY(calc(-50% - var(--p) * 20vh));opacity:calc(1 - var(--p) * 1.5)}
html.logo-intro .hero-night{transform:translateY(calc(var(--p) * 16vh)) scale(calc(1 + var(--p) * .1));transform-origin:50% 85%;opacity:calc(1 - max(0,var(--p) - .35) * 2.6)}
.hero-scroll{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);z-index:2;display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;color:var(--quiet);font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:8px 22px}
html.logo-intro .hero-scroll{opacity:0;visibility:hidden;transition:opacity .55s ease,visibility .55s}
html.logo-intro.scroll-cue-ready .hero-scroll{opacity:1;visibility:visible}
html.static-intro .hero-scroll{transition:none}
@media(prefers-reduced-motion:reduce){html.logo-intro .hero-scroll{opacity:1;visibility:visible;transition:none}}
.hero-scroll:hover{color:#fff}
.fstage{position:relative;height:calc(100svh * 4.7);background:#000}.stage-sticky{position:sticky;top:0;height:100svh;overflow:hidden}.stage-canvas{position:absolute;inset:0;width:100%;height:100%;display:block}.stage-caps{position:absolute;inset:0;pointer-events:none;max-width:1320px;margin:0 auto}.cap{position:absolute;top:50%;width:min(35%,440px);transform:translateY(-50%)}.cap.right{right:6%}.cap.left{left:6%}.cap>*{opacity:0;transform:translateY(18px);transition:opacity .35s ease,transform .6s var(--ease)}.cap>:nth-child(2){transition-delay:.04s}.cap>:nth-child(3){transition-delay:.1s}.cap.is-on>*{opacity:1;transform:none}.cap-n{font-size:11px;font-weight:750;letter-spacing:.22em;color:var(--lime);margin-bottom:16px}.cap h2{font-size:clamp(34px,4.5vw,62px)}.cap p:last-child{margin-top:18px;font-size:17px;line-height:1.5;max-width:390px;color:var(--muted)}
.fstage.no-webgl{height:auto}.fstage.no-webgl .stage-sticky{display:none}.fstage.no-webgl .stage-fallback{display:grid!important;grid-template-columns:1fr 1fr;gap:65px 35px;width:var(--page);margin:0 auto;padding:80px 0}.stage-fallback img{width:100%;height:auto;border-radius:20px;display:block}.stage-fallback figcaption{margin-top:20px;color:var(--muted);font-size:15px}.stage-fallback b{display:block;color:#fff;font-size:21px;line-height:1.2;margin-bottom:11px}
html.static-intro .hero-icon,html.static-intro .hi-real,html.static-intro .hero-wordmark .ch,html.static-intro .hero-claim .ci,html.static-intro .hero-line,html.static-intro .hero-access{animation:none!important}
@media(max-aspect-ratio:9/10){.cap,.cap.right,.cap.left{top:auto;left:22px;right:22px;bottom:max(55px,calc(env(safe-area-inset-bottom) + 30px));width:auto;transform:none;text-align:center}.cap h2{font-size:clamp(29px,8.6vw,43px)}.cap p:last-child{font-size:15px;margin:15px auto 0;max-width:330px}.cap-n{margin-bottom:13px}.fstage{height:calc(100svh * 4.5)}}
@media(max-width:600px){.hero{min-height:650px}.hero-copy{top:43%;padding:0 20px}.hero-icon{width:74px;margin-bottom:22px}.hero-wordmark{font-size:13px;margin-bottom:24px}.hero-claim{font-size:clamp(40px,11.4vw,60px)}.hero-line{font-size:16px;line-height:1.5;margin-top:23px;max-width:330px}.hero-access{font-size:10px;margin-top:14px}.hero-scroll{bottom:17px}.fstage.no-webgl .stage-fallback{grid-template-columns:1fr;gap:40px;padding:55px 0}.stage-fallback img{border-radius:16px}}
@media(max-width:350px){.hero-copy{top:44%}.hero-icon{width:64px;margin-bottom:18px}.hero-wordmark{font-size:11px;margin-bottom:20px}.hero-claim{font-size:40px}.hero-line{font-size:15px;max-width:270px}.cap p:last-child{font-size:14px;line-height:1.45}}
@media(prefers-reduced-motion:reduce){.hero-copy,.cap>*{transition:none!important}.hero-icon,.hi-real,.hero-wordmark .ch,.hero-claim .ci,.hero-line,.hero-access{animation:none!important}}

.hero-claim .cl:last-child .ci{background:linear-gradient(90deg,#c6ff3a,#e6ffb0 38%,#fff 66%,#e4deff);-webkit-background-clip:text;background-clip:text;color:transparent}
