/* Geodalia · pages légales (mentions-legales, cgu, cgv, confidentialite), au-dessus de base.css et public.css.
   En-tête et pied : ceux de la page publique (public.css). Ici : tête de page, sommaire, colonne de lecture,
   listes clé / valeur, tableaux. Préfixe : lg-. Couleurs : jetons --cds-* et --gd-* seulement. */

/* ========== Tête de page ========== */
.lg-tete {
  padding-block: var(--cds-spacing-09) var(--cds-spacing-08);
  border-bottom: 1px solid var(--cds-border-subtle-00);
}
.lg-retour {
  display: inline-flex; align-items: center; gap: var(--cds-spacing-03);
  margin-bottom: var(--cds-spacing-07);
  font-size: var(--cds-body-compact-01-font-size); line-height: var(--cds-body-compact-01-line-height);
  letter-spacing: var(--cds-body-compact-01-letter-spacing); text-decoration: none;
}
.lg-retour:hover { text-decoration: underline; }
.lg-tete h1 { max-width: 46rem; }
.lg-chapeau { margin-top: var(--cds-spacing-05); max-width: 46rem; color: var(--cds-text-secondary); }
.lg-version { margin-top: var(--cds-spacing-05); color: var(--cds-text-helper); }

/* ========== Corps : sommaire à gauche (4 colonnes), texte à droite ========== */
.lg-corps { padding-block: var(--cds-spacing-09) var(--cds-spacing-12); }
.lg-corps > .cds--css-grid { row-gap: var(--cds-spacing-07); }
.lg-nav { min-width: 0; }
.lg-nav h2 { margin-bottom: var(--cds-spacing-04); color: var(--cds-text-secondary); }
.lg-nav ol, .lg-nav ul { margin: 0; padding: 0; list-style: none; border-inline-start: 1px solid var(--cds-border-subtle-01); }
.lg-nav li a {
  display: block; padding: var(--cds-spacing-02) var(--cds-spacing-05);
  color: var(--cds-text-secondary); text-decoration: none;
}
.lg-nav li a:hover { color: var(--cds-text-primary); background: var(--cds-layer-hover-01); }
.lg-nav li a[aria-current="page"] {
  color: var(--cds-text-primary); font-weight: 600;
  box-shadow: inset 2px 0 0 var(--cds-border-interactive);
}
@media (min-width: 66rem) {
  .lg-nav { position: sticky; top: calc(var(--gd-entete) + var(--cds-spacing-07)); align-self: start;
            max-height: calc(100vh - var(--gd-entete) - var(--cds-spacing-09)); overflow-y: auto; }
}

/* ========== Colonne de lecture ========== */
.lg-texte { max-width: 46rem; min-width: 0; }
.lg-texte > section + section { margin-top: var(--cds-spacing-09); padding-top: var(--cds-spacing-07); border-top: 1px solid var(--cds-border-subtle-00); }
.lg-texte h2 { margin-bottom: var(--cds-spacing-05); }
.lg-texte h3 { margin: var(--cds-spacing-07) 0 var(--cds-spacing-04); }
.lg-num { display: block; margin-bottom: var(--cds-spacing-02); color: var(--cds-text-secondary); }
.lg-texte p, .lg-texte li, .lg-texte dd {
  font-size: var(--cds-body-long-02-font-size); line-height: var(--cds-body-long-02-line-height);
  letter-spacing: var(--cds-body-long-02-letter-spacing);
}
.lg-texte p + p, .lg-texte p + ul, .lg-texte p + ol, .lg-texte ul + p, .lg-texte ol + p,
.lg-texte .gd-defile + p, .lg-texte .lg-kv + p, .lg-texte p + .lg-kv, .lg-texte p + .gd-defile { margin-top: var(--cds-spacing-05); }
.lg-texte ul, .lg-texte ol { margin: 0; padding-inline-start: var(--cds-spacing-06); }
.lg-texte ul { list-style: square; }
.lg-texte ol { list-style: decimal; }
.lg-texte li + li { margin-top: var(--cds-spacing-03); }
.lg-texte li::marker { color: var(--cds-text-secondary); }
.lg-texte strong { font-weight: 600; }
.lg-texte a { overflow-wrap: anywhere; }

/* Encart : clause mise en évidence (juridiction, nature du résultat). */
.lg-encart {
  margin-top: var(--cds-spacing-05); padding: var(--cds-spacing-05);
  background: var(--cds-layer-01); border-inline-start: 3px solid var(--cds-border-interactive);
}
.lg-encart > p + p { margin-top: var(--cds-spacing-04); }
.lg-encart + p, .lg-encart + ul { margin-top: var(--cds-spacing-05); }

/* ========== Liste clé / valeur (mentions légales, annexe) ========== */
.lg-kv { margin: 0; }
.lg-kv > div {
  display: grid; grid-template-columns: minmax(9rem, 14rem) minmax(0, 1fr); column-gap: var(--cds-spacing-06);
  padding-block: var(--cds-spacing-04); border-top: 1px solid var(--cds-border-subtle-01);
}
.lg-kv > div:last-child { border-bottom: 1px solid var(--cds-border-subtle-01); }
.lg-kv dt {
  color: var(--cds-text-secondary);
  font-size: var(--cds-body-compact-01-font-size); line-height: var(--cds-body-long-02-line-height); font-weight: 600;
}
.lg-kv dd { margin: 0; min-width: 0; }
.lg-kv dd + dd { margin-top: var(--cds-spacing-02); }
@media (max-width: 41.98rem) {
  .lg-kv > div { grid-template-columns: minmax(0, 1fr); row-gap: var(--cds-spacing-02); }
}

/* ========== Tableaux (traitements, prix) : défilent dans .gd-defile sous 390 px ========== */
.lg-tableau-cadre { margin-top: var(--cds-spacing-05); outline: 1px solid var(--cds-border-subtle-01); }
.lg-tableau {
  width: 100%; border-collapse: collapse; text-align: start;
  font-size: var(--cds-body-compact-01-font-size); line-height: var(--cds-body-compact-01-line-height);
  letter-spacing: var(--cds-body-compact-01-letter-spacing);
}
.lg-tableau--large { min-width: 46rem; }
.lg-tableau caption {
  padding: var(--cds-spacing-04) var(--cds-spacing-05); text-align: start; caption-side: top;
  color: var(--cds-text-secondary); background: var(--cds-layer-01);
}
.lg-tableau th, .lg-tableau td {
  padding: var(--cds-spacing-04) var(--cds-spacing-05); vertical-align: top; text-align: start;
  border-bottom: 1px solid var(--cds-border-subtle-01);
}
.lg-tableau thead th {
  background: var(--cds-layer-accent-01); color: var(--cds-text-primary); font-weight: 600; white-space: nowrap;
}
.lg-tableau tbody th { font-weight: 600; color: var(--cds-text-primary); }
.lg-tableau td { color: var(--cds-text-secondary); }
.lg-tableau tbody tr:last-child > * { border-bottom: 0; }
.lg-tableau .lg-nombre { text-align: end; font-variant-numeric: tabular-nums; white-space: nowrap; }

/* ========== Pied de page : lien de la page courante ========== */
.pub-pied-col a[aria-current="page"] { color: var(--cds-text-primary); font-weight: 600; }
