:root{--bg:#f7f8fb;--surface:#fff;--surface-2:#f0f3f8;--text:#0d1726;--muted:#5f6b7a;--muted-2:#7f8a98;--line:#0f172a1c;--accent:#0f766e;--accent-2:#0d9488;--accent-soft:#0d94881c;--shadow:0 22px 60px #0f172a14;--max:1160px}html[data-theme=dark]{--bg:#07111f;--surface:#0c1828;--surface-2:#101f32;--text:#f1f5f9;--muted:#aab6c5;--muted-2:#8291a4;--line:#ffffff1a;--accent:#5eead4;--accent-2:#2dd4bf;--accent-soft:#2dd4bf1a;--shadow:0 28px 80px #00000047}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{background:radial-gradient(circle at 86% 0%, var(--accent-soft), transparent 24rem), var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}::selection{background:var(--accent);color:var(--bg)}.skipLink{z-index:200;background:var(--text);color:var(--bg);border-radius:10px;padding:10px 14px;position:fixed;top:-60px;left:16px}.skipLink:focus{top:12px}.container{width:min(calc(100% - 40px), var(--max));margin:0 auto}.section{padding:104px 0}.sectionMuted{background:linear-gradient(180deg, transparent, var(--surface-2) 12%, var(--surface-2) 88%, transparent)}.navShell{z-index:100;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);position:sticky;top:0}.nav{justify-content:space-between;align-items:center;gap:20px;min-height:72px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:10px;font-weight:760;display:inline-flex}.brandMark{background:var(--text);width:34px;height:34px;color:var(--bg);letter-spacing:.04em;border-radius:10px;place-items:center;font-size:12px;display:grid}.navLinks{color:var(--muted);gap:28px;font-size:14px;display:flex}.navLinks a{transition:color .16s}.navLinks a:hover,.navLinks a:focus-visible{color:var(--text)}.navActions{align-items:center;gap:9px;display:flex}.iconButton{border:1px solid var(--line);width:38px;height:38px;color:var(--text);background:var(--surface);cursor:pointer;border-radius:11px;place-items:center;display:grid}.button{border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-size:14px;font-weight:700;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.buttonPrimary{background:var(--accent);color:#05201d;border-color:var(--accent)}html:not([data-theme=dark]) .buttonPrimary{color:#fff}.buttonGhost{background:var(--surface);border-color:var(--line);color:var(--text)}.buttonSmall{min-height:38px;padding:0 13px}.hero{padding-top:96px;padding-bottom:72px;overflow:hidden}.heroGrid{grid-template-columns:minmax(0,1.28fr) minmax(340px,.72fr);align-items:center;gap:72px;display:grid}.availabilityPill{border:1px solid var(--line);width:fit-content;color:var(--muted);background:var(--surface);border-radius:999px;align-items:center;gap:9px;margin-bottom:24px;padding:8px 11px;font-size:12px;font-weight:650;display:inline-flex}.availabilityDot{background:var(--accent-2);width:7px;height:7px;box-shadow:0 0 0 5px var(--accent-soft);border-radius:50%}.eyebrow{color:var(--accent);letter-spacing:.12em;text-transform:uppercase;margin:0 0 12px;font-size:12px;font-weight:800}.hero h1,.pageTitle{letter-spacing:-.055em;max-width:900px;margin:0;font-size:clamp(45px,7vw,80px);line-height:.99}.gradientText{background:linear-gradient(110deg, var(--text), var(--accent-2));color:#0000;-webkit-background-clip:text;background-clip:text}.heroCopy,.pageLead{max-width:740px;color:var(--muted);margin:28px 0 0;font-size:clamp(17px,2vw,20px);line-height:1.7}.heroActions{flex-wrap:wrap;gap:12px;margin-top:32px;display:flex}.heroMeta{color:var(--muted);flex-wrap:wrap;gap:18px;margin-top:30px;font-size:13px;display:flex}.heroMeta span,.heroMeta a{align-items:center;gap:6px;display:inline-flex}.heroPanel{border:1px solid var(--line);background:linear-gradient(145deg, color-mix(in srgb, var(--surface) 95%, transparent), var(--surface-2));min-height:430px;box-shadow:var(--shadow);border-radius:28px;padding:28px;position:relative;overflow:hidden}.panelGlow{background:var(--accent);filter:blur(100px);opacity:.16;border-radius:50%;width:240px;height:240px;position:absolute;top:-80px;right:-70px}.codeLabel{z-index:1;color:var(--muted-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;position:relative}.codeBlock{z-index:1;color:var(--text);white-space:pre-wrap;margin:45px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:clamp(14px,1.4vw,16px);line-height:1.9;position:relative}.heroPanelBottom{border-top:1px solid var(--line);color:var(--muted);align-items:center;gap:9px;padding-top:18px;font-size:13px;display:flex;position:absolute;bottom:28px;left:28px;right:28px}.statsSection{padding:0 0 28px}.statsGrid{border:1px solid var(--line);background:var(--surface);border-radius:20px;grid-template-columns:repeat(4,1fr);display:grid;overflow:hidden}.statCard{border-right:1px solid var(--line);flex-direction:column;justify-content:center;min-height:130px;padding:28px;display:flex}.statCard:last-child{border-right:0}.statCard strong{letter-spacing:-.04em;font-size:30px}.statCard span{color:var(--muted);margin-top:6px;font-size:13px;line-height:1.45}.sectionHeading{max-width:760px;margin-bottom:42px}.sectionHeading h2,.valueGrid h2,.contactIntro h2{letter-spacing:-.045em;margin:0;font-size:clamp(34px,5vw,54px);line-height:1.05}.sectionCopy,.contactIntro>p:not(.eyebrow){color:var(--muted);margin:18px 0 0;font-size:17px;line-height:1.7}.projectGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.projectCard{border:1px solid var(--line);background:var(--surface);border-radius:22px;flex-direction:column;min-height:470px;padding:28px;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.projectCard:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--line));box-shadow:var(--shadow);transform:translateY(-4px)}.projectTopline{color:var(--muted-2);text-transform:uppercase;letter-spacing:.08em;justify-content:space-between;align-items:center;font-size:12px;display:flex}.projectCard h3{letter-spacing:-.035em;margin:38px 0 12px;font-size:29px}.projectCard>p{color:var(--muted);margin:0;line-height:1.7}.impactList{color:var(--muted);margin:24px 0;padding-left:18px;font-size:14px;line-height:1.65}.impactList li+li{margin-top:7px}.tagRow{flex-wrap:wrap;gap:7px;margin-top:auto;padding-top:24px;display:flex}.tag{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);border-radius:9px;padding:7px 9px;font-size:11px;font-weight:650}.tagSmall{padding:5px 7px}.sectionCta{margin-top:30px}.textLink,.backLink{color:var(--accent);align-items:center;gap:7px;font-size:14px;font-weight:750;display:inline-flex}.skillsGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;display:grid}.skillCard{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:23px}.skillCard h3{margin:0;font-size:17px}.skillCard .tagRow{margin-top:7px;padding-top:14px}.experienceList{border-top:1px solid var(--line)}.experienceItem{border-bottom:1px solid var(--line);grid-template-columns:210px minmax(0,1fr);gap:38px;padding:30px 0;display:grid}.experiencePeriod{color:var(--muted-2);padding-top:4px;font-size:13px}.experienceBody h3{letter-spacing:-.025em;margin:0;font-size:21px}.experienceCompany{color:var(--muted);margin:6px 0 0;font-size:13px}.experienceBody ul{color:var(--muted);margin:18px 0 0;padding-left:18px;line-height:1.65}.valueGrid{grid-template-columns:.9fr 1.1fr;align-items:start;gap:90px;display:grid}.valueList{gap:13px;display:grid}.valueItem{border-bottom:1px solid var(--line);color:var(--muted);grid-template-columns:22px 1fr;gap:12px;padding:19px 0;line-height:1.55;display:grid}.valueItem svg{color:var(--accent)}.contactGrid{grid-template-columns:.85fr 1.15fr;align-items:start;gap:80px;display:grid}.contactLinks{gap:10px;margin-top:28px;display:grid}.contactLink{border:1px solid var(--line);background:var(--surface);border-radius:15px;grid-template-columns:42px 1fr auto;align-items:center;gap:12px;padding:14px;display:grid}.contactIcon{background:var(--accent-soft);width:42px;height:42px;color:var(--accent);border-radius:12px;place-items:center;display:grid}.contactLink small{color:var(--muted-2);margin-bottom:3px;font-size:11px;display:block}.contactLink strong{font-size:13px}.contactNote{color:var(--muted);align-items:center;gap:8px;margin-top:18px;font-size:13px;display:flex}.contactForm{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:22px;padding:28px}.formGrid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.contactForm label{color:var(--muted);gap:8px;margin-bottom:15px;font-size:12px;font-weight:700;display:grid}.contactForm label em{color:var(--muted-2);font-style:normal;font-weight:500}.contactForm input,.contactForm textarea{border:1px solid var(--line);background:var(--bg);width:100%;color:var(--text);border-radius:12px;outline:none;padding:12px 13px;transition:border-color .16s,box-shadow .16s}.contactForm input{min-height:44px}.contactForm textarea{resize:vertical;min-height:150px}.contactForm input:focus,.contactForm textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.honeypot{position:absolute!important;left:-9999px!important}.formFooter{align-items:center;gap:14px;display:flex}.formStatus{color:var(--accent);margin:0;font-size:12px}.formStatusError{color:#ef4444}.footer{border-top:1px solid var(--line);padding:34px 0}.footerInner{justify-content:space-between;align-items:center;gap:30px;display:flex}.footer strong{font-size:14px}.footer p{color:var(--muted);margin:5px 0 0;font-size:12px}.socialRow{gap:9px;display:flex}.socialRow a{border:1px solid var(--line);background:var(--surface);border-radius:11px;place-items:center;width:38px;height:38px;display:grid}.subpage{min-height:75vh}.subpage .section{padding-top:70px}.backLink{margin-bottom:58px}.pageTitle{max-width:870px;font-size:clamp(44px,7vw,72px)}.projectGridAll{margin-top:60px}.resumePage{padding:38px 0 90px}.resumeToolbar{justify-content:space-between;align-items:center;margin-bottom:18px;display:flex}.resumeToolbar .backLink{margin:0}.resumeSheet{border:1px solid var(--line);background:var(--surface);width:min(100% - 32px,1000px);box-shadow:var(--shadow);border-radius:22px;margin:0 auto;padding:55px}.resumeHeader{border-bottom:1px solid var(--line);grid-template-columns:1fr 285px;gap:60px;padding-bottom:30px;display:grid}.resumeHeader h1{letter-spacing:-.045em;margin:0;font-size:46px}.resumeSummary{color:var(--muted);margin:18px 0 0;font-size:14px;line-height:1.65}.resumeContact{color:var(--muted);align-content:start;gap:10px;font-size:12px;display:grid}.resumeContact a{align-items:center;gap:7px;display:flex}.resumeSection{padding:30px 0 0}.resumeSection>h2,.resumeTwoCol h2{letter-spacing:.08em;text-transform:uppercase;margin:0 0 18px;font-size:15px}.resumeSkills{color:var(--muted);gap:9px;font-size:12px;line-height:1.55;display:grid}.resumeSkills div{grid-template-columns:140px 1fr;gap:15px;display:grid}.resumeSkills strong{color:var(--text)}.resumeExperience article{border-top:1px solid var(--line);padding:21px 0}.resumeJobHeading{grid-template-columns:1fr auto;gap:20px;display:grid}.resumeJobHeading h3,.resumeTwoCol h3{margin:0;font-size:16px}.resumeJobHeading p,.resumeTwoCol p{color:var(--muted);margin:5px 0 0;font-size:12px}.resumeJobHeading time{color:var(--muted-2);white-space:nowrap;font-size:11px}.resumeExperience ul,.resumeTwoCol ul{color:var(--muted);margin:13px 0 0;padding-left:17px;font-size:12px;line-height:1.55}.resumeTech{color:var(--muted);margin:11px 0 0;font-size:11px}.resumeTwoCol{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:45px;padding-top:30px;display:grid}@media (max-width:980px){.heroGrid,.contactGrid,.valueGrid{grid-template-columns:1fr}.heroPanel{min-height:360px}.statsGrid,.skillsGrid{grid-template-columns:repeat(2,1fr)}.statCard:nth-child(2){border-right:0}.statCard:nth-child(-n+2){border-bottom:1px solid var(--line)}.contactGrid,.valueGrid{gap:46px}.resumeHeader{grid-template-columns:1fr;gap:28px}.resumeContact{grid-template-columns:repeat(2,1fr)}}@media (max-width:720px){.container{width:min(calc(100% - 28px), var(--max))}.section{padding:76px 0}.nav{min-height:64px}.brandText,.desktopOnly{display:none}.navLinks{gap:14px;font-size:12px}.hero{padding-top:68px}.heroGrid{gap:40px}.hero h1{font-size:clamp(42px,13vw,61px)}.heroCopy{font-size:16px}.projectGrid,.statsGrid,.skillsGrid,.formGrid,.resumeTwoCol{grid-template-columns:1fr}.statCard{border-right:0;border-bottom:1px solid var(--line);min-height:110px}.statCard:last-child{border-bottom:0}.experienceItem{grid-template-columns:1fr;gap:9px}.projectCard{min-height:0}.formFooter,.footerInner{flex-direction:column;align-items:flex-start}.resumePage{padding-top:22px}.resumeSheet{border-radius:16px;width:min(100% - 20px,1000px);padding:28px 20px}.resumeHeader h1{font-size:38px}.resumeContact{grid-template-columns:1fr}.resumeSkills div,.resumeJobHeading{grid-template-columns:1fr;gap:4px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{:root,html[data-theme=dark]{--bg:#fff;--surface:#fff;--surface-2:#fff;--text:#111827;--muted:#4b5563;--muted-2:#6b7280;--line:#1118272e;--accent:#0f766e}body{background:#fff}.navShell,.footer,.noPrint{display:none!important}.resumePage{padding:0}.resumeSheet{width:100%;box-shadow:none;border:0;border-radius:0;margin:0;padding:0}.resumeExperience article,.resumeTwoCol{break-inside:avoid}}
