@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&family=JetBrains+Mono:wght@400;500&display=swap";@charset "UTF-8";:root{--color-bg: #0a0a0b;--color-bg-elevated: #111114;--color-bg-subtle: #16161a;--color-surface: #1c1c22;--color-border: rgba(255, 255, 255, .08);--color-border-strong:rgba(255, 255, 255, .16);--color-text: #f4f4f5;--color-text-muted: #a1a1aa;--color-text-subtle: #71717a;--color-accent: #38bdf8;--color-accent-hover: #7dd3fc;--color-accent-soft: rgba(56, 189, 248, .12);--color-accent-glow: rgba(56, 189, 248, .35);--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--font-sans: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--font-serif: "Instrument Serif", "Times New Roman", serif;--font-mono: "JetBrains Mono", "Fira Code", Consolas, monospace;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.375rem;--text-2xl: 1.75rem;--text-3xl: 2.25rem;--text-4xl: 3rem;--text-5xl: 3.75rem;--text-6xl: 4.75rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--space-9: 6rem;--space-10: 8rem;--container-max: 1200px;--container-narrow: 760px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-sm: 0 1px 2px rgba(0,0,0,.4);--shadow-md: 0 4px 16px rgba(0,0,0,.25);--shadow-lg: 0 16px 48px rgba(0,0,0,.4);--shadow-glow: 0 0 0 1px var(--color-accent-glow), 0 8px 32px var(--color-accent-glow);--ease: cubic-bezier(.4, 0, .2, 1);--duration: .2s;--color-header-bg: rgba(10, 10, 11, .72);--color-header-link: #a1a1aa;--color-header-link-hover: #f4f4f5}:root[data-theme=light]{--color-bg: #ffffff;--color-bg-elevated: #f7f7f8;--color-bg-subtle: #f1f1f3;--color-surface: #ffffff;--color-border: rgba(10, 10, 11, .1);--color-border-strong:rgba(10, 10, 11, .2);--color-text: #0a0a0b;--color-text-muted: #52525b;--color-text-subtle: #71717a;--color-accent: #0284c7;--color-accent-hover: #0369a1;--color-accent-soft: rgba(2, 132, 199, .1);--color-accent-glow: rgba(2, 132, 199, .2);--shadow-sm: 0 1px 2px rgba(10,10,11,.06);--shadow-md: 0 4px 16px rgba(10,10,11,.08);--shadow-lg: 0 16px 48px rgba(10,10,11,.1);--color-header-bg: rgba(255, 255, 255, .82);--color-header-link: #52525b;--color-header-link-hover: #0a0a0b}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);line-height:1.6;font-feature-settings:"cv11","ss01";overflow-x:hidden;transition:background-color var(--duration) var(--ease),color var(--duration) var(--ease)}body.no-scroll{overflow:hidden}img,svg,video{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none;transition:color var(--duration) var(--ease)}button{font-family:inherit;cursor:pointer}::selection{background:var(--color-accent);color:#000}h1,h2,h3,h4,h5{margin:0;font-family:var(--font-serif);font-weight:400;letter-spacing:-.02em;line-height:1.05;color:var(--color-text)}h1{font-size:clamp(2.5rem,6vw,var(--text-6xl))}h2{font-size:clamp(2rem,4.5vw,var(--text-5xl))}h3{font-size:clamp(1.5rem,3vw,var(--text-3xl))}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl)}p{margin:0}.eyebrow{display:inline-flex;align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:500;text-transform:uppercase;letter-spacing:.12em;color:var(--color-accent)}.eyebrow:before{content:"";width:18px;height:1px;background:var(--color-accent)}.lead{font-size:var(--text-lg);color:var(--color-text-muted);line-height:1.65;max-width:60ch}.muted{color:var(--color-text-muted)}.container{width:100%;max-width:var(--container-max);margin:0 auto;padding:0 var(--space-5)}.container-narrow{max-width:var(--container-narrow);margin:0 auto;padding:0 var(--space-5)}.section{padding:var(--space-10) 0}.section-sm{padding:var(--space-8) 0}@media (max-width: 768px){.section{padding:var(--space-9) 0}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.75rem 1.5rem;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;font-family:var(--font-sans);letter-spacing:-.01em;border:1px solid transparent;transition:all var(--duration) var(--ease);cursor:pointer;white-space:nowrap;text-decoration:none}.btn-primary{background:var(--color-accent);color:#fff}.btn-primary:hover{background:var(--color-accent-hover);transform:translateY(-1px);box-shadow:0 8px 24px var(--color-accent-glow)}.btn-ghost{background:transparent;color:var(--color-text);border-color:var(--color-border-strong)}.btn-ghost:hover{border-color:var(--color-text);background:rgba(255,255,255,.04)}.btn-link{background:transparent;color:var(--color-accent);padding:0;font-weight:500}.btn-link:hover{color:var(--color-accent-hover)}.btn-link:after{content:"\2192";transition:transform var(--duration) var(--ease)}.btn-link:hover:after{transform:translate(4px)}.card{background:var(--color-bg-elevated);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-6);transition:all var(--duration) var(--ease)}.card:hover{border-color:var(--color-border-strong);transform:translateY(-2px)}.badge{display:inline-flex;align-items:center;gap:var(--space-2);padding:.25rem .75rem;border-radius:999px;background:var(--color-accent-soft);border:1px solid var(--color-accent-soft);color:var(--color-accent);font-size:var(--text-xs);font-weight:500;font-family:var(--font-mono)}.divider{height:1px;background:var(--color-border);border:none;margin:0}.grid{display:grid;gap:var(--space-5)}.grid-2,.grid-3{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.text-center{text-align:center}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .6s var(--ease) both}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.btn:focus,.btn:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;box-shadow:none}
