:root{--bg-deepest:#050508;--bg-deep:#0a0a10;--bg-base:#0f0f18;--bg-surface:#16161f;--bg-elevated:#1c1c28;--text-primary:#ececec;--text-secondary:#9a9aab;--text-tertiary:#6e6e82;--text-accent:#6a9fd8;--accent:#011993;--accent-bright:#5b7fff;--accent-glow:#5b7fff47;--accent-dim:#5b7fff24;--accent-light:#5b7fff14;--accent-title:#7da0ff;--gold:#c9a84c;--gold-glow:#c9a84c33;--border-subtle:#ffffff12;--border-default:#ffffff1f;--border-hover:#ffffff38;--border-accent:#5b7fff66;--content-max:1700px;--content-pad:clamp(20px, 3vw, 60px);--font-sans:"Inter", "Noto Sans SC", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", ui-monospace, monospace;--font-display:"Inter", "Noto Sans SC", sans-serif;--ease-out-expo:cubic-bezier(.16, 1, .3, 1);--ease-out-quart:cubic-bezier(.25, 1, .5, 1);--ease-framer:cubic-bezier(.22, 1, .36, 1);--shadow-card-hover:0 20px 60px #0006;--shadow-portfolio-hover:0 24px 80px #00000080, 0 0 40px var(--accent-glow);--shadow-modal:0 40px 120px #000000b3, 0 0 0 1px #0119931f;--shadow-btn-primary:0 0 30px var(--accent-glow);--shadow-btn-primary-hover:0 0 50px var(--accent-glow);--radius-btn:6px;--radius-card:12px;--radius-card-lg:16px;--radius-modal:20px;--radius-pill:100px;--radius-sm:4px;--section-pad-y:clamp(60px, 9vw, 120px)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-padding-top:90px}body{background:var(--bg-deepest);color:var(--text-primary);font-family:var(--font-sans);max-width:100vw;font-size:15px;line-height:1.6;overflow-x:hidden}a{color:var(--accent-bright);transition:color .3s var(--ease-out-quart);text-decoration:none}a:hover{color:var(--text-primary)}img{max-width:100%;height:auto;display:block}ul,ol{list-style:none}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}::selection{color:#fff;background:#0119934d}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#0a0a10}::-webkit-scrollbar-thumb{background:#2a2a3a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#3a3a4a}.container{max-width:var(--content-max);padding:0 var(--content-pad);margin:0 auto;position:relative}.section{padding:var(--section-pad-y) 0;position:relative;overflow:hidden}.section-label{letter-spacing:3px;text-transform:uppercase;color:var(--accent-bright);align-items:center;gap:12px;margin-bottom:24px;font-size:11px;font-weight:600;display:inline-flex}.section-label:before{content:"";background:var(--accent-bright);width:24px;height:1px}.section-label.is-gold{color:var(--gold)}.section-label.is-gold:before{background:var(--gold)}.section-title{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text-primary);margin-bottom:24px;font-size:clamp(32px,4vw,56px);font-weight:700;line-height:1.15}.section-title .accent{color:var(--accent-title);text-shadow:0 0 24px #5b7fff8c}.section-desc{color:var(--text-secondary);max-width:640px;font-size:16px;line-height:1.8}.btn{font-family:var(--font-sans);letter-spacing:.5px;border-radius:var(--radius-btn);cursor:pointer;transition:all .3s var(--ease-out-quart);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:.5rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-btn-primary);padding:14px 32px;font-size:14px}.btn-primary:hover{background:var(--accent-bright);color:#fff;box-shadow:var(--shadow-btn-primary-hover);transform:translateY(-1px)}.btn-outline{color:var(--text-secondary);border-color:var(--border-default);background:0 0;padding:14px 32px;font-size:14px}.btn-outline:hover{border-color:var(--border-hover);color:var(--text-primary);background:var(--bg-surface)}.btn-nav{color:var(--accent-bright);border-color:var(--border-accent);padding:8px 20px;font-size:13px}.btn-nav:hover{background:var(--accent-dim);color:#fff}.card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);transition:all .4s var(--ease-out-quart);overflow:hidden}.card:hover{border-color:var(--border-hover);box-shadow:var(--shadow-card-hover);transform:translateY(-4px)}.pill{letter-spacing:1px;text-transform:uppercase;border-radius:var(--radius-pill);color:var(--text-tertiary);background:var(--bg-surface);border:1px solid var(--border-subtle);cursor:pointer;transition:all .3s var(--ease-out-quart);align-items:center;padding:8px 20px;font-size:12px;font-weight:600;display:inline-flex}.pill:hover{color:var(--text-primary);border-color:var(--border-hover)}.pill.is-active{color:#fff;background:var(--accent);border-color:var(--accent);box-shadow:0 0 20px var(--accent-glow)}.grid-bg{pointer-events:none;z-index:0;background-image:linear-gradient(#01199306 1px,#0000 1px),linear-gradient(90deg,#01199306 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.glow-orb{filter:blur(80px);pointer-events:none;z-index:0;border-radius:50%;position:absolute}.reveal{opacity:0;transition:opacity .8s var(--ease-out-expo), transform .8s var(--ease-out-expo);transform:translateY(40px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal-stagger>*{opacity:0;transition:opacity .8s var(--ease-out-expo), transform .8s var(--ease-out-expo);transform:translateY(40px)}.reveal-stagger.is-visible>*{opacity:1;transform:translateY(0)}.reveal-stagger.is-visible>:first-child{transition-delay:60ms}.reveal-stagger.is-visible>:nth-child(2){transition-delay:.12s}.reveal-stagger.is-visible>:nth-child(3){transition-delay:.18s}.reveal-stagger.is-visible>:nth-child(4){transition-delay:.24s}.reveal-stagger.is-visible>:nth-child(5){transition-delay:.3s}.reveal-stagger.is-visible>:nth-child(6){transition-delay:.36s}.reveal-stagger.is-visible>:nth-child(7){transition-delay:.42s}.reveal-stagger.is-visible>:nth-child(8){transition-delay:.48s}@keyframes kenburns{0%{transform:scale(1.08)translate(0)}to{transform:scale(1.18)translate(-1%,-.5%)}}@media (width<=768px){:root{--content-pad:16px}body{font-size:14px}.section{padding:60px 0}.section-title{font-size:32px}.section-desc{font-size:15px}.btn{padding:12px 24px;font-size:13px}}@media (width<=480px){:root{--content-pad:14px}}
