/* CV page styles: shared by all templates (colours come from CSS variables set per template) */
.page{width:210mm;min-height:297mm;background:#fff;font-family:var(--font);font-size:var(--fs);line-height:1.45;color:#1c2630}
.side-left,.side-right{display:grid}
.side-left{grid-template-columns:68mm 1fr;background-image:linear-gradient(to right,var(--sbg) 0,var(--sbg) 68mm,#fff 68mm)}
.side-right{grid-template-columns:1fr 68mm;background-image:linear-gradient(to left,var(--sbg) 0,var(--sbg) 68mm,#fff 68mm)}
.side{color:var(--stx)}
.side-left .side,.side-right .side,.banner .side{padding:12mm 7mm}
.mainc{padding:12mm 10mm}.banner .mainc{padding:8mm 10mm}
.side,.mainc{-webkit-box-decoration-break:clone;box-decoration-break:clone}
.banner .bn-head{background:var(--ac);padding:11mm 12mm 8mm;display:flex;justify-content:space-between;align-items:center;gap:8mm}
.banner .bn-head h1,.banner .bn-head .role,.banner .bn-head .target{color:#fff}
.banner .bn-body{display:grid;grid-template-columns:1fr 62mm;background-image:linear-gradient(to left,var(--sbg) 0,var(--sbg) 62mm,#fff 62mm)}
.single .cl-head{padding:12mm 14mm 5mm;border-bottom:3px solid var(--ac)}
.single.center .cl-head{text-align:center}
.single .cl-body{padding:2mm 14mm 12mm}
.single .side{display:grid;grid-template-columns:1fr 1fr;gap:0 8mm}
.single .blk{break-inside:avoid}
.photo{width:34mm;height:34mm;border-radius:50%;object-fit:cover;display:block;margin:0 auto 6mm;border:2px solid rgba(255,255,255,.7)}
.banner .photo{margin:0;border-color:#fff;flex:none}
.single .photo{width:26mm;height:26mm;margin:0 0 3mm;border-color:var(--ac)}
.single.center .photo{margin:0 auto 3mm}
h1{font-size:25pt;margin:0;line-height:1.1;color:var(--ac)}
.role{font-size:12pt;color:#5b6672;margin:1mm 0 0}
.target{font-size:9pt;margin-top:1.5mm;color:var(--ac);font-weight:600}
.cline{font-size:9pt;color:#5b6672;margin-top:2mm}
.side h3{font-size:9pt;letter-spacing:.12em;text-transform:uppercase;margin:6mm 0 2mm;padding-bottom:1mm;border-bottom:1px solid var(--track)}
.single .side h3{color:var(--ac);border-bottom-color:var(--ac)}
.side p,.side li{font-size:9pt;margin:0 0 1.5mm;word-break:break-word}
.side ul{list-style:none;padding:0;margin:0}
.tag{display:inline-block;background:var(--tag);border-radius:3px;padding:1px 6px;margin:0 2px 3px 0;font-size:8.5pt}
.sk{margin-bottom:2.2mm;font-size:9pt}
.sk i{display:block;height:4px;border-radius:2px;background:var(--track);margin-top:1mm}
.sk i b{display:block;height:100%;border-radius:2px;background:var(--fill)}
h2{font-size:10pt;letter-spacing:.12em;text-transform:uppercase;color:var(--ac);margin:6mm 0 2mm}
.hs-rule h2{padding-bottom:1mm;border-bottom:2px solid var(--ac)}
.hs-bar h2{border-left:4px solid var(--ac);padding-left:3mm}
.hs-thin h2{padding-bottom:1mm;border-bottom:1px solid #cfd6dc}
.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(34mm,1fr));gap:3mm}
.metric{background:#f3f6f8;border-left:3px solid var(--ac);padding:2mm 3mm;border-radius:3px;break-inside:avoid}
.metric b{display:block;font-size:15pt;color:var(--ac);line-height:1.1}
.metric span{font-size:8.5pt;color:#5b6672}
.snap{font-size:9pt;color:#5b6672;margin-top:2mm}
.job{margin-bottom:4mm;break-inside:avoid}
.job .h{display:flex;justify-content:space-between;gap:6px;font-weight:600}
.job .h em{font-weight:400;color:#5b6672;font-style:normal;font-size:9pt;white-space:nowrap}
.job .o{color:var(--ac);font-size:9.5pt}
.job .sc{font-size:9pt;color:#5b6672;font-style:italic}
.job ul{margin:1mm 0 0;padding-left:4mm}.job li{margin-bottom:1mm}
.edu{margin-bottom:2mm;break-inside:avoid}
.m{color:#5b6672;font-size:9pt}
.empty{color:#9aa5b0;font-style:italic}
.basis{display:block;font-size:7.5pt;color:#7a8591;font-style:italic;margin-top:.5mm}
.selfnote{font-size:7.5pt;opacity:.8;margin-top:1mm}
h2,.side h3{break-after:avoid}
.banner{display:flex;flex-direction:column}
.banner .bn-body{flex:1}
@media print{
.page{background:none!important}
.banner .bn-body{background:none!important}
.side-left::before,.side-right::before,.banner .bn-body::before{content:"";position:fixed;top:0;bottom:0;width:68mm;background:var(--sbg);z-index:-1;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.side-left::before{left:0}.side-right::before{right:0}
.banner .bn-body::before{right:0;width:62mm}
}
