/* =========================================================
   CV Maryam Bianchi — feuille de style d'impression (A4)
   Chargée via <link media="print"> : pas besoin de @media print.
   Objectif : 1 page A4, lisible en couleur comme en niveaux de gris.
   ========================================================= */

@page {
  size: A4;
  margin: 12mm 14mm;
}

html { scroll-behavior: auto; }

body {
  background: #fff;
  color: #4A3927;
  font-family: "Inter", Arial, sans-serif;
  font-size: 9.5pt;
  line-height: 1.42;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
}

/* ---------- Éléments retirés à l'impression ---------- */
.skip-link,
.site-header,
.hero-actions,
.contact-cta,
#contact,
.hero::before,
.nav-toggle,
.site-nav { display: none !important; }

/* ---------- Conteneurs ---------- */
.wrap,
.wrap-narrow {
  width: 100%;
  max-width: none;
  margin: 0;
}

.section,
.hero {
  padding: 0;
  margin: 0 0 5mm;
  overflow: visible;
  break-inside: auto;
}
.section-tint { background: none; }

/* ---------- En-tête du CV ---------- */
.hero {
  display: grid;
  grid-template-columns: 22mm 1fr;
  column-gap: 6mm;
  align-items: start;
  padding-bottom: 4mm;
  border-bottom: 1.5pt solid #FAD4AE;
}
.hero-inner { display: contents; }

.monogram {
  grid-column: 1;
  grid-row: 1 / span 5;
  width: 22mm;
  margin: 0;
}

.hero-name {
  grid-column: 2;
  font-size: 21pt;
  line-height: 1.1;
  margin: 0 0 1mm;
  color: #4A3927;
}
.hero-role {
  grid-column: 2;
  font-size: 10.5pt;
  color: #6B3702;
  margin: 0 0 2mm;
}
.hero-pitch {
  grid-column: 2;
  font-size: 9pt;
  color: #5A462F;
  max-width: 100%;
  margin: 0 0 2.5mm;
}
.hero-facts {
  grid-column: 2;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 2mm 6mm;
  margin: 0;
  font-size: 9pt;
}
.hero-facts a {
  color: #4A3927;
  border: 0;
  text-decoration: none;
}
.ico { width: 11px; height: 11px; stroke: #AD865E; }

/* ---------- Titres de section ---------- */
.section h2 {
  font-size: 11pt;
  margin: 0 0 2.5mm;
  padding-top: 1.5mm;
  border-top: 2pt solid #FAD4AE;
  break-after: avoid;
}
.section-note {
  font-size: 8.5pt;
  margin: -1.5mm 0 2.5mm;
  color: #6E5740;
}
.sub-title {
  font-size: 9.5pt;
  margin: 3.5mm 0 1.5mm;
  break-after: avoid;
}
.lede { font-size: 9.5pt; max-width: 100%; }
.section p { max-width: 100%; margin-bottom: 1.5mm; }

/* ---------- Expériences ---------- */
.timeline {
  padding-left: 4mm;
  border-left: 1pt solid #FAD4AE;
  gap: 3.5mm;
}
.tl-item { break-inside: avoid; }
.tl-item::before {
  left: -5.4mm;
  top: 1.2mm;
  width: 7px;
  height: 7px;
  border-width: 2px;
  border-color: #E0AD79;
  background: #fff;
}
.tl-title { font-size: 10pt; }
.tl-meta { font-size: 8.5pt; margin-bottom: 1mm; color: #6E5740; }
.tl-list { gap: .6mm; font-size: 9pt; }
.tl-list li { padding-left: 4mm; }
.tl-list li::before { background: #AD865E; top: .68em; }

/* ---------- Compétences ---------- */
.grid-3 {
  grid-template-columns: repeat(3, 1fr);
  gap: 4mm;
}
.panel {
  break-inside: avoid;
  border: .75pt solid #E7CDAE;
  border-radius: 3mm;
  padding: 3mm;
  box-shadow: none;
  background: #fff;
}
.panel h3 {
  font-size: 9.5pt;
  margin-bottom: 1.5mm;
  padding-bottom: 1.5mm;
  border-bottom: .5pt solid #E7CDAE;
}
.dot-list { gap: .6mm; font-size: 8.7pt; }
.dot-list li::before { background: #AD865E; width: 4px; height: 4px; }

/* ---------- Formation ---------- */
.edu {
  break-inside: avoid;
  background: #fff;
  border: .75pt solid #E7CDAE;
  border-radius: 2mm;
  padding: 3mm;
}
.edu-dates { font-size: 8.5pt; margin-bottom: .8mm; }
.edu-title { font-size: 10pt; }
.edu-school { font-size: 9pt; margin-bottom: 1.5mm; }
.edu-body { font-size: 8.5pt; }

/* ---------- Qualités / divers ---------- */
.pills { gap: 1.5mm; }
.pills li {
  background: #FAD4AE;
  color: #4A3927;
  padding: .8mm 3mm;
  font-size: 8.5pt;
  border: .5pt solid #E0AD79; /* reste lisible en niveaux de gris */
}
.two-col { grid-template-columns: 1fr 1fr; gap: 6mm; }

/* ---------- Pied de page ---------- */
.site-footer {
  border-top: .75pt solid #E7CDAE;
  padding: 2mm 0 0;
  margin-top: 3mm;
  font-size: 8pt;
  color: #6E5740;
}

/* ---------- Sécurités d'impression ---------- */
h1, h2, h3 { break-after: avoid; }
ul, ol, p { orphans: 3; widows: 3; }
a[href]::after { content: none; } /* pas d'URL entre parenthèses */
