/* Pages légales (mentions-legales.html, confidentialite.html). Reprend les jetons de styles.css. */

/* Un seul bloc de langue est visible : l'attribut lang de <html> est posé par legal.js puis par i18n.js. */
html[lang="fr"] .legal-block[lang="en"],
html[lang="en"] .legal-block[lang="fr"] { display: none; }

.legal-main { max-width: 860px; padding-top: 120px; padding-bottom: 96px; }
.legal-main h1 { font-size: 44px; line-height: 1.12; margin-top: 18px; }
.legal-meta { font-family: 'JetBrains Mono', monospace; font-size: 13px; letter-spacing: 0.4px; color: var(--muted); margin-top: 14px; }
.legal-lead { font-size: 17px; line-height: 1.7; color: var(--muted); max-width: 64ch; margin-top: 22px; }

.legal-sec { padding: 30px 0; border-top: 1px solid var(--hair); margin-top: 30px; }
.legal-lead + .legal-sec, .legal-meta + .legal-sec { margin-top: 36px; }
.legal-sec h2 { font-size: 24px; margin-bottom: 14px; }
.legal-sec p { font-size: 15.5px; line-height: 1.75; color: var(--muted); max-width: 68ch; margin-bottom: 12px; }
.legal-sec a, .legal-foot a { color: var(--copper-bright); text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.legal-sec a:hover, .legal-foot a:hover { color: var(--cream); }

.legal-dl { display: grid; grid-template-columns: 190px 1fr; gap: 12px 24px; margin-top: 8px; }
.legal-dl dt { font-family: 'JetBrains Mono', monospace; font-size: 12px; letter-spacing: 1.2px; text-transform: uppercase; color: var(--copper-bright); padding-top: 4px; }
.legal-dl dd { font-size: 15.5px; line-height: 1.65; color: var(--cream); }
.legal-dl dd a { color: var(--copper-bright); text-decoration: underline; text-underline-offset: 3px; }

.legal-card { background: var(--ink-2); border: 1px solid var(--hair); border-radius: 6px; padding: 26px 28px; margin: 20px 0; }
.legal-card h3 { font-size: 21px; margin-bottom: 4px; }
.legal-card .sub { font-family: 'JetBrains Mono', monospace; font-size: 12px; letter-spacing: 1.2px; text-transform: uppercase; color: var(--dim); margin-bottom: 18px; }
.legal-card .legal-dl { grid-template-columns: 150px 1fr; margin-top: 0; }

.legal-note { border-left: 2px solid var(--copper); padding: 2px 0 2px 16px; margin-top: 18px; font-size: 14.5px; line-height: 1.65; color: var(--cream); max-width: 68ch; }

.legal-foot { margin-top: 36px; padding-top: 24px; border-top: 1px solid var(--hair); display: flex; gap: 24px; flex-wrap: wrap; font-family: 'JetBrains Mono', monospace; font-size: 13px; letter-spacing: 0.4px; }

.legal-dl + p { margin-top: 16px; }

@media (max-width: 640px) {
  /* en-tête resserré pour que le logo, le sélecteur de langue et le bouton tiennent sur une ligne à 375 px */
  .site-header .wrap { padding: 0 20px; }
  .site-header .header-inner { gap: 10px; }
  .site-header .header-right { gap: 10px; }
  .site-header .btn-small { padding: 8px 12px; font-size: 13px; white-space: nowrap; }
  .site-header .lang-btn { padding: 5px 8px; }
  .legal-main { padding-top: 96px; padding-bottom: 72px; }
  .legal-main h1 { font-size: 34px; }
  .legal-card { padding: 22px 20px; }
  .legal-dl, .legal-card .legal-dl { grid-template-columns: 1fr; gap: 2px 0; }
  .legal-dl dt { margin-top: 14px; }
  .legal-card .legal-dl dt:first-child, .legal-dl dt:first-child { margin-top: 0; }
}
