:root{--color-bg: #0d0d1a;--color-text: #f0f0f0;--color-text-muted: #a0a0a0;--color-surface: #1a1a2e;--color-surface-glass: rgba(26, 26, 46, .6);--color-border: rgba(141, 64, 238, .1);--color-accent: #8d40ee;--color-accent-2: #e040a0;--color-accent-gradient: linear-gradient(135deg, #8d40ee, #e040a0);--color-accent-text: #a855f7;--orb-opacity: .12;--noise-opacity: .03;--glow-shadow: 0 0 24px rgba(141, 64, 238, .3);--glow-shadow-hover: 0 0 40px rgba(141, 64, 238, .5);--card-hover-shadow: 0 12px 40px rgba(0, 0, 0, .3);--btn-primary-text: #ffffff;--timeline-gradient: linear-gradient(to bottom, #8d40ee, #e040a0, transparent);--font-display: "Satoshi", sans-serif;--font-body: "General Sans", sans-serif;--font-mono: "SF Mono", "Fira Code", Consolas, monospace;--radius: 16px;--radius-sm: 8px}html.light{--color-bg: #ffffff;--color-text: #1a1a2e;--color-text-muted: #5a5a7a;--color-surface: #f8f9fc;--color-surface-glass: rgba(255, 255, 255, .7);--color-border: rgba(0, 0, 0, .08);--color-accent: #6d28d9;--color-accent-2: #c026a0;--color-accent-gradient: linear-gradient(135deg, #6d28d9, #c026a0);--color-accent-text: #6d28d9;--orb-opacity: .06;--noise-opacity: .015;--glow-shadow: 0 4px 16px rgba(109, 40, 217, .12);--glow-shadow-hover: 0 8px 32px rgba(109, 40, 217, .2);--card-hover-shadow: 0 8px 32px rgba(0, 0, 0, .08);--timeline-gradient: linear-gradient(to bottom, #6d28d9, #c026a0, transparent)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;transition:background-color .4s ease,color .4s ease}.ambient-bg{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0;overflow:hidden}.orb{position:absolute;border-radius:50%;filter:blur(100px);opacity:var(--orb-opacity);animation:float 20s ease-in-out infinite;transition:opacity .4s ease}.orb-1{width:600px;height:600px;background:#8d40ee;top:-200px;right:-100px}.orb-2{width:500px;height:500px;background:#e040a0;bottom:-100px;left:-150px;animation-delay:-7s}.orb-3{width:300px;height:300px;background:#8d40ee;top:50%;left:40%;animation-delay:-14s}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-20px) scale(1.05)}66%{transform:translate(-20px,20px) scale(.95)}}.noise{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:1;opacity:var(--noise-opacity);transition:opacity .4s ease;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E")}.nav-pill{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:1000;background:var(--color-surface-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--color-border);border-radius:100px;padding:8px 24px;display:flex;align-items:center;gap:24px;transition:background-color .4s,border-color .4s}.nav-pill a{color:var(--color-text-muted);text-decoration:none;font-size:13px;font-weight:500;transition:color .2s;position:relative}.nav-pill a:hover,.nav-pill a.active{color:var(--color-text)}.nav-pill a.active:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:4px;height:4px;border-radius:50%;background:var(--color-accent-text)}.theme-toggle{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:color .2s;margin-left:4px}.theme-toggle:hover{color:var(--color-accent-text)}.theme-toggle svg{width:18px;height:18px}.icon-sun{display:none}.icon-moon,html.light .icon-sun{display:block}html.light .icon-moon{display:none}.content{position:relative;z-index:2;max-width:1000px;margin:0 auto;padding:0 32px}.hero{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding-top:80px}.hero-top{display:flex;align-items:center;gap:16px;margin-bottom:32px}.hero-photo{width:112px;height:112px;border-radius:50%;background:var(--color-accent-gradient);padding:2px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.hero-photo-inner{width:100%;height:100%;border-radius:50%;background:var(--color-surface);display:flex;align-items:center;justify-content:center;overflow:hidden;transition:background-color .4s}.hero-photo-inner img{width:100%;height:100%;object-fit:cover;border-radius:50%}.hero-status{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-muted);font-weight:500}.status-dot{width:8px;height:8px;border-radius:50%;background:#10b981;animation:pulse 2.4s ease-in-out infinite;flex-shrink:0}@keyframes pulse{0%,to{box-shadow:0 0 #10b98166}50%{box-shadow:0 0 0 6px #10b98100}}.hero-name{font-family:var(--font-display);font-size:clamp(3rem,6vw,5rem);font-weight:700;line-height:1;letter-spacing:-.03em;margin-bottom:16px;background:var(--color-accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-family:var(--font-body);font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:500;color:var(--color-text);margin-bottom:8px}.hero-tagline{font-family:var(--font-mono);font-size:14px;color:var(--color-text-muted);margin-bottom:32px;letter-spacing:-.02em}.hero-body{font-size:1.1rem;color:var(--color-text-muted);max-width:60ch;margin-bottom:40px;line-height:1.7}.hero-ctas{display:flex;gap:12px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:100px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s ease;cursor:pointer;border:none}.btn-primary{background:var(--color-accent-gradient);color:var(--btn-primary-text);box-shadow:var(--glow-shadow);border:none}.btn-primary:hover{box-shadow:var(--glow-shadow-hover);transform:translateY(-1px)}html.light .btn-primary{background:transparent;color:var(--color-accent-text);border:2px solid var(--color-accent-text);box-shadow:none}html.light .btn-primary:hover{background:#6d28d90f;box-shadow:0 4px 16px #6d28d91a;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--color-text);border:1px solid var(--color-border);transition:all .2s ease}.btn-ghost:hover{border-color:var(--color-accent-text);color:var(--color-accent-text);background:#8d40ee0f;transform:translateY(-1px)}.section{padding:80px 0}.section-label{font-family:var(--font-mono);font-size:12px;text-transform:uppercase;letter-spacing:.15em;color:var(--color-accent-text);margin-bottom:16px}.section-heading{font-family:var(--font-display);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:700;margin-bottom:48px;letter-spacing:-.02em}.bento-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:auto auto;gap:12px}.bento-card{background:var(--color-surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);border-radius:var(--radius);padding:28px;transition:all .3s ease;position:relative;overflow:hidden}.bento-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at var(--mouse-x, 50%) var(--mouse-y, 50%),rgba(141,64,238,.06),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none}.bento-card:hover:before{opacity:1}.bento-card:hover{border-color:#8d40ee33;transform:translateY(-2px)}.bento-card.span-2{grid-column:span 2}.bento-metric{font-family:var(--font-display);font-size:2.5rem;font-weight:700;background:var(--color-accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:4px}.bento-label{font-size:13px;color:var(--color-text-muted);font-weight:500}.bento-sublabel{font-family:var(--font-mono);font-size:11px;color:var(--color-text-muted);opacity:.6;margin-top:4px}.timeline{position:relative;padding-left:40px}.timeline:before{content:"";position:absolute;left:12px;top:0;bottom:0;width:2px;background:var(--timeline-gradient);border-radius:2px}.timeline-item{position:relative;margin-bottom:48px;padding:24px;background:var(--color-surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);border-radius:var(--radius);transition:all .3s ease}.timeline-item:hover{border-color:#8d40ee33;transform:translate(4px)}.timeline-item:before{content:"";position:absolute;left:-34px;top:30px;width:10px;height:10px;border-radius:50%;background:var(--color-accent-text);box-shadow:0 0 12px #8d40ee66}.timeline-dates{font-family:var(--font-mono);font-size:12px;color:var(--color-text-muted);margin-bottom:4px}.timeline-title{font-family:var(--font-display);font-size:1.25rem;font-weight:700;margin-bottom:4px}.timeline-company{font-size:14px;color:var(--color-accent-text);font-weight:500;margin-bottom:12px}.timeline-bullets{list-style:none;padding:0}.timeline-bullets li{font-size:14px;color:var(--color-text-muted);padding:4px 0 4px 16px;position:relative;line-height:1.6}.timeline-bullets li:before{content:"›";position:absolute;left:0;color:var(--color-accent-text);font-weight:700}.timeline-award{display:inline-flex;align-items:center;gap:6px;margin-top:12px;padding:6px 12px;background:#8d40ee14;border:1px solid rgba(141,64,238,.2);border-radius:100px;font-size:12px;font-weight:600;color:var(--color-accent-text)}.earlier-roles-toggle{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;padding:10px 20px;background:transparent;border:1px solid var(--color-border);border-radius:100px;color:var(--color-text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;width:fit-content;margin-left:auto;margin-right:auto;font-family:var(--font-body)}.earlier-roles-toggle:hover{border-color:var(--color-accent-text);color:var(--color-accent-text)}.earlier-roles{max-height:0;overflow:hidden;transition:max-height .5s ease,opacity .4s ease;opacity:0}.earlier-roles.expanded{max-height:600px;opacity:1}.timeline-item-compact{position:relative;margin-bottom:32px;border-left:2px solid var(--color-border);margin-left:-40px;padding:16px 20px 16px 56px;transition:border-color .3s}.timeline-item-compact:hover{border-left-color:var(--color-accent-text)}.projects-grid{display:flex;flex-direction:column;gap:24px}.project-card{position:relative;background:var(--color-surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);border-radius:var(--radius);padding:40px;transition:all .4s ease;overflow:hidden}.project-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:var(--color-accent-gradient);border-radius:4px 0 0 4px;opacity:.6;transition:opacity .3s}.project-card:hover:before{opacity:1}.project-card:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at var(--mouse-x, 30%) var(--mouse-y, 50%),rgba(141,64,238,.04),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none}.project-card:hover:after{opacity:1}.project-card:hover{border-color:#8d40ee26;transform:translateY(-3px);box-shadow:var(--card-hover-shadow)}.project-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;gap:16px}.project-title{font-family:var(--font-display);font-size:1.5rem;font-weight:700;letter-spacing:-.01em}.project-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#8d40ee14;border:1px solid rgba(141,64,238,.2);border-radius:100px;font-size:12px;font-weight:600;color:var(--color-accent-text);white-space:nowrap;flex-shrink:0}.project-problem{font-size:15px;color:var(--color-text-muted);margin-bottom:24px;line-height:1.7;max-width:70ch}.project-approach{margin-bottom:24px}.project-approach-label{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--color-accent-text);margin-bottom:10px;font-weight:600}.project-approach-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:6px}.project-approach-list li{font-size:14px;color:var(--color-text-muted);padding-left:18px;position:relative;line-height:1.6}.project-approach-list li:before{content:"→";position:absolute;left:0;color:var(--color-accent-text);font-weight:600}.project-result{display:flex;align-items:center;gap:24px;padding-top:20px;border-top:1px solid var(--color-border);flex-wrap:wrap}.project-result-metric{display:flex;flex-direction:column}.project-result-value{font-family:var(--font-display);font-size:1.5rem;font-weight:700;background:var(--color-accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.project-result-label{font-size:12px;color:var(--color-text-muted);font-family:var(--font-mono)}.project-cta{margin-left:auto;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:100px;font-size:13px;font-weight:600;color:var(--color-accent-text);border:1px solid rgba(141,64,238,.3);text-decoration:none;transition:all .2s;background:transparent}.project-cta:hover{background:#8d40ee14;border-color:var(--color-accent-text)}.project-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:16px}.project-tag{padding:3px 10px;border-radius:100px;font-size:11px;font-weight:500;background:#0000000a;border:1px solid var(--color-border);color:var(--color-text-muted)}.skills-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.skill-card{background:var(--color-surface-glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border);border-radius:var(--radius);padding:24px;transition:all .3s ease}.skill-card:hover{border-color:#8d40ee33;transform:translateY(-2px)}.skill-card-title{font-family:var(--font-display);font-size:1rem;font-weight:700;margin-bottom:12px}.skill-pills{display:flex;flex-wrap:wrap;gap:6px}.skill-pill{padding:4px 10px;border-radius:100px;font-size:12px;font-weight:500;background:#00000008;border:1px solid var(--color-border);color:var(--color-text-muted);transition:all .2s}.skill-pill:hover{border-color:var(--color-accent-text);color:var(--color-accent-text)}.contact-section{text-align:center;padding:120px 0}.contact-heading{font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);font-weight:700;margin-bottom:16px;letter-spacing:-.02em}.contact-sub{color:var(--color-text-muted);font-size:1.1rem;margin-bottom:40px;max-width:50ch;margin-left:auto;margin-right:auto}.contact-links{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-stagger>*{opacity:0;transform:translateY(16px);transition:opacity .5s ease,transform .5s ease}.reveal-stagger.visible>*{opacity:1;transform:translateY(0)}.reveal-stagger.visible>*:nth-child(1){transition-delay:0ms}.reveal-stagger.visible>*:nth-child(2){transition-delay:80ms}.reveal-stagger.visible>*:nth-child(3){transition-delay:.16s}.reveal-stagger.visible>*:nth-child(4){transition-delay:.24s}.reveal-stagger.visible>*:nth-child(5){transition-delay:.32s}.reveal-stagger.visible>*:nth-child(6){transition-delay:.4s}.reveal-stagger.visible>*:nth-child(7){transition-delay:.48s}@media (max-width: 768px){.content{padding:0 20px}.bento-grid{grid-template-columns:repeat(2,1fr)}.bento-card.span-2{grid-column:span 2}.skills-grid{grid-template-columns:1fr}.nav-pill{padding:8px 16px;gap:14px}.nav-pill a{font-size:12px}.timeline{padding-left:32px}.project-card{padding:24px}.project-header{flex-direction:column}.project-result{gap:16px}.project-cta{margin-left:0;margin-top:8px}}@media (max-width: 480px){.bento-grid{grid-template-columns:1fr}.bento-card.span-2{grid-column:span 1}.nav-pill{gap:10px}.nav-pill a{font-size:11px}}@media (prefers-reduced-motion: reduce){.reveal,.reveal-stagger>*{opacity:1!important;transform:none!important;transition:none!important}.orb,.status-dot{animation:none!important}}
