@import"https://fonts.googleapis.com/css2?family=Geist:wght@300;400;500;600;700&family=Geist+Mono:wght@400;500;600&display=swap";:root{--bg: #07090c;--bg-deep: #050609;--surface: #0c0f13;--surface-2: #11151a;--surface-3: #171c22;--inset: #090b0e;--border: rgba(230, 245, 238, .07);--border-strong: rgba(230, 245, 238, .14);--accent: #10b981;--accent-2: #34d399;--accent-deep: #059669;--accent-soft: rgba(16, 185, 129, .12);--accent-faint: rgba(16, 185, 129, .06);--accent-glow: rgba(16, 185, 129, .22);--danger: #f87171;--warn: #fbbf24;--info: #60a5fa;--text: #f1f5f3;--text-2: #a4b0aa;--text-3: #74817b;--text-4: #525c57;--font-sans: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--s-9: 96px;--s-10: 128px;--r-xs: 4px;--r-sm: 6px;--r-md: 10px;--r-lg: 16px;--r-xl: 22px;--r-pill: 9999px;--elev-1: 0 1px 2px rgba(0,0,0,.4), inset 0 1px 0 rgba(255,255,255,.03);--elev-2: 0 8px 24px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.04);--elev-3: 0 24px 60px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.05);--glow: 0 0 0 1px var(--accent-soft), 0 12px 40px var(--accent-glow);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-sig: cubic-bezier(.32, .72, 0, 1);--dur-1: .16s;--dur-2: .32s;--dur-3: .6s;--container: 1200px;--gutter: clamp(20px, 4vw, 40px);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%}body{min-width:320px;overflow-x:clip}img,svg,video,canvas{display:block;max-width:100%}button,input,textarea,select{font:inherit;color:inherit}button{background:none;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}ul,ol{list-style:none;padding:0}fieldset{border:0;padding:0}body{font-family:var(--font-sans);font-weight:400;color:var(--text-2);background:radial-gradient(55rem 28rem at 72% -10%,rgba(16,185,129,.1),transparent 66%),radial-gradient(40rem 24rem at 8% 8%,rgba(16,185,129,.04),transparent 60%),linear-gradient(180deg,var(--bg) 0%,var(--bg-deep) 100%);background-attachment:fixed;line-height:1.6;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{color:var(--text);font-weight:600;line-height:1.02;letter-spacing:-.03em;text-wrap:balance}h1{font-size:clamp(40px,6.5vw,84px);letter-spacing:-.045em}h2{font-size:clamp(30px,4.5vw,56px);letter-spacing:-.04em}h3{font-size:clamp(20px,2.4vw,30px);letter-spacing:-.03em}p{text-wrap:pretty}::selection{color:#04140d;background:var(--accent-2)}:focus-visible{outline:2px solid var(--accent-2);outline-offset:3px;border-radius:2px}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}.container{width:min(var(--container),calc(100% - var(--gutter) * 2));margin-inline:auto}.section{padding-block:clamp(72px,10vw,144px)}.section-line{border-top:1px solid var(--border)}.stack{display:flex;flex-direction:column}.row{display:flex;align-items:center}.gap-2{gap:var(--s-2)}.gap-3{gap:var(--s-3)}.gap-4{gap:var(--s-4)}.gap-5{gap:var(--s-5)}.muted{color:var(--text-3)}.mono{font-family:var(--font-mono)}.center{text-align:center}.eyebrow{display:inline-flex;align-items:center;gap:var(--s-2);font-family:var(--font-mono);font-size:11.5px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3)}.eyebrow:before{content:"";width:18px;height:1px;background:var(--accent)}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);padding:12px 20px;border-radius:var(--r-pill);font-size:14.5px;font-weight:500;letter-spacing:-.01em;color:var(--text);background:var(--surface-2);border:1px solid var(--border);transition:transform var(--dur-1) var(--ease-out),background var(--dur-1) var(--ease-out),border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-2) var(--ease-out);will-change:transform}.btn:hover{background:var(--surface-3);border-color:var(--border-strong)}.btn:active{transform:translateY(1px) scale(.99)}.btn-primary{color:#04140d;background:linear-gradient(180deg,var(--accent-2),var(--accent));border-color:transparent;font-weight:600}.btn-primary:hover{background:linear-gradient(180deg,var(--accent-2),var(--accent-deep));box-shadow:var(--glow)}.btn-ghost{background:transparent;border-color:transparent;color:var(--text-2)}.btn-ghost:hover{color:var(--text);background:var(--surface);border-color:var(--border)}.btn-sm{padding:8px 14px;font-size:13px}.btn-lg{padding:15px 26px;font-size:15.5px}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn .arrow{display:inline-block;opacity:0;transform:translateY(-4px);transition:transform var(--dur-2) var(--ease-out),opacity var(--dur-1) var(--ease-out)}.btn:hover .arrow,.btn:focus-visible .arrow{opacity:1;transform:translateY(1px)}.text-link{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:500;color:var(--text);transition:color var(--dur-1) var(--ease-out)}.text-link:hover{color:var(--accent-2)}.text-link .arrow{opacity:0;transform:translateY(-4px);transition:all var(--dur-2) var(--ease-out)}.text-link:hover .arrow{opacity:1;transform:translateY(1px)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s-6);box-shadow:var(--elev-1)}.card-hairline{background:linear-gradient(180deg,rgba(255,255,255,.015),transparent 40%),var(--surface);transition:transform var(--dur-2) var(--ease-out),border-color var(--dur-2) var(--ease-out),box-shadow var(--dur-2) var(--ease-out)}.card-hairline:hover{transform:translateY(-3px);border-color:var(--border-strong);box-shadow:var(--elev-2)}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);font-family:var(--font-mono);font-size:11.5px;letter-spacing:.02em;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border)}.badge-accent{color:var(--accent-2);background:var(--accent-faint);border-color:var(--accent-soft)}.badge-danger{color:var(--danger);background:#f8717114;border-color:#f8717133}.badge-warn{color:var(--warn);background:#fbbf2414;border-color:#fbbf2433}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.stat{display:flex;flex-direction:column;gap:4px}.stat .num{font-family:var(--font-mono);font-size:clamp(28px,3.4vw,44px);font-weight:500;letter-spacing:-.03em;color:var(--text);line-height:1}.stat .label{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.section-heading{margin-bottom:clamp(36px,6vw,64px)}.section-heading h2{max-width:20ch;margin-top:var(--s-4)}.section-heading p{max-width:54ch;margin-top:var(--s-4);color:var(--text-2);font-size:16.5px}.site-nav{position:sticky;top:0;z-index:100;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#07090cb8;border-bottom:1px solid var(--border)}.site-nav .inner{display:flex;align-items:center;justify-content:space-between;height:64px}.site-nav .links{display:flex;align-items:center;gap:var(--s-6)}.site-nav .links a{font-size:14px;color:var(--text-2);transition:color var(--dur-1) var(--ease-out)}.site-nav .links a:hover{color:var(--text)}.wordmark{display:inline-flex;align-items:center;line-height:0}.wordmark img{display:block;width:auto;height:20px}.wordmark--compact img{height:22px}.site-footer{border-top:1px solid var(--border);padding-block:var(--s-8) var(--s-6);color:var(--text-3)}.site-footer .cols{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:var(--s-6)}.site-footer h4{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-4);margin-bottom:var(--s-4)}.site-footer a{display:block;padding:4px 0;font-size:14px;color:var(--text-2)}.site-footer a:hover{color:var(--accent-2)}.site-footer .baseline{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-8);padding-top:var(--s-5);border-top:1px solid var(--border);font-size:13px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:var(--s-4)}.label{font-size:13px;font-weight:500;color:var(--text-2)}.label .hint{color:var(--text-4);font-weight:400}.input,.select,.textarea{width:100%;padding:11px 13px;border-radius:var(--r-md);background:var(--inset);border:1px solid var(--border);color:var(--text);font-size:14.5px;transition:border-color var(--dur-1) var(--ease-out),box-shadow var(--dur-1) var(--ease-out)}.input::placeholder,.textarea::placeholder{color:var(--text-4)}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-faint)}.textarea{resize:vertical;min-height:110px;line-height:1.55}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-3) 50%),linear-gradient(135deg,var(--text-3) 50%,transparent 50%);background-position:calc(100% - 18px) 52%,calc(100% - 13px) 52%;background-size:5px 5px,5px 5px;background-repeat:no-repeat}.table{width:100%;border-collapse:collapse;font-size:14px}.table th{text-align:left;padding:11px 14px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--border)}.table td{padding:13px 14px;border-bottom:1px solid var(--border);color:var(--text-2)}.table tbody tr{transition:background var(--dur-1) var(--ease-out)}.table tbody tr:hover{background:var(--surface)}.toast-stack{position:fixed;right:20px;bottom:20px;z-index:1000;display:flex;flex-direction:column;gap:var(--s-2)}.toast{display:flex;align-items:center;gap:var(--s-3);padding:12px 16px;min-width:240px;max-width:360px;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--border-strong);box-shadow:var(--elev-2);color:var(--text);font-size:14px;animation:toast-in var(--dur-2) var(--ease-out)}.toast.ok{border-left:3px solid var(--accent)}.toast.err{border-left:3px solid var(--danger)}.toast.info{border-left:3px solid var(--info)}@keyframes toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}[data-reveal]{opacity:0;transform:translateY(22px)}[data-reveal].is-in{opacity:1;transform:none;transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1;transform:none}}
