/* ═══════════════════════════════════════════════════════════════
   CV — stili propri della pagina + foglio di STAMPA.
   Il pulsante "Scarica PDF" chiama window.print(): tutto quello che
   qui sta sotto @media print decide come viene il PDF.
   ═══════════════════════════════════════════════════════════════ */

.cv {
  max-width: 52rem;
  margin: 0 auto;
  padding: clamp(2rem, 5vw, 4rem) var(--margine) 4rem;
}

/* ── Intestazione ─────────────────────────────────────────────── */
.cv-testa {
  display: flex; justify-content: space-between; gap: 2rem; flex-wrap: wrap;
  padding-bottom: 1.75rem;
  border-bottom: 2px solid var(--inchiostro);
  margin-bottom: 2.5rem;
}
.cv-testa h1 {
  font-family: var(--font); font-weight: 600;
  font-size: clamp(2.375rem, 5vw, 3.5rem);
  line-height: 1.02; letter-spacing: -0.03em;
  margin: 0 0 .5rem;
}
.cv-ruolo { margin: 0; color: var(--grigio); font-size: 1.25rem; letter-spacing: -0.01em; }

.cv-recapiti {
  list-style: none; margin: 0; padding: 0;
  font-size: .9375rem; text-align: right;
}
.cv-recapiti li { margin-bottom: .3125rem; }
.cv-recapiti a { text-decoration: none; border-bottom: 1px solid var(--linea); }
.cv-recapiti a:hover { border-color: var(--accento); color: var(--accento); }

/* ── Blocchi ──────────────────────────────────────────────────── */
.cv-blocco { margin-bottom: 2.75rem; }
.cv-blocco > h2 {
  font-size: .75rem; letter-spacing: .1em; text-transform: uppercase;
  color: var(--grigio);
  margin: 0 0 1.25rem; padding-bottom: .5rem;
  border-bottom: 1px solid var(--linea);
}
.cv-blocco > p { margin: 0; max-width: 44rem; }

/* ── Voci di esperienza / formazione ──────────────────────────── */
.voce { margin-bottom: 1.75rem; }
.voce:last-child { margin-bottom: 0; }
.voce-testa {
  display: flex; justify-content: space-between; align-items: baseline;
  gap: 1.5rem; flex-wrap: wrap;
}
.voce-testa h3 { font-size: 1.25rem; font-weight: 600; letter-spacing: -0.02em; margin: 0; }
.periodo { font-size: .9375rem; color: var(--grigio); white-space: nowrap; }
.voce-riga { margin: .375rem 0 .875rem; font-size: .9375rem; color: var(--grigio); }
.voce ul { margin: 0; padding-left: 1.125rem; }
.voce li { margin-bottom: .5rem; font-size: .9375rem; }
.voce.vuota {
  border-left: 2px dashed var(--accento);
  padding-left: 1rem;
}

/* ── Competenze in due colonne ────────────────────────────────── */
.cv-competenze {
  display: grid;
  grid-template-columns: 11rem 1fr;
  gap: .625rem 1.5rem;
  margin: 0;
  font-size: .9375rem;
}
.cv-competenze dt { font-weight: 600; }
.cv-competenze dd { margin: 0; color: var(--grigio); }

@media (max-width: 34rem) {
  .cv-competenze { grid-template-columns: 1fr; gap: .25rem; }
  .cv-competenze dd { margin-bottom: .75rem; }
  .cv-recapiti { text-align: left; }
}

/* ── Il pulsante nella testata ────────────────────────────────── */
.testa nav .bottone {
  font-family: inherit; cursor: pointer;
  border: 1px solid var(--inchiostro);
}

/* ═══════════════════════════════════════════════════════════════
   STAMPA / PDF
   Obiettivo: una o due pagine A4 pulite, inchiostro nero su bianco,
   nessun menu, nessun pulsante, link leggibili.
   ═══════════════════════════════════════════════════════════════ */
@media print {
  @page { size: A4; margin: 14mm 15mm; }

  html, body {
    background: #fff !important;
    color: #000 !important;
    font-size: 10.5pt;
    line-height: 1.45;
  }

  /* Fuori tutto ciò che serve solo sullo schermo */
  .no-stampa, .testa, .piede { display: none !important; }

  .cv { max-width: none; margin: 0; padding: 0; }

  .cv-testa { border-bottom: 1.5pt solid #000; margin-bottom: 6mm; padding-bottom: 4mm; }
  .cv-testa h1 { font-size: 24pt; }
  .cv-ruolo, .periodo, .voce-riga, .cv-competenze dd { color: #333 !important; }

  .cv-blocco { margin-bottom: 5mm; }
  .cv-blocco > h2 { color: #000 !important; border-bottom: .5pt solid #999; margin-bottom: 3mm; }

  /* Non spezzare una voce a metà fra due pagine */
  .voce, .cv-blocco { break-inside: avoid; page-break-inside: avoid; }
  .voce { margin-bottom: 4mm; }

  /* Link: neri, senza sottolineatura finta, con l'indirizzo accanto
     solo per i recapiti (nel PDF il click potrebbe non esserci) */
  a { color: #000 !important; text-decoration: none !important; border: 0 !important; }

  /* I segnaposto SPARISCONO dal PDF. Prima restavano visibili e marcati
     "così te ne accorgi": ma il PDF è il file che si allega a una mail o
     si dà in pasto a un sistema di selezione, e un curriculum con scritto
     "da inserire" dentro fa più danno di una riga mancante. A schermo
     restano rossi e ben visibili (vedi style.css), che è dove serve
     accorgersene. */
  .segnaposto { display: none !important; }
  .voce.vuota { display: none !important; }
}
