:root{--bg: #0a0c16;--bg-alt: #0e1121;--surface: rgba(255, 255, 255, .035);--surface-hover: rgba(255, 255, 255, .06);--border: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .18);--text: #e9ebf5;--muted: #9aa1bc;--accent: #5b8cff;--accent-2: #a463ff;--accent-3: #22d3ee;--grad: linear-gradient(115deg, var(--accent) 0%, var(--accent-2) 55%, var(--accent-3) 100%);--radius: 18px;--maxw: 1120px;--font-body: "Inter", system-ui, -apple-system, sans-serif;--font-display: "Space Grotesk", "Inter", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, Consolas, monospace;color-scheme:dark}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:80px}body{background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}ul,ol{list-style:none}h1,h2,h3{font-family:var(--font-display);line-height:1.15;letter-spacing:-.02em}.container{width:min(var(--maxw),100% - 32px);margin-inline:auto}.muted{color:var(--muted)}.grad-text{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:999px;font-weight:600;font-size:15px;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--grad);color:#fff;box-shadow:0 8px 30px -8px #7c63ff99}.btn-primary:hover{box-shadow:0 12px 36px -8px #7c63ffd9}.btn-ghost{border:1px solid var(--border-strong);background:var(--surface)}.btn-ghost:hover{background:var(--surface-hover);border-color:var(--accent)}.btn-small{padding:9px 16px;font-size:14px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:#5b8cff14;font-size:14px;color:#cfd5f0}.chips-small .chip{font-size:13px;padding:4px 10px}.link-btn{font-size:14px;font-weight:600;color:var(--accent-3)}.link-btn:hover{text-decoration:underline}.nav{position:sticky;top:0;z-index:50;background:#0a0c16b8;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--border)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;height:64px}.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:600}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:var(--grad);color:#fff;font-size:14px;font-weight:700}.nav-links{display:flex;gap:4px}.nav-links a{padding:6px 12px;border-radius:8px;font-size:14px;color:var(--muted);transition:color .2s,background .2s}.nav-links a:hover{color:var(--text);background:var(--surface-hover)}.hero{position:relative;padding:88px 0 72px;overflow:hidden}.hero-glow{position:absolute;inset:-20% -10% auto;height:720px;background:radial-gradient(40% 50% at 20% 30%,rgba(91,140,255,.28),transparent 70%),radial-gradient(35% 45% at 80% 20%,rgba(164,99,255,.25),transparent 70%),radial-gradient(30% 40% at 60% 80%,rgba(34,211,238,.12),transparent 70%);filter:blur(20px);pointer-events:none}.hero:after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:48px 48px;mask-image:radial-gradient(ellipse at 50% 30%,#000 30%,transparent 75%);-webkit-mask-image:radial-gradient(ellipse at 50% 30%,#000 30%,transparent 75%);pointer-events:none}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.15fr 1fr;gap:56px;align-items:center}.pill{display:inline-flex;align-items:center;gap:10px;padding:7px 14px;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);font-size:14px;color:#cfd5f0}.pulse{width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 #34d39999;animation:pulse 2s infinite}@keyframes pulse{70%{box-shadow:0 0 0 10px #34d39900}to{box-shadow:0 0 #34d39900}}.hero-title{margin-top:22px;font-size:clamp(44px,7vw,80px);font-weight:700;letter-spacing:-.035em}.hero-role{margin-top:10px;font-family:var(--font-display);font-size:clamp(20px,2.4vw,26px);font-weight:500;color:#cfd5f0}.hero-tagline{margin-top:18px;max-width:540px;font-size:18px;color:var(--muted)}.hero-ctas{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.hero-ctas.center{justify-content:center}.hero-meta{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:28px;font-size:14px;color:var(--muted)}.hero-meta a:hover{color:var(--text)}.code-card{min-width:0;border-radius:var(--radius);border:1px solid var(--border-strong);background:linear-gradient(180deg,#14182ceb,#0c0e1ceb);box-shadow:0 30px 80px -30px #5b8cff73;transform:perspective(1200px) rotateY(-6deg) rotateX(2deg);transition:transform .5s}.code-card:hover{transform:none}.code-head{display:flex;align-items:center;gap:7px;padding:14px 18px;border-bottom:1px solid var(--border)}.dot{width:11px;height:11px;border-radius:50%}.code-file{margin-left:10px;font-family:var(--font-mono);font-size:13px;color:var(--muted)}.code-card pre{padding:22px 20px 26px;overflow-x:auto;font-family:var(--font-mono);font-size:13.5px;line-height:1.75;color:#d7dcf2}.code-card .k{color:#c792ea}.code-card .t{color:#82aaff}.code-card .s{color:#c3e88d}.code-card .f{color:#22d3ee}.code-card .c{color:#6b7394;font-style:italic}.stats{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:72px}.stat{padding:22px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface)}.stat-value{display:block;font-family:var(--font-display);font-size:34px;font-weight:700;line-height:1.1}.stat-label{display:block;margin-top:6px;font-size:14px;color:var(--muted)}.section{padding:104px 0}.section-alt{background:var(--bg-alt);border-block:1px solid var(--border)}.kicker{font-family:var(--font-mono);font-size:13px;text-transform:uppercase;letter-spacing:.14em;color:var(--accent-3)}.section-title{margin:10px 0 44px;font-size:clamp(32px,4.4vw,48px);font-weight:700}.split{display:grid;grid-template-columns:1fr 1.4fr;gap:56px}.split .section-title{margin-bottom:0}.grid{display:grid;gap:20px}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.card{padding:28px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);transition:border-color .25s,background .25s,transform .25s}.card:hover{border-color:var(--border-strong);background:var(--surface-hover)}.card h3{font-size:21px}.card-label{margin-bottom:14px;font-family:var(--font-mono);font-size:13px!important;font-weight:500;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.prose p+p{margin-top:16px}.prose strong{color:var(--text);font-weight:600}.prose ul{display:grid;gap:10px}.prose li{position:relative;padding-left:22px;color:var(--muted)}.prose li:before{content:"";position:absolute;left:2px;top:.65em;width:8px;height:8px;border-radius:2px;background:var(--grad)}.prose a{color:var(--accent-3);text-decoration:underline}.about-photo{position:relative;max-width:340px;margin-top:36px;padding:4px;border-radius:24px;background:var(--grad);box-shadow:0 30px 70px -30px #7c63ff99}.about-photo img{display:block;width:100%;height:auto;border-radius:20px}.lead{font-size:18px;color:#c4c9e0}.reason{position:relative;overflow:hidden}.reason-num{display:block;margin-bottom:18px;font-family:var(--font-display);font-size:44px;font-weight:700;line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;opacity:.9}.reason p{margin-top:10px;color:var(--muted)}.reason:hover{transform:translateY(-4px)}.project{display:flex;flex-direction:column;gap:16px}.project:hover{transform:translateY(-4px);border-color:#5b8cff73}.project-media{margin:-8px -8px 4px;overflow:hidden;border-radius:12px;border:1px solid var(--border);background:#05060c}.project-media img{display:block;width:100%;height:auto}.more-card{justify-content:center;align-items:flex-start;border-style:dashed;border-color:var(--border-strong)}.more-icon{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--grad);color:#fff;font-size:24px;font-weight:700}.project-top{display:flex;justify-content:space-between;gap:12px;font-family:var(--font-mono);font-size:12.5px;color:var(--muted)}.project-cat{color:var(--accent-3)}.project-title{font-size:24px!important}.project-summary{color:var(--muted)}.metric{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;padding:14px 18px;border-radius:12px;background:#5b8cff12;border:1px solid rgba(91,140,255,.2)}.metric-value{font-family:var(--font-display);font-size:30px;font-weight:700;line-height:1.1}.metric-label{font-size:14px;color:var(--muted)}.project-details summary{cursor:pointer;font-weight:600;font-size:15px;list-style:none;color:var(--text)}.project-details summary::-webkit-details-marker{display:none}.project-details summary:before{content:"+";display:inline-block;width:18px;color:var(--accent);font-weight:700}.project-details[open] summary:before{content:"−"}.project-details .prose{margin-top:14px;font-size:15px}.project-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:auto;padding-top:16px;border-top:1px solid var(--border)}.timeline{display:grid;gap:20px}.timeline-head{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:8px 20px;margin-bottom:16px}.timeline-head .muted{margin-top:4px}.date{padding:5px 12px;border-radius:999px;border:1px solid var(--border);font-family:var(--font-mono);font-size:13px;color:var(--muted);white-space:nowrap}.edu h3{font-size:24px}.edu-gpa{margin-bottom:22px;color:var(--muted)}.edu-gpa strong{color:var(--text)}.cert{display:flex;flex-direction:column;gap:8px}.cert-icon{font-size:28px}.cert h3{font-size:18px}.contact-box{position:relative;overflow:hidden;padding:72px 32px;border-radius:28px;border:1px solid var(--border-strong);background:radial-gradient(60% 80% at 15% 0%,rgba(91,140,255,.22),transparent 70%),radial-gradient(60% 80% at 85% 100%,rgba(164,99,255,.22),transparent 70%),var(--bg-alt);text-align:center}.contact-title{max-width:760px;margin:12px auto 0;font-size:clamp(32px,5vw,54px);font-weight:700}.contact-text{max-width:560px;margin:18px auto 0;font-size:18px;color:var(--muted)}.footer{padding:32px 0 40px;text-align:center;font-size:14px;color:var(--muted)}.js .reveal{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}.js .reveal.visible{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transform:none;transition:none}.pulse{animation:none}.code-card{transform:none}}@media(max-width:960px){.nav-links{display:none}.hero-grid,.split{grid-template-columns:1fr;gap:40px}.code-card{transform:none}.stats,.grid-3{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.hero{padding:56px 0}.section{padding:72px 0}.brand-name{display:none}.grid-2,.grid-3{grid-template-columns:1fr}.stats{gap:12px;margin-top:48px}.stat{padding:16px}.stat-value{font-size:26px}.card{padding:22px}.contact-box{padding:52px 20px}}
