/* ============================================================
   Dikivo : pages légales (CGU, confidentialité, mentions, cookies,
   suppression de compte, suppression de données).
   S'appuie sur site.css (tokens, en-tête, pied, boutons) chargé avant.
   ============================================================ */

.legal-hero{
  padding:46px 0 12px;
  background:var(--cream-2);
  border-bottom:1px solid var(--border);
}
.legal-hero .container{max-width:840px}
.legal-back{display:block;width:fit-content;color:var(--teal-ink);font-size:.9rem;font-weight:600;margin-bottom:14px}
.legal-back:hover{text-decoration:underline}
.legal-hero h1{font-size:clamp(1.85rem,4vw,2.5rem);line-height:1.15;margin:6px 0 0}
.legal-updated{margin-top:12px;color:var(--muted);font-size:.98rem}

.legal-body{
  max-width:780px;margin:0 auto;padding:40px 22px 76px;
  font-size:1rem;line-height:1.78;color:var(--body);
}
.legal-body h2{font-size:1.34rem;line-height:1.25;margin:38px 0 12px}
.legal-body h3{font-size:1.08rem;margin:26px 0 8px}
.legal-body p{margin:0 0 14px;color:var(--body);font-size:1rem}
.legal-body ul,.legal-body ol{margin:0 0 16px;padding-left:22px}
.legal-body ul{list-style:disc}
.legal-body ol{list-style:decimal}
.legal-body li{margin:7px 0}
.legal-body a{color:var(--teal-ink);text-decoration:underline}
.legal-body a:hover{color:var(--ink)}
.legal-body strong{color:var(--ink);font-weight:700}

.legal-body table{width:100%;border-collapse:collapse;margin:0 0 20px;font-size:.95rem}
.legal-body th,.legal-body td{border:1px solid var(--border);padding:10px 12px;text-align:left;vertical-align:top}
.legal-body th{background:var(--cream-2);color:var(--ink);font-weight:700}
.legal-table-wrap{overflow-x:auto;margin:0 0 20px}
.legal-table-wrap table{margin:0}

.legal-callout{
  margin:22px 0;padding:18px 20px;border-radius:var(--r-card);
  background:var(--teal-light);border:1px solid #C9E9E6;
}
.legal-callout p{margin:0;color:var(--teal-ink);font-size:.97rem}
.legal-callout p+p{margin-top:10px}
.legal-callout.warn{background:var(--gold-wash);border-color:#F3D9A4}
.legal-callout.warn p{color:var(--gold-deep)}

.legal-steps{counter-reset:ls;list-style:none!important;padding-left:0!important}
.legal-steps li{position:relative;padding:0 0 0 44px;margin:0 0 16px;list-style:none}
.legal-steps li::before{
  counter-increment:ls;content:counter(ls);
  position:absolute;left:0;top:1px;width:30px;height:30px;border-radius:50%;
  display:grid;place-items:center;background:var(--teal-light);color:var(--teal-ink);
  font-family:var(--serif);font-weight:700;font-size:.95rem;
}

.legal-foot{margin-top:50px;padding-top:24px;border-top:1px solid var(--border);font-size:.86rem;color:var(--muted)}
.legal-foot a{color:var(--teal-ink)}

/* Page 404 */
.nf{min-height:64vh;display:grid;place-items:center;text-align:center;padding:80px 0}
.nf img{width:150px;margin:0 auto 26px}
.nf .code{font-family:var(--serif);font-size:clamp(3.4rem,10vw,6rem);font-weight:700;color:var(--teal);line-height:1}
.nf h1{margin:6px 0 14px}
.nf p{max-width:480px;margin:0 auto 28px}
.nf-links{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}
