:root{--bg:#0a0b0f;--surface:#15171c;--surface-hover:#1b1e25;--border:#23262e;--text:#e8e9ec;--text-muted:#8b8f98;--text-faint:#5a5e68;--accent:#2dd4bf;--accent-dim:#1f9c8d;--accent-amber:#f5a623;--font-display:"Space Grotesk", sans-serif;--font-body:"Inter", sans-serif;--font-mono:"JetBrains Mono", monospace;--max-width:1120px;--radius:10px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;line-height:1.6}::selection{background:var(--accent);color:var(--bg)}a{color:inherit;text-decoration:none}.wrap{max-width:var(--max-width);margin:0 auto;padding:0 24px}section{position:relative}.eyebrow{font-family:var(--font-mono);color:var(--accent);letter-spacing:.02em;align-items:center;gap:8px;margin-bottom:14px;font-size:13px;display:flex}.eyebrow:before{content:"";background:var(--accent);width:6px;height:6px;box-shadow:0 0 8px var(--accent);border-radius:50%}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600}.section-title{margin-bottom:12px;font-size:clamp(28px,4vw,40px)}.section-sub{color:var(--text-muted);max-width:560px;margin-bottom:48px;font-size:16px}.reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}.nav{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#0a0b0fbf;position:fixed;top:0;left:0;right:0}.nav .wrap{justify-content:space-between;align-items:center;height:64px;display:flex}.logo{font-family:var(--font-mono);color:var(--text);font-size:17px;font-weight:600}.logo span{color:var(--accent)}.nav-links{gap:32px;list-style:none;display:flex}.nav-links a{color:var(--text-muted);font-size:14px;transition:color .2s}.nav-links a:hover{color:var(--text)}.nav-cta{align-items:center;gap:12px;display:flex}.btn{font-family:var(--font-body);border:1px solid var(--border);cursor:pointer;border-radius:7px;align-items:center;gap:8px;padding:9px 18px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent);color:#06110f;border-color:var(--accent)}.btn-primary:hover{background:var(--accent-dim);border-color:var(--accent-dim)}.btn-ghost{color:var(--text);background:0 0}.btn-ghost:hover{background:var(--surface-hover);border-color:var(--text-faint)}.hero{grid-template-columns:1.05fr .95fr;align-items:center;gap:56px;padding:160px 0 100px;display:grid}.hero-headline{margin-bottom:20px;font-size:clamp(34px,5vw,54px);line-height:1.08}.hero-headline .hl{color:var(--accent)}.hero-sub{color:var(--text-muted);max-width:480px;margin-bottom:32px;font-size:17px}.hero-actions{flex-wrap:wrap;gap:14px;margin-bottom:28px;display:flex}.hero-meta{font-family:var(--font-mono);color:var(--text-faint);flex-wrap:wrap;gap:22px;font-size:13px;display:flex}.hero-meta a{color:var(--text-faint);transition:color .2s}.hero-meta a:hover{color:var(--accent)}.terminal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:0 20px 60px -20px #0009}.terminal-bar{border-bottom:1px solid var(--border);align-items:center;gap:8px;padding:12px 16px;display:flex}.dot{border-radius:50%;width:11px;height:11px}.dot-r{background:#ff5f57}.dot-y{background:#febc2e}.dot-g{background:#28c840}.terminal-title{font-family:var(--font-mono);color:var(--text-faint);margin-left:8px;font-size:12px}.terminal-body{font-family:var(--font-mono);min-height:300px;padding:22px 20px;font-size:13.5px}.term-line{white-space:pre-wrap;word-break:break-word;margin-bottom:6px}.term-prompt{color:var(--accent)}.term-out{color:var(--text-muted)}.term-comment{color:var(--text-faint)}.cursor{background:var(--accent);vertical-align:middle;width:8px;height:15px;animation:1s step-start infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.bento{grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(140px,auto);gap:14px;display:grid}.bento-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:22px;transition:border-color .25s,transform .25s}.bento-card:hover{border-color:var(--accent-dim);transform:translateY(-3px)}.bento-card h3{color:var(--text);align-items:center;gap:8px;margin-bottom:12px;font-size:15px;display:flex}.bento-card h3:before{content:"";background:var(--accent-amber);border-radius:1px;width:6px;height:6px}.tag-row{flex-wrap:wrap;gap:7px;display:flex}.tag{font-family:var(--font-mono);color:var(--text-muted);border:1px solid var(--border);background:#ffffff08;border-radius:5px;padding:4px 9px;font-size:12px}.bento-card.span-2{grid-column:span 2}.projects-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.project-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;padding:26px;transition:border-color .25s,transform .25s;display:flex}.project-card:hover{border-color:var(--accent-dim);transform:translateY(-4px)}.project-top{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.project-title{font-family:var(--font-display);font-size:19px;font-weight:600}.project-metric{font-family:var(--font-mono);color:var(--accent-amber);white-space:nowrap;background:#f5a6231a;border-radius:5px;padding:4px 10px;font-size:12px}.project-desc{color:var(--text-muted);flex-grow:1;margin-bottom:18px;font-size:14.5px}.project-links{font-family:var(--font-mono);gap:16px;margin-top:auto;font-size:13px;display:flex}.project-links a{color:var(--text);align-items:center;gap:6px;transition:color .2s;display:flex}.project-links a:hover{color:var(--accent)}.git-log{border-left:2px solid var(--border);margin-left:6px}.commit{padding:0 0 40px 32px;position:relative}.commit:last-child{padding-bottom:0}.commit:before{content:"";background:var(--bg);border:2px solid var(--accent);border-radius:50%;width:12px;height:12px;position:absolute;top:4px;left:-7px}.commit-hash{font-family:var(--font-mono);color:var(--accent-amber);margin-bottom:4px;font-size:12px}.commit-role{font-family:var(--font-display);margin-bottom:2px;font-size:19px;font-weight:600}.commit-company{color:var(--text-muted);margin-bottom:4px;font-size:14px}.commit-date{font-family:var(--font-mono);color:var(--text-faint);margin-bottom:14px;font-size:12px}.commit-body{list-style:none}.commit-body li{color:var(--text-muted);margin-bottom:8px;padding-left:18px;font-size:14.5px;position:relative}.commit-body li:before{content:"+";color:var(--accent);font-family:var(--font-mono);position:absolute;left:0}.why-grid{grid-template-columns:1.3fr .7fr;align-items:start;gap:48px;display:grid}.why-text p{color:var(--text-muted);margin-bottom:18px;font-size:16px}.why-text strong{color:var(--text);font-weight:600}.stat-stack{flex-direction:column;gap:14px;display:flex}.stat-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px}.stat-num{font-family:var(--font-mono);color:var(--accent);font-size:26px;font-weight:600}.stat-label{color:var(--text-muted);margin-top:4px;font-size:13px}.contact{text-align:center;padding:100px 0 60px}.contact .section-sub{margin-left:auto;margin-right:auto}.contact-actions{justify-content:center;gap:16px;margin-top:8px;display:flex}footer{border-top:1px solid var(--border);font-family:var(--font-mono);color:var(--text-faint);justify-content:space-between;align-items:center;padding:28px 0;font-size:13px;display:flex}footer a{color:var(--text-faint);transition:color .2s}footer a:hover{color:var(--accent)}.footer-links{gap:20px;display:flex}section+section{margin-top:120px}@media (width<=860px){.hero{grid-template-columns:1fr;padding-top:130px}.bento{grid-template-columns:repeat(2,1fr)}.bento-card.span-2{grid-column:span 2}.projects-grid,.why-grid{grid-template-columns:1fr}.nav-links{display:none}section+section{margin-top:90px}}@media (width<=520px){.bento{grid-template-columns:1fr}.bento-card.span-2{grid-column:span 1}.hero-actions{flex-direction:column;align-items:stretch}footer{text-align:center;flex-direction:column;gap:14px}}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
