.cv{--cv-paper:#fffdfa;--cv-ink:#241521;--cv-muted:#6a5a64;--cv-accent:#3a1f35;--cv-rule:#3a1f3547;--cv-line:#3a1f3524;--cv-tint:#3a1f350a}.cv-page{padding:calc(var(--nav-h) + 2rem) 1.25rem 6rem}.cv-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;width:min(210mm,100%);margin:0 auto 1.5rem;display:flex}.cv-actions__group{flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;display:flex}.cv-actions__hint{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--theme-muted);font-size:.6875rem}.cv-print{background:var(--theme-accent);color:var(--theme-accent-fg);font-family:var(--font-sans);cursor:pointer;transition:transform .3s var(--ease-out-expo);border-radius:999px;align-items:center;gap:.625rem;padding:.75rem 1.5rem;font-size:.9375rem;font-weight:500;display:inline-flex}.cv-print:hover{transform:translateY(-2px)}.cv-back{color:var(--theme-muted);transition:color .3s var(--ease-out-expo);align-items:center;gap:.5rem;font-size:.875rem;display:inline-flex}.cv-back:hover{color:var(--theme-fg)}.cv-sheet{--cv-fs:9.6pt;--cv-pad-x:14mm;--cv-pad-y:13mm;box-sizing:border-box;width:min(210mm,100%);min-height:297mm;padding:var(--cv-pad-y) var(--cv-pad-x);background:var(--cv-paper);color:var(--cv-ink);font-family:var(--font-sans);font-size:var(--cv-fs);border-radius:3px;flex-direction:column;margin-inline:auto;line-height:1.42;display:flex;box-shadow:0 0 0 1px #3a1f350f,0 2px 4px -2px #3a1f351f,0 32px 64px -32px #3a1f3573}.cv-header{border-bottom:1pt solid var(--cv-rule);flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:4mm 8mm;padding-bottom:4mm;display:flex}.cv-header__main{flex:60%;min-width:0}.cv-photo{object-fit:cover;border:.75pt solid var(--cv-line);border-radius:1.5mm;flex:none;width:21mm;height:26mm}.cv-photo--empty{font-family:var(--font-display);font-weight:700;font-size:calc(var(--cv-fs) * 1.7);letter-spacing:-.02em;color:var(--cv-accent);border-color:var(--cv-rule);justify-content:center;align-items:center;display:flex}.cv-name{font-family:var(--font-display);font-weight:700;font-size:calc(var(--cv-fs) * 2.5);letter-spacing:-.035em;color:var(--cv-accent);line-height:1}.cv-headline{font-size:calc(var(--cv-fs) * 1.15);color:var(--cv-muted);margin-top:1.5mm}.cv-contact{font-size:calc(var(--cv-fs) * .86);flex-wrap:wrap;gap:1.2mm 5mm;margin-top:3mm;display:flex}.cv-contact li{align-items:center;gap:1.6mm;display:flex}.cv-contact__icon{stroke-width:1.75px;width:3.2mm;height:3.2mm;color:var(--cv-accent);flex:none}.cv-contact a{color:inherit;border-bottom:.6pt solid var(--cv-line);text-decoration:none}.cv-contact a:hover{border-bottom-color:currentColor}.cv-body{flex:auto;grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);gap:0 6mm;margin-top:5mm;display:grid}.cv-aside{border:.6pt solid var(--cv-line);background:var(--cv-tint);print-color-adjust:exact;border-radius:2mm;padding:4mm 5mm 5mm}.cv-section+.cv-section{margin-top:5mm}.cv-section__title{font-family:var(--font-mono);font-size:calc(var(--cv-fs) * .8);letter-spacing:.2em;text-transform:uppercase;color:var(--cv-accent);border-bottom:.6pt solid var(--cv-line);padding-bottom:1.6mm;font-weight:500;position:relative}.cv-section__title:after{content:"";border-bottom:1.4pt solid var(--cv-accent);width:9mm;position:absolute;bottom:-.6pt;left:0}.cv-section__body{margin-top:3mm}.cv-summary p+p{margin-top:1.5mm}.cv-entry+.cv-entry,.cv-project+.cv-project{border-top:.6pt solid var(--cv-line);margin-top:3mm;padding-top:3mm}.cv-entry__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 3mm;display:flex}.cv-entry__role{font-family:var(--font-display);font-weight:700;font-size:calc(var(--cv-fs) * 1.18);letter-spacing:-.015em;line-height:1.2}.cv-entry__period{font-family:var(--font-mono);font-size:calc(var(--cv-fs) * .85);letter-spacing:.01em;color:var(--cv-accent);white-space:nowrap;flex:none}.cv-entry__org{font-size:calc(var(--cv-fs) * .95);margin-top:.6mm;font-weight:500}.cv-entry__place{color:var(--cv-muted);font-weight:400}.cv-entry__place:before{content:" · "}.cv-bullets{margin-top:1.5mm}.cv-bullets li{padding-left:3.4mm;position:relative}.cv-bullets li+li{margin-top:.8mm}.cv-bullets li:before{content:"";border:.6mm solid var(--cv-accent);opacity:.7;border-radius:999px;width:0;height:0;position:absolute;top:.55em;left:0}.cv-stack{font-family:var(--font-mono);font-size:calc(var(--cv-fs) * .8);color:var(--cv-muted);margin-top:1.5mm;line-height:1.4}.cv-project__line{margin-top:.8mm}.cv-project__name{font-family:var(--font-display);font-weight:700;font-size:calc(var(--cv-fs) * 1.1);letter-spacing:-.015em}.cv-project__head{flex-wrap:wrap;align-items:baseline;gap:0 3mm;display:flex}.cv-project__link{font-family:var(--font-mono);font-size:calc(var(--cv-fs) * .8);color:var(--cv-accent);border-bottom:.6pt solid var(--cv-line);margin-inline-start:auto;text-decoration:none}.cv-skills{gap:3mm;display:grid}.cv-skill__label{font-family:var(--font-mono);font-size:calc(var(--cv-fs) * .78);letter-spacing:.12em;text-transform:uppercase;color:var(--cv-muted)}.cv-chips{flex-wrap:wrap;gap:1.2mm;margin-top:1.4mm;display:flex}.cv-chips li{border:.6pt solid var(--cv-rule);font-size:calc(var(--cv-fs) * .8);white-space:nowrap;border-radius:999px;padding:.3mm 1.8mm;line-height:1.55}.cv-edu+.cv-edu{border-top:.6pt solid var(--cv-line);margin-top:3mm;padding-top:3mm}.cv-edu__degree{font-family:var(--font-display);font-weight:700;font-size:calc(var(--cv-fs) * 1.02);letter-spacing:-.01em;margin-top:.6mm;line-height:1.25}.cv-edu__school{font-size:calc(var(--cv-fs) * .92);line-height:1.35}.cv-edu__note{font-size:calc(var(--cv-fs) * .88);color:var(--cv-muted)}.cv-langs{gap:1.2mm;display:grid}.cv-langs li{font-size:calc(var(--cv-fs) * .95);justify-content:space-between;align-items:baseline;gap:3mm;display:flex}.cv-langs__level{font-family:var(--font-mono);font-size:calc(var(--cv-fs) * .82);color:var(--cv-muted)}.cv-clause{border-top:.6pt solid var(--cv-line);font-size:calc(var(--cv-fs) * .75);color:var(--cv-muted);margin-top:auto;padding-top:3mm;line-height:1.4}@media screen and (width<=54rem){.cv-page{padding:calc(var(--nav-h) + 1.5rem) .75rem 4rem}.cv-sheet{--cv-fs:.9375rem;--cv-pad-x:clamp(1.25rem, 5vw, 2.5rem);--cv-pad-y:clamp(1.75rem, 6vw, 3rem);width:100%;min-height:0}.cv-body{grid-template-columns:minmax(0,1fr);gap:5.5mm}.cv-clause{margin-top:6mm}}@page{size:A4;margin:13mm 14mm}@media print{html,body{background:#fff!important;transition:none!important}[data-nav],[data-scrubber],body>footer,.cv-actions{display:none!important}.cv-page{padding:0!important}.cv-sheet{width:auto;max-width:none;min-height:268mm;box-shadow:none;color:#000;background:0 0;border-radius:0;margin:0;padding:0}.cv{--cv-ink:#000;--cv-muted:#3d3d3d;--cv-accent:#2e1829;--cv-rule:#8d8289;--cv-line:#c9c2c6;--cv-tint:#f4f1f3}.cv-clause{margin-top:6mm}.cv-entry,.cv-project,.cv-edu,.cv-skill,.cv-bullets li{break-inside:avoid}.cv-section__title,.cv-header{break-after:avoid}p,li{orphans:2;widows:2}.cv a{color:inherit;text-decoration:none}.cv-contact a,.cv-project__link{border-bottom:none}}
