body{width:100%;max-width:1740px;margin:0 auto;overflow-x:hidden}html,body{scroll-behavior:smooth;width:100%;overflow-x:hidden}main{margin-left:auto;margin-right:auto}:root{--ease-reveal:cubic-bezier(.16,1,.3,1)}@media (prefers-reduced-motion:reduce){html,body{scroll-behavior:auto}.reveal,.reveal[data-variant]{opacity:1;transition:none;transform:none}.bar-fill,.reveal:not(.is-visible) .bar-fill{width:var(--bar-fill);transition:none}.animate-pulse-dot,.term-cursor{animation:none}[data-slot=accordion-content],[data-state=open],[data-state=closed]{transition-duration:.01ms;animation-duration:.01ms;animation-iteration-count:1}}@layer base{a{color:inherit;text-decoration:none}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance}p{text-wrap:pretty}:target,section[id],[data-anchor]{scroll-margin-top:96px}a:focus-visible,button:focus-visible,[role=tab]:focus-visible,summary:focus-visible{outline:2px solid var(--ring);outline-offset:3px;border-radius:var(--radius-sm)}}@layer utilities{.type-hero{letter-spacing:-.042em;font-size:clamp(2.875rem,6.2vw,4.75rem);line-height:.95}.type-title{letter-spacing:-.038em;font-size:clamp(2.5rem,5.5vw,4rem);line-height:.98}.type-section{letter-spacing:-.03em;font-size:clamp(2rem,4.2vw,2.875rem);line-height:1.05}.font-display{font-family:var(--font-display)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.animate-pulse-dot{animation:2s ease-in-out infinite pulse-dot}.reveal{opacity:0;transition:opacity .62s var(--ease-reveal),transform .62s var(--ease-reveal);will-change:opacity,transform}.reveal[data-variant=up]{transform:translateY(14px)}.reveal[data-variant=left]{transform:translate(-14px)}.reveal[data-variant=right]{transform:translate(14px)}.reveal[data-variant=scale]{transform:scale(.985)}.reveal[data-variant=fade]{transform:none}.reveal.is-visible{opacity:1;will-change:auto;transform:none}.bar-fill{width:var(--bar-fill);transition:width .9s var(--ease-reveal)}.reveal:not(.is-visible) .bar-fill{width:0}@keyframes term-blink{50%{opacity:0}}.term-cursor{vertical-align:-2px;background:currentColor;width:8px;height:15px;animation:1.1s step-end infinite term-blink;display:inline-block}@keyframes landing-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes landing-marquee-reverse{0%{transform:translate(-50%)}to{transform:translate(0)}}@media (prefers-reduced-motion:no-preference){.animate-marquee{animation:45s linear infinite landing-marquee}.animate-marquee-reverse{animation:50s linear infinite landing-marquee-reverse}}:root{--background:var(--color-slate-50)}
