/* ==========================================================================
   Page /legal : mentions, conditions, confidentialité, cookies, sous-traitants,
   accord de traitement. Se charge APRES home.css, tech.css et doc.css (en-tête,
   ouverture, arborescence, sections, tableaux).
   ========================================================================== */

.lg-maj { margin: 22px 0 0; font-size: 0.875rem; font-weight: 600; color: var(--citron); }

.lg h3 { margin: 30px 0 8px; font-size: 1.0625rem; }
.lg p, .lg li { max-width: 78ch; color: var(--doux); line-height: 1.65; }
.lg ul { margin: 10px 0 0; padding-left: 20px; }
.lg li { margin: 6px 0; }
.lg li b, .lg p b { color: var(--encre); }
.lg a:not(.btn) { color: var(--vert-fonce); }

.lg-dl { display: grid; grid-template-columns: minmax(180px, 0.9fr) minmax(0, 2fr); gap: 10px 24px; margin: 24px 0 0; padding: 22px 24px; border: 1px solid var(--bord); border-radius: 14px; background: var(--brume); }
.lg-dl dt { font-weight: 700; color: var(--encre); }
.lg-dl dd { margin: 0; color: var(--doux); }

.lg-table { margin-top: 16px; font-size: 0.9375rem; }
.lg-table tbody th { width: 34%; }
.lg-table code { white-space: normal; }

.lg-modele { padding: 16px 18px; border-left: 3px solid var(--vert); border-radius: 0 10px 10px 0; background: var(--brume); }
.lg-actions .btn { text-decoration: none; }
.lg-actions .btn:not(.btn--plein) { color: var(--foret); box-shadow: inset 0 0 0 1.5px var(--bord); }
.lg-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }

@media (max-width: 680px) {
  .lg-dl { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .lg-dl dd { margin-bottom: 10px; }
  .lg-table, .lg-table tbody, .lg-table tr, .lg-table th, .lg-table td { display: block; width: auto !important; }
  .lg-table thead { display: none; }
  .lg-table tbody th { padding-bottom: 4px; }
  .lg-table td { border-top: 0; padding-top: 2px; padding-bottom: 10px; }
}
.lg-formulaire { margin-top: 26px; }
.lg-formulaire iframe { max-width: 100% !important; }
