/* ═══════════ Pages légales : lecture confortable ═══════════
   Sommaire collant qui suit la lecture, sections en cartes.
   Sans JS, le sommaire reste un simple index de liens. */
.lg-hero{padding-bottom:clamp(20px,3vw,36px)}
.lg-sec{padding-top:clamp(20px,3vw,40px)}
.lg-wrap{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(30px,5vw,72px);align-items:start}
.lg-wrap .legal{max-width:none;margin:0;padding:0}
.lg-toc{position:sticky;top:100px;padding:20px;border-radius:16px;border:1px solid var(--border);background:var(--surface)}
.lg-toc__h{margin:0 0 12px;font-size:12px;font-weight:700;letter-spacing:0.14em;text-transform:uppercase;color:var(--muted)}
.lg-toc ol{list-style:none;margin:0;padding:0;counter-reset:lg}
.lg-toc li{counter-increment:lg}
.lg-toc a{position:relative;display:block;padding:7px 10px 7px 34px;border-radius:9px;font-size:14px;line-height:1.35;color:var(--muted-2);text-decoration:none;transition:background 0.25s var(--ease),color 0.25s var(--ease)}
.lg-toc a::before{content:counter(lg,decimal-leading-zero);position:absolute;left:10px;top:8px;font-family:var(--font-mono);font-size:11px;color:var(--muted)}
.lg-toc a:hover{color:var(--text);background:rgba(255,255,255,0.03)}
.lg-toc a.is-on{color:var(--text);background:rgba(250,181,18,0.1)}
.lg-toc a.is-on::before{color:var(--yellow)}
.lg-toc a:focus-visible{outline:2px solid var(--yellow);outline-offset:2px}
.lg-wrap .legal__date{display:inline-block;margin:0 0 8px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);font-size:13px;color:var(--muted-2)}
.lg-wrap .legal__section{margin-top:18px;padding:clamp(20px,2.6vw,30px);border-radius:18px;border:1px solid var(--border);background:var(--surface);scroll-margin-top:100px}
.lg-wrap .legal h2{margin:0 0 14px;font-size:clamp(20px,2vw,26px);scroll-margin-top:110px}
.lg-wrap .legal p:last-child,.lg-wrap .legal li:last-child{margin-bottom:0}
.lg-wrap .legal strong{color:var(--text)}
@media (max-width:900px){
  .lg-wrap{grid-template-columns:1fr}
  .lg-toc{position:static}
  .lg-toc ol{display:flex;flex-wrap:wrap;gap:6px}
  .lg-toc a{padding:6px 10px 6px 30px;border:1px solid var(--border);border-radius:999px;font-size:13px}
  .lg-toc a::before{top:7px}
}
