@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap";*{box-sizing:border-box}html,body{margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:#0e1320}.site{--bg:#0e1320;--bg-2:#0a0e18;--panel:#151b2b;--panel-2:#1a2132;--line:#263049;--text:#e7eaf2;--muted:#8a93ab;--accent:#5b9dff;--accent-soft:#5b9dff1f;--online:#3ed598;--font-sans:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;background-color:var(--bg);background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);color:var(--text);font-family:var(--font-sans);background-position:50%;background-size:44px 44px;min-height:100vh;line-height:1.6;position:relative}.site:before{content:"";background:radial-gradient(circle at 50% 0%, #0e132000 0%, var(--bg) 70%);pointer-events:none;z-index:0;position:fixed;inset:0}.site>*{z-index:1;position:relative}.site a{color:inherit;text-decoration:none}.site h1,.site h2,.site h3{letter-spacing:-.02em;margin:0;font-weight:600}.site p{margin:0}.site ul{margin:0;padding:0;list-style:none}.nav{align-items:center;gap:24px;max-width:1080px;margin:0 auto;padding:22px 28px;display:flex}.brand{font-family:var(--font-mono);letter-spacing:-.01em;font-size:17px;font-weight:600}.brand span{color:var(--accent)}.nav-links{gap:26px;margin-left:auto;display:flex}.nav-links a{color:var(--muted);font-size:14px;transition:color .18s}.nav-links a:hover{color:var(--text)}.status{font-family:var(--font-mono);color:var(--muted);border:1px solid var(--line);border-radius:999px;align-items:center;gap:8px;padding:5px 12px;font-size:12px;display:inline-flex}.dot{background:var(--online);border-radius:50%;width:7px;height:7px;animation:2.4s infinite pulse;box-shadow:0 0 #3ed59899}@keyframes pulse{0%{box-shadow:0 0 #3ed59880}70%{box-shadow:0 0 0 7px #3ed59800}to{box-shadow:0 0 #3ed59800}}.hero{grid-template-columns:1.1fr .9fr;align-items:center;gap:48px;max-width:1080px;margin:0 auto;padding:70px 28px 90px;display:grid}.hero-copy{animation:.7s both rise}.eyebrow{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:22px;font-size:12px}.hero h1{font-size:clamp(34px,5vw,56px);line-height:1.05}.lead{color:var(--muted);max-width:40ch;margin-top:22px;font-size:18px}.cta-row{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.btn{border:1px solid #0000;border-radius:8px;align-items:center;padding:12px 22px;font-size:15px;font-weight:500;transition:all .18s;display:inline-flex}.btn-primary{background:var(--accent);color:#08101f}.btn-primary:hover{background:#79b0ff;transform:translateY(-1px)}.btn-ghost{border-color:var(--line);color:var(--text)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.hero-visual{justify-content:center;animation:1s both fade;display:flex}.diagram{width:100%;max-width:360px;height:auto;overflow:visible}.wire{stroke:var(--line);stroke-width:1.5px;stroke-dasharray:5 6;animation:3.2s linear infinite flow}@keyframes flow{to{stroke-dashoffset:-44px}}.node-bg{fill:var(--panel)}.node-ring{fill:none;stroke:var(--line);stroke-width:1.5px}.node-label{fill:var(--text);font-family:var(--font-mono);text-anchor:middle;dominant-baseline:middle;font-size:11px}.core-bg{fill:var(--accent-soft)}.core-ring{fill:none;stroke:var(--accent);stroke-width:1.75px}.core-label{fill:var(--accent);font-family:var(--font-mono);text-anchor:middle;font-size:15px;font-weight:600}.core-sub{fill:var(--muted);font-family:var(--font-mono);letter-spacing:.2em;text-anchor:middle;font-size:9px}.section{max-width:1080px;margin:0 auto;padding:60px 28px}.section-head{margin-bottom:40px}.label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;padding-left:14px;font-size:12px;display:inline-block;position:relative}.label:before{content:"";background:var(--accent);width:8px;height:1px;position:absolute;top:50%;left:0}.section-head h2{font-size:clamp(24px,3.2vw,34px)}.grid{gap:18px;display:grid}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}.card{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:28px;transition:border-color .2s,transform .2s,background .2s}.card:hover{border-color:var(--accent);background:var(--panel-2);transform:translateY(-3px)}.card h3{margin-bottom:10px;font-size:19px}.card p{color:var(--muted);font-size:15px}.card-num{font-family:var(--font-mono);color:var(--accent);font-size:13px}.service h3{margin-top:16px}.tags{flex-wrap:wrap;gap:7px;margin-top:18px;display:flex}.tag{font-family:var(--font-mono);color:var(--muted);border:1px solid var(--line);border-radius:5px;padding:3px 8px;font-size:11px}.stack-col{border-left:1px solid var(--line);padding-left:18px}.stack-group{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;font-size:12px}.stack-col li{color:var(--text);padding:5px 0;font-size:15px}.contact{padding-bottom:40px}.contact-lead{color:var(--muted);max-width:46ch;margin-top:-18px;font-size:18px}.contact .cta-row{margin-top:30px}.footer{border-top:1px solid var(--line);max-width:1080px;color:var(--muted);justify-content:space-between;align-items:center;margin:40px auto 0;padding:30px 28px 60px;font-size:14px;display:flex}.footer-mono{font-family:var(--font-mono);font-size:12px}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}.site :focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}@media (prefers-reduced-motion:reduce){.site *,.site :before{transition:none!important;animation:none!important}}@media (width<=860px){.hero{grid-template-columns:1fr;padding-top:40px;padding-bottom:60px}.hero-visual{display:none}.grid-3,.grid-4{grid-template-columns:1fr 1fr}}@media (width<=620px){.nav-links{display:none}.grid-3,.grid-4{grid-template-columns:1fr}.stack-col{border-left:none;border-top:1px solid var(--line);padding-top:16px;padding-left:0}.footer{flex-direction:column;gap:10px}}
