@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800&display=swap";:root{--font-primary:"Inter", system-ui, -apple-system, sans-serif;--font-display:"Outfit", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", Consolas, monospace;--primary:#3b82f6;--primary-rgb:59, 130, 246;--secondary:#8b5cf6;--secondary-rgb:139, 92, 246;--accent:#06b6d4;--accent-rgb:6, 182, 212;--bg-primary:#07090e;--bg-secondary:#0b0f17;--bg-tertiary:#111622;--card-bg:#0f1623bf;--card-border:#ffffff14;--card-hover-border:#06b6d459;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--shadow-sm:0 2px 8px -1px #0006;--shadow-md:0 10px 30px -5px #0009;--shadow-lg:0 20px 50px -10px #000c;--glow-color:#06b6d41f;--transition-fast:.18s cubic-bezier(.4, 0, .2, 1);--transition-normal:.3s cubic-bezier(.4, 0, .2, 1);--transition-slow:.5s cubic-bezier(.16, 1, .3, 1)}[data-theme=light]{--bg-primary:#f8fafc;--bg-secondary:#f1f5f9;--bg-tertiary:#e2e8f0;--card-bg:#ffffffd9;--card-border:#0f172a14;--card-hover-border:#06b6d480;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--shadow-sm:0 2px 8px -1px #0000000f;--shadow-md:0 10px 25px -5px #00000014;--shadow-lg:0 20px 40px -12px #0000001f;--glow-color:#06b6d414}*{box-sizing:border-box;outline:none;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:85px}body{font-family:var(--font-primary);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-normal), color var(--transition-normal);background-image:radial-gradient(#ffffff08 1px,#0000 1px),linear-gradient(#07090eb3,#07090ef2);background-size:24px 24px,100% 100%;line-height:1.6;overflow-x:hidden}.font-mono{font-family:var(--font-mono)}.bg-tech-grid{background-image:linear-gradient(90deg,#ffffff08 1px,#0000 1px),linear-gradient(#ffffff08 1px,#0000 1px);background-size:32px 32px}::-webkit-scrollbar{width:7px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:#1e293b;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.text-gradient{background:linear-gradient(135deg, #f8fafc 0%, var(--primary) 50%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.text-gradient-cyan{background:linear-gradient(135deg, var(--primary) 0%, var(--accent) 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;font-weight:700}a{color:inherit;transition:var(--transition-fast);text-decoration:none}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 2rem}@media (width<=768px){.container{padding:0 1.25rem}}.glass-panel{background:var(--card-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--card-border);box-shadow:var(--shadow-md);transition:border-color var(--transition-normal), box-shadow var(--transition-normal)}.glass-card{background:var(--card-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--card-border);box-shadow:var(--shadow-sm);transition:transform var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal);border-radius:12px}.glass-card:hover{border-color:var(--card-hover-border);box-shadow:0 8px 24px -6px var(--glow-color), var(--shadow-md)}.btn{font-family:var(--font-primary);cursor:pointer;transition:var(--transition-normal);border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.4rem;font-size:.9rem;font-weight:600;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--primary) 0%, #2563eb 100%);color:#fff;border:1px solid #ffffff26;box-shadow:0 4px 14px #3b82f64d}.btn-primary:hover{filter:brightness(1.08);transform:translateY(-2px);box-shadow:0 6px 20px #3b82f680}.btn-secondary{color:var(--text-primary);border:1px solid var(--card-border);background:#111622cc}.btn-secondary:hover{background:var(--bg-tertiary);color:var(--accent);border-color:#06b6d466;transform:translateY(-2px)}.btn-accent{color:var(--accent);background:#06b6d414;border:1px solid #06b6d44d}.btn-accent:hover{background:#06b6d42e;transform:translateY(-2px);box-shadow:0 4px 12px #06b6d440}.section-header{text-align:center;margin-bottom:3.5rem}.section-tag{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--accent);background:#06b6d414;border:1px solid #06b6d433;border-radius:6px;align-items:center;gap:.4rem;margin-bottom:.75rem;padding:.3rem .8rem;font-size:.8rem;font-weight:600;display:inline-flex}.section-title{letter-spacing:-.02em;margin-bottom:.85rem;font-size:clamp(2rem,4vw,2.75rem)}.section-title span{color:var(--accent);font-weight:800}.section-subtitle{color:var(--text-secondary);max-width:650px;margin:0 auto;font-size:1.05rem;line-height:1.6}.reveal{opacity:0;transition:opacity .5s,transform .5s;transform:translateY(20px)}.reveal.visible{opacity:1;transform:translateY(0)}.sys-status-pill{font-family:var(--font-mono);color:#10b981;background:#10b98114;border:1px solid #10b98140;border-radius:99px;align-items:center;gap:.5rem;padding:.35rem .85rem;font-size:.78rem;font-weight:600;display:inline-flex}.status-dot-animated{background-color:#10b981;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse-dot;box-shadow:0 0 10px #10b981}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.3)}}.timeline-container{max-width:850px;margin:0 auto;padding-left:2rem;position:relative}.timeline-container:before{content:"";background:linear-gradient(to bottom, var(--primary), var(--accent), var(--secondary));opacity:.35;width:2px;position:absolute;top:10px;bottom:10px;left:7px}.timeline-item{margin-bottom:2.5rem;position:relative}.timeline-dot{background:var(--bg-primary);border:2px solid var(--accent);width:16px;height:16px;box-shadow:0 0 8px var(--accent);z-index:2;transition:transform var(--transition-fast), border-color var(--transition-fast);border-radius:4px;position:absolute;top:.5rem;left:-2.35rem}.timeline-item:hover .timeline-dot{background:var(--accent);transform:scale(1.25)}.cursor-blink:after{content:"_";color:var(--accent);margin-left:2px;font-weight:700;animation:.9s step-end infinite blink}@keyframes blink{0%,to{opacity:0}50%{opacity:1}}@media (width<=640px){.section-title{font-size:1.85rem}}
