:root{--bg:#020408;--surface:#0b0f1a;--surface-2:#131c28;--border:#1c2535;--text:#e6edf3;--muted:#8b949e;--accent-blue:#2f81f7;--accent-green:#3fb950;--accent-purple:#bc8cff;--accent-blue-hover:#58a6ff;--shadow:#000000b3;--shadow-sm:#00000073;--glass-bg:#0b0f1ac7;--glass-border:#2f81f72e;--card-glass-bg:#0a0f2373;--card-glass-border:#ffffff24;--card-glass-highlight:#ffffff14;--font-heading:"Plus Jakarta Sans",sans-serif;--font-body:"Inter",sans-serif;--max-w:1200px;--nav-h:64px;--radius:12px;--radius-sm:8px;--radius-lg:16px;--transition:.2s ease;--transition-slow:.4s ease}[data-theme=light]{--bg:#fff;--surface:#f6f8fa;--surface-2:#eaeef2;--border:#d0d7de;--text:#1f2328;--muted:#636c76;--accent-blue:#0969da;--accent-green:#1a7f37;--accent-purple:#8250df;--accent-blue-hover:#0550ae;--shadow:#0000001f;--shadow-sm:#0000000f;--glass-bg:#f6f8fad9;--glass-border:#d0d7de99;--card-glass-bg:#ffffffb3;--card-glass-border:#d0d7decc;--card-glass-highlight:#ffffffe6}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:swap;src:url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/webfonts/fa-solid-900.woff2)format("woff2")}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:swap;src:url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/webfonts/fa-brands-400.woff2)format("woff2")}*,:before,:after{box-sizing:border-box;margin:0;padding:0;transition:background-color .4s,border-color .4s,color .3s,box-shadow .4s}html{scroll-behavior:smooth;overscroll-behavior-y:none;background:#020408;font-size:16px}body{font-family:var(--font-body);background-color:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden}[data-theme=light] body{background-color:var(--bg)}main{z-index:1;position:relative}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}ul{list-style:none}button{cursor:pointer;font-family:var(--font-body);background:0 0;border:none}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}.container{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem}.section{padding:5rem 0}.section-title{font-family:var(--font-heading);color:var(--text);margin-bottom:.5rem;font-size:clamp(1.75rem,3vw,2.25rem);font-weight:800;display:inline-block;position:relative}.section-title:after{content:"";background:var(--accent-blue);border-radius:2px;width:40px;height:3px;transition:width .4s;position:absolute;bottom:-6px;left:0}.section-title:hover:after,.section-header.underline-active .section-title:after{width:100%}.section-header{margin-bottom:3rem}.section-subtitle{color:var(--muted);margin-top:1rem;font-size:1rem}.btn{border-radius:var(--radius-sm);transition:all var(--transition);cursor:pointer;white-space:nowrap;align-items:center;gap:.5rem;padding:.625rem 1.25rem;font-size:.9rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent-blue);color:#fff;border:1px solid var(--accent-blue)}.btn-primary:hover{background:var(--accent-blue-hover);border-color:var(--accent-blue-hover);box-shadow:0 4px 12px var(--shadow);transform:translateY(-1px)}.btn-outline{color:var(--text);border:1px solid var(--border);background:0 0}.btn-outline:hover{background:var(--surface);border-color:var(--accent-blue);color:var(--accent-blue);transform:translateY(-1px)}.tag{background:var(--surface-2);border:1px solid var(--border);color:var(--muted);transition:all var(--transition);border-radius:100px;padding:.25rem .75rem;font-size:.8rem;font-weight:500}.tag:hover{border-color:var(--accent-blue);color:var(--accent-blue)}.reveal{opacity:0;transition:opacity .6s,transform .6s;transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-left{opacity:0;transition:opacity .6s,transform .6s;transform:translate(-24px)}.reveal-left.visible{opacity:1;transform:translate(0)}.reveal-right{opacity:0;transition:opacity .6s,transform .6s;transform:translate(24px)}.reveal-right.visible{opacity:1;transform:translate(0)}
