/* ============================================================
   REVIZO : pages legales (mentions legales, confidentialite).
   Charte reprise d'index.html, volontairement sobre :
   texte dense, hierarchie claire, zero composant gamifie.
   ============================================================ */
:root{
  --bg:#FAFAF8;
  --bg-2:#F4F4F2;
  --card:#FFFFFF;
  --emerald:#059669;
  --emerald-deep:#047857;
  --gold:#FBBF24;
  --slate:#1E293B;
  --ink:#1E293B;
  --ink-soft:#5B6472;
  --line-soft:#E4E3DD;
  --line:#1E293B;

  --gutter:clamp(20px, 5vw, 64px);
  --maxw:1140px;
  --readw:760px;

  --radius:14px;
  --shadow-brut:4px 4px 0 var(--slate);
  --ease-out:cubic-bezier(.23,1,.32,1);
}

*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;}
html{scroll-behavior:smooth;}
html,body{margin:0;padding:0;}
body{
  font-family:'Nunito',sans-serif;
  background:var(--bg);
  color:var(--ink);
  line-height:1.72;
  font-size:clamp(1rem, .97rem + .2vw, 1.06rem);
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:'Baloo 2',sans-serif;line-height:1.16;margin:0;color:var(--ink);}
a{color:var(--emerald-deep);text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1.5px;}
a:hover{color:var(--emerald);}
:focus-visible{outline:3px solid var(--emerald);outline-offset:3px;border-radius:4px;}

/* Lien d'evitement */
.skip{position:absolute;left:-9999px;top:0;background:var(--slate);color:#fff;
  padding:12px 18px;border-radius:0 0 12px 0;z-index:9999;font-weight:800;font-family:'Baloo 2';text-decoration:none;}
.skip:focus{left:0;}

/* ============================================================
   EN-TETE SOBRE : marque + retour accueil (pas la pastille du site)
   ============================================================ */
.lg-nav{border-bottom:1.5px solid var(--line-soft);background:var(--bg);position:sticky;top:0;z-index:10;}
.lg-nav__inner{max-width:var(--maxw);margin:0 auto;padding:14px var(--gutter);
  display:flex;align-items:center;justify-content:space-between;gap:16px;}
.lg-brand{display:inline-flex;align-items:center;gap:9px;font-family:'Baloo 2';font-weight:800;
  font-size:1.22rem;letter-spacing:-.01em;color:var(--ink);text-decoration:none;}
.lg-brand:hover{color:var(--ink);}
.lg-brand .mark{width:28px;height:28px;flex:0 0 auto;}
.lg-brand .o{color:var(--gold);}
.lg-back{font-family:'Baloo 2';font-weight:700;font-size:.92rem;color:var(--ink);
  text-decoration:none;opacity:.82;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;}
.lg-back:hover{opacity:1;color:var(--emerald);}
.lg-back svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;}

/* ============================================================
   CONTENU LEGAL
   ============================================================ */
.lg-main{padding-block:clamp(34px, 6vw, 66px);}
.legal{max-width:var(--readw);margin:0 auto;padding-inline:var(--gutter);}

.legal h1{font-size:clamp(1.9rem, 1.4rem + 2vw, 2.6rem);font-weight:800;letter-spacing:-.02em;}
.legal__updated{color:var(--ink-soft);font-size:.92rem;font-style:italic;margin:10px 0 0;}
.legal__intro{margin-top:22px;font-size:clamp(1.02rem, 1rem + .25vw, 1.12rem);color:var(--ink);}

.legal h2{font-size:clamp(1.18rem, 1rem + .7vw, 1.4rem);font-weight:800;
  margin-top:2.5em;padding-top:1.3em;border-top:1.5px solid var(--line-soft);}
.legal h3{font-size:1.05rem;font-weight:700;margin-top:1.8em;}

.legal p{margin:0 0 1.05em;}
.legal strong,.legal b{font-weight:800;color:var(--ink);}
.legal a{font-weight:700;}
.legal ul{margin:0 0 1.15em;padding-left:1.25em;}
.legal li{margin-bottom:.5em;}
.legal li::marker{color:var(--emerald);}

/* Bloc coordonnees (editeur, hebergeur, responsable) */
.legal__block{background:var(--card);border:1.5px solid var(--line-soft);border-radius:var(--radius);
  padding:16px 20px;margin:0 0 1.25em;line-height:1.85;}
.legal__block strong{display:inline;}

/* Placeholder a completer avant mise en ligne : visuellement signale */
.legal__todo{background:#FFF3D6;border-bottom:2px dashed var(--gold);
  padding:1px 4px;border-radius:3px;font-weight:700;font-style:italic;}

/* Tableau des donnees (politique de confidentialite) */
.legal__table-wrap{overflow-x:auto;margin:0 0 1.4em;
  border:1.5px solid var(--line-soft);border-radius:var(--radius);}
.legal table{width:100%;border-collapse:collapse;font-size:.92rem;min-width:560px;}
.legal thead th{background:var(--bg-2);font-family:'Baloo 2';font-weight:700;text-align:left;
  font-size:.86rem;letter-spacing:.01em;}
.legal th,.legal td{padding:11px 14px;border-bottom:1px solid var(--line-soft);
  vertical-align:top;text-align:left;}
.legal tbody tr:last-child td{border-bottom:none;}
.legal td:first-child{font-weight:700;}

/* Renvoi vers l'autre page */
.legal__seealso{margin-top:2.6em;padding:16px 20px;background:var(--bg-2);
  border-radius:var(--radius);font-size:.95rem;}
.legal__seealso a{font-weight:800;}

/* ============================================================
   FOOTER (identique au site vitrine)
   ============================================================ */
.foot{border-top:1.5px solid var(--line-soft);padding-block:clamp(32px,4.5vw,48px);
  margin-top:clamp(38px,6vw,68px);}
.foot__grid{max-width:var(--maxw);margin:0 auto;padding-inline:var(--gutter);
  display:flex;flex-wrap:wrap;gap:26px;justify-content:space-between;align-items:start;}
.foot__brand{font-family:'Baloo 2';font-weight:800;font-size:1.3rem;color:var(--ink);text-decoration:none;display:inline-block;transition:color .15s;}
.foot__brand:hover{color:var(--emerald);}
.foot__brand .o{color:var(--gold);}
.foot small{display:block;color:var(--ink-soft);margin-top:8px;line-height:1.7;}
.foot__links{display:flex;gap:18px;flex-wrap:wrap;font-family:'Baloo 2';font-weight:700;}
.foot__links a{text-decoration:none;opacity:.8;color:var(--ink);}
.foot__links a:hover{opacity:1;color:var(--emerald);}
.foot__links a[aria-current="page"]{opacity:1;color:var(--emerald-deep);text-decoration:underline;}
.foot__copy{margin-top:28px;}
@media (min-width:701px){ .foot__copy{text-align:right;} }

@media (max-width:600px){
  body{line-height:1.68;}
  .legal h2{margin-top:2.1em;}
}
