/* Pages légales : sobres, lisibles, dans les couleurs du site. */
:root { --fond:#0F172A; --carte:#151E32; --texte:#E2E8F0; --doux:#94A3B8; --violet:#7C3AED; --violet-clair:#A78BFA; --trait:rgba(255,255,255,.1); }
* { box-sizing:border-box; }
html { background:var(--fond); }
body { margin:0; background:var(--fond); color:var(--texte); font:17px/1.7 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif; }
a { color:var(--violet-clair); }
a:hover { color:#fff; }
.haut { border-bottom:1px solid var(--trait); }
.haut div, main, .bas div { max-width:820px; margin:0 auto; padding:0 24px; }
.haut div { display:flex; justify-content:space-between; align-items:center; height:68px; }
.haut .nom { color:#fff; font-weight:700; font-size:1.2rem; text-decoration:none; }
.haut .retour { font-size:.95rem; text-decoration:none; }
main { padding-top:56px; padding-bottom:72px; }
.surtitre { color:var(--violet-clair); font-size:.8rem; letter-spacing:.14em; text-transform:uppercase; font-weight:600; }
h1 { font-size:clamp(2rem,5vw,2.8rem); line-height:1.15; margin:.4em 0 .3em; color:#fff; }
.chapo { color:var(--doux); font-size:1.1rem; margin:0 0 2.5em; }
h2 { color:#fff; font-size:1.3rem; margin:2.4em 0 .6em; padding-top:1.2em; border-top:1px solid var(--trait); }
h2:first-of-type { border-top:0; padding-top:0; }
dl.fiche { display:grid; grid-template-columns:minmax(150px,220px) 1fr; gap:.5em 1.5em; background:var(--carte); border:1px solid var(--trait); border-radius:14px; padding:22px 24px; margin:1em 0; }
dl.fiche dt { color:var(--doux); }
dl.fiche dd { margin:0; color:#fff; }
@media (max-width:600px) { dl.fiche { grid-template-columns:1fr; } dl.fiche dd { margin-bottom:.6em; } }
ul { padding-left:1.2em; } li { margin:.3em 0; }
.maj { color:var(--doux); font-size:.9rem; margin-top:3em; }
.bas { border-top:1px solid var(--trait); padding:28px 0; color:var(--doux); font-size:.9rem; }
.bas div { display:flex; flex-wrap:wrap; gap:8px 22px; justify-content:space-between; }
.bas nav { display:flex; gap:18px; flex-wrap:wrap; }
