/* ==========================================================================
   Pages legales (mentions, CGU, CGV, protection des donnees) - template-legal.php
   Chrome sobre repris de la page de lancement : barre logo minimale (pas de
   menu) + pied de page de la LP (lancement.css). Ce fichier ne stylise que la
   barre du haut et la mise en forme du texte legal. Les tokens --fp-* viennent
   de main.css ; --lp-* sont poses en inline sur <body> par template-legal.php.
   ========================================================================== */

body.fp-legal {
  background: var(--fp-paper);
  color: var(--fp-ink, #1a1a1a);
  font-family: var(--fp-font-body);
}

/* — Barre logo (sticky, fond vert LP) — */
.fp-legal-bar {
  position: sticky;
  top: 0;
  z-index: 20;
  background: var(--lp-vert, var(--fp-secondary));
  color: var(--fp-white);
  border-bottom: 1px solid rgba(255, 255, 255, .12);
}
.fp-legal-bar-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: clamp(58px, 7vw, 84px);
}
.fp-legal-brand {
  display: inline-flex;
  align-items: center;
  line-height: 0;
}
.fp-legal-brand img {
  display: block;
  width: auto;
  height: clamp(30px, 3.6vw, 46px);
}
.fp-legal-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--fp-white);
  text-decoration: none;
  font-weight: 500;
  font-size: clamp(.9rem, 1vw, 1.05rem);
  opacity: .9;
  transition: opacity .2s ease;
}
.fp-legal-back:hover { opacity: 1; }
.fp-legal-back svg { width: 20px; height: 20px; }
.fp-legal-back span { white-space: nowrap; }

/* Sur petit ecran, on garde le logo et l'icone retour seule (libelle masque). */
@media (max-width: 560px) {
  .fp-legal-back span { display: none; }
}

/* — Corps du texte legal — */
.fp-legal-main {
  padding: clamp(32px, 6vw, 80px) 0 clamp(56px, 9vw, 120px);
}
.fp-legal-wrap {
  max-width: 860px;
}
.fp-legal-title {
  font-family: var(--fp-font-heading);
  font-weight: 400;
  line-height: 1.05;
  font-size: clamp(2.2rem, 5.4vw, 4rem);
  margin: 0 0 clamp(20px, 3vw, 40px);
  color: var(--lp-vert, var(--fp-secondary));
}

/* Prose : lisibilite avant tout (texte long). Titres en gras corps, pas en
   display capitales, pour rester confortable a lire sur un document juridique. */
.fp-legal-prose {
  font-size: clamp(1rem, 1.05vw, 1.12rem);
  line-height: 1.7;
  color: var(--fp-ink, #262626);
}
.fp-legal-prose h2 {
  font-family: var(--fp-font-body);
  font-weight: 700;
  font-size: clamp(1.3rem, 1.9vw, 1.7rem);
  line-height: 1.25;
  margin: clamp(30px, 4vw, 52px) 0 .5em;
  color: var(--lp-vert, var(--fp-secondary));
}
.fp-legal-prose h3 {
  font-family: var(--fp-font-body);
  font-weight: 600;
  font-size: clamp(1.08rem, 1.4vw, 1.3rem);
  line-height: 1.3;
  margin: clamp(22px, 2.6vw, 34px) 0 .4em;
  color: var(--fp-ink, #1f1f1f);
}
.fp-legal-prose p { margin: 0 0 1.05em; }
.fp-legal-prose a {
  color: var(--lp-vert, var(--fp-secondary));
  text-decoration: underline;
  text-underline-offset: 2px;
}
.fp-legal-prose strong { font-weight: 700; }
.fp-legal-prose ul,
.fp-legal-prose ol {
  margin: 0 0 1.1em;
  padding-left: 1.4em;
}
.fp-legal-prose li { margin: 0 0 .4em; }

/* Tableau (ex. durees de conservation) : lisible, scrollable si trop large. */
.fp-legal-prose .wp-block-table {
  margin: 0 0 1.4em;
  overflow-x: auto;
}
.fp-legal-prose table {
  width: 100%;
  border-collapse: collapse;
  font-size: .96em;
}
.fp-legal-prose th,
.fp-legal-prose td {
  border: 1px solid rgba(0, 0, 0, .14);
  padding: .6em .8em;
  text-align: left;
  vertical-align: top;
}
.fp-legal-prose thead th {
  background: var(--lp-menthe, #eef4f2);
  color: var(--fp-ink, #14322d);
  font-weight: 700;
}
