/*
 * mentions-legales.css — PsyRisso Desktop
 * Styles spécifiques à la page Mentions légales (refonte, sans Hero).
 * Pas de mockup validé pour cette page — structure alignée sur le
 * standard des autres pages (bande unique, cadre), contenu et logique
 * de badges/modales inchangés.
 *
 * Alias vers palettes.css (7 + variables de catégorie) pour les
 * variables historiques qui n'existent plus.
 */
:root {
  --font-heading: Georgia, 'Times New Roman', serif;
  --ocre-border: var(--gris-sep);
  --dore-dark: var(--dore);
  --texte-muted: #3a3a3a;
  --sable: var(--gris-fond);
}

.ml-h2 {
  font-family: var(--font-heading);
  font-size: 1.5rem;
  font-weight: normal;
  color: var(--bleu);
  margin: 0 0 1.75rem;
}

.ml-sep {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 1.75rem 0;
}
.ml-sep-line {
  height: 1px;
  flex: 1;
  background: var(--ocre-border);
}
.ml-sep-diamond {
  width: 6px;
  height: 6px;
  background: var(--dore);
  transform: rotate(45deg);
  flex-shrink: 0;
}

.ml-banner {
  background: #F3E9D6;
  border-bottom: 1px solid rgba(204,161,92,0.4);
  border-radius: 6px;
  padding: 10px 20px;
  margin-bottom: 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}
.ml-banner-title {
  font-family: var(--font-heading);
  font-size: 13px;
  font-weight: 600;
  color: var(--bleu);
  white-space: nowrap;
}
.ml-banner-num {
  font-size: 18px;
  color: var(--dore-dark);
  margin-right: 2px;
}
.ml-banner-badges {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}

.ml-sec-body {
  font-size: 14px;
  color: var(--texte-muted);
  line-height: 1.7;
}

.ml-grid2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.ml-row {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 13px;
  color: var(--texte-muted);
  line-height: 1.6;
}
.ml-row i {
  color: var(--ocre);
  margin-top: 2px;
  flex-shrink: 0;
}
.ml-row strong {
  color: var(--bleu);
  font-weight: 600;
}

.ml-notice {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin-top: 12px;
  padding: 12px 14px;
  background: var(--bleu);
  border-radius: 8px;
  font-size: 13px;
  color: var(--dore);
  line-height: 1.6;
}
.ml-notice i {
  color: var(--dore);
  margin-top: 2px;
  flex-shrink: 0;
}
.ml-notice .ml-link {
  color: var(--dore);
  text-decoration-color: rgba(255,255,255,0.5);
}

.ml-badge {
  font-size: 11px;
  font-weight: 500;
  padding: 4px 12px;
  border-radius: 20px;
  background: var(--sable);
  border: 1px solid var(--dore);
  color: var(--bleu);
}
.ml-badge--clickable {
  cursor: pointer;
  transition: background 0.15s, color 0.15s;
}
.ml-badge--clickable:hover {
  background: var(--bleu);
  color: var(--dore);
}

.ml-link {
  color: var(--bleu);
  font-weight: 500;
  text-decoration: underline;
  text-decoration-color: var(--dore);
  text-underline-offset: 2px;
}
.ml-link:hover { text-decoration: underline; }

@media (max-width: 700px) {
  .ml-grid2 { grid-template-columns: 1fr; }
  .ml-banner { justify-content: flex-start; }
}