@font-face{font-family:"HN Display";src:url("fonts/HelveticaNowDisplay-Md.woff2") format("woff2");font-weight:500 900;font-display:swap}@font-face{font-family:"HN Text";src:url("fonts/HelveticaNowText-Regular.woff2") format("woff2");font-weight:400;font-display:swap}@font-face{font-family:"Suisse Mono";src:url("fonts/SuisseIntlMono.woff2") format("woff2");font-weight:400;font-display:swap}
:root{--coral:#de5849;--ink:#0a0a0a;--field:#f0f1f4;--paper:#fff;--line:rgba(10,10,10,.17);--line-strong:rgba(10,10,10,.38);--display:"HN Display","Helvetica Neue",Arial,sans-serif;--text:"HN Text","Helvetica Neue",Arial,sans-serif;--mono:"Suisse Mono",ui-monospace,monospace;--wrap:1360px;--pad:clamp(1.25rem,3.3vw,3.25rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--field);color:var(--ink);font-family:var(--text);font-size:16px;line-height:1.56;-webkit-font-smoothing:antialiased}.topbar{height:62px;position:sticky;top:0;z-index:20;background:rgba(240,241,244,.95);backdrop-filter:blur(12px);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 max(var(--pad),calc((100vw - var(--wrap))/2 + var(--pad)));border-bottom:1px solid var(--line)}.brand{color:var(--ink);text-decoration:none;font:500 1.12rem/1 var(--display);letter-spacing:-.04em}.brand sup{font-size:.45em;vertical-align:top}.deck-label,.counter,.eyebrow,.section-title span,time,footer,.sidebar-label{font-family:var(--mono);font-size:.68rem;letter-spacing:.11em}.deck-label{display:flex;align-items:center;gap:12px}.deck-label i{width:36px;height:1px;background:var(--line-strong)}.counter{justify-self:end;display:flex;align-items:center;gap:9px}.counter b{width:64px;height:1px;background:linear-gradient(90deg,var(--coral) 0 10%,var(--line-strong) 10%)}main{max-width:var(--wrap);margin:auto;border-inline:1px solid var(--line);padding-inline:var(--pad)}.intro{padding:clamp(3rem,7vh,6rem) 0 clamp(2.2rem,5vh,3.5rem);border-bottom:3px solid var(--coral)}.eyebrow{margin:0 0 1rem;color:rgba(10,10,10,.6)}.intro-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,.55fr);gap:4rem;align-items:end}.intro h1{font:500 clamp(3.4rem,7vw,7rem)/.86 var(--display);letter-spacing:-.06em;margin:0}.intro-grid>p{font-size:clamp(1.1rem,1.5vw,1.35rem);line-height:1.25;margin:0 0 .35rem}.candidate-tabs{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.candidate-tab{appearance:none;border:0;border-right:1px solid var(--line);background:transparent;color:var(--ink);padding:1.15rem clamp(1rem,2vw,1.7rem);display:grid;grid-template-columns:38px 1fr;grid-template-areas:"num name" "num meta";text-align:left;cursor:pointer;position:relative}.candidate-tab:last-child{border-right:0}.candidate-tab:after{content:"";position:absolute;left:0;right:100%;bottom:-1px;height:4px;background:var(--coral);transition:right .35s ease}.candidate-tab.is-active:after{right:0}.candidate-tab span{grid-area:num;font-family:var(--mono);font-size:.68rem;padding-top:.2rem}.candidate-tab strong{grid-area:name;font:500 clamp(1.2rem,1.8vw,1.6rem)/1 var(--display);letter-spacing:-.03em}.candidate-tab small{grid-area:meta;font:400 .66rem/1.4 var(--mono);letter-spacing:.07em;margin-top:.3rem;color:rgba(10,10,10,.58)}.candidate-tab:hover,.candidate-tab:focus-visible{background:rgba(255,255,255,.55);outline:none}.candidate-panel{animation:panel-in .38s ease}@keyframes panel-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.profile-header{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:clamp(2rem,5vw,5rem);padding:clamp(3rem,7vw,6rem) 0;border-bottom:1px solid var(--line)}.profile-header h2{font:500 clamp(4rem,9vw,8.5rem)/.82 var(--display);letter-spacing:-.065em;margin:0 0 2rem}.profile-summary{font-size:clamp(1.08rem,1.6vw,1.35rem);line-height:1.4;max-width:760px;margin:0}.profile-facts{margin:0;border-top:1px solid var(--line-strong);align-self:end}.profile-facts div{padding:.85rem 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:105px 1fr;gap:1rem}.profile-facts dt{font:400 .65rem/1.4 var(--mono);letter-spacing:.06em;color:rgba(10,10,10,.58);text-transform:uppercase}.profile-facts dd{margin:0;line-height:1.35}.cv-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:0;border-bottom:1px solid var(--line)}.cv-main{padding-right:clamp(2rem,5vw,4.5rem)}.cv-sidebar{border-left:1px solid var(--line);padding:clamp(2rem,4vw,3.2rem) 0 clamp(3rem,5vw,5rem) clamp(1.5rem,3vw,2.5rem)}.cv-sidebar section{padding-bottom:2rem;margin-bottom:2rem;border-bottom:1px solid var(--line)}.cv-sidebar section:last-child{border-bottom:0}.sidebar-label{margin:0 0 1rem;color:rgba(10,10,10,.56);text-transform:uppercase}.cv-sidebar ul{list-style:none;padding:0;margin:0}.cv-sidebar li{padding:.28rem 0}.cv-section{padding:clamp(3rem,6vw,5rem) 0;border-bottom:1px solid var(--line)}.cv-section:last-child{border-bottom:0}.section-title{display:grid;grid-template-columns:56px 1fr;align-items:start;margin-bottom:2.5rem}.section-title span{padding-top:.45rem;color:var(--coral)}.section-title h3{font:500 clamp(2.3rem,4.6vw,4.4rem)/.95 var(--display);letter-spacing:-.05em;margin:0}.experience-item{padding:2rem 0;border-top:1px solid var(--line-strong)}.experience-item.project-card{background:var(--paper);padding:2rem;margin:0 0 1.25rem;border:1px solid var(--line-strong);box-shadow:6px 6px 0 rgba(222,88,73,.1)}.experience-item header{display:flex;justify-content:space-between;gap:2rem;align-items:start}.experience-item h4,.compact-role h4,.split-item h4{font:500 clamp(1.45rem,2.2vw,2rem)/1.05 var(--display);letter-spacing:-.035em;margin:0}.experience-item header p{margin:.35rem 0 0;color:rgba(10,10,10,.62)}.experience-item time,.compact-role time{white-space:nowrap;color:rgba(10,10,10,.58)}.experience-item ul{margin:1.5rem 0 0;padding:0;list-style:none}.experience-item li{position:relative;padding:.65rem 0 .65rem 1.25rem;border-top:1px solid var(--line)}.experience-item li:before{content:"";position:absolute;left:0;top:1.23rem;width:5px;height:5px;background:var(--coral)}.tag-row{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.5rem}.tag-row span{font:400 .63rem/1 var(--mono);letter-spacing:.07em;border:1px solid var(--line-strong);padding:.55rem .62rem}.split-item{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}.split-item p{margin:.75rem 0 0}.compact-role{display:grid;grid-template-columns:120px 1fr;gap:1.5rem;padding:1.4rem 0;border-top:1px solid var(--line)}.compact-role p{margin:.5rem 0 0;color:rgba(10,10,10,.68)}.credential-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.credential-card{display:grid;grid-template-columns:130px 1fr;gap:1.25rem;background:var(--paper);border:1px solid var(--line-strong);padding:1.5rem;min-height:150px}.credential-card time{color:var(--coral)}.credential-card h4{font:500 clamp(1.3rem,2vw,1.8rem)/1.08 var(--display);letter-spacing:-.03em;margin:0}.credential-card p{margin:.65rem 0 0}.credential-card small{display:block;margin-top:.5rem;color:rgba(10,10,10,.58)}footer{max-width:var(--wrap);margin:auto;display:flex;justify-content:space-between;padding:1.4rem var(--pad);background:var(--ink);color:var(--field)}
@media(max-width:900px){.topbar{grid-template-columns:1fr auto}.deck-label{display:none}.intro-grid,.profile-header{grid-template-columns:1fr;gap:2rem}.cv-layout{grid-template-columns:1fr}.cv-main{padding-right:0}.cv-sidebar{border-left:0;border-top:1px solid var(--line);padding-left:0;display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}.experience-item.project-card{padding:1.5rem}.split-item{grid-template-columns:1fr}.compact-role{grid-template-columns:100px 1fr}}
@media(max-width:600px){.topbar{height:56px}.counter b{width:34px}.intro h1{font-size:clamp(3.1rem,15vw,5rem)}.candidate-tabs{grid-template-columns:1fr}.candidate-tab{border-right:0;border-bottom:1px solid var(--line)}.profile-header{padding:3rem 0}.profile-header h2{font-size:clamp(3.8rem,18vw,6rem)}.profile-facts div{grid-template-columns:88px 1fr}.cv-sidebar{grid-template-columns:1fr}.section-title{grid-template-columns:42px 1fr}.experience-item header{display:block}.experience-item time{display:block;margin-top:.65rem}.compact-role{grid-template-columns:1fr;gap:.5rem}.credential-grid{grid-template-columns:1fr}.credential-card{grid-template-columns:1fr;min-height:0}footer{flex-direction:column;gap:.6rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.candidate-panel{animation:none}.candidate-tab:after{transition:none}}
