:root{
  --navy:#0F3E66;
  --gold:#FAB959;
  --navy-dark:#0a2a45;
  --white:#fff;
  --gray:#f5f7fa;
  --text:#1a1a2e;
  --text-muted:#5b6270;
}
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Montserrat',sans-serif;color:var(--text);background:var(--gray);line-height:1.7;}

/* ── EN-TÊTE ── */
.legal-header{background:linear-gradient(135deg,#0a2a45,#0F3E66);padding:18px 5%;display:flex;align-items:center;justify-content:space-between;gap:16px;}
.legal-header img{height:40px;width:auto;object-fit:contain;}
.legal-back{color:var(--white);text-decoration:none;font-size:13px;font-weight:600;border:1px solid rgba(255,255,255,.3);padding:8px 18px;border-radius:50px;transition:all .3s;white-space:nowrap;}
.legal-back:hover{border-color:var(--gold);color:var(--gold);}
.legal-hero{background:linear-gradient(135deg,#0a2a45,#0F3E66);padding:40px 5% 60px;color:var(--white);}
.legal-hero h1{font-size:clamp(26px,4vw,40px);font-weight:800;line-height:1.2;max-width:860px;margin:0 auto;}
.legal-hero p{color:rgba(255,255,255,.6);font-size:13px;margin:10px auto 0;max-width:860px;}

/* ── CONTENU ── */
.legal-content{max-width:860px;margin:-30px auto 60px;background:var(--white);border-radius:20px;padding:48px;box-shadow:0 10px 40px rgba(15,62,102,.08);}
.legal-content h2{font-size:18px;font-weight:800;color:var(--navy);margin:32px 0 10px;}
.legal-content h2:first-child{margin-top:0;}
.legal-content p,.legal-content li{font-size:14px;color:var(--text-muted);}
.legal-content p{margin-bottom:10px;}
.legal-content ul{padding-left:20px;margin-bottom:10px;}
.legal-content li{margin-bottom:4px;}
.legal-content strong{color:var(--text);}
.legal-content a{color:var(--navy);font-weight:600;}
.notice{background:rgba(250,185,89,.12);border-left:4px solid var(--gold);border-radius:8px;padding:16px 20px;margin:0 0 28px;}
.notice p{color:var(--text);margin:0;}

/* ── PIED DE PAGE ── */
.legal-footer{background:var(--navy-dark);color:rgba(255,255,255,.45);text-align:center;font-size:12px;padding:24px 5%;}
.legal-footer a{color:rgba(255,255,255,.6);text-decoration:none;margin:0 10px;}
.legal-footer a:hover{color:var(--gold);}
.legal-footer p{margin-top:10px;}

@media(max-width:600px){
  .legal-content{padding:28px 20px;margin:-30px 16px 40px;}
  .legal-hero{padding:30px 16px 50px;}
  .legal-header{padding:14px 16px;}
}
