/* ─── PAGES LÉGALES (mentions-legales.php, cgv.php, confidentialite.php) ─── */
.legal-section { padding-block: var(--space-xl); background: var(--clr-white); border-radius: var(--radius-lg); margin-top: -50px; position: relative; z-index: 10; box-shadow: var(--shadow-md); margin-bottom: var(--space-xl); }
.legal-content { max-width: 800px; margin-inline: auto; padding-inline: var(--space-md); }
.legal-content h2 { font-family: var(--font-serif); color: var(--clr-navy); margin: var(--space-lg) 0 var(--space-sm); font-size: 1.5rem; }
.legal-content h3 { font-family: var(--font-serif); color: var(--clr-navy); margin: var(--space-md) 0 var(--space-xs); font-size: 1.15rem; }
.legal-content p, .legal-content address, .legal-content li { color: var(--clr-text-muted); line-height: 1.8; margin-bottom: var(--space-sm); font-style: normal; }
.legal-content ul { padding-left: 1.25rem; margin-bottom: var(--space-sm); }
.legal-content table { width: 100%; border-collapse: collapse; margin-bottom: var(--space-md); }
.legal-content th, .legal-content td { text-align: left; padding: 0.6rem 0.75rem; border-bottom: 1px solid var(--clr-border); color: var(--clr-text-muted); font-size: 0.95rem; vertical-align: top; }
.legal-content th { color: var(--clr-navy); font-weight: 600; }
.legal-header { padding-block: var(--space-2xl) var(--space-2xl); background: linear-gradient(135deg, var(--clr-navy) 0%, var(--clr-navy-light) 100%); color: var(--clr-white); text-align: center; }
.legal-header h1 { font-family: var(--font-serif); font-size: clamp(2rem, 5vw, 3rem); margin-bottom: var(--space-sm); }
.legal-back { display: inline-flex; align-items: center; gap: 0.5rem; color: var(--clr-gold); font-weight: 500; margin-bottom: var(--space-md); transition: var(--transition); }
.legal-back:hover { color: var(--clr-gold-light); transform: translateX(-4px); }
.legal-content a.legal-link { color: var(--clr-gold); }
.legal-footnote { margin-top: var(--space-xl); font-size: 0.85rem; color: var(--clr-text-muted); border-top: 1px solid var(--clr-border); padding-top: var(--space-md); }
