:root{--bg-deep:#04071a;--bg:#0a0f1c;--surface:#0f1526;--surface-raised:#161e32;--surface-hover:#1c2640;--border:#ffffff14;--border-subtle:#ffffff0a;--border-hover:#00f5d473;--text:#f1f5f9;--text-muted:#94a3b8;--text-subtle:#4b5a7a;--accent:#00f5d4;--accent-dim:#00f5d41a;--accent-glow:#00f5d447;--accent-hover:#33f9de;--primary:#2563eb;--primary-dim:#2563eb26;--indigo:#4c1d95;--indigo-dim:#4c1d9533;--font-sans:"DM Sans", system-ui, sans-serif;--font-display:"Fraunces", Georgia, serif;--radius:10px;--radius-lg:16px;--radius-xl:24px;--max:1120px;--header-h:68px;--shadow-card:0 1px 3px #00000080, 0 4px 20px #0006;--shadow-card-hover:0 2px 8px #0009, 0 12px 40px #00000080, 0 0 0 1px var(--border-hover);--glow-accent:0 0 24px #00f5d438;--glow-btn:0 0 22px #00f5d466, 0 4px 14px #00000080}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;font-family:var(--font-sans);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.65}#root{flex-direction:column;min-height:100vh;display:flex}a{color:var(--accent);text-decoration:none;transition:color .18s}a:hover{color:var(--accent-hover)}img{max-width:100%;height:auto}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.025em;margin:0;font-weight:600;line-height:1.15}p{margin:0 0 1rem}p:last-child{margin-bottom:0}.container{width:min(100% - 2.5rem, var(--max));margin-inline:auto}.section{padding-block:clamp(3.5rem,9vw,6rem)}.section-label{letter-spacing:.14em;text-transform:uppercase;color:var(--accent);background:var(--accent-dim);border:1px solid #00f5d42e;border-radius:999px;align-items:center;gap:.4rem;margin-bottom:1.1rem;padding:.28rem .75rem;font-size:.72rem;font-weight:700;display:inline-flex}.btn{font-family:var(--font-sans);cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:.45rem;padding:.8rem 1.6rem;font-size:.925rem;font-weight:600;text-decoration:none;transition:background .18s,box-shadow .18s,transform .12s,color .18s;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--accent);color:#030d12;box-shadow:var(--glow-btn)}.btn-primary:hover{background:var(--accent-hover);color:#030d12;box-shadow:0 0 34px #00f5d48c,0 4px 16px #00000080}.btn-ghost{color:var(--text);border:1px solid var(--border);background:0 0}.btn-ghost:hover{border-color:var(--accent);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.link-arrow{color:var(--accent);align-items:center;gap:.25rem;font-weight:600;transition:gap .18s,color .18s;display:inline-flex}.link-arrow:hover{color:var(--accent-hover);gap:.45rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:1.5rem;transition:transform .22s cubic-bezier(.34,1.56,.64,1),box-shadow .22s,border-color .22s,background .22s}.card:hover{box-shadow:var(--shadow-card-hover);border-color:var(--border-hover);background:var(--surface-hover);transform:translateY(-3px)}.grid-2{gap:1.25rem;display:grid}@media (width>=768px){.grid-2{grid-template-columns:repeat(2,1fr)}}.grid-3{gap:1.25rem;display:grid}@media (width>=640px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (width>=960px){.grid-3{grid-template-columns:repeat(3,1fr)}}.text-gradient{background:linear-gradient(130deg,#00f5d4 0%,#2563eb 65%,#7c3aed 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.page-bg{pointer-events:none;z-index:-1;position:fixed;inset:0;overflow:hidden}.page-bg:before{content:"";background-image:linear-gradient(#2563eb12 1px,#0000 1px),linear-gradient(90deg,#2563eb12 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(100% 80% at 50% 0,#000 20%,#0000 80%);mask-image:radial-gradient(100% 80% at 50% 0,#000 20%,#0000 80%)}.page-bg:after{content:"";background:radial-gradient(70% 50% at 20% -10%,#4c1d9540 0%,#0000 60%),radial-gradient(60% 45% at 80% -5%,#2563eb33 0%,#0000 60%),radial-gradient(40% 35% at 55% 5%,#00f5d41a 0%,#0000 60%);position:absolute;inset:0}
