:root{--paper:#f1eee8;--ink:#11100f;--muted:#6e6963;--dark:#0a0908;--line:#d3cdc5;--copper:#c9773f;--copper-bright:#df995f;--sidebar:66mm}*{box-sizing:border-box}html{background:#151311;color:var(--ink);font-family:Arial,Helvetica,sans-serif}body{margin:0;padding:34px 18px 70px;background:radial-gradient(circle at 82% 5%,#c9773f1c,transparent 25%),linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px),#151311;background-size:auto,62px 62px,62px 62px}a{color:inherit}img{display:block}.cv-toolbar{position:sticky;z-index:10;top:14px;display:flex;align-items:center;justify-content:space-between;gap:20px;width:min(210mm,calc(100vw - 36px));min-height:52px;margin:0 auto 20px;padding:7px 8px 7px 18px;background:#090807ed;color:#d9d2cb;border:1px solid #ffffff20;box-shadow:0 15px 50px #0008;backdrop-filter:blur(14px);font-size:11px}.cv-toolbar a{text-decoration:none}.cv-toolbar>span{color:#8f8881;letter-spacing:1.2px;text-transform:uppercase}.cv-toolbar>div{display:flex;align-items:center;gap:10px}.cv-toolbar button{min-height:36px;padding:8px 14px;background:var(--copper);color:#090807;border:0;font:inherit;cursor:pointer}.cv-page{display:grid;grid-template-columns:var(--sidebar) 1fr;width:210mm;min-height:297mm;margin:auto;background:var(--paper);box-shadow:0 35px 100px #000b;overflow:hidden}.cv-sidebar{position:relative;padding:16mm 9mm 9mm;background:var(--dark);color:#f4f0ea}.cv-sidebar::before{content:'';position:absolute;left:-30mm;top:-26mm;width:82mm;height:82mm;border:1px solid #c9773f55;border-radius:50%;box-shadow:0 0 0 9mm #c9773f0b,0 0 0 18mm #ffffff07}.cv-portrait{position:relative;width:43mm;height:43mm;margin:0 auto 11mm;padding:2mm;border:1px solid #c9773f99;border-radius:50%;background:#171310}.cv-portrait::after{content:'';position:absolute;right:1mm;bottom:3mm;width:5mm;height:5mm;background:var(--copper);border:1.4mm solid var(--dark);border-radius:50%}.cv-portrait img{width:100%;height:100%;object-fit:cover;border-radius:50%;filter:grayscale(.12) contrast(1.03)}.cv-sidebar section{position:relative;margin-bottom:8mm;padding-top:4mm;border-top:.25mm solid #ffffff25}.cv-label{margin:0 0 1.5mm;color:var(--copper-bright);font:6.5pt/1 monospace;letter-spacing:1.3px;text-transform:uppercase}.cv-sidebar h2{margin:0 0 3.2mm;font-size:12.5pt;font-weight:500}.cv-contact ul,.cv-chips,.cv-simple-list{margin:0;padding:0;list-style:none}.cv-contact li{display:grid;grid-template-columns:7mm 1fr;align-items:center;min-height:7mm;font-size:7.6pt}.cv-contact li>span:first-child{color:var(--copper-bright);font:bold 6.5pt/1 monospace}.cv-contact a{text-decoration:none;overflow-wrap:anywhere}.cv-chips{display:flex;flex-wrap:wrap;gap:1.5mm}.cv-chips li{padding:1.3mm 2mm;border:.25mm solid #c9773f70;color:#eee7e0;font-size:6.8pt;line-height:1.15}.cv-simple-list{display:grid;gap:1.7mm}.cv-simple-list li{color:#cec7c0;font-size:7.5pt;line-height:1.3}.cv-portfolio{position:absolute;left:9mm;right:9mm;bottom:10mm;display:grid;grid-template-columns:1fr auto;padding:3.5mm 0;border-block:.25mm solid #c9773f75;text-decoration:none}.cv-portfolio span,.cv-portfolio strong{grid-column:1}.cv-portfolio span{color:var(--copper-bright);font-size:6.5pt;letter-spacing:1.2px;text-transform:uppercase}.cv-portfolio strong{margin-top:1.3mm;font-size:8pt;font-weight:500}.cv-portfolio b{grid-column:2;grid-row:1/3;align-self:center;color:var(--copper-bright);font-size:13pt}.cv-content{display:flex;min-width:0;flex-direction:column;padding:16mm 13mm 8mm}.cv-identity{position:relative;margin-bottom:9mm;padding-bottom:8mm;border-bottom:.4mm solid var(--ink)}.cv-identity::after{content:'';position:absolute;right:0;top:0;width:20mm;height:7mm;background:var(--copper)}.cv-identity>p:first-child{margin:0 0 5mm;color:var(--copper);font:6.6pt/1 monospace;letter-spacing:1.4px}.cv-identity h1{margin:0;font-size:28pt;font-weight:300;letter-spacing:-1.6px;line-height:.95;text-transform:lowercase}.cv-identity h1 span{text-transform:capitalize}.cv-identity h1 strong{font-weight:800;text-transform:uppercase}.cv-identity h2{margin:3mm 0 2.5mm;font-size:11.5pt;font-weight:600}.cv-identity>p:last-child{max-width:110mm;margin:0;color:var(--muted);font-size:8.1pt;line-height:1.45}.cv-section{margin-bottom:7mm}.cv-section-title{display:grid;grid-template-columns:9mm 1fr;align-items:center;margin-bottom:4mm}.cv-section-title span{color:var(--copper);font:7pt/1 monospace}.cv-section-title h2{margin:0;font-size:13.5pt;letter-spacing:-.3px}.cv-items{display:grid;gap:4mm}.cv-item{display:grid;grid-template-columns:28mm 1fr;gap:4mm}.cv-item time{color:var(--copper);font:6.6pt/1.35 monospace;text-transform:uppercase}.cv-item h3{margin:0 0 1mm;font-size:9.4pt}.cv-item h3 span{color:var(--muted);font-weight:400}.cv-item p{margin:0;color:var(--muted);font-size:7.5pt;line-height:1.4}.cv-item ul{margin:1.3mm 0 0;padding-left:4mm;color:var(--muted);font-size:7.2pt;line-height:1.4}.cv-projects{display:grid;grid-template-columns:repeat(2,1fr);gap:2.5mm}.cv-project{position:relative;min-height:21mm;padding:3mm;border:.25mm solid var(--line)}.cv-project::before{content:'';position:absolute;left:-.25mm;top:-.25mm;width:8mm;height:.6mm;background:var(--copper)}.cv-project span{display:block;margin-bottom:2mm;color:var(--copper);font:6pt/1 monospace;text-transform:uppercase}.cv-project h3{margin:0 0 1mm;font-size:8.8pt}.cv-project p{margin:0;color:var(--muted);font-size:6.8pt;line-height:1.35}.cv-footer{display:flex;justify-content:space-between;gap:5mm;margin-top:auto;padding-top:3mm;border-top:.25mm solid var(--line);color:#8c857e;font:5.5pt/1 monospace;letter-spacing:.6px}.cv-footer span:nth-child(2){color:var(--copper)}
@page{size:A4;margin:0}@media print{html,body{width:210mm;height:297mm;background:#fff}body{padding:0}.cv-toolbar{display:none!important}.cv-page{width:210mm;height:297mm;min-height:297mm;margin:0;box-shadow:none;break-after:avoid;print-color-adjust:exact;-webkit-print-color-adjust:exact}}
@media(max-width:850px){body{padding:14px 0 40px}.cv-toolbar{top:0;width:100%;margin-bottom:14px;border-inline:0}.cv-toolbar>span{display:none}.cv-page{width:min(210mm,100%);grid-template-columns:1fr;min-height:0}.cv-sidebar{padding:34px 24px 100px}.cv-portrait{width:150px;height:150px}.cv-contact ul{display:grid;grid-template-columns:1fr 1fr}.cv-content{padding:40px 24px}.cv-portfolio{left:24px;right:24px}.cv-item{grid-template-columns:1fr}.cv-projects{grid-template-columns:1fr}}@media(max-width:520px){.cv-toolbar{align-items:flex-start;flex-direction:column;padding:12px 15px}.cv-toolbar>div{width:100%;justify-content:space-between}.cv-contact ul{grid-template-columns:1fr}.cv-identity h1{font-size:38px}.cv-identity::after{width:45px;height:12px}}

/* Keep this block last: print must override every responsive breakpoint. */
@media print{
  html,body{width:210mm!important;height:297mm!important;margin:0!important;padding:0!important;overflow:hidden!important;background:#fff!important}
  .cv-toolbar{display:none!important}
  .cv-page{display:grid!important;grid-template-columns:66mm 144mm!important;width:210mm!important;height:297mm!important;min-height:297mm!important;max-height:297mm!important;margin:0!important;overflow:hidden!important;background:var(--paper)!important;box-shadow:none!important;break-inside:avoid!important;break-after:avoid!important;page-break-after:avoid!important;print-color-adjust:exact!important;-webkit-print-color-adjust:exact!important}
  .cv-sidebar{display:block!important;padding:16mm 9mm 9mm!important;background:var(--dark)!important;color:#f4f0ea!important}
  .cv-portrait{width:43mm!important;height:43mm!important;margin:0 auto 11mm!important;padding:2mm!important}
  .cv-contact ul{display:block!important}
  .cv-content{display:flex!important;padding:16mm 13mm 8mm!important}
  .cv-portfolio{left:9mm!important;right:9mm!important;bottom:10mm!important}
  .cv-item{display:grid!important;grid-template-columns:28mm 1fr!important}
  .cv-projects{display:grid!important;grid-template-columns:repeat(2,1fr)!important}
  .cv-section,.cv-item,.cv-project,.cv-identity{break-inside:avoid!important;page-break-inside:avoid!important}
  a,a:visited{color:inherit!important;text-decoration:none!important}
  a[href]::after{content:none!important}
}


@font-face{font-family:'Montserrat Alternates';src:url('../content/fonts/MontserratAlternates-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'Montserrat Alternates';src:url('../content/fonts/MontserratAlternates-SemiBold.ttf') format('truetype');font-weight:600 800;font-display:swap}
.cv-identity h1,.cv-footer span:first-child{font-family:'Montserrat Alternates',Arial,sans-serif}
