.section-approach{--approach-step:calc(var(--beat)/4);--approach-cycle:calc(var(--approach-step)*3)}.approach-dot__ring{opacity:0}.section-approach[data-active=true] .approach-dot__core{animation:approach-dot-core var(--approach-cycle)ease-in-out infinite;animation-delay:calc(var(--approach-step)*var(--approach-index))}.section-approach[data-active=true] .approach-dot__ring{animation:approach-dot-ring var(--approach-cycle)ease-out infinite;animation-delay:calc(var(--approach-step)*var(--approach-index))}@keyframes approach-dot-core{0%,33.34%,to{transform:scale(1)}16.67%{transform:scale(1.6)}}@keyframes approach-dot-ring{0%{opacity:.45;transform:scale(1)}33.34%,to{opacity:0;transform:scale(3)}}@media (prefers-reduced-motion:reduce){.section-approach[data-active=true] .approach-dot__core,.section-approach[data-active=true] .approach-dot__ring{animation:none}}
.section-hero{--hero-ease:cubic-bezier(.2,.7,.2,1)}.hero-content{padding-top:max(2rem,min(1rem + 5vw,6rem));padding-bottom:max(2rem,min(1rem + 5vw,6rem))}.hero-title__line{text-wrap:balance;margin-bottom:-.14em;padding-bottom:.14em;display:block;overflow:hidden}.hero-title__text{animation:hero-rise .9s var(--hero-ease)backwards;animation-delay:calc(var(--i)*.11s + .1s);display:block}.hero-title__mark{white-space:nowrap;display:inline-block;position:relative}.hero-title__mark:after{content:"";background:var(--color-signal);transform-origin:0;height:.07em;animation:.9s cubic-bezier(.6,0,.2,1) 1.2s backwards hero-draw;position:absolute;bottom:.02em;left:0;right:0}.hero-copy-in{animation:.4s ease-out backwards hero-fade-up;animation-delay:calc(1s + var(--j,0)*.1s)}.hero-sphere{translate:var(--hero-sphere-shift,12%)0;animation:.9s ease-out backwards hero-sphere-in}@keyframes hero-rise{0%{transform:translateY(108%)}}@keyframes hero-draw{0%{transform:scaleX(0)}}@keyframes hero-fade-up{0%{opacity:0;transform:translateY(12px)}}@keyframes hero-sphere-in{0%{opacity:0;transform:scale(.96)}}@media (min-width:80rem){.hero-sphere{--hero-sphere-shift:20%}}@media (max-width:47.99rem){.hero-sphere{--hero-sphere-shift:15%}}.hero-meta__arrow{animation:hero-meta-nudge var(--beat)ease-in-out infinite}@keyframes hero-meta-nudge{0%,72%,to{transform:translateY(0)}86%{transform:translateY(4px)}}.hero-meta__link:focus-visible{outline:2px solid var(--color-ink);outline-offset:4px}@media (prefers-reduced-motion:reduce){.hero-title__text,.hero-title__mark:after,.hero-copy-in,.hero-sphere,.hero-meta__arrow{animation:none}}
