@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--slate-50:#f8fafc;--slate-100:#f1f5f9;--slate-200:#e2e8f0;--slate-300:#cbd5e1;--slate-400:#94a3b8;--slate-500:#64748b;--slate-600:#475569;--slate-700:#334155;--slate-800:#1e293b;--slate-900:#0f172a;--background:#fff;--foreground:var(--slate-900);--muted:var(--slate-100);--muted-foreground:var(--slate-500);--card:#fff;--card-foreground:var(--slate-900);--popover:#fff;--popover-foreground:var(--slate-900);--border:var(--slate-200);--input:var(--slate-200);--ring:var(--slate-400);--primary:var(--slate-900);--primary-foreground:#fff;--primary-hover:var(--slate-800);--secondary:var(--slate-100);--secondary-foreground:var(--slate-900);--secondary-hover:var(--slate-200);--accent:var(--slate-100);--accent-foreground:var(--slate-900);--destructive:#ef4444;--destructive-foreground:#fff;--destructive-hover:#dc2626;--fg-1:var(--slate-900);--fg-2:var(--slate-700);--fg-3:var(--slate-500);--fg-4:var(--slate-400);--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", Menlo, Monaco, "Cascadia Mono", "Roboto Mono", monospace;--text-h1-size:48px;--text-h1-lh:48px;--text-h1-tracking:-.012em;--text-h2-size:30px;--text-h2-lh:36px;--text-h2-tracking:-.007em;--text-h3-size:24px;--text-h3-lh:32px;--text-h3-tracking:-.006em;--text-h4-size:20px;--text-h4-lh:28px;--text-h4-tracking:-.005em;--text-large-size:18px;--text-large-lh:28px;--text-lead-size:20px;--text-lead-lh:28px;--text-body-size:16px;--text-body-lh:28px;--text-button-size:14px;--text-button-lh:24px;--text-subtle-size:14px;--text-subtle-lh:20px;--text-small-size:14px;--text-small-lh:14px;--text-micro-size:12px;--text-micro-lh:16px;--radius-sm:4px;--radius:6px;--radius-md:8px;--radius-lg:12px;--radius-full:9999px;--shadow-xs:0 1px 2px 0 #0000000d;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000001a;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--ease:cubic-bezier(.4, 0, .2, 1);--duration-fast:.15s;--duration:.2s;--duration-slow:.3s}[data-theme=dark]{--background:var(--slate-900);--foreground:var(--slate-50);--muted:var(--slate-800);--muted-foreground:var(--slate-400);--card:var(--slate-900);--card-foreground:var(--slate-50);--popover:var(--slate-900);--popover-foreground:var(--slate-50);--border:var(--slate-800);--input:var(--slate-800);--ring:var(--slate-300);--primary:var(--slate-50);--primary-foreground:var(--slate-900);--primary-hover:var(--slate-200);--secondary:var(--slate-800);--secondary-foreground:var(--slate-50);--secondary-hover:var(--slate-700);--accent:var(--slate-800);--accent-foreground:var(--slate-50);--destructive:#7f1d1d;--destructive-foreground:var(--slate-50);--fg-1:var(--slate-50);--fg-2:var(--slate-200);--fg-3:var(--slate-400);--fg-4:var(--slate-500)}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}html,body{font-family:var(--font-sans);font-feature-settings:"cv11", "ss01";color:var(--fg-1);background:var(--background);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}a{color:inherit;text-decoration:none}.h1,h1.shadcn{font-size:var(--text-h1-size);line-height:var(--text-h1-lh);letter-spacing:var(--text-h1-tracking);color:var(--fg-1);text-wrap:balance;font-weight:800}.h2,h2.shadcn{font-size:var(--text-h2-size);line-height:var(--text-h2-lh);letter-spacing:var(--text-h2-tracking);color:var(--fg-1);text-wrap:balance;font-weight:700}.h3,h3.shadcn{font-size:var(--text-h3-size);line-height:var(--text-h3-lh);letter-spacing:var(--text-h3-tracking);color:var(--fg-1);font-weight:600}.h4,h4.shadcn{font-size:var(--text-h4-size);line-height:var(--text-h4-lh);letter-spacing:var(--text-h4-tracking);color:var(--fg-1);font-weight:600}.lead{font-size:var(--text-lead-size);line-height:var(--text-lead-lh);color:var(--fg-3);font-weight:400}.large{font-size:var(--text-large-size);line-height:var(--text-large-lh);color:var(--fg-1);font-weight:600}.p,p.shadcn{font-size:var(--text-body-size);line-height:var(--text-body-lh);color:var(--fg-1);text-wrap:pretty}.subtle{font-size:var(--text-subtle-size);line-height:var(--text-subtle-lh);color:var(--fg-3)}.small{font-size:var(--text-small-size);line-height:var(--text-small-lh);color:var(--fg-1);font-weight:500}.micro{font-size:var(--text-micro-size);line-height:var(--text-micro-lh);color:var(--fg-3);font-weight:500}code.inline,.inline-code{font-family:var(--font-mono);background:var(--muted);color:var(--fg-1);border-radius:var(--radius-sm);padding:2px 6px;font-size:.875em;font-weight:600}blockquote.shadcn{border-left:2px solid var(--border);color:var(--fg-1);padding-left:24px;font-style:italic}.container{max-width:1200px;margin:0 auto;padding:0 32px}header.site{z-index:50;-webkit-backdrop-filter:saturate(140%)blur(8px);border-bottom:1px solid var(--border);background:#ffffffd9;position:sticky;top:0}.header-row{align-items:center;gap:32px;height:64px;display:flex}.brand{letter-spacing:-.01em;color:var(--fg-1);align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.brand-mark{background:var(--slate-900);color:#fff;border-radius:6px;place-items:center;width:24px;height:24px;display:grid}nav.primary{align-items:center;gap:4px;display:flex}nav.primary a{border-radius:var(--radius);color:var(--fg-2);transition:background var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease);padding:8px 12px;font-size:14px;font-weight:500}nav.primary a:hover{background:var(--slate-100);color:var(--fg-1)}nav.primary a.active{color:var(--fg-1);background:var(--slate-100)}.header-actions{align-items:center;gap:8px;margin-left:auto;display:flex}.menu-toggle{border-radius:var(--radius);width:40px;height:40px;color:var(--fg-1);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;margin-left:auto;display:none}.menu-toggle:hover{background:var(--slate-100)}.menu-toggle .lucide{width:22px;height:22px}.mobile-menu{border-top:1px solid var(--border);-webkit-backdrop-filter:saturate(140%)blur(8px);background:#fffffffa;display:none}.mobile-menu-inner{flex-direction:column;gap:6px;padding-top:12px;padding-bottom:16px;display:flex}.mobile-menu-inner a:not(.btn){border-radius:var(--radius);color:var(--fg-1);padding:12px 14px;font-size:16px;font-weight:500;display:block}.mobile-menu-inner a:not(.btn):hover,.mobile-menu-inner a.active{background:var(--slate-100)}.mobile-menu-inner hr{border:0;border-top:1px solid var(--border);margin:6px 0 4px}.btn{border-radius:var(--radius);cursor:pointer;height:36px;transition:background var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);white-space:nowrap;background:0 0;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-family:inherit;font-size:14px;font-weight:500;line-height:1;display:inline-flex}.btn-primary{background:var(--slate-900);color:#fff}.btn-primary:hover{background:var(--slate-800)}.btn-outline{border-color:var(--border);color:var(--fg-1);background:#fff}.btn-outline:hover{background:var(--slate-100)}.btn-ghost{color:var(--fg-1)}.btn-ghost:hover{background:var(--slate-100)}.btn-lg{height:44px;padding:0 22px;font-size:15px}.btn-block{width:100%}.btn .lucide{stroke-width:2px;width:16px;height:16px}footer.site{border-top:1px solid var(--border);color:var(--fg-3);padding:32px 0;font-size:13px}.footer-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.footer-links{gap:20px;display:flex}.footer-links a:hover{color:var(--fg-1)}.section-cta{justify-content:center;margin-top:48px;display:flex}.section-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);margin-bottom:14px;font-size:12px;font-weight:600;display:inline-block}@media (width<=980px){nav.primary,.header-actions{display:none}.menu-toggle{display:inline-flex}.mobile-menu{display:block}}@media (width<=560px){.container{padding:0 20px}}
