/* ============================================================
   PAGES LÉGALES / RGPD — Caractère Libre
   Mentions légales · Politique de confidentialité (gabarit page-legal.php)
   Typographie sobre, colonne de lecture centrée.
   ============================================================ */

.legal__wrap {
  max-width: var(--col-8); /* ≈ 779px, colonne de lecture */
  margin:    0 auto;
  padding-top:    calc(var(--space-8) + 30px); /* air sous le fil d'ariane (≥30px, cohérent toutes pages contenu) */
  padding-bottom: 160px;
}

.legal__titre {
  font-family:    var(--font-display);
  font-size:      30px;
  font-weight:    var(--weight-black);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
  color:          var(--color-blue);
  line-height:    var(--leading-tight);
  margin:         0 0 var(--space-8);
}

/* ── Corps éditorial ── */

.legal__contenu {
  font-family: var(--font-body);
  font-size:   17px;
  line-height: 1.7;
  color:       var(--color-text);
}

.legal__contenu h2 {
  font-family:    var(--font-display);
  font-size:      28px;
  font-weight:    var(--weight-bold);
  color:          var(--color-blue);
  line-height:    var(--leading-tight);
  margin:         var(--space-10) 0 var(--space-4);
}

.legal__contenu h3 {
  font-family: var(--font-body);
  font-size:   19px;
  font-weight: var(--weight-bold);
  color:       var(--color-text);
  margin:      var(--space-6) 0 var(--space-3);
}

.legal__contenu p { margin: 0 0 var(--space-4); }

.legal__contenu ul,
.legal__contenu ol {
  margin:       0 0 var(--space-4);
  padding-left: 1.4em;
}

/* Restaure les puces/numéros (le reset global les supprime). */
.legal__contenu ul { list-style: disc outside; }
.legal__contenu ol { list-style: decimal outside; }

.legal__contenu li { margin: 0 0 2px; line-height: 1.4; display: list-item; }

.legal__contenu a {
  color:                 var(--color-blue);
  text-decoration:       underline;
  text-underline-offset: 2px;
  transition:            opacity var(--transition-fast);
}
.legal__contenu a:hover { opacity: 0.7; }

.legal__contenu strong { font-weight: var(--weight-bold); }

/* Séparateur de section discret (optionnel via <hr>) */
.legal__contenu hr {
  border:     none;
  border-top: 1px solid #dfe3ec;
  margin:     var(--space-8) 0;
}

/* Petit texte (date de mise à jour) */
.legal__contenu .legal__maj {
  font-size: 14px;
  color:     var(--color-text-secondary);
  margin-top: var(--space-8);
}

/* Tableau (cookies / traceurs) */
.legal__contenu table {
  width:           100%;
  border-collapse: collapse;
  margin:          0 0 var(--space-4);
  font-size:       15px;
}
.legal__contenu th,
.legal__contenu td {
  border:      1px solid #dfe3ec;
  padding:     10px 12px;
  text-align:  left;
  vertical-align: top;
}
.legal__contenu th {
  background:  #f5f7fa;
  font-weight: var(--weight-bold);
  color:       var(--color-blue);
}

/* ── Responsive ── */

@media (max-width: 767px) {
  .legal__wrap { padding-bottom: 100px; }
  .legal__titre { font-size: 24px; }
  .legal__contenu { font-size: 16px; }
  .legal__contenu h2 { font-size: 24px; }
  .legal__contenu table { display: block; overflow-x: auto; }
}
