/* CV sheet + 4 templates. Sheet = A4 at 96dpi (794 x 1123 px). Always white paper, independent of site theme. */
.cv{--accent:#1E3A5F;box-sizing:border-box;width:794px;min-height:1123px;background:#fff;color:#1f2937;font:13.5px/1.55 'Open Sans',Arial,sans-serif;position:relative;overflow-wrap:anywhere;color-scheme:light}
.cv *{box-sizing:border-box}
.cv h1,.cv h2,.cv h3{margin:0;color:#111827;letter-spacing:0;line-height:1.25}
.cv ul{margin:4px 0 0;padding-left:18px}.cv li{margin:2px 0}
.cv p{margin:4px 0 0}
.cv a{color:inherit;text-decoration:none}
.cv .photo{object-fit:cover;flex:none}
.cv .entry{margin-bottom:14px;break-inside:avoid}
.cv .e-top{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.cv .e-title{font-weight:700;color:#111827}
.cv .e-sub{color:#4b5563}
.cv .e-date{color:#6b7280;font-size:12.5px;white-space:nowrap;flex:none}
.cv .contact{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:12.5px}
.cv .contact span{display:inline-flex;align-items:center;gap:5px}
.cv .contact svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2;flex:none}
.cv .chips{display:flex;flex-wrap:wrap;gap:6px}
.cv .chips span{padding:3px 9px;border-radius:4px;background:#f1f5f9;font-size:12.5px}
.cv .muted{color:#6b7280}
.cv section{margin-top:18px}
.cv .placeholder{color:#9ca3af;font-style:italic}

/* 1. Classic — single column, serif headings, ATS-first */
.t-classic{padding:52px 58px}
.t-classic header{display:flex;gap:22px;align-items:center;padding-bottom:16px;border-bottom:2px solid var(--accent)}
.t-classic .photo{width:92px;height:92px;border-radius:50%}
.t-classic h1{font:700 30px/1.15 Georgia,'Times New Roman',serif;color:var(--accent)}
.t-classic .role{font-size:15px;color:#374151;margin:3px 0 8px}
.t-classic .contact{color:#374151}
.t-classic h2{font:700 14px/1 Georgia,serif;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);padding-bottom:6px;border-bottom:1px solid #d1d5db;margin-bottom:10px}

/* 2. Modern — accent header band + two columns */
.t-modern header{background:var(--accent);color:#fff;padding:40px 48px;display:flex;gap:24px;align-items:center}
.t-modern .photo{width:104px;height:104px;border-radius:50%;border:3px solid rgba(255,255,255,.85)}
.t-modern h1{color:#fff;font:700 31px/1.15 'Poppins',Arial,sans-serif}
.t-modern .role{font-size:15px;opacity:.9;margin:4px 0 10px;font-weight:600}
.t-modern .contact{color:rgba(255,255,255,.92)}
.t-modern .body{display:grid;grid-template-columns:1fr 232px;gap:32px;padding:30px 48px 48px}
.t-modern h2{font:700 13px/1 'Poppins',Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em;color:var(--accent);margin-bottom:12px;display:flex;align-items:center;gap:10px}
.t-modern h2::after{content:"";flex:1;height:2px;background:color-mix(in srgb,var(--accent) 22%,#fff)}
.t-modern .body>div:first-child>section:first-child,.t-modern aside>section:first-child{margin-top:0}
.t-modern aside .chips span{background:color-mix(in srgb,var(--accent) 10%,#fff);color:#1f2937}
.t-modern .lang{display:flex;justify-content:space-between;gap:8px;margin-bottom:5px}

/* 3. Minimal — airy, date column on the left */
.t-minimal{padding:60px 64px}
.t-minimal header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:8px}
.t-minimal .photo{width:84px;height:84px;border-radius:12px}
.t-minimal h1{font:600 34px/1.1 'Poppins',Arial,sans-serif;letter-spacing:-.02em}
.t-minimal .role{color:var(--accent);font:500 16px/1.3 'Poppins',Arial,sans-serif;margin:6px 0 12px}
.t-minimal .contact{color:#4b5563}
.t-minimal section{display:grid;grid-template-columns:150px 1fr;gap:20px;margin-top:22px;padding-top:18px;border-top:1px solid #e5e7eb}
.t-minimal h2{font:600 12px/1.4 'Poppins',Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:var(--accent)}
.t-minimal .entry{display:grid;grid-template-columns:1fr;gap:0}
.t-minimal .e-top{flex-direction:column;gap:0}
.t-minimal .e-date{order:-1;font-size:12px;margin-bottom:1px}

/* 4. Executive — centred name, accent rules, sidebar of skills */
.t-executive{padding:50px 56px}
.t-executive header{text-align:center;padding-bottom:18px;margin-bottom:6px;border-bottom:3px double var(--accent)}
.t-executive .photo{width:96px;height:96px;border-radius:50%;margin:0 auto 12px;display:block}
.t-executive h1{font:700 32px/1.15 Georgia,'Times New Roman',serif;letter-spacing:.04em;text-transform:uppercase;color:#111827}
.t-executive .role{color:var(--accent);font:600 14px/1.3 'Poppins',Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase;margin:8px 0 10px}
.t-executive .contact{justify-content:center;color:#374151}
.t-executive .body{display:grid;grid-template-columns:200px 1fr;gap:34px}
.t-executive aside{border-right:1px solid #e5e7eb;padding-right:24px}
.t-executive h2{font:700 13px/1 Georgia,serif;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);margin-bottom:10px}
.t-executive aside .chips{flex-direction:column;gap:4px}.t-executive aside .chips span{background:none;padding:0;border-left:3px solid var(--accent);padding-left:8px;border-radius:0}
.t-executive .lang{margin-bottom:5px}.t-executive .lang .muted{display:block;font-size:12px}

/* 5. Elegant — full-height colour sidebar, Playfair name, gold rule */
.t-elegant{display:grid;grid-template-columns:262px 1fr;background:linear-gradient(90deg,var(--accent) 0 262px,#fff 262px)}
.t-elegant aside{color:#fff;padding:48px 28px 40px}
.t-elegant aside .photo{width:136px;height:136px;border-radius:50%;display:block;margin:0 auto 26px;border:4px solid rgba(255,255,255,.22)}
.t-elegant aside h2{font:700 11.5px/1 'Open Sans',Arial,sans-serif;text-transform:uppercase;letter-spacing:.18em;color:rgba(255,255,255,.78);padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.22);margin-bottom:12px}
.t-elegant aside section:first-of-type{margin-top:0}
.t-elegant aside .contact{flex-direction:column;gap:9px;color:#fff;font-size:12.5px}
.t-elegant aside .chips span{background:rgba(255,255,255,.13);color:#fff}
.t-elegant aside .lang{display:flex;justify-content:space-between;gap:8px;margin-bottom:5px}
.t-elegant aside .muted,.t-elegant aside li{color:rgba(255,255,255,.82)}.t-elegant aside strong{color:#fff}
.t-elegant main{padding:52px 46px 40px}
.t-elegant header{margin-bottom:6px}
.t-elegant h1{font:700 38px/1.08 'Playfair Display',Georgia,serif;color:#111827;letter-spacing:-.01em}
.t-elegant .role{font:700 12.5px/1.3 'Open Sans',Arial,sans-serif;text-transform:uppercase;letter-spacing:.2em;color:var(--accent);margin-top:10px}
.t-elegant header::after{content:"";display:block;width:56px;height:3px;background:#C9A24B;margin-top:18px}
.t-elegant main h2{font:600 20px/1.2 'Playfair Display',Georgia,serif;color:var(--accent);margin-bottom:10px}
.t-elegant main section{margin-top:22px}

/* 6. Creative — monogram header, pill headings, timeline entries */
.t-creative{padding-bottom:44px}
.t-creative header{display:flex;gap:26px;align-items:center;padding:44px 52px 30px;background:color-mix(in srgb,var(--accent) 7%,#fff);border-bottom:4px solid var(--accent)}
.t-creative .mono,.t-creative .photo{width:100px;height:100px;border-radius:24px;flex:none}
.t-creative .mono{background:var(--accent);color:#fff;display:grid;place-items:center;font:700 38px/1 'Playfair Display',Georgia,serif;letter-spacing:.02em}
.t-creative h1{font:700 34px/1.1 'Poppins',Arial,sans-serif;letter-spacing:-.02em}
.t-creative .role{color:var(--accent);font:600 16px/1.3 'Poppins',Arial,sans-serif;margin:6px 0 10px}
.t-creative .contact{color:#374151}
.t-creative .body{display:grid;grid-template-columns:1fr 228px;gap:34px;padding:28px 52px 0}
.t-creative h2{display:inline-block;background:var(--accent);color:#fff;font:600 11.5px/1 'Poppins',Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;padding:7px 11px;border-radius:7px;margin-bottom:12px}
.t-creative .body>div>section:first-child,.t-creative aside>section:first-child{margin-top:0}
.t-creative .body>div .entry{position:relative;padding-left:18px;border-left:2px solid color-mix(in srgb,var(--accent) 22%,#fff)}
.t-creative .body>div .entry::before{content:"";position:absolute;left:-6px;top:5px;width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px #fff}
.t-creative aside .chips span{background:#fff;border:1.5px solid color-mix(in srgb,var(--accent) 45%,#fff);color:#1f2937}
.t-creative .lang{display:flex;justify-content:space-between;gap:8px;margin-bottom:5px}
.t-elegant aside .mono{width:118px;height:118px;border-radius:50%;margin:0 auto 28px;display:grid;place-items:center;border:2px solid #C9A24B;color:#fff;font:600 40px/1 'Playfair Display',Georgia,serif;letter-spacing:.04em;background:rgba(255,255,255,.06)}
