/* ============================================================
   PADINO - Page « Mentions légales et confidentialité » (thème black)
   Chargée après style-black.css et header-black.css.
   ============================================================ */

.legal-hero { background: var(--ink); color: var(--on-ink); }
.legal-hero-inner { padding-top: 60px; padding-bottom: 44px; }
.legal-hero h1 {
    font-size: clamp(34px, 4.6vw, 60px);
    line-height: 1.08;
    font-weight: 300;
    letter-spacing: -0.035em;
    text-wrap: balance;
}
.legal-updated { margin-top: 18px; font-size: 13px; color: var(--on-ink-mute); }
.legal-toc { display: flex; flex-wrap: wrap; gap: 8px 24px; margin-top: 26px; font-size: 13px; }
.legal-toc a { color: var(--silver); border-bottom: 1px solid rgba(214, 218, 224, 0.4); }
.legal-toc a:hover { color: #fff; }

.section { padding: 60px 0; }
.legal-section { scroll-margin-top: 60px; }
.legal-container { max-width: 820px; }
.legal-container h2 { font-size: clamp(26px, 3vw, 36px); font-weight: 300; letter-spacing: -0.03em; margin-bottom: 28px; }
.legal-container h3 { font-size: 17px; font-weight: 600; margin: 32px 0 10px; }
.legal-container p, .legal-container li { font-size: 15px; line-height: 1.7; color: var(--muted-2); }
.legal-container p { margin: 0 0 12px; }
.legal-container ul { list-style: disc; padding-left: 20px; margin: 0 0 12px; }
.legal-container li { margin-bottom: 10px; }
.legal-container strong { color: var(--ink-2); font-weight: 600; }
.legal-container a { border-bottom: 1px solid rgba(126, 133, 141, 0.4); }
.legal-container code { font-size: 13px; background: var(--page-alt); padding: 1px 5px; border-radius: 4px; }

.legal-dl { display: grid; grid-template-columns: minmax(150px, 220px) 1fr; gap: 8px 24px; margin: 0 0 8px; font-size: 15px; }
.legal-dl dt { color: var(--muted); }
.legal-dl dd { margin: 0; color: var(--ink-2); }

.legal-table { width: 100%; border-collapse: collapse; margin: 0 0 16px; font-size: 14px; }
.legal-table th, .legal-table td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid var(--line); color: var(--muted-2); }
.legal-table th { color: var(--ink-2); font-weight: 600; }

@media (max-width: 640px) {
    .legal-dl { grid-template-columns: 1fr; gap: 2px; }
    .legal-dl dd { margin-bottom: 10px; }
    .legal-table { display: block; overflow-x: auto; }
}
