/* ===== Pages légales (Mentions légales, Politique de confidentialité) ===== */
.legal-section{
  position:relative; z-index:1;
  padding:140px 0 80px;
  min-height:100vh;
}
.legal-back{
  display:inline-block;
  margin-bottom:24px;
  color:var(--muted);
  font-size:.9rem;
}
.legal-back:hover{color:var(--primary);}
.legal-card{
  max-width:760px;
  margin:0 auto;
  background:var(--card);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:40px;
}
.legal-card h1{
  font-family:'Bebas Neue', sans-serif;
  font-size:2.2rem;
  letter-spacing:.02em;
  margin-bottom:8px;
}
.legal-updated{color:var(--muted); font-size:.82rem; margin-bottom:32px;}
.legal-card h2{
  font-family:'Bebas Neue', sans-serif;
  font-size:1.3rem;
  letter-spacing:.02em;
  color:var(--primary-dark);
  margin:32px 0 10px;
  padding-top:16px;
  border-top:1px dashed var(--border);
}
.legal-card h2:first-of-type{border-top:none; padding-top:0; margin-top:0;}
.legal-card p, .legal-card li{
  color:var(--text);
  line-height:1.7;
  font-size:.92rem;
  margin-bottom:10px;
}
.legal-card ul{margin:0 0 14px 20px;}
.legal-card a{color:var(--primary); text-decoration:underline;}
.legal-card a:hover{color:var(--primary-dark);}
.legal-todo{
  background:#fdf0e3;
  border:1px dashed var(--accent);
  border-radius:12px;
  padding:10px 14px;
  font-size:.85rem;
  color:var(--primary-dark);
}
.legal-table{width:100%; border-collapse:collapse; margin:14px 0 20px; font-size:.88rem;}
.legal-table th, .legal-table td{
  text-align:left;
  padding:10px 12px;
  border-bottom:1px solid var(--border);
  vertical-align:top;
}
.legal-table th{color:var(--muted); font-weight:600; white-space:nowrap;}

@media (max-width:600px){
  .legal-card{padding:26px 20px;}
  .legal-section{padding:120px 0 60px;}
}
