/* Vision Score — pages légales. Reprend la palette et les polices du site. */
@import url('https://fonts.googleapis.com/css2?family=Anton&family=Hanken+Grotesk:wght@400;500;600;700&display=swap');

:root{
  --bg:#06140d; --surface:#0d2118; --surface2:#102a1d;
  --line:rgba(196,245,70,.14); --line2:rgba(255,255,255,.08);
  --text:#edfbe6; --muted:#7f9a86; --lime:#c4f546; --amber:#ffc24b; --red:#ff6b6b; --ink:#06140d;
  --maxw:820px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  background:var(--bg); color:var(--text);
  font-family:'Hanken Grotesk',-apple-system,BlinkMacSystemFont,sans-serif;
  line-height:1.65; font-size:16px;
  -webkit-font-smoothing:antialiased;
}

/* En-tête */
.lg-nav{
  position:sticky; top:0; z-index:10;
  background:rgba(6,20,13,.82); backdrop-filter:blur(12px);
  border-bottom:1px solid var(--line);
}
.lg-nav-inner{
  max-width:var(--maxw); margin:0 auto; padding:16px 24px;
  display:flex; align-items:center; justify-content:space-between; gap:16px;
}
.lg-brand{display:flex; align-items:center; gap:10px; text-decoration:none; color:var(--text)}
.lg-badge{
  width:34px; height:34px; border-radius:9px; background:var(--lime);
  display:grid; place-items:center; flex-shrink:0;
}
.lg-badge svg{width:20px; height:20px; display:block}
.lg-brand b{font-family:'Anton',sans-serif; font-weight:400; font-size:20px; letter-spacing:.5px}
.lg-back{
  color:var(--muted); text-decoration:none; font-size:14px; font-weight:600;
  padding:8px 16px; border:1px solid var(--line); border-radius:99px;
  transition:border-color .2s, color .2s;
}
.lg-back:hover{color:var(--text); border-color:var(--lime)}

/* Contenu */
.lg-wrap{max-width:var(--maxw); margin:0 auto; padding:56px 24px 96px}
.lg-eyebrow{
  font-size:12.5px; font-weight:700; letter-spacing:1.4px; text-transform:uppercase;
  color:var(--lime); margin-bottom:14px;
}
.lg-title{
  font-family:'Anton',sans-serif; font-weight:400; line-height:1.04;
  font-size:clamp(34px,6vw,54px); letter-spacing:.5px; margin-bottom:14px;
}
.lg-updated{color:var(--muted); font-size:14px; margin-bottom:48px}

.lg-wrap h2{
  font-family:'Anton',sans-serif; font-weight:400; letter-spacing:.4px;
  font-size:24px; margin:44px 0 14px; color:var(--text);
  padding-top:24px; border-top:1px solid var(--line2);
}
.lg-wrap h2:first-of-type{border-top:none; padding-top:0}
.lg-wrap h3{font-size:17px; font-weight:700; margin:26px 0 8px; color:var(--text)}
.lg-wrap p{margin:0 0 14px; color:#d3e8c9}
.lg-wrap ul{margin:0 0 18px; padding-left:4px; list-style:none}
.lg-wrap li{
  margin:0 0 12px; padding-left:26px; position:relative; color:#d3e8c9;
}
.lg-wrap li::before{
  content:''; position:absolute; left:6px; top:11px;
  width:7px; height:7px; border-radius:2px; background:var(--lime); transform:rotate(45deg);
}
.lg-wrap a{color:var(--lime); text-decoration:underline; text-underline-offset:3px}
.lg-wrap strong{color:var(--text); font-weight:700}

/* Champ « à compléter » bien visible */
.todo{
  display:inline-block; background:rgba(255,194,75,.16); color:var(--amber);
  border:1px dashed rgba(255,194,75,.5); border-radius:6px;
  padding:1px 8px; font-size:.92em; font-weight:600;
}

/* Encadré (note / mise en garde) */
.lg-callout{
  background:var(--surface); border:1px solid var(--line);
  border-left:3px solid var(--lime); border-radius:12px;
  padding:18px 22px; margin:24px 0;
}
.lg-callout.warn{border-left-color:var(--red); background:rgba(255,107,107,.07)}
.lg-callout p:last-child{margin-bottom:0}
.lg-callout .lg-callout-title{font-weight:700; color:var(--text); margin-bottom:6px; display:block}

/* Bloc ressources d'aide (jeu responsable) */
.help-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:18px;
  background:var(--surface); border:1px solid var(--line); border-radius:14px;
  padding:24px; margin:24px 0;
}
.help-grid h4{font-size:16px; font-weight:700; color:var(--text); margin:0 0 4px}
.help-grid .tel{color:var(--lime); font-weight:700; font-size:18px; letter-spacing:.3px}
.help-grid p{font-size:14px; color:var(--muted); margin:0}
@media(max-width:560px){.help-grid{grid-template-columns:1fr}}

/* Pied de page */
.lg-foot{
  border-top:1px solid var(--line); margin-top:64px; padding-top:28px;
  color:var(--muted); font-size:13.5px; line-height:1.7;
}
.lg-foot a{color:var(--muted); text-decoration:none; margin-right:18px}
.lg-foot a:hover{color:var(--lime)}
.lg-foot .legal-warn{margin-top:14px; color:#6c8473}

:focus-visible{outline:2px solid var(--lime); outline-offset:2px; border-radius:4px}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
