:root{
  --blue-700:#1346a0;--blue-500:#1a5dc8;--blue-900:#0a1628;
  --blue-50:#eff6ff;--amber:#f59e0b;--green:#10b981;
  --surface:#f8fafc;--border:#e2e8f0;--text-1:#0f172a;--text-2:#475569;--text-3:#94a3b8;
}
*,*::before,*::after{box-sizing:border-box;}
body{font-family:'DM Sans',sans-serif;background:var(--surface);color:var(--text-1);}
h1,h2,h3,h4,h5,h6{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;}

/* NAVBAR */
.navbar-top{background:#fff;border-bottom:1px solid var(--border);padding:.75rem 0;position:sticky;top:0;z-index:100;}
.brand{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.4rem;font-weight:800;background:linear-gradient(135deg,var(--blue-700),var(--blue-500));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
.brand span{color:var(--amber);-webkit-text-fill-color:var(--amber);}

/* HERO */
.legal-hero{background:linear-gradient(160deg,var(--blue-900),var(--blue-700));padding:3.5rem 0 2.5rem;text-align:center;}
.legal-hero.confidentialite{background:linear-gradient(160deg,#064e3b,#059669);}
.legal-hero-inner{max-width:600px;margin:0 auto;}
.legal-hero-icon{width:64px;height:64px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:1.8rem;color:#fff;margin:0 auto 1.2rem;}
.legal-hero h1{font-size:2rem;font-weight:800;color:#fff;margin-bottom:.6rem;}
.legal-hero p{color:rgba(255,255,255,.65);font-size:.9rem;}

/* CONTAINER */
.legal-container{padding:3rem 0 4rem;}

/* SOMMAIRE */
.legal-toc{background:#fff;border:1.5px solid var(--border);border-radius:16px;padding:1.5rem;margin-bottom:2.5rem;}
.legal-toc-title{font-family:'Plus Jakarta Sans',sans-serif;font-weight:700;font-size:.95rem;color:var(--text-1);margin-bottom:1rem;}
.legal-toc-link{display:flex;align-items:center;gap:.6rem;padding:.4rem .6rem;border-radius:8px;text-decoration:none;color:var(--text-2);font-size:.85rem;transition:all .2s;}
.legal-toc-link:hover{background:var(--blue-50);color:var(--blue-700);}
.legal-toc-link span{font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:.7rem;color:var(--blue-500);background:var(--blue-50);padding:.1rem .4rem;border-radius:6px;}

/* SECTIONS */
.legal-section{margin-bottom:3rem;padding-bottom:2rem;border-bottom:1px solid var(--border);}
.legal-section:last-of-type{border-bottom:none;}
.legal-section-num{font-family:'Plus Jakarta Sans',sans-serif;font-size:.7rem;font-weight:800;color:var(--blue-500);background:var(--blue-50);display:inline-block;padding:.2rem .6rem;border-radius:6px;margin-bottom:.7rem;letter-spacing:.05em;}
.legal-section-title{font-size:1.3rem;font-weight:800;color:var(--text-1);margin-bottom:1rem;}
.legal-subsection{font-size:.95rem;font-weight:700;color:var(--text-1);margin:1.4rem 0 .6rem;}

/* LISTES */
.legal-list{padding-left:1.2rem;margin-bottom:1rem;}
.legal-list li{margin-bottom:.5rem;color:var(--text-2);font-size:.93rem;line-height:1.7;}
.legal-list li strong{color:var(--text-1);}

/* PARAGRAPHES */
.legal-section p{color:var(--text-2);line-height:1.8;font-size:.93rem;margin-bottom:.9rem;}
.legal-section a{color:var(--blue-500);text-decoration:none;}
.legal-section a:hover{text-decoration:underline;}

/* HIGHLIGHTS */
.legal-highlight{display:flex;align-items:flex-start;gap:.75rem;background:var(--blue-50);border:1px solid #bfdbfe;border-radius:12px;padding:1rem 1.2rem;margin:1.2rem 0;font-size:.88rem;color:#1e40af;line-height:1.6;}
.legal-highlight i{font-size:1.1rem;flex-shrink:0;margin-top:.1rem;}
.legal-highlight.warning{background:#fffbeb;border-color:#fde68a;color:#92400e;}
.legal-highlight.warning i{color:#d97706;}
.legal-highlight.green{background:#f0fdf4;border-color:#bbf7d0;color:#065f46;}
.legal-highlight.green i{color:#059669;}

/* DROITS CARDS */
.legal-rights-card{background:#fff;border:1.5px solid var(--border);border-radius:12px;padding:1rem;height:100%;transition:border-color .2s,box-shadow .2s;}
.legal-rights-card:hover{border-color:#93c5fd;box-shadow:0 4px 12px rgba(19,70,160,.08);}
.legal-rights-card i{font-size:1.3rem;color:var(--blue-500);display:block;margin-bottom:.5rem;}
.legal-rights-card strong{font-size:.88rem;font-family:'Plus Jakarta Sans',sans-serif;color:var(--text-1);}
.legal-rights-card p{font-size:.8rem;color:var(--text-2);margin:.3rem 0 0;line-height:1.5;}

/* BOUTONS BAS DE PAGE */
.legal-footer-actions{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;padding:2.5rem 0 1rem;border-top:1px solid var(--border);margin-top:2rem;}

/* FOOTER MINI */
.footer-mini{background:#fff;border-top:1px solid var(--border);padding:1.2rem 0;font-size:.82rem;color:var(--text-3);}
.footer-mini a:hover{color:var(--blue-700);}