.cv-page{margin:0;background:#080f1b;color:#e7f1ff;font-family:Arial,Helvetica,sans-serif}.cv-page main{max-width:1160px;margin:auto;padding:38px 30px 80px}.resume-sheet.cv{width:min(1160px,100%);max-height:90dvh;background:#0b1525;color:#e7f1ff;padding:28px 34px 60px;border:1px solid #344961;border-radius:12px;font-family:Arial,Helvetica,sans-serif;scroll-behavior:smooth}.cv *{box-sizing:border-box}.cv a{color:#7edee3;text-decoration-thickness:1px;text-underline-offset:4px}.cv a:focus-visible,.cv button:focus-visible,.cv summary:focus-visible{outline:3px solid #ffc479;outline-offset:5px}.cv .cv-top{display:flex;position:sticky;top:-28px;z-index:2;justify-content:space-between;align-items:center;gap:22px;margin:0;padding:20px 0;background:#0b1525;border-bottom:1px solid #344961}.cv .cv-top h1,.cv .cv-top h2{margin:0;color:#fff;font:500 clamp(29px,5vw,44px)/1 'Instrument Serif',Georgia,serif}.cv .role{font:12px/1.5 'Geist Mono',monospace;text-transform:none;letter-spacing:.02em;color:#acbfd5;margin:8px 0 0;max-width:62ch}.cv-top-actions{display:flex;flex-direction:column;gap:12px;align-items:flex-end}.cv .cv-top a{font-size:12px;white-space:nowrap}.cv .cv-top button{padding:9px 12px;border:1px solid #73869c;border-radius:4px;color:#fff;background:#162840;letter-spacing:0;font:12px/1.4 Arial,sans-serif;cursor:pointer}.cv .cv-hero{padding:54px 0 32px;background:radial-gradient(ellipse at 95% 18%,#15505288,transparent 60%)}.cv p.cv-eyebrow{font:12px/1.5 'Geist Mono',monospace;letter-spacing:.18em;color:#7edee3}.cv .cv-hero h3{font:500 clamp(38px,5vw,70px)/1.03 'Instrument Serif',Georgia,serif;text-transform:none;letter-spacing:-.02em;color:#fff;margin:15px 0 22px;max-width:17ch}.cv p{font:15px/1.7 Arial,Helvetica,sans-serif;max-width:76ch;color:#c1d0e1;margin:0 0 14px}.cv .cv-summary{font-size:17px;max-width:76ch}.cv-path{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:24px;font:12px/1.6 'Geist Mono',monospace;letter-spacing:.08em}.cv-path span{border:1px solid #386069;background:#14303a;padding:7px 10px;border-radius:3px;color:#a7eeee}.cv-path i{color:#dbac71}.cv .cv-nav{display:flex;gap:10px;flex-wrap:wrap;border-block:1px solid #344961;padding:16px 0}.cv .cv-nav button{background:transparent;color:#c1d0e1;border:0;padding:9px 12px;cursor:pointer;font:12px Arial,sans-serif;letter-spacing:0;text-transform:none}.cv .cv-nav button:hover{background:#223a52;color:#fff}.cv section{padding-top:34px;scroll-margin-top:130px}.cv h3.cv-section-title{font:12px/1.5 'Geist Mono',monospace;color:#ffc479;letter-spacing:.12em;text-transform:uppercase;margin:0 0 20px}.cv-highlights{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.cv .cv-highlight{display:flex;flex-direction:column;padding:22px 20px;background:linear-gradient(140deg,#173342,#111e32);border:1px solid #345463;border-radius:7px;text-decoration:none;transition:border-color .15s,background .15s}.cv .cv-highlight:hover{border-color:#77dce0;background:#1b3848}.cv-highlight strong{color:#8de7e8;font:22px/1.3 'Geist Mono',monospace}.cv h4{font:600 19px/1.35 Arial,sans-serif;color:#f4f8ff;margin:12px 0}.cv-highlight p{font-size:13px;flex:1}.cv-highlight>span{font:12px/1.4 'Geist Mono',monospace;color:#ffc479}.cv p.cv-note{font:12px/1.6 Arial,sans-serif;color:#a7b8cd}.cv-role{display:grid;grid-template-columns:180px minmax(0,1fr);gap:24px;padding:30px 0;border-bottom:1px solid #344961}.cv-date{color:#ffc479;font:12px/1.6 'Geist Mono',monospace;padding-top:4px}.cv .cv-org{color:#88d8df;font:12px/1.5 'Geist Mono',monospace;margin-bottom:8px}.cv-role h4{font-size:23px;margin-top:0}.cv .cv-role ul{display:block;list-style:disc;padding-left:20px;margin:15px 0}.cv .cv-role li{display:list-item;border:0;padding:0 0 10px;font:14px/1.7 Arial,sans-serif;color:#c1d0e1}.cv-tags{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 18px}.cv-tags span{font:12px/1.5 'Geist Mono',monospace;padding:4px 8px;border:1px solid #3a5269;color:#c0d2e6;border-radius:3px}.cv-role a{font-size:13px}.cv-skills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.cv-skills article{border-left:1px solid #539f9d;padding:0 18px}.cv-skills h4{font-size:17px}.cv-skills p{font-size:14px}.cv-record{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid #344961;padding:15px 0 25px}.cv-record a{display:block;margin-bottom:12px;font-size:13px}.cv-page .cv-top{top:0;background:#080f1b}.cv-page .cv-hero{padding-top:60px}@media(max-width:760px){.cv-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.cv-role{grid-template-columns:1fr;gap:10px}.cv-date{border-left:1px solid #ffc479;padding-left:10px}}@media(max-width:520px){.resume-sheet.cv{padding:14px 18px 40px;max-height:94dvh}.resume{padding:8px}.cv-page main{padding:0 18px 50px}.cv .cv-top{top:-14px;gap:12px;align-items:flex-start}.cv .cv-top h2{font-size:30px}.cv .cv-top button{font-size:12px;max-width:120px}.cv .role{font-size:12px;letter-spacing:0}.cv-highlights,.cv-skills,.cv-record{grid-template-columns:1fr}.cv .cv-hero{padding-top:28px}.cv .cv-summary{font-size:15px}.cv-path{gap:6px}.cv-path i{display:none}.cv .cv-nav{gap:2px}.cv .cv-nav button{padding:10px 7px;font-size:12px}.cv section{scroll-margin-top:145px}.cv-role h4{font-size:21px}.cv .cv-highlight{padding:18px}.cv-page .cv-top{top:0}.cv-page .cv-top>a{white-space:normal;text-align:right;max-width:100px}}@media(prefers-reduced-motion:reduce){.resume-sheet.cv{scroll-behavior:auto}.cv .cv-highlight{transition:none}}@media print{.cv-page{background:white;color:#111}.cv-page .cv-top{position:static;background:white}.cv-nav,.cv-top-actions{display:none}.cv p,.cv li,.cv h1,.cv h3,.cv h4,.cv strong,.cv a,.cv span,.cv-date{color:#111!important}.cv .cv-hero,.cv .cv-highlight{background:white}.cv-role,.cv-highlight{break-inside:avoid}.cv-highlights{grid-template-columns:repeat(2,1fr)}}
.cv .cv-hero{display:flow-root}.cv-portrait{float:right;width:clamp(140px,24%,240px);height:auto;aspect-ratio:4/5;object-fit:cover;object-position:center 25%;margin:0 0 24px 32px;border:1px solid #52787c;border-radius:12px;box-shadow:0 14px 45px #0005}.cv-contact{margin-top:28px;padding-top:20px;border-top:1px solid #344961}.cv-contact summary{cursor:pointer;color:#acbfd5;font:13px/1.6 Arial,sans-serif;width:fit-content;padding:10px 0}.cv-contact>p{font-size:13px;margin-top:12px}.cv-contact button{min-height:44px;padding:10px 16px;color:#e7f1ff;background:#162840;border:1px solid #60778f;border-radius:5px;cursor:pointer;font:13px/1.4 Arial,sans-serif}.cv-contact button:disabled{opacity:.65;cursor:wait}.contact-widget{margin-top:14px;max-width:100%}.contact-options:not([hidden]){display:flex;flex-wrap:wrap;gap:16px}.contact-options a{padding:10px 0;font-size:14px}.contact-options p{flex-basis:100%;font-size:13px}.contact-options[hidden],.cv-contact button[hidden]{display:none}@media(max-width:520px){.cv-portrait{float:none;width:144px;margin:0 0 20px}.contact-widget{margin-inline:-8px}}@media print{.cv-contact{display:none}}
/* Shared résumé palette: identical in the chooser and on the standalone page. */
.cv{--cv-surface:#0b1525;--cv-heading:#f4f8ff;--cv-text:#c1d0e1;--cv-accent:#7edee3;color-scheme:dark;color:var(--cv-text)}
.cv-page,.resume-sheet.cv{background:var(--cv-surface,#0b1525)}
.cv .cv-top,.cv-page .cv-top{background:var(--cv-surface);color:var(--cv-heading);border-color:#344961}
.cv .cv-top h1,.cv .cv-top h2{color:var(--cv-heading)}
.cv .cv-top .role{color:var(--cv-text)}
.cv .cv-top a,.cv .cv-top a:visited{color:var(--cv-accent)}
.cv .cv-top button{background:#162840;color:var(--cv-heading);border-color:#73869c}
@media print{.cv-page,.resume-sheet.cv,.cv .cv-top,.cv-page .cv-top{background:#fff;color:#111}.cv .cv-top .role{color:#111}}
.cv-portrait-block{float:right;width:clamp(180px,26%,260px);margin:0 0 28px 34px}.cv .cv-portrait-block .cv-portrait{float:none;display:block;width:100%;height:auto;aspect-ratio:1;object-fit:contain;margin:0;border-color:#52787c}.cv-portrait-block figcaption{padding-top:12px;font:12px/1.65 Arial,sans-serif;color:var(--cv-text)}.cv-portrait-block figcaption strong{display:block;color:var(--cv-heading);font-weight:600}.cv-portrait-block figcaption span{display:block;margin-top:4px;color:var(--cv-text)}@media(max-width:520px){.cv-portrait-block{float:none;width:min(100%,240px);margin:0 0 24px}}
.cv .cv-sport>a{display:grid;grid-template-columns:1fr 1.15fr;overflow:hidden;text-decoration:none;border:1px solid #345463;border-radius:8px;background:#112637}.cv-sport img{width:100%;height:100%;object-fit:cover;display:block}.cv-sport a>div{padding:26px}.cv .cv-sport h3{margin:10px 0;font:500 34px/1.05 'Instrument Serif',Georgia,serif;color:var(--cv-heading);text-transform:none;letter-spacing:0}.cv .cv-sport p{font-size:13px}.cv-sport span{font-size:12px;color:var(--cv-accent)}@media(max-width:600px){.cv .cv-sport>a{grid-template-columns:1fr}.cv-sport img{height:auto}.cv-sport a>div{padding:20px}}

.cv .cv-freefall{padding:28px;border:1px solid #345463;background:linear-gradient(120deg,#112637,#162034);border-radius:8px}.cv .cv-freefall h3{font:500 32px/1.1 'Instrument Serif',Georgia,serif;text-transform:none;letter-spacing:0;color:var(--cv-heading);margin:12px 0}.cv .cv-freefall p{font-size:13px;line-height:1.8}.cv .cv-freefall a{font-size:13px;color:var(--cv-accent)}
