.cv-body{background:var(--bg)}.sheet{--paper: #ffffff;--ink: #151514;--ink-2: #44433f;--ink-3: #6a6964;--rule: #e2e1dc;--band: #151514;--pa: #4f7000;--ba: #c8f031;--tint: color-mix(in srgb, var(--pa) 6%, var(--paper));--chip: color-mix(in srgb, var(--pa) 9%, var(--paper));--chip-line: color-mix(in srgb, var(--pa) 28%, var(--paper));max-width:210mm;margin:0 auto;background:var(--paper);color:var(--ink);font-size:12.5px;line-height:1.55;box-shadow:0 0 0 1px var(--line),0 20px 60px -30px #00000080;-webkit-print-color-adjust:exact;print-color-adjust:exact}[data-accent=orange] .sheet{--pa: #c2410c;--ba: #ff6a2b}[data-accent=blue] .sheet{--pa: #2349d8;--ba: #6b8cff}[data-accent=mono] .sheet{--pa: #151514;--ba: #ffffff;--tint: #f4f4f2;--chip: #f1f1ee;--chip-line: #d4d3ce}.sheet a{color:inherit;text-decoration:none}.sheet a:hover{text-decoration:underline}.sheet .band{position:relative;display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px 32px;padding:13mm 14mm 9mm;background:var(--band);color:#f1f0ec;overflow:hidden}.sheet .band:after{content:"";position:absolute;inset:0 0 0 45%;background:radial-gradient(circle,var(--ba) .9px,transparent 1.3px) 0 0 / 7px 7px;opacity:.32;-webkit-mask-image:linear-gradient(to left,#000 0%,transparent 85%);mask-image:linear-gradient(to left,#000 0%,transparent 85%);pointer-events:none}.sheet .band>*{position:relative;z-index:1}.sheet .id{display:flex;align-items:center;gap:7mm}.sheet .photo{position:relative;flex:none;width:30mm;height:30mm;overflow:hidden;border-radius:2px;background:radial-gradient(circle at 50% 38%,color-mix(in srgb,var(--ba) 34%,#1f1f1d),#1f1f1d 72%);box-shadow:inset 0 0 0 1px #ffffff14}.sheet .photo img{display:block;width:100%;height:100%;object-fit:cover}.sheet .photo:after{content:"";position:absolute;right:0;bottom:0;width:7px;height:7px;background:var(--ba)}.cv-no-photo .sheet .photo{display:none}.sheet .kicker{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;color:#8e8c86}.sheet .band h1{display:flex;align-items:center;gap:12px;margin-top:8px;font-size:32px;line-height:1;font-weight:600;letter-spacing:-.025em}.sheet .band h1 i{display:block;width:11px;height:11px;background:var(--ba)}.sheet .role{margin-top:8px;padding-left:23px;font-size:14px;font-weight:500;color:var(--ba)}.sheet .contact{font-family:var(--font-mono);font-size:10.5px;line-height:1.75;text-align:right;color:#c9c7c1}.sheet .body{display:grid;grid-template-columns:1fr 62mm;grid-template-areas:"main side"}.sheet .main{grid-area:main;padding:8mm 9mm 10mm 14mm}.sheet .side{grid-area:side;padding:8mm 12mm 10mm 7mm;background:var(--tint);border-left:1px solid var(--chip-line)}.sheet section+section{margin-top:18px}.sheet h2{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-family:var(--font-mono);font-size:10px;font-weight:500;letter-spacing:.13em;text-transform:uppercase;color:var(--ink)}.sheet h2 span{color:var(--pa)}.sheet .main h2:after{content:"";flex:1;height:1px;background:var(--rule)}.sheet h3{font-size:13px;font-weight:600;line-height:1.4}.sheet h3 span{font-weight:400;color:var(--ink-2)}.sheet .lead{color:var(--ink-2)}.sheet .when{font-family:var(--font-mono);font-size:10px;color:var(--pa)}.sheet .when span{color:var(--ink-3)}.sheet .timeline{position:relative;margin-left:4px;padding-left:18px;border-left:1px solid var(--rule)}.sheet .timeline .entry{position:relative}.sheet .timeline .entry+.entry{margin-top:16px}.sheet .timeline .entry:before{content:"";position:absolute;left:-22.5px;top:3px;width:8px;height:8px;background:var(--pa);box-shadow:0 0 0 3px var(--paper)}.sheet .timeline h3{margin-top:1px}.sheet .bullets{margin-top:6px}.sheet .bullets li{position:relative;padding-left:13px;color:var(--ink-2)}.sheet .bullets li+li{margin-top:2px}.sheet .bullets b{font-weight:600;color:var(--ink)}.sheet .bullets li:before{content:"";position:absolute;left:1px;top:.6em;width:4px;height:4px;background:var(--pa)}.sheet .chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:8px}.sheet .chips li{padding:1px 6px;border:1px solid var(--chip-line);border-radius:2px;background:var(--chip);font-family:var(--font-mono);font-size:9.5px;line-height:1.6;color:var(--ink-2)}.sheet .side .chips li{background:var(--paper)}.sheet .projects{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.sheet .blurb{margin-top:2px;font-size:11.5px;line-height:1.5;color:var(--ink-2)}.sheet .plink{margin-top:4px;font-family:var(--font-mono);font-size:9.5px;color:var(--ink-3)}.sheet .plink b{font-weight:500;color:var(--pa)}.sheet .now ul{border-top:1px solid var(--rule)}.sheet .now li{display:grid;grid-template-columns:22mm 1fr;gap:10px;padding:5px 0;border-bottom:1px solid var(--rule);color:var(--ink-2)}.sheet .now li .when{padding-top:1px}.sheet .now .gh{margin-top:9px;font-family:var(--font-mono);font-size:9.5px;color:var(--ink-3)}.sheet .now .gh b{font-weight:500;color:var(--pa)}.sheet .now{break-inside:avoid}.sheet .side{font-size:11.5px;color:var(--ink-2)}.sheet .side .group+.group{margin-top:9px}.sheet .side .group h3{font-family:var(--font-mono);font-size:9.5px;font-weight:400;color:var(--ink-3)}.sheet .side .group .chips{margin-top:4px}.sheet .side>section>.chips{margin-top:0}.sheet .edu+.edu{margin-top:10px}.sheet .edu h3{font-size:12px;color:var(--ink)}.sheet .edu .note{font-family:var(--font-mono);font-size:9.5px;color:var(--ink-3)}.sheet .projects .entry,.sheet .edu,.sheet .group,.sheet .bullets li,.sheet .chips{break-inside:avoid}.sheet h2,.sheet .when,.sheet .timeline h3{break-after:avoid}@media(max-width:720px){.sheet{box-shadow:none}.sheet .band{padding:28px 20px 22px}.sheet .contact{text-align:left}.sheet .body{grid-template-columns:1fr;grid-template-areas:"main" "side"}.sheet .main{padding:24px 20px}.sheet .side{padding:24px 20px;border-left:0;border-top:1px solid var(--chip-line)}.sheet .projects{grid-template-columns:1fr}}@page{size:A4;margin:10mm 0 12mm;@bottom-left{content:"Edrich Barnard · Curriculum vitae";padding-left:14mm;font:7pt IBM Plex Mono,monospace;color:#8e8c86}@bottom-right{content:counter(page) " / " counter(pages);padding-right:14mm;font:7pt IBM Plex Mono,monospace;color:#8e8c86}}@page :first{margin-top:0}@media print{html,body.cv-body{background:#fff!important}.cv-bar{display:none!important}.sheet{max-width:none;box-shadow:none;font-size:11.5px}.sheet a{text-decoration:none!important}.sheet:before{content:"";position:fixed;inset:0 0 0 auto;width:62mm;background:var(--tint);border-left:1px solid var(--chip-line)}.sheet .band{z-index:1}.sheet .body{position:relative}.sheet .side{background:none;border-left-color:transparent}}
