/* ---------- Pages légales : mentions légales, politique de confidentialité ---------- */
.legal__conteneur { max-width: 816px; } /* lignes de 70 à 80 caractères : 720 px de texte + gouttières */
.legal .titre-section { overflow-wrap: anywhere; hyphens: auto; }
.legal__bloc { margin-top: var(--lg); padding-top: var(--md); border-top: 1px solid var(--surface-variant); }
.legal__bloc p, .legal__liste li, .legal__fiche dd { font-size: 16px; line-height: 26px; }
.legal__bloc .titre-carte + *, .legal__bloc p + p { margin-top: var(--sm); }
.legal__bloc a { color: var(--on-surface); text-underline-offset: 2px; overflow-wrap: anywhere; }
.legal__bloc a:hover { color: var(--primary); }
.legal__fiche { display: grid; grid-template-columns: minmax(0, 220px) minmax(0, 1fr); gap: var(--sm) var(--md); margin: 0; }
.legal__fiche dt { font-size: 14px; font-weight: 600; line-height: 26px; color: var(--on-surface-variant); }
.legal__fiche dd { margin: 0; min-width: 0; }
.legal__liste { display: grid; gap: var(--sm); }
.legal__liste li { position: relative; padding-left: var(--md); }
.legal__liste li::before { content: ""; position: absolute; left: 6px; top: 11px; width: 6px; height: 6px; border-radius: var(--r-full); background: var(--secondary); }
.legal__date { margin-top: var(--lg); }

/* Information manquante, à fournir avant la mise en ligne : bien visible, jamais une valeur inventée. */
@media (max-width: 860px) {
    .legal .titre-section { font-size: 32px; line-height: 40px; }
    .legal__fiche { grid-template-columns: minmax(0, 1fr); gap: 2px; }
    .legal__fiche dd + dt { margin-top: var(--sm); }
}
