/* Résumé: print-first. Same proportions on screen and on A4 paper; ATS-friendly single column. */
:root{--ink:#111827;--soft:#4b5563;--rule:#e5e7eb;--accent:#0d9488;--bg:#f1f5f9}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:10.5pt/1.45 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
.bar{position:sticky;top:0;display:flex;align-items:center;gap:8px;padding:10px 16px;background:rgba(241,245,249,.9);backdrop-filter:blur(6px);z-index:2}
.bar a{color:var(--accent);font-weight:600;text-decoration:none}.sp{flex:1}
.pill-btn{font:600 11px/1 Inter,system-ui,sans-serif;letter-spacing:.6px;color:var(--soft);background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:7px 12px;cursor:pointer}
.pill-btn:hover{color:var(--ink);border-color:#94a3b8}.pill-btn b{color:var(--ink)}
.sheet{width:min(210mm,100%);min-height:297mm;margin:16px auto 24px;padding:16mm 16mm;background:#fff;box-shadow:0 10px 30px rgba(15,23,42,.12)}
@media(max-width:820px){.sheet{min-height:0;margin:0;padding:24px 20px;box-shadow:none}}
.top{display:flex;justify-content:space-between;gap:24px;border-bottom:2px solid var(--ink);padding-bottom:10px;margin-bottom:6px}
h1{margin:0;font-size:22pt;letter-spacing:-.5px;line-height:1.1}
.role{margin:4px 0 0;color:var(--soft);font-size:11.5pt}
address{font-style:normal;text-align:right;color:var(--soft);font-size:9.5pt;line-height:1.5}
@media(max-width:560px){.top{flex-direction:column}address{text-align:left}}
h2{margin:14px 0 6px;font-size:9pt;letter-spacing:1.6px;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--rule);padding-bottom:3px}
p{margin:0 0 6px}
.job{margin:0 0 10px;break-inside:avoid}
.jh{display:flex;justify-content:space-between;gap:12px;align-items:baseline}
.jh h3{margin:0;font-size:11pt}.jh h3 span{font-weight:500}
.when{color:var(--soft);font-size:9.5pt;white-space:nowrap}
.where{color:var(--soft);font-size:9.5pt;margin-bottom:2px}
.job ul{margin:3px 0 3px;padding-left:16px}.job li{margin:1px 0}
.stack{font-size:9.5pt;color:var(--soft)}.stack span{font-weight:600;color:var(--ink)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}@media(max-width:560px){.two{grid-template-columns:1fr}}
.note{max-width:210mm;margin:0 auto 32px;padding:0 16px;font-size:12px;color:var(--soft);text-align:center}
@page{size:A4;margin:0}
@media print{body{background:#fff}.bar,.note{display:none}.sheet{margin:0;box-shadow:none;width:210mm;min-height:297mm}}
.bar .pill-btn{text-decoration:none}address a{color:inherit;text-decoration:none}
