/* Pages secondaires : mentions légales, confidentialité, cookies.
   Elles reprennent la trame de filets de la page d'accueil. Les jetons, la nav,
   les boutons et le pied de page viennent de base.css. */

.page{max-width:820px;margin:0 auto;padding:clamp(34px,5vw,56px) var(--gutter) clamp(72px,9vw,104px)}
.page a{color:var(--blue)}
.page a:hover{text-decoration:underline}
.back{display:inline-block;font-size:var(--t-small);font-weight:600;color:var(--body)}
.back:hover{color:var(--accent);text-decoration:none}

h1{font-family:var(--font-display);font-weight:700;font-size:clamp(30px,4.6vw,46px);line-height:1.06;letter-spacing:-.035em;color:var(--ink);margin:26px 0 10px;text-wrap:balance}
.meta{color:var(--muted);font-size:var(--t-micro);margin:0 0 30px}
.intro{border-left:1px solid var(--rule-strong);padding:2px 0 2px 22px;font-size:var(--t-lead);line-height:1.6;color:var(--ink-2);margin-bottom:38px;max-width:62ch}

.toc{border-block:1px solid var(--rule);padding:22px 0;margin-bottom:clamp(40px,6vw,60px)}
.toc__h{font-size:var(--t-micro);color:var(--muted);margin-bottom:12px}
.toc ol{margin:0;padding-left:18px;font-size:var(--t-small);line-height:2;columns:2;column-gap:40px}
@media(max-width:620px){.toc ol{columns:1}}

section{scroll-margin-top:88px;margin-bottom:clamp(38px,5vw,52px)}
h2{font-family:var(--font-display);font-weight:600;font-size:var(--t-h3);line-height:1.25;letter-spacing:-.018em;color:var(--ink);margin:0 0 14px;padding-top:18px;border-top:1px solid var(--rule)}
h2 .num{color:var(--accent);font-weight:600;margin-right:10px;font-variant-numeric:tabular-nums}
h3{font-family:var(--font-display);font-weight:600;font-size:17px;letter-spacing:-.012em;color:var(--ink);margin:26px 0 8px}
p{margin:0 0 14px;font-size:var(--t-small);line-height:1.75;max-width:72ch}
ul{margin:12px 0 16px;padding-left:20px;display:grid;gap:8px;list-style:disc}
li{font-size:var(--t-small);line-height:1.7}
strong{color:var(--ink);font-weight:600}

.kv{display:flex;flex-wrap:wrap;gap:8px;padding:9px 0;border-bottom:1px solid var(--rule);font-size:var(--t-small)}
.kv span:first-child{color:var(--muted);min-width:220px}
.kv span:last-child{color:var(--ink)}

.callout{background:var(--accent-soft);border-left:1px solid var(--accent);padding:16px 20px;margin:22px 0;font-size:var(--t-small);line-height:1.7;color:var(--ink-2)}
.callout strong{display:block;margin-bottom:4px;color:var(--ink)}

.tablewrap{overflow-x:auto;margin:18px 0;border:1px solid var(--rule)}
table{border-collapse:collapse;width:100%;min-width:520px;font-size:var(--t-micro);background:var(--card)}
th{text-align:left;padding:11px 14px;color:var(--ink);font-weight:600;border-bottom:1px solid var(--rule-strong)}
td{padding:11px 14px;border-top:1px solid var(--rule);vertical-align:top;line-height:1.65}

.contact-box{background:var(--ink);color:rgba(255,255,255,.72);padding:clamp(24px,3vw,32px);margin-top:32px}
.contact-box h3{color:#fff;margin:0 0 12px;font-size:var(--t-h3);padding:0;border:0}
.contact-box p{color:rgba(255,255,255,.72);margin-bottom:8px}
.contact-box strong{color:#fff}
.contact-box a{color:#fff;font-weight:600;text-decoration:underline}
