@font-face{font-family:Hanken Grotesk;src:url(/fonts/hanken-latin.woff2)format("woff2");font-weight:300 700;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Hanken Grotesk;src:url(/fonts/hanken-latin-ext.woff2)format("woff2");font-weight:300 700;font-display:swap;unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono;src:url(/fonts/jbmono-latin.woff2)format("woff2");font-weight:400 600;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:dark;--bg:#050507;--s1:#0a0a0d;--s2:#111115;--s3:#1b1b20;--line:#ffffff12;--line-2:#ffffff1f;--text:#fff;--text-2:#a1a1aa;--text-3:#6f6f78;--cta:#e6e6e6;--cta-hover:#fff;--cta-text:#1c1c1f;--brand:#6e8bff;--brand-2:#8aa1ff;--sky:#56c2ff;--ok:#59d499;--code-bg:#08080b;--sans:"Hanken Grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--r-btn:8px;--r-nav:12px;--r-card:16px;--r-lg:20px;--key-face:linear-gradient(180deg, #1d1d22, #121216);--key:#0006 0 1.5px .5px 2.5px, #000 0 0 .5px 1px, #00000040 0 2px 1px 1px inset, #fff3 0 1px 1px 1px inset;--key-down:#0006 0 .5px 0 1px, #000 0 0 .5px 1px, #00000073 0 2px 3px 1px inset, #ffffff1a 0 1px 1px 1px inset;--ring:#ffffff0d 0 1px 0 0 inset, #ffffff1f 0 0 0 1px, #0003 0 -1px 0 0 inset;--float:0 30px 80px #0000008c, 0 12px 24px #00000059;--max:1200px;--gutter:24px;--ease-out:cubic-bezier(.23, 1, .32, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:96px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--text);font:400 16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;overflow-x:hidden}img,svg,canvas,picture{max-width:100%;display:block}a{color:inherit;text-decoration:none}code,pre,kbd{font-family:var(--mono)}::selection{background:#6e8bff59}:focus-visible{outline:2px solid var(--brand);outline-offset:3px;border-radius:4px}.wrap{max-width:var(--max);padding:0 var(--gutter);margin:0 auto}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}h1,h2,h3{text-wrap:balance;margin:0;font-weight:600}h2{letter-spacing:-.035em;font-size:clamp(34px,4.4vw,52px);line-height:1.04}h3{letter-spacing:-.015em;font-size:18px;line-height:1.35}.eyebrow{font:500 12px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.lede{color:var(--text-2);text-wrap:pretty;font-size:18px;line-height:1.55}.section{padding:120px 0 0;position:relative}.hero+.section{padding-top:72px}.section-head{text-align:center;max-width:640px;margin:0 auto 56px}.section-head .lede{max-width:34em;margin:18px auto 0}.btn{border-radius:var(--r-btn);height:40px;font:500 15px/1 var(--sans);letter-spacing:-.005em;white-space:nowrap;cursor:pointer;border:0;justify-content:center;align-items:center;gap:8px;padding:0 16px;transition:background-color .2s,color .2s,box-shadow .2s,transform .2s;display:inline-flex}.btn svg{flex:none;width:16px;height:16px}.btn-primary{background:var(--cta);color:var(--cta-text);box-shadow:inset 0 1px #fff9,0 4px 14px #00000059}.btn-primary:hover{background:var(--cta-hover)}.btn-ghost{color:var(--text);box-shadow:var(--ring);background:#ffffff0a}.btn-ghost:hover{background:#ffffff14}.btn-sm{height:32px;padding:0 12px;font-size:14px}.key{background:var(--key-face);height:34px;box-shadow:var(--key);font:500 13px/1 var(--mono);letter-spacing:.02em;color:var(--text-2);white-space:nowrap;border-radius:9px;justify-content:center;align-items:center;padding:0 12px;display:inline-flex}.key.lit{color:var(--text);box-shadow:var(--key), 0 0 0 1px #6e8bff8c, 0 0 18px #6e8bff59}.window{-webkit-backdrop-filter:blur(36px)saturate(140%);box-shadow:var(--ring), var(--float);background:#111115b8;border-radius:14px;overflow:hidden}.window-bar{border-bottom:1px solid var(--line);align-items:center;gap:12px;height:38px;padding:0 14px;display:flex}.window-bar .dots{gap:7px;display:flex}.window-bar .dots i{background:#2a2a30;border-radius:50%;width:11px;height:11px;box-shadow:inset 0 0 0 .5px #ffffff14}.window-bar .title{font:500 12px/1 var(--mono);color:var(--text-3);letter-spacing:.02em}@property --spot{syntax:"<number>";inherits:true;initial-value:0}.card{--mx:50%;--my:-40%;isolation:isolate;border-radius:var(--r-card);background:radial-gradient(440px circle at var(--mx) var(--my), rgb(110 139 255/calc(.14 * var(--spot))), transparent 70%) padding-box, linear-gradient(180deg, #0e0f13, #09090c) padding-box, radial-gradient(300px circle at var(--mx) var(--my), rgb(170 186 255/var(--spot)), rgb(110 139 255/calc(.35 * var(--spot))) 40%, transparent 75%) border-box, linear-gradient(180deg, #ffffff21, #ffffff0a 55%, #ffffff0f) border-box;transition:--spot .4s ease, transform .45s var(--ease-out), box-shadow .45s ease, opacity .7s var(--ease-out);border:1px solid #0000;display:block;position:relative;box-shadow:inset 0 1px #ffffff0a,0 4px 30px #00000080}.card:hover{--spot:1}a.card:hover{transform:translateY(-3px);box-shadow:inset 0 1px #ffffff0d,0 22px 50px -18px #000000d9,0 4px 30px #00000080}.panel{background:radial-gradient(70% 90% at 50% 115%, rgb(110 139 255/calc(.09 + .1 * var(--spot))), transparent 70%), var(--code-bg);box-shadow:inset 0 0 0 1px var(--line), inset 0 1px 0 #ffffff08;border-radius:12px;position:relative;overflow:hidden}.card .go{width:15px;height:15px;color:var(--text-3);transition:color .3s ease, transform .3s var(--ease-out);flex:none}.card:hover .go{color:var(--text);transform:translate(2px,-2px)}.card.reveal{transition-delay:0s, var(--d,0s), 0s, var(--d,0s)}.reveal.is-pending{opacity:0;transform:translateY(16px)}.reveal:not(.card){transition:opacity .7s var(--ease-out) var(--d,0s), transform .7s var(--ease-out) var(--d,0s)}.is-idle,.is-idle *{animation-play-state:paused!important}.typing .line{display:inline-block}.reveal:not(.is-in) .typing .line{clip-path:inset(0 100% 0 0)}.reveal.is-in .typing .line{animation:.7s steps(26,end) both type;animation-delay:calc(var(--d,0s) + .35s + var(--ln,0) * .65s)}.typing .line:nth-child(2){--ln:1}.typing .line:nth-child(3){--ln:2}.typing .line:nth-child(4){--ln:3}.typing .line:nth-child(5){--ln:4}.typing .line:nth-child(6){--ln:5}.typing .line:last-child:after{content:"";vertical-align:-.22em;background:var(--brand-2);border-radius:1px;width:7px;height:1.15em;margin-left:4px;animation:1.1s step-end infinite blink;display:inline-block}@keyframes type{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 -12px 0 0)}}@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}.astro-code{tab-size:2;margin:0;padding:18px 20px;font-size:13px;line-height:1.7;overflow-x:auto;background:0 0!important}.astro-code code{font-family:var(--mono)}@media (width<=720px){.section{padding-top:104px}.section-head{text-align:left;margin-bottom:40px}.lede{font-size:17px}}
