/* Modelos de currículo — 2026-08-24.
   Medidas em milímetros: o mesmo ficheiro serve o ecrã e o PDF (A4). */

.cvdoc{
  --tinta:#14161f; --suave:#5b6070; --linha:#dfe2ea;
  width:210mm; min-height:297mm; box-sizing:border-box;
  background:#fff; color:var(--tinta);
  font-family:Inter,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  font-size:9.4pt; line-height:1.5; letter-spacing:-0.005em;
}
.cvdoc .ex{opacity:.34}
.cvdoc h1,.cvdoc h2{margin:0;font-weight:700}
.cvdoc ul{margin:0;padding:0;list-style:none}
.cvdoc .desc{margin:2mm 0 0;color:#2c3040}
.cvdoc .bloco{margin-bottom:6mm}
.cvdoc .bloco h2{font-size:8.4pt;letter-spacing:.14em;text-transform:uppercase;color:var(--cor);margin-bottom:2.5mm}
.cvdoc .entrada{margin-bottom:4.5mm}
.cvdoc .entrada:last-child{margin-bottom:0}
.cvdoc .linha1{display:flex;justify-content:space-between;align-items:baseline;gap:4mm}
.cvdoc .cargo-i{font-weight:650;font-size:10.2pt;flex:1}
.cvdoc .datas{font-size:8.4pt;color:var(--suave);white-space:nowrap}
.cvdoc .onde{font-size:8.8pt;color:var(--suave)}
.cvdoc .contactos li{font-size:8.8pt;color:var(--suave)}
/* nos modelos com contactos ao lado do nome, o espaço é curto: corta-se com
   reticências em vez de partir a linha ao meio */
.cvdoc.m-nitido .contactos li,
.cvdoc.m-faixa .contactos li,
.cvdoc.m-coluna .contactos li{white-space:nowrap;overflow:hidden;
  text-overflow:ellipsis;max-width:58mm}
.cvdoc .secundario ul li{font-size:9pt;margin-bottom:1.2mm}
.cvdoc .retrato{width:26mm;height:26mm;border-radius:50%;object-fit:cover}

/* ── Nítido: tipografia a mandar, quase sem cor. O estilo que hoje domina ── */
.cvdoc.m-nitido{padding:20mm 18mm}
.cvdoc.m-nitido .topo{display:flex;align-items:center;gap:7mm;
  border-bottom:0.5mm solid var(--tinta);padding-bottom:6mm;margin-bottom:7mm}
.cvdoc.m-nitido .identidade{flex:1}
.cvdoc.m-nitido h1{font-size:26pt;line-height:1.05;letter-spacing:-0.03em}
.cvdoc.m-nitido .funcao{margin:1.5mm 0 0;font-size:11pt;color:var(--cor);font-weight:550}
.cvdoc.m-nitido .contactos{text-align:right}
.cvdoc.m-nitido .corpo{display:grid;grid-template-columns:1fr 56mm;gap:12mm}
.cvdoc.m-nitido .bloco h2{color:var(--tinta);border-bottom:0.2mm solid var(--linha);padding-bottom:1.5mm}

/* ── Faixa: barra de cor no topo, nome grande em branco ── */
.cvdoc.m-faixa{padding:0 0 18mm}
.cvdoc.m-faixa .topo{background:var(--cor);color:#fff;padding:16mm 18mm 12mm;
  display:flex;align-items:center;gap:7mm}
.cvdoc.m-faixa .identidade{flex:1}
.cvdoc.m-faixa h1{font-size:25pt;letter-spacing:-0.025em;line-height:1.05}
.cvdoc.m-faixa .funcao{margin:1.5mm 0 0;font-size:11pt;opacity:.9}
.cvdoc.m-faixa .contactos li{color:rgba(255,255,255,.88);text-align:right}
.cvdoc.m-faixa .retrato{border:1mm solid rgba(255,255,255,.35)}
.cvdoc.m-faixa .corpo{display:grid;grid-template-columns:1fr 52mm;gap:10mm;padding:10mm 18mm 0}
.cvdoc.m-faixa .bloco h2{border-bottom:0.2mm solid var(--linha);padding-bottom:1.5mm}

/* ── Coluna: barra lateral leve, sem bloco de cor pesado ── */
.cvdoc.m-coluna{padding:0}
.cvdoc.m-coluna .topo{padding:16mm 16mm 6mm;display:flex;align-items:center;gap:6mm;
  border-bottom:0.2mm solid var(--linha)}
.cvdoc.m-coluna .identidade{flex:1;min-width:0}
.cvdoc.m-coluna h1{font-size:23pt;letter-spacing:-0.02em;white-space:nowrap;
  overflow:hidden;text-overflow:ellipsis}
.cvdoc.m-coluna .funcao{margin:1.5mm 0 0;font-size:10.5pt;color:var(--cor)}
.cvdoc.m-coluna .contactos{text-align:right}
.cvdoc.m-coluna .corpo{display:flex;align-items:stretch;min-height:200mm}
.cvdoc.m-coluna .secundario{order:-1;width:58mm;flex:none;background:#f6f7fa;
  padding:9mm 8mm 12mm;border-right:0.2mm solid var(--linha)}
.cvdoc.m-coluna .principal{flex:1;min-width:0;padding:9mm 16mm 12mm 10mm}
.cvdoc.m-coluna .secundario .bloco h2{color:var(--cor)}

/* ── Editorial: serifada moderna, para áreas formais e criativas ── */
.cvdoc.m-editorial{padding:20mm 20mm;font-family:'Bitstream Charter','Liberation Serif',Georgia,serif}
.cvdoc.m-editorial .topo{text-align:center;border-bottom:0.4mm solid var(--tinta);
  padding-bottom:6mm;margin-bottom:7mm;display:block}
.cvdoc.m-editorial .retrato{margin:0 auto 4mm;display:block}
.cvdoc.m-editorial h1{font-size:27pt;letter-spacing:0.01em;font-weight:600}
.cvdoc.m-editorial .funcao{margin:2mm 0 3mm;font-size:11.5pt;font-style:italic;color:var(--cor)}
.cvdoc.m-editorial .contactos{display:flex;justify-content:center;gap:5mm;flex-wrap:wrap}
.cvdoc.m-editorial .contactos li{font-size:9pt;white-space:nowrap}
.cvdoc.m-editorial .corpo{display:block}
.cvdoc.m-editorial .bloco h2{text-align:center;letter-spacing:.2em;font-size:8.6pt;
  border-bottom:0.2mm solid var(--linha);padding-bottom:2mm}
.cvdoc.m-editorial .secundario{display:grid;grid-template-columns:1fr 1fr;gap:8mm}

/* ── Simples: sem enfeites, para os sistemas automáticos ── */
.cvdoc.m-simples{padding:18mm 18mm;font-size:10pt}
.cvdoc.m-simples .topo{display:block;margin-bottom:5mm}
.cvdoc.m-simples .retrato{display:none}
.cvdoc.m-simples h1{font-size:18pt;letter-spacing:0}
.cvdoc.m-simples .funcao{margin:1mm 0 2mm;font-size:11pt;color:var(--tinta)}
.cvdoc.m-simples .contactos li{display:block;color:var(--tinta)}
.cvdoc.m-simples .corpo{display:block}
.cvdoc.m-simples .bloco h2{color:var(--tinta);font-size:10pt;letter-spacing:.04em;
  border-bottom:0.3mm solid var(--tinta);padding-bottom:1mm}
.cvdoc.m-simples .secundario ul li:before{content:"- "}
.cvdoc.m-simples .linha1{display:block}
.cvdoc.m-simples .datas{display:block}

/* O estilo do site põe h1{max-width:15ch;margin-inline:auto} para os títulos
   das páginas. Dentro da folha isso corta o título ao meio — 150px a 15pt — e
   centra-o onde não devia. A folha é um documento, não uma página do site. */
.cvdoc h1{max-width:none;margin-inline:0}

/* ── Europeu ──────────────────────────────────────────────────────────────
   Na linha do Europass: cabeçalho a azul, secções com rótulo à esquerda e
   conteúdo à direita, tudo muito arrumado. É o desenho que a administração
   pública europeia está habituada a receber, e o que muitos concursos pedem.

   ⚠️ Não usa o logótipo nem as cores exactas da marca Europass — só a
   estrutura, que é o que interessa a quem entrega. */
.cvdoc.m-europeu{padding:0;font-size:9.6pt}
.cvdoc.m-europeu .topo{display:flex;align-items:center;gap:8mm;
  background:var(--cor);color:#fff;padding:14mm 18mm;margin:0}
.cvdoc.m-europeu .identidade{flex:1}
.cvdoc.m-europeu h1{font-size:22pt;line-height:1.1;letter-spacing:-.02em;color:#fff}
.cvdoc.m-europeu .funcao{margin:2mm 0 0;font-size:11pt;color:rgba(255,255,255,.88);font-weight:500}
.cvdoc.m-europeu .retrato{width:28mm;height:28mm;border-radius:2mm;
  border:0.6mm solid rgba(255,255,255,.5)}
.cvdoc.m-europeu .contactos{text-align:right}
.cvdoc.m-europeu .contactos li{color:rgba(255,255,255,.92);font-size:8.6pt;margin-bottom:1mm}

/* uma coluna só: o Europass não tem barra lateral, tem secções seguidas */
.cvdoc.m-europeu .corpo{display:block;padding:12mm 18mm 16mm}
.cvdoc.m-europeu .secundario{margin-top:0}

/* o rótulo à esquerda, o conteúdo à direita — a marca de água do formato */
.cvdoc.m-europeu .bloco{display:grid;grid-template-columns:38mm 1fr;gap:6mm;
  border-top:0.25mm solid var(--linha);padding-top:4mm;margin-bottom:5mm}
.cvdoc.m-europeu .bloco:first-child{border-top:0;padding-top:0}
.cvdoc.m-europeu .bloco h2{grid-column:1;font-size:8.2pt;letter-spacing:.1em;
  text-transform:uppercase;color:var(--cor);border:0;padding:0;margin:0;line-height:1.4}
.cvdoc.m-europeu .bloco > *:not(h2){grid-column:2}
.cvdoc.m-europeu .entrada{margin-bottom:3.5mm}
.cvdoc.m-europeu .linha1{display:flex;justify-content:space-between;gap:4mm}
.cvdoc.m-europeu .cargo-i{font-weight:650;font-size:10pt}
.cvdoc.m-europeu .datas{font-size:8.4pt;color:var(--suave);white-space:nowrap}
.cvdoc.m-europeu .onde{font-size:8.8pt;color:var(--suave);font-style:italic}
.cvdoc.m-europeu .secundario ul{display:flex;flex-wrap:wrap;gap:2mm 4mm}
.cvdoc.m-europeu .secundario ul li{font-size:9pt;margin:0}
.cvdoc.m-europeu .secundario ul li:after{content:"·";margin-left:4mm;color:var(--linha)}
.cvdoc.m-europeu .secundario ul li:last-child:after{content:""}
