/* ==========================================================================
   ISMOD · Mentions légales (mentions-legales.html)
   Page sans motif : un sommaire à gauche, quatre blocs à droite.
   Éditeur en fiche, crédits en grille, propriété en déclaration,
   données personnelles en liste à filets.
   À charger après base.css et components.css.
   ========================================================================== */

.mentions__grille {
  display: grid;
  gap: var(--e-8) var(--gouttiere);
}

/* ---------- Sommaire ---------- */
.mentions__sommaire {
  display: grid;
  gap: var(--e-3);
  align-content: start;
}
.mentions__sommaire-liste {
  display: grid;
  margin: 0;
  padding: 0;
  border-block-start: var(--filet-fin) solid var(--filet);
}
.mentions__sommaire-liste > li {
  border-block-end: var(--filet-fin) solid var(--filet);
}
.mentions__sommaire-liste a {
  display: flex;
  align-items: center;
  min-height: 2.75rem;
  padding-block: var(--e-2);
  font-size: var(--t-base);
  font-weight: 500;
  text-decoration-color: transparent;
}
.mentions__sommaire-liste a:hover,
.mentions__sommaire-liste a:focus-visible {
  text-decoration-color: currentColor;
}

/* ---------- Blocs ---------- */
.mentions__corps {
  display: grid;
  gap: clamp(var(--e-8), 2rem + 4vw, var(--e-10));
  min-width: 0;
}
.mentions__bloc {
  display: grid;
  gap: var(--e-5);
  align-content: start;
  scroll-margin-top: calc(var(--hauteur-entete) + var(--e-5));
}
.mentions__titre {
  font-size: var(--t-3xl);
  line-height: var(--interligne-serre);
  margin-block-end: var(--e-2);
}

/* Éditeur : le nom en titre de fiche, puis les lignes à filets. */
.mentions__nom {
  font-family: var(--police-titre);
  font-size: var(--t-xl);
  font-weight: var(--titre-graisse-petit);
  line-height: 1.25;
}
.mentions__statut {
  color: var(--texte-doux);
}
.mentions__fiche {
  display: grid;
  margin-block-start: var(--e-3);
  border-block-start: var(--filet-fin) solid var(--filet);
}
.mentions__fiche > div {
  display: grid;
  gap: var(--e-1) var(--gouttiere);
  padding-block: var(--e-4);
  border-block-end: var(--filet-fin) solid var(--filet);
}
.mentions__fiche dd {
  margin: 0;
}
.mentions__fiche a,
.mentions__contact a {
  display: inline-flex;
  align-items: center;
  min-height: 2.75rem;
}
.mentions__fiche > div:has(a) {
  padding-block: var(--e-2);
}

/* Propriété : une seule phrase, en grand. */
.mentions__declaration {
  font-size: var(--t-xl);
  line-height: 1.45;
  max-width: 36ch;
}

/* Données personnelles : une phrase par ligne, entre deux filets. */
.mentions__donnees {
  display: grid;
  margin: 0;
  padding: 0;
  border-block-start: var(--filet-fin) solid var(--filet);
}
.mentions__donnees > li {
  padding-block: var(--e-4);
  border-block-end: var(--filet-fin) solid var(--filet);
  line-height: 1.5;
}
.mentions__contact {
  color: var(--texte-doux);
}
.mentions__contact a {
  color: var(--texte);
}

.mentions__retour {
  max-width: none;
  padding-block-start: var(--e-5);
  border-block-start: var(--filet-fin) solid var(--filet);
}

@media (min-width: 40em) {
  .mentions__fiche > div {
    grid-template-columns: minmax(8rem, 1fr) 3fr;
    align-items: baseline;
  }
}

@media (min-width: 64em) {
  .mentions__grille {
    grid-template-columns: repeat(var(--colonnes), minmax(0, 1fr));
  }
  .mentions__sommaire {
    grid-column: 1 / span 3;
    position: sticky;
    top: calc(var(--hauteur-entete) + var(--e-6));
    align-self: start;
  }
  .mentions__corps {
    grid-column: 5 / -1;
  }
}

/* Graisse de Zodiak : 500 sous 40 px. */
@media (max-width: 33.3125em) {
  .mentions__titre {
    font-weight: var(--titre-graisse-petit);
  }
}

/* Vides verticaux ramenés à 64 px entre l'ouverture et le contenu. */
.mentions-ouverture {
  padding-block-end: var(--e-8);
}
.mentions {
  padding-block-start: var(--e-8);
}
