/* =========================================================================
   Styles spécifiques pages légales (mentions, politique de confidentialité)
   ========================================================================= */
.legal-page {
  padding: clamp(60px, 7vw, 100px) 0 clamp(70px, 9vw, 120px);
}
.legal-content {
  max-width: 880px;
  margin: 0 auto;
}
.legal-content h2 {
  margin-top: 2.4em;
  margin-bottom: .8em;
  font-size: clamp(1.6rem, 2.4vw, 2.1rem);
  padding-bottom: 14px;
  border-bottom: 1px solid var(--c-border);
  position: relative;
}
.legal-content h2::before {
  content: "";
  position: absolute;
  left: 0; bottom: -1px;
  width: 60px; height: 2px;
  background: var(--c-turquoise);
}
.legal-content h2:first-child { margin-top: 0; }
.legal-content h3 {
  margin-top: 1.6em;
  font-size: 1.15rem;
  color: var(--c-blue);
}
.legal-content p, .legal-content li {
  color: var(--c-text);
  line-height: 1.8;
}
.legal-content ul {
  padding-left: 0;
  margin: 0 0 1em;
}
.legal-content ul li {
  padding-left: 28px;
  position: relative;
  margin-bottom: 8px;
}
.legal-content ul li::before {
  content: "";
  position: absolute;
  left: 0; top: 12px;
  width: 14px; height: 2px;
  background: var(--c-turquoise);
}
.legal-content a { color: var(--c-turquoise); font-weight: 600; }
.legal-content a:hover { text-decoration: underline; }
.legal-content strong { color: var(--c-blue); font-weight: 700; }

.legal-card {
  background: var(--c-bg);
  border: 1px solid var(--c-border);
  border-radius: var(--radius);
  padding: 28px 32px;
  margin: 24px 0;
}
.legal-card p { margin: 6px 0; }

/* -------------------------------------------------------------------------
   Sommaire des CGPS : 19 articles, donc une table des matières cliquable.
   Deux colonnes dès qu'il y a la place, une seule sur mobile.
   ------------------------------------------------------------------------- */
.cgps-sommaire {
  list-style: none;
  counter-reset: cgps;
  padding-left: 0;
  margin: 0;
  columns: 2;
  column-gap: 40px;
}
.cgps-sommaire li {
  counter-increment: cgps;
  break-inside: avoid;
  position: relative;
  padding-left: 34px;
  margin-bottom: 10px;
  line-height: 1.5;
}
.cgps-sommaire li::before {
  content: counter(cgps);
  position: absolute;
  left: 0; top: 0;
  width: 24px;
  font-size: .8rem;
  font-weight: 700;
  color: var(--c-turquoise);
  text-align: right;
}
.cgps-sommaire a { font-weight: 500; }

/* Un peu d'air sous chaque titre d'article quand on arrive dessus par le
   sommaire : sans ça, le titre se colle sous l'en-tête fixe. */
.legal-content h2[id] { scroll-margin-top: 110px; }

@media (max-width: 700px) {
  .cgps-sommaire { columns: 1; }
}

/* Bouton « Gérer les cookies » dans le texte de la politique : habillé comme
   les autres liens de la page légale. */
.legal-consent-link {
  background: none;
  border: 0;
  padding: 0;
  font: inherit;
  color: var(--c-turquoise);
  font-weight: 600;
  cursor: pointer;
}
.legal-consent-link:hover { text-decoration: underline; }
