/* ============================================================
   mentions-commun.css — CTT Brunoy v2
   Styles communs à mention-legale.php (.ml-*) et
   politique-confidentialite.php (.pc-*) : même gabarit de document
   de référence (en-tête, layout, colonne d'articles numérotés).
   Avant nettoyage, ce bloc était dupliqué à l'identique dans
   mentionlegale.css ET confidentialite.css.
   Le SOMMAIRE (desktop sticky / mobile scroll ou select) reste
   propre à chaque fichier : son comportement responsive diffère
   réellement entre les deux pages (voir mentionlegale.css /
   confidentialite.css, section "SOMMAIRE").
   ============================================================ */

.ml-main,
.pc-main {
  background: var(--blanc);
  padding: var(--espace-xl) 0 calc(var(--espace-xl) * 1.5);
}

/* ============================================================
   1. EN-TÊTE
   ============================================================ */
.ml-header,
.pc-header {
  max-width: 720px;
  margin-bottom: var(--espace-xl);
}

.ml-eyebrow,
.pc-eyebrow {
  font-family: var(--font-sous-titre);
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.14em;
  color: var(--bleu-bouton);
  margin-bottom: 10px;
}

.ml-titre,
.pc-titre {
  font-family: var(--font-sous-titre);
  font-weight: 800;
  font-size: var(--taille-h1);
  color: var(--bleu-titre);
  margin-bottom: var(--espace-sm);
  line-height: 1.1;
}

.ml-chapo,
.pc-chapo {
  font-family: var(--font-texte);
  font-size: 17px;
  color: var(--gris-texte);
  line-height: 1.7;
}

/* ============================================================
   2. LAYOUT — sommaire + colonne d'articles
   ============================================================ */
.ml-layout,
.pc-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--espace-xl);
  align-items: start;
}

@media (min-width: 900px) {
  .ml-layout,
  .pc-layout {
    grid-template-columns: 240px minmax(0, 720px);
  }
}

/* Numéro d'entrée du sommaire (propriétés identiques ; le sommaire
   qui le contient a un comportement responsive propre à chaque page) */
.ml-sommaire-num,
.pc-sommaire-num {
  font-family: var(--font-sous-titre);
  font-size: 11px;
  font-weight: 700;
  color: var(--bleu-nav-clair);
  flex-shrink: 0;
}

/* ============================================================
   3. ARTICLES
   ============================================================ */
.ml-articles,
.pc-articles {
  display: flex;
  flex-direction: column;
}

.ml-article,
.pc-article {
  padding: var(--espace-lg) 0;
  border-top: 1px solid var(--gris-bordure);
  scroll-margin-top: var(--espace-lg);
}

.ml-article:first-child,
.pc-article:first-child {
  border-top: none;
  padding-top: 0;
}

.ml-art-eyebrow,
.pc-art-eyebrow {
  font-family: var(--font-sous-titre);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: var(--bleu-nav-clair);
  margin-bottom: 6px;
}

.ml-article h2,
.pc-article h2 {
  font-family: var(--font-sous-titre);
  font-weight: 700;
  font-size: 22px;
  color: var(--bleu-titre);
  margin-bottom: var(--espace-sm);
}

.ml-article p,
.pc-article p {
  font-family: var(--font-texte);
  font-size: var(--taille-texte);
  line-height: 1.8;
  color: var(--noir-texte);
  margin-bottom: 14px;
}

.ml-article p:last-child,
.pc-article p:last-child {
  margin-bottom: 0;
}

.ml-article a,
.pc-article a {
  color: var(--bleu-bouton);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.ml-article a:hover,
.pc-article a:hover {
  color: var(--bleu-bouton-hover);
}

.ml-liste-coordonnees,
.pc-liste-coordonnees {
  list-style: none;
  padding: var(--espace-sm) var(--espace-md);
  background: var(--gris-clair);
  border-radius: var(--rayon-sm);
  border-left: 3px solid var(--bleu-bouton);
}

.ml-liste-coordonnees li,
.pc-liste-coordonnees li {
  font-family: var(--font-texte);
  font-size: var(--taille-texte);
  line-height: 1.9;
  color: var(--noir-texte);
}

.ml-liste-coordonnees a,
.pc-liste-coordonnees a {
  color: var(--bleu-bouton);
}
