/* Pages d’informations légales : lecture longue, sans script propre. */
.legal-main{box-sizing:border-box;max-width:820px;margin:0 auto;padding:28px 24px 56px;color:var(--pesev-ink,#23211e);font:16px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.legal-main *{box-sizing:border-box}
.legal-kicker{margin:0 0 6px;color:var(--pesev-muted,#66615a);font-size:12px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.legal-main h1{margin:0 0 10px;font-size:clamp(30px,5vw,42px);line-height:1.12;letter-spacing:-.02em}
.legal-lead{margin:0 0 8px;color:var(--pesev-muted,#66615a);font-size:17px}
.legal-version{margin:0 0 26px;color:var(--pesev-muted,#66615a);font-size:13px}
.legal-main h2{margin:38px 0 10px;font-size:22px;line-height:1.25;scroll-margin-top:16px}
.legal-main h3{margin:22px 0 6px;font-size:17px}
.legal-main p,.legal-main li{max-width:72ch}
.legal-main ul{padding-left:22px}
.legal-main li+li{margin-top:6px}
.legal-main a{color:var(--pesev-link,#2542c7);text-underline-offset:3px}
.legal-main a:focus-visible{outline:3px solid var(--pesev-link,#2542c7);outline-offset:2px;border-radius:3px}
.legal-toc{margin:0 0 8px;padding:16px 20px;border:1px solid var(--pesev-line,#e2ddd5);border-radius:14px;background:var(--pesev-surface,#fff)}
.legal-toc strong{display:block;margin-bottom:6px;font-size:14px}
.legal-toc ol{margin:0;padding-left:22px;columns:2 260px;column-gap:28px}
.legal-toc li{break-inside:avoid}
.legal-toc a{display:inline-block;min-height:32px;padding:4px 0}
.legal-card{margin:14px 0;padding:16px 20px;border:1px solid var(--pesev-line,#e2ddd5);border-radius:14px;background:var(--pesev-surface,#fff)}
.legal-card p{margin:0}.legal-card p+p{margin-top:6px}
.legal-todo{padding:1px 6px;border-radius:6px;background:#fff1c2;color:#5c4300;font-weight:700}
.legal-table-wrap{overflow-x:auto;margin:12px 0;border:1px solid var(--pesev-line,#e2ddd5);border-radius:12px}
.legal-main table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.5}
.legal-main th,.legal-main td{padding:10px 12px;border-bottom:1px solid var(--pesev-line,#e2ddd5);text-align:left;vertical-align:top}
.legal-main tr:last-child td{border-bottom:0}
.legal-main th{background:var(--pesev-soft,#f3f0ea);font-weight:750}
@media(max-width:600px){.legal-main{padding:22px 16px 44px;font-size:15px}.legal-main h2{font-size:20px}.legal-main th,.legal-main td{padding:8px 10px}}
@media print{.legal-toc{display:none}.legal-main{max-width:none;padding:0}}
