/* Pages legales : mentions, protection des donnees. */
.legal { max-width: 820px; margin: auto; padding: 56px 28px 96px; }
.legal h1 { font-size: clamp(38px, 6vw, 54px); line-height: 1.05; margin: 6px 0 10px; }
.legal .legal-intro { color: var(--texte-2); line-height: 1.7; max-width: 62ch; }
.legal .legal-maj { font-size: 13px; color: var(--sourdine); margin-top: 4px; }
.legal section { background: var(--surface); border: 1px solid var(--ligne); padding: 24px 26px; margin: 16px 0; }
.legal h2 { font-size: 25px; margin: 0 0 10px; }
.legal h3 { font: 700 14px 'DM Sans', sans-serif; letter-spacing: .3px; margin: 20px 0 6px; }
.legal p, .legal li { line-height: 1.75; }
.legal p { margin: 0 0 12px; }
.legal p:last-child, .legal ul:last-child { margin-bottom: 0; }
.legal ul { margin: 0 0 12px; padding-left: 20px; }
.legal li { margin-bottom: 6px; }
.legal a { color: var(--vin-texte); font-weight: 700; }
.legal dl { margin: 0; }
.legal dt { font-weight: 700; font-size: 14px; margin-top: 12px; }
.legal dt:first-child { margin-top: 0; }
.legal dd { margin: 2px 0 0; line-height: 1.7; }

/* Information encore manquante : signalee sans etre cachee. */
.a-completer {
  background: var(--avis-fond); border-bottom: 1px dashed var(--avis-accent); color: var(--attention-texte);
  font: 600 13px 'DM Sans', sans-serif; padding: 1px 7px; white-space: nowrap;
}
.legal-avis {
  background: var(--avis-fond); border-left: 3px solid var(--avis-accent); padding: 16px 20px;
  margin: 22px 0 6px; font-size: 15px; line-height: 1.65; color: var(--attention-texte);
}
.legal-avis b { color: var(--attention-texte); }
@media (max-width: 720px) {
  .legal { padding: 34px 18px 70px; }
  .legal section { padding: 20px 18px; }
  .a-completer { white-space: normal; }
}

/* Information delivree au moment de la collecte (RGPD art. 13). */
.mention-collecte {
  font-size: 12.5px; line-height: 1.6; color: var(--sourdine); margin: 12px 0 0; max-width: 62ch;
}
.mention-collecte a { color: var(--vin-texte); }
