.resume-page{min-height:100svh;background:var(--warm-paper);color:var(--warm-ink);font-family:var(--font-manrope),sans-serif}.resume-header{min-height:96px;display:flex;justify-content:space-between;align-items:center;gap:20px;width:min(1440px,calc(100% - 10vw));margin:auto;border-bottom:1px solid rgba(48,41,31,.22)}.resume-identity{display:inline-flex;gap:13px;align-items:center;color:inherit;text-decoration:none}.resume-identity>span:first-child{display:grid;place-items:center;width:39px;height:39px;border:1px solid;border-radius:50%;font-family:var(--font-cormorant),serif;font-size:15px}.resume-identity>span:last-child{display:grid;grid-gap:3px;gap:3px}.resume-identity strong{font-family:var(--font-cormorant),serif;font-size:19px;line-height:1}.resume-identity small{color:var(--warm-muted);font-size:9px;letter-spacing:.11em;text-transform:uppercase}.resume-back{display:inline-flex;gap:18px;border-bottom:1px solid;padding-bottom:6px;color:inherit;font-size:10px;letter-spacing:.1em;text-decoration:none;text-transform:uppercase}.resume-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(260px,.7fr);min-height:650px;width:min(1440px,calc(100% - 10vw));margin:auto;border-bottom:1px solid rgba(48,41,31,.22)}.resume-hero-copy{display:flex;flex-direction:column;justify-content:center;padding:100px 7vw 95px 0}.resume-eyebrow{display:flex;gap:24px;align-items:center;margin:0 0 38px;font-size:10px;font-weight:600;letter-spacing:.18em;text-transform:uppercase}.resume-eyebrow,.resume-eyebrow span{color:var(--warm-accent)}.resume-hero h1{margin:0;font-size:clamp(92px,12vw,190px);font-weight:400;letter-spacing:-.075em;line-height:.95}.resume-hero h1,.resume-intro{font-family:var(--font-cormorant),serif}.resume-intro{max-width:620px;margin:60px 0 0;color:var(--warm-muted);font-size:clamp(27px,3vw,42px);line-height:1.2}.resume-jumps{display:flex;flex-wrap:wrap;gap:13px 28px;margin-top:65px}.resume-jumps a{border-bottom:1px solid var(--warm-line);padding-bottom:7px;color:var(--warm-accent);font-size:11px;text-decoration:none;transition:color .2s ease}.resume-jumps a:hover{color:var(--warm-accent-hover)}.resume-portrait{position:relative;align-self:stretch;min-height:550px;overflow:hidden;background:var(--warm-surface)}.resume-portrait:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(48,41,31,.5));pointer-events:none}.resume-portrait img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 22%}.resume-portrait>span{position:absolute;z-index:1;bottom:22px;left:25px;color:var(--warm-paper);font-family:var(--font-cormorant),serif;font-size:22px}.resume-body{width:min(1440px,calc(100% - 10vw));margin:auto}.resume-section{display:grid;grid-template-columns:minmax(210px,.72fr) minmax(0,1.28fr);grid-gap:clamp(40px,8vw,140px);gap:clamp(40px,8vw,140px);padding:clamp(56px,7vw,100px) 0;border-bottom:1px solid rgba(48,41,31,.22);scroll-margin-top:20px}.resume-section-intro{align-self:start;position:-webkit-sticky;position:sticky;top:32px}.resume-section-intro>span{color:var(--warm-accent);font-size:11px;letter-spacing:.14em}.resume-section-intro h2{margin:0 0 20px;font-family:var(--font-cormorant),serif;font-size:clamp(52px,5vw,78px);font-weight:400;letter-spacing:-.045em;line-height:.9}.resume-section-intro p{max-width:250px;color:var(--warm-muted);font-size:12px;line-height:1.8}.resume-entries{min-width:0;overflow-wrap:break-word;border-top:1px solid rgba(48,41,31,.25)}.resume-entry{display:grid;grid-template-columns:110px minmax(0,1fr);grid-gap:clamp(20px,3vw,55px);gap:clamp(20px,3vw,55px);border-bottom:1px solid rgba(48,41,31,.18);padding:33px 0 36px}.resume-entry>small{padding-top:8px;color:var(--warm-muted);font-size:11px;line-height:1.4}.resume-entry h3,.resume-training h3{margin:0 0 11px;font-family:var(--font-cormorant),serif;font-size:clamp(26px,2.6vw,38px);font-weight:500;line-height:1.1}.resume-entry strong{color:var(--warm-ink);font-size:12px;font-weight:600}.resume-entry p,.resume-training p{max-width:570px;margin:9px 0 0;color:var(--warm-muted);font-size:12px;line-height:1.8}.resume-training{display:flex;justify-content:space-between;gap:25px;border-bottom:1px solid rgba(48,41,31,.18);padding:33px 0 36px}.resume-training>div{min-width:0}.resume-training>span{flex-shrink:0;align-self:start;border:1px solid var(--warm-line);border-radius:100px;padding:8px 11px;color:var(--warm-accent);font-size:9px;letter-spacing:.04em}.resume-training>span.is-ongoing{border-color:var(--warm-line);color:var(--warm-muted)}.resume-publication div>span{display:block;margin-bottom:12px;color:var(--warm-accent);font-size:9px;letter-spacing:.15em;text-transform:uppercase}.resume-publication a{display:inline-block;margin-top:16px;border-bottom:1px solid;color:var(--warm-accent);font-size:11px;text-decoration:none}.resume-footer{display:flex;justify-content:space-between;align-items:center;gap:20px;width:min(1440px,calc(100% - 10vw));margin:auto;padding:40px 0 60px;color:var(--warm-muted);font-size:11px}.resume-footer a{color:var(--warm-accent);text-decoration:none}@media (max-width:900px){.resume-hero{grid-template-columns:minmax(0,1fr) 35%;min-height:540px}.resume-hero h1{font-size:clamp(75px,11vw,120px)}.resume-hero-copy{padding-right:35px}.resume-portrait{min-height:500px}.resume-section{grid-template-columns:1fr;gap:38px}.resume-section-intro{position:static}.resume-section-intro p{max-width:580px}}@media (max-width:620px){.resume-body,.resume-footer,.resume-header,.resume-hero{width:calc(100% - 40px)}.resume-header{min-height:74px}.resume-identity small{display:none}.resume-identity strong{font-size:17px}.resume-hero{display:flex;flex-direction:column}.resume-hero-copy{padding:48px 0 40px}.resume-eyebrow{margin-bottom:25px;font-size:9px}.resume-hero h1{font-size:clamp(64px,20vw,104px)}.resume-intro{margin-top:35px;font-size:29px}.resume-jumps{gap:10px 20px;margin-top:42px}.resume-portrait{height:360px;min-height:0}.resume-section{padding:56px 0}.resume-section-intro h2{font-size:58px}.resume-entry{grid-template-columns:65px minmax(0,1fr);gap:16px;padding:28px 0}.resume-entry h3,.resume-training h3{font-size:28px}.resume-training{display:block}.resume-training>span{display:inline-block;margin-top:17px}}