:root{--accent: #10b981;--accent-bright: #34d399;--accent-deep: #059669;--accent-soft: color-mix(in srgb, var(--accent) 14%, transparent);--accent-line: color-mix(in srgb, var(--accent) 32%, transparent);--font-sans: "Geist", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--s8: 64px;--s9: 96px;--s10: 128px;--s11: 180px;--r-sm: 8px;--r-md: 12px;--r-lg: 18px;--r-xl: 26px;--ease: cubic-bezier(.22, 1, .36, 1);--ease-out: cubic-bezier(.16, 1, .3, 1);--maxw: 1120px;--nav-h: 64px}:root,:root[data-theme=dark]{--bg: #08080a;--bg-2: #0d0d10;--surface: #141417;--surface-2: #19191d;--surface-hover: #1f1f24;--border: rgba(255, 255, 255, .07);--border-strong: rgba(255, 255, 255, .13);--text: #f4f4f3;--text-2: #a0a0a8;--text-3: #6c6c75;--grid-line: rgba(255, 255, 255, .035);--shadow: 0 1px 0 rgba(255,255,255,.04) inset, 0 24px 60px -24px rgba(0,0,0,.7);--glow: radial-gradient(60% 60% at 50% 0%, rgba(249,115,22,.16), transparent 70%);color-scheme:dark}:root[data-theme=light]{--bg: #faf9f7;--bg-2: #f3f1ee;--surface: #ffffff;--surface-2: #faf9f7;--surface-hover: #f3f1ee;--border: rgba(20, 16, 12, .09);--border-strong: rgba(20, 16, 12, .16);--text: #1a1714;--text-2: #5c564f;--text-3: #8a837a;--grid-line: rgba(20, 16, 12, .04);--shadow: 0 1px 2px rgba(20,16,12,.04), 0 18px 50px -28px rgba(20,16,12,.28);--glow: radial-gradient(60% 60% at 50% 0%, rgba(249,115,22,.1), transparent 70%);color-scheme:light}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--nav-h) + 24px)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;overflow-x:hidden;transition:background .5s var(--ease),color .5s var(--ease)}::selection{background:var(--accent);color:#fff}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}img,svg{display:block}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--s5)}section{position:relative}.section-pad{padding-block:var(--s10)}@media (max-width: 880px){.section-pad{padding-block:var(--s9)}}@media (max-width: 560px){.section-pad{padding-block:var(--s8)}}.eyebrow{font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);display:inline-flex;align-items:center;gap:var(--s2);margin-bottom:var(--s4)}.eyebrow:before{content:"";width:22px;height:1px;background:var(--accent-line)}.section-title{font-size:clamp(28px,4vw,44px);font-weight:600;letter-spacing:-.03em;line-height:1.05;margin-bottom:var(--s4)}.section-lead{color:var(--text-2);font-size:clamp(15px,1.6vw,18px);max-width:56ch}.nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--nav-h);display:flex;align-items:center;transition:background .3s var(--ease),border-color .3s var(--ease),backdrop-filter .3s;border-bottom:1px solid transparent}.nav.scrolled{background:color-mix(in srgb,var(--bg) 72%,transparent);backdrop-filter:blur(14px) saturate(150%);-webkit-backdrop-filter:blur(14px) saturate(150%);border-bottom-color:var(--border)}.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:var(--s5)}.brand{display:flex;align-items:center;gap:var(--s3);font-weight:600;letter-spacing:-.02em}.brand .logo-mark{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:linear-gradient(150deg,var(--accent-bright),var(--accent-deep));box-shadow:0 4px 14px -5px var(--accent),0 0 0 1px #ffffff1a inset;transition:transform .25s var(--ease),box-shadow .25s}.brand .logo-mark svg{width:19px;height:19px}.brand:hover .logo-mark{transform:rotate(-4deg) scale(1.04);box-shadow:0 6px 20px -6px var(--accent),0 0 0 1px #ffffff24 inset}.brand .brand-name{font-size:15px;white-space:nowrap}.nav-links{display:flex;align-items:center;gap:2px}.nav-links a{font-size:14px;color:var(--text-2);padding:8px 12px;border-radius:8px;position:relative;transition:color .2s,background .2s}.nav-links a:hover{color:var(--text);background:var(--surface-hover)}.nav-links a.active{color:var(--text)}.nav-links a.active:after{content:"";position:absolute;left:12px;right:12px;bottom:2px;height:2px;border-radius:2px;background:var(--accent)}.nav-actions{display:flex;align-items:center;gap:var(--s3)}.cmd-trigger{display:flex;align-items:center;gap:var(--s2);color:var(--text-3);background:var(--surface);border:1px solid var(--border);padding:0 8px 0 9px;height:38px;border-radius:10px;transition:border-color .2s,color .2s,background .2s}.cmd-trigger svg{width:16px;height:16px}.cmd-trigger:hover{border-color:var(--border-strong);color:var(--text-2)}.cmd-trigger kbd{font-family:var(--font-mono);font-size:11px;background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:2px 6px;color:var(--text-2)}.theme-toggle{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;border:1px solid var(--border);background:var(--surface);color:var(--text-2);transition:color .2s,border-color .2s,background .2s}.theme-toggle:hover{color:var(--text);border-color:var(--border-strong)}.theme-toggle svg{width:17px;height:17px}.theme-toggle .sun{display:none}:root[data-theme=light] .theme-toggle .sun{display:block}:root[data-theme=light] .theme-toggle .moon{display:none}.btn{display:inline-flex;align-items:center;gap:var(--s2);font-size:14px;font-weight:500;padding:9px 16px;border-radius:10px;transition:transform .15s var(--ease),box-shadow .2s,background .2s,border-color .2s}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 6px 20px -8px var(--accent)}.btn-primary:hover{background:var(--accent-bright);transform:translateY(-1px);box-shadow:0 10px 26px -8px var(--accent)}.btn-ghost{background:var(--surface);border:1px solid var(--border);color:var(--text)}.btn-ghost:hover{border-color:var(--border-strong);background:var(--surface-hover)}.nav-burger{display:none}.hero{padding-top:calc(var(--nav-h) + var(--s9));padding-bottom:var(--s9);overflow:hidden}.hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:var(--glow)}.hero-grid{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(120% 80% at 50% 0%,#000 30%,transparent 75%);mask-image:radial-gradient(120% 80% at 50% 0%,#000 30%,transparent 75%)}.hero .wrap{position:relative;z-index:1}.status-pill{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--font-mono);font-size:12px;letter-spacing:.04em;color:var(--text-2);background:var(--surface);border:1px solid var(--border);padding:6px 12px 6px 10px;border-radius:99px;margin-bottom:var(--s5)}.status-pill strong{color:var(--text);font-weight:500}.status-dot{width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 #22c55e80;animation:pulse 2.4s var(--ease) infinite}@keyframes pulse{0%{box-shadow:0 0 #22c55e80}70%{box-shadow:0 0 0 7px #22c55e00}to{box-shadow:0 0 #22c55e00}}.hero h1{font-size:clamp(40px,7.5vw,88px);font-weight:600;letter-spacing:-.045em;line-height:.98;margin-bottom:var(--s5)}.hero h1 .accent-text{background:linear-gradient(120deg,var(--accent-bright),var(--accent-deep));-webkit-background-clip:text;background-clip:text;color:transparent}.hero-sub{font-size:clamp(17px,2.2vw,22px);color:var(--text-2);max-width:60ch;margin-bottom:var(--s6);line-height:1.55}.hero-sub strong{color:var(--text);font-weight:500}.hero-cta{display:flex;flex-wrap:wrap;gap:var(--s3);align-items:center}.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5);margin-top:var(--s8);border-top:1px solid var(--border);padding-top:var(--s6);max-width:720px}.hero-stats .stat .num{font-size:clamp(24px,3vw,34px);font-weight:600;letter-spacing:-.03em}.hero-stats .stat .num .u{color:var(--accent)}.hero-stats .stat .lbl{font-family:var(--font-mono);font-size:12px;letter-spacing:.05em;color:var(--text-3);text-transform:uppercase;margin-top:var(--s1)}.hero-companies{display:flex;align-items:center;gap:var(--s4);margin-top:var(--s6);max-width:720px;flex-wrap:wrap}.companies-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--text-3);text-transform:uppercase;white-space:nowrap}.companies-list{display:flex;flex-wrap:wrap;gap:var(--s2)}.company-chip{display:inline-flex;align-items:center;font-size:13px;font-weight:500;color:var(--text-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:4px 12px;text-decoration:none;transition:color .2s,border-color .2s}.company-chip:hover{color:var(--accent);border-color:var(--accent-line)}.about-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--s8);align-items:start}.about-copy p{color:var(--text-2);font-size:17px;line-height:1.7;margin-bottom:var(--s4)}.about-copy p strong{color:var(--text);font-weight:500}.about-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s6);box-shadow:var(--shadow)}.about-avatar{width:88px;height:88px;margin-bottom:var(--s5);box-shadow:0 0 0 1px var(--border),0 0 0 5px var(--surface-2)}.about-card .row{display:flex;justify-content:space-between;gap:var(--s4);padding:var(--s3) 0;border-top:1px solid var(--border);font-size:14px}.about-card .row:first-of-type{border-top:none}.about-card .row .k{color:var(--text-3);font-family:var(--font-mono);font-size:12.5px;letter-spacing:.03em}.about-card .row .v{color:var(--text);text-align:right;font-weight:500}.why-h{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-bottom:var(--s4)}.why-list{list-style:none;display:flex;flex-direction:column;gap:var(--s3)}.why-list li{display:flex;gap:var(--s3);align-items:flex-start;font-size:14.5px;line-height:1.45;color:var(--text-2)}.why-list li strong{color:var(--text);font-weight:600}.why-ic{flex:none;width:22px;height:22px;border-radius:7px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);margin-top:1px}.why-ic svg{width:13px;height:13px}.why-status{display:inline-flex;align-items:center;gap:var(--s2);margin-top:var(--s5);padding-top:var(--s5);border-top:1px solid var(--border);font-size:13.5px;color:var(--text-2);font-weight:500}.why-status .status-dot{background:#22c55e}.timeline{position:relative;margin-top:var(--s7)}.timeline:before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:1px;background:linear-gradient(var(--accent-line),var(--border) 30%,var(--border))}.tl-item{position:relative;padding-left:var(--s7);padding-bottom:var(--s7)}.tl-item:last-child{padding-bottom:0}.tl-dot{position:absolute;left:0;top:4px;width:15px;height:15px;border-radius:50%;background:var(--surface);border:2px solid var(--accent);box-shadow:0 0 0 4px var(--bg),0 0 12px -2px var(--accent)}.tl-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s5) var(--s6);transition:border-color .25s,transform .25s var(--ease),box-shadow .25s}.tl-card:hover{border-color:var(--border-strong);transform:translateY(-2px);box-shadow:var(--shadow)}.tl-top{display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--s3);align-items:baseline}.tl-role{font-size:18px;font-weight:600;letter-spacing:-.01em}.tl-co{color:var(--accent);font-size:14px;font-weight:500;margin-top:2px}.tl-date{font-family:var(--font-mono);font-size:12.5px;color:var(--text-3);white-space:nowrap}.tl-card p{color:var(--text-2);font-size:15px;line-height:1.65;margin-top:var(--s3)}.tl-tags{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s4)}.tag{font-family:var(--font-mono);font-size:11.5px;letter-spacing:.02em;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);border-radius:7px;padding:4px 9px}.skills-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s5);margin-top:var(--s7)}.skill-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s6);transition:border-color .25s,transform .25s var(--ease)}.skill-card:hover{border-color:var(--border-strong);transform:translateY(-2px)}.skill-card .sc-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);margin-bottom:var(--s4)}.skill-card .sc-icon svg{width:20px;height:20px}.skill-card h3{font-size:16px;font-weight:600;margin-bottom:var(--s4);letter-spacing:-.01em}.skill-chips{display:flex;flex-wrap:wrap;gap:var(--s2)}.chip{font-size:13px;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:6px 11px;transition:border-color .2s,color .2s,background .2s}.skill-card:hover .chip{border-color:var(--border-strong)}.skill-stack{display:flex;flex-wrap:wrap;gap:var(--s2)}.stack-item{display:inline-flex;align-items:center;gap:9px;font-size:13.5px;font-weight:500;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:6px 12px 6px 7px;transition:border-color .22s,background .22s,transform .22s var(--ease),box-shadow .22s;opacity:0;transform:translateY(10px) scale(.96)}.skill-card.in .stack-item{animation:chipIn .5s var(--ease-out) forwards}@keyframes chipIn{to{opacity:1;transform:none}}.skill-card.in .stack-item:nth-child(1){animation-delay:.04s}.skill-card.in .stack-item:nth-child(2){animation-delay:.1s}.skill-card.in .stack-item:nth-child(3){animation-delay:.16s}.skill-card.in .stack-item:nth-child(4){animation-delay:.22s}.skill-card.in .stack-item:nth-child(5){animation-delay:.28s}.skill-card.in .stack-item:nth-child(6){animation-delay:.34s}.si-badge{flex:none;width:28px;height:28px;border-radius:8px;display:grid;place-items:center;background:#fff;box-shadow:0 0 0 1px #14100c0f,0 1px 2px #14100c14;color:var(--accent)}.si-badge img{width:18px;height:18px}.si-badge svg{width:17px;height:17px}.skill-card.in .si-badge{animation:siFloat 3.6s var(--ease) infinite}.skill-card.in .stack-item:nth-child(odd) .si-badge{animation-duration:4.2s}.skill-card.in .stack-item:nth-child(3n) .si-badge{animation-delay:-1.4s}.skill-card.in .stack-item:nth-child(2n) .si-badge{animation-delay:-.7s}@keyframes siFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.stack-item:hover{border-color:var(--accent-line);background:var(--surface);transform:translateY(-3px);box-shadow:0 10px 22px -12px var(--accent)}.stack-item:hover .si-badge{animation-play-state:paused;transform:scale(1.12) rotate(-6deg);transition:transform .25s var(--ease)}@media (prefers-reduced-motion: reduce){.skill-card .stack-item{opacity:1;transform:none;animation:none}.skill-card.in .si-badge{animation:none}}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s5);margin-top:var(--s7)}.proj-card{grid-column:span 1;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:border-color .3s,transform .3s var(--ease),box-shadow .3s}.proj-card.featured{grid-column:span 2}.proj-card:hover{border-color:var(--accent-line);transform:translateY(-3px);box-shadow:0 28px 60px -28px #0009}.proj-media{position:relative;overflow:hidden;border-bottom:1px solid var(--border)}.proj-card.featured .proj-thumb{height:320px}.proj-thumb{width:100%;height:200px;background:var(--surface-2)}.proj-shade{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,transparent 55%,color-mix(in srgb,var(--surface) 80%,transparent))}.proj-live{position:absolute;top:var(--s4);right:var(--s4);z-index:2;display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;background:color-mix(in srgb,var(--bg) 70%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-strong);color:var(--text);padding:5px 10px;border-radius:99px}.proj-live .ld{width:6px;height:6px;border-radius:50%;background:#22c55e}.proj-body{padding:var(--s5) var(--s6) var(--s6);display:flex;flex-direction:column;flex:1}.proj-head{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}.proj-name{font-size:19px;font-weight:600;letter-spacing:-.02em}.proj-launch{flex:none;width:38px;height:38px;border-radius:10px;display:grid;place-items:center;border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);transition:color .2s,border-color .2s,background .2s,transform .2s var(--ease)}.proj-launch svg{width:18px;height:18px;transition:transform .2s var(--ease)}.proj-launch:hover{color:#fff;background:var(--accent);border-color:var(--accent);transform:translateY(-2px);box-shadow:0 8px 20px -8px var(--accent)}.proj-launch:hover svg{transform:translate(1px,-1px)}.proj-card:hover .proj-launch{border-color:var(--accent-line);color:var(--accent)}.proj-card:hover .proj-launch:hover{color:#fff}.proj-blurb{color:var(--text-2);font-size:14.5px;line-height:1.6;margin-top:var(--s3)}.proj-card.featured .proj-blurb{max-width:62ch}.proj-tags{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:var(--s5);padding-top:var(--s4);border-top:1px solid var(--border)}.ps-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}.edu-cert{display:grid;grid-template-columns:1fr 1fr;gap:var(--s5);margin-top:var(--s7);align-items:start}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s6);transition:border-color .25s,transform .25s var(--ease)}.panel:hover{border-color:var(--border-strong);transform:translateY(-2px)}.panel-h{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-bottom:var(--s5);display:flex;align-items:center;gap:var(--s2)}.edu-item{display:flex;gap:var(--s4)}.edu-logo{flex:none;width:46px;height:46px;border-radius:12px;display:grid;place-items:center;background:var(--surface-2);border:1px solid var(--border);font-family:var(--font-mono);font-weight:600;color:var(--accent);font-size:15px}.edu-item h3{font-size:16px;font-weight:600;letter-spacing:-.01em}.edu-item .deg{color:var(--text-2);font-size:14px;margin-top:2px}.edu-item .dt{font-family:var(--font-mono);font-size:12px;color:var(--text-3);margin-top:var(--s3)}.cert-link{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-size:13px;font-weight:500;margin-top:var(--s4);transition:gap .2s}.cert-link:hover{gap:10px}.cert-desc{color:var(--text-2);font-size:14px;line-height:1.6;margin-top:var(--s3)}.contact{text-align:center}.contact-card{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:var(--s10) var(--s6);box-shadow:var(--shadow)}.contact-card .glow2{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--glow);pointer-events:none}.contact-card>*{position:relative;z-index:1}.contact h2{font-size:clamp(30px,5vw,56px);font-weight:600;letter-spacing:-.035em;line-height:1.02}.contact .section-lead{margin:var(--s4) auto var(--s7)}.contact-actions{display:flex;flex-wrap:wrap;gap:var(--s3);justify-content:center}.contact-links{display:flex;flex-wrap:wrap;gap:var(--s5);justify-content:center;margin-top:var(--s8);padding-top:var(--s6);border-top:1px solid var(--border)}.contact-links a{display:inline-flex;align-items:center;gap:var(--s2);color:var(--text-2);font-size:14px;transition:color .2s}.contact-links a:hover{color:var(--accent)}.contact-links svg{width:16px;height:16px}footer{border-top:1px solid var(--border);padding-block:var(--s6)}footer .wrap{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--s3);color:var(--text-3);font-size:13px}footer .mono{font-family:var(--font-mono)}.cmdk-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:none;background:color-mix(in srgb,var(--bg) 55%,rgba(0,0,0,.5));backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);align-items:flex-start;justify-content:center;padding-top:14vh}.cmdk-overlay.open{display:flex;animation:fade .18s var(--ease)}@keyframes fade{0%{opacity:0}to{opacity:1}}.cmdk{width:min(560px,92vw);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-lg);box-shadow:0 30px 80px -20px #000000a6;overflow:hidden;animation:pop .2s var(--ease-out)}@keyframes pop{0%{transform:translateY(8px) scale(.98);opacity:0}to{transform:none;opacity:1}}.cmdk-search{display:flex;align-items:center;gap:var(--s3);padding:var(--s4) var(--s5);border-bottom:1px solid var(--border)}.cmdk-search svg{width:18px;height:18px;color:var(--text-3);flex:none}.cmdk-search input{flex:1;background:none;border:none;outline:none;color:var(--text);font-size:16px;font-family:var(--font-sans)}.cmdk-search input::placeholder{color:var(--text-3)}.cmdk-list{max-height:340px;overflow-y:auto;padding:var(--s2)}.cmdk-group-label{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);padding:var(--s3) var(--s3) var(--s2)}.cmdk-item{display:flex;align-items:center;gap:var(--s3);padding:10px 12px;border-radius:10px;cursor:pointer;color:var(--text-2);font-size:14.5px}.cmdk-item .ci-ic{width:20px;height:20px;display:grid;place-items:center;color:var(--text-3);flex:none}.cmdk-item .ci-ic svg{width:17px;height:17px}.cmdk-item .ci-meta{margin-left:auto;font-family:var(--font-mono);font-size:11px;color:var(--text-3)}.cmdk-item.sel,.cmdk-item:hover{background:var(--surface-hover);color:var(--text)}.cmdk-item.sel .ci-ic,.cmdk-item:hover .ci-ic{color:var(--accent)}.cmdk-empty{padding:var(--s6);text-align:center;color:var(--text-3);font-size:14px}.cmdk-foot{display:flex;gap:var(--s5);padding:var(--s3) var(--s5);border-top:1px solid var(--border);font-size:11.5px;color:var(--text-3);font-family:var(--font-mono)}.cmdk-foot kbd{background:var(--surface-2);border:1px solid var(--border);border-radius:4px;padding:1px 5px;margin-right:4px}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out)}.reveal.in{opacity:1;transform:none}.reveal[data-d="1"]{transition-delay:.06s}.reveal[data-d="2"]{transition-delay:.12s}.reveal[data-d="3"]{transition-delay:.18s}.reveal[data-d="4"]{transition-delay:.24s}@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}.status-dot{animation:none}}@media (max-width: 940px){.about-grid{grid-template-columns:1fr;gap:var(--s6)}.skills-grid,.projects-grid{grid-template-columns:1fr}.proj-card.featured{grid-column:span 1}.proj-card.featured .proj-thumb{height:220px}.edu-cert{grid-template-columns:1fr}}@media (max-width: 760px){.nav-links,.cmd-trigger{display:none}.nav-burger{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--text)}.nav-burger svg{width:18px;height:18px}.hero-stats{grid-template-columns:1fr;gap:var(--s4)}.hero-stats .stat{display:flex;align-items:baseline;gap:var(--s4)}.hero-stats .stat .lbl{margin-top:0}.btn-hide-sm,.hero .status-pill{display:none}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar,body::-webkit-scrollbar{width:0;height:0;display:none}}.drawer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;display:none}.drawer.open{display:block}.drawer-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--bg) 50%,rgba(0,0,0,.55));backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:fade .25s var(--ease)}.drawer-panel{position:absolute;top:0;right:0;bottom:0;width:min(360px,88vw);background:var(--surface);border-left:1px solid var(--border);padding:var(--s5) var(--s5) calc(var(--s5) + env(safe-area-inset-bottom));display:flex;flex-direction:column;box-shadow:-30px 0 80px -30px #0009;animation:slidein .34s var(--ease-out)}@keyframes slidein{0%{transform:translate(100%)}to{transform:none}}.drawer-top{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--s5);margin-bottom:var(--s4);border-bottom:1px solid var(--border)}.drawer-brand{display:flex;align-items:center;gap:var(--s3);font-size:15px;font-weight:600;letter-spacing:-.02em}.drawer-brand .logo-mark{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:linear-gradient(150deg,var(--accent-bright),var(--accent-deep));box-shadow:0 4px 14px -5px var(--accent),0 0 0 1px #ffffff1a inset}.drawer-brand .logo-mark svg{width:18px;height:18px}.drawer-close{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:var(--text-2);border:1px solid var(--border);background:var(--surface-2);transition:color .2s,border-color .2s}.drawer-close svg{width:18px;height:18px}.drawer-close:hover{color:var(--text);border-color:var(--border-strong)}.drawer-nav{display:flex;flex-direction:column;flex:1}.drawer-nav a{display:flex;align-items:center;gap:var(--s4);padding:var(--s4) var(--s3);border-radius:12px;color:var(--text);font-size:19px;font-weight:500;letter-spacing:-.02em;position:relative;transition:background .2s,padding-left .25s var(--ease);opacity:0;transform:translate(14px);animation:drawerIn .4s var(--ease-out) forwards}.drawer-nav a:nth-child(1){animation-delay:.06s}.drawer-nav a:nth-child(2){animation-delay:.1s}.drawer-nav a:nth-child(3){animation-delay:.14s}.drawer-nav a:nth-child(4){animation-delay:.18s}.drawer-nav a:nth-child(5){animation-delay:.22s}.drawer-nav a:nth-child(6){animation-delay:.26s}@keyframes drawerIn{to{opacity:1;transform:none}}.drawer-nav a:hover,.drawer-nav a:active{background:var(--surface-hover);padding-left:var(--s5)}.drawer-nav .dn-num{font-family:var(--font-mono);font-size:12px;color:var(--accent);font-weight:500;min-width:22px}.drawer-nav .dn-label{flex:1}.drawer-nav .dn-arrow{width:18px;height:18px;color:var(--text-3);transition:transform .2s var(--ease),color .2s}.drawer-nav a:hover .dn-arrow{color:var(--accent);transform:translate(3px)}.drawer-foot{display:flex;flex-direction:column;gap:var(--s4);padding-top:var(--s5);margin-top:var(--s4);border-top:1px solid var(--border)}.drawer-cta{justify-content:center;width:100%;padding-block:13px;font-size:15px}.drawer-meta{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--text-3)}.drawer-meta a{color:var(--text-2)}.drawer-meta a:active{color:var(--accent)}@media (prefers-reduced-motion: reduce){.drawer-panel,.drawer-scrim,.drawer-nav a{animation:none}.drawer-nav a{opacity:1;transform:none}}:root{--feel-radius: 1;--feel-title-weight: 600;--feel-title-tracking: -.03em;--feel-surface-shadow: var(--shadow);--feel-border-mix: 100%;transition:background .5s var(--ease),color .5s var(--ease)}.tl-card,.skill-card,.proj-card,.panel,.about-card,.contact-card,.btn,.chip,.tag,.cmd-trigger,.theme-toggle,.proj-launch,.status-pill,.why-ic{transition:border-radius .45s var(--ease),box-shadow .45s var(--ease),border-color .3s var(--ease),background .3s var(--ease),transform .25s var(--ease)}:root[data-feel=soft]{--r-sm: 12px;--r-md: 18px;--r-lg: 26px;--r-xl: 38px;--title-tracking-soft: -.02em}:root[data-feel=soft] .section-title{letter-spacing:-.02em}:root[data-feel=soft] .hero h1{letter-spacing:-.035em}:root[data-feel=soft] .tl-card,:root[data-feel=soft] .skill-card,:root[data-feel=soft] .proj-card,:root[data-feel=soft] .panel,:root[data-feel=soft] .about-card,:root[data-feel=soft] .contact-card{box-shadow:0 2px 4px #0000000a,0 30px 60px -30px #00000059}:root[data-feel=soft] .btn{border-radius:99px}:root[data-feel=soft] .status-pill,:root[data-feel=soft] .proj-live{border-radius:99px}:root[data-feel=editorial]{--r-sm: 4px;--r-md: 6px;--r-lg: 10px;--r-xl: 14px;--border: color-mix(in srgb, var(--text) 8%, transparent)}:root[data-feel=editorial] .section-title{font-weight:500;letter-spacing:-.045em;font-size:clamp(34px,5vw,56px)}:root[data-feel=editorial] .hero h1{font-weight:500;letter-spacing:-.05em;font-size:clamp(46px,8.5vw,104px)}:root[data-feel=editorial] .section-lead,:root[data-feel=editorial] .hero-sub{font-size:clamp(17px,2vw,21px)}:root[data-feel=editorial] .eyebrow{letter-spacing:.26em}:root[data-feel=editorial] .tl-card,:root[data-feel=editorial] .skill-card,:root[data-feel=editorial] .proj-card,:root[data-feel=editorial] .panel,:root[data-feel=editorial] .about-card{box-shadow:none}.about-card,.tl-card,.skill-card,.panel,.contact-card,.proj-card{border-radius:var(--r-lg)}.skill-card .sc-icon,.why-ic{border-radius:var(--r-sm)}.hero-grid,.hero-bg{transition:opacity .6s var(--ease)}:root[data-backdrop=aurora] .hero-grid{opacity:0}:root[data-backdrop=aurora]{--glow: radial-gradient(46% 55% at 22% 0%, color-mix(in srgb, var(--accent) 26%, transparent), transparent 70%), radial-gradient(42% 52% at 82% 8%, color-mix(in srgb, var(--accent-bright) 20%, transparent), transparent 72%), radial-gradient(60% 60% at 50% 0%, color-mix(in srgb, var(--accent) 8%, transparent), transparent 75%)}:root[data-backdrop=aurora] .hero-bg{filter:saturate(140%)}:root[data-backdrop=minimal] .hero-grid{opacity:0}:root[data-backdrop=minimal]{--glow: radial-gradient(50% 36% at 50% 0%, color-mix(in srgb, var(--accent) 6%, transparent), transparent 72%)}#tweaks-root:empty{display:none}img.about-avatar{object-fit:cover;border-radius:50%;display:block}div.about-avatar{display:grid;place-items:center;border-radius:50%;background:linear-gradient(150deg,var(--accent-bright),var(--accent-deep));color:#fff;font-family:var(--font-mono);font-weight:600;font-size:30px;box-shadow:0 0 0 1px var(--border),0 0 0 5px var(--surface-2)}.proj-thumb-img{width:100%;height:100%;display:block;object-fit:contain;padding:var(--s6)}.proj-thumb-ph{position:relative;display:grid;place-items:center;overflow:hidden;background:radial-gradient(120% 140% at 0% 0%,color-mix(in srgb,var(--accent) 22%,transparent),transparent 60%),var(--surface-2)}.proj-thumb-ph:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(var(--grid-line) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line) 1px,transparent 1px);background-size:30px 30px}.proj-thumb-ph .ph-initial{position:relative;z-index:1;font-family:var(--font-mono);font-weight:600;font-size:64px;color:color-mix(in srgb,var(--accent) 70%,var(--text));opacity:.9;letter-spacing:-.04em}
