/* Shared stylesheet for all three legal pages (confidentialite/, cgv/,
   mentions-legales/) — long-form legal content. Base tokens from
   style.css (same directory); this file only adds prose/table treatment
   plus the header-logo-as-home-link override these pages introduce. */

.logo { text-decoration: none; color: inherit; }

.legal-section { padding: var(--space-16) 0 var(--space-24); }
.legal-wrap { max-width: 760px; }

.legal-back {
  display: block; margin-bottom: var(--space-8);
  font-size: var(--text-sm); color: var(--ink-soft); text-decoration: none;
}
.legal-back:hover { color: var(--ink); }

.legal-section h1 {
  font-size: var(--text-3xl); letter-spacing: -0.015em; line-height: 1.15;
  margin-top: var(--space-4);
}

.legal-draft-notice {
  margin-top: var(--space-6); padding: var(--space-4) var(--space-5);
  background: var(--accent-soft); border-radius: var(--radius);
  font-size: var(--text-sm); color: var(--accent-ink); font-style: italic;
}
.legal-updated { margin-top: var(--space-3); font-size: var(--text-sm); color: var(--ink-faint); }

.legal-body { margin-top: var(--space-12); }
.legal-body h2 {
  font-size: var(--text-xl); letter-spacing: -0.01em;
  margin-top: var(--space-12); margin-bottom: var(--space-4);
  padding-top: var(--space-8); border-top: 1px solid var(--line-soft);
}
.legal-body h2:first-child { margin-top: 0; padding-top: 0; border-top: none; }
.legal-body h3 {
  font-size: var(--text-md); letter-spacing: -0.005em;
  margin-top: var(--space-8); margin-bottom: var(--space-3);
}
.legal-body p { color: var(--ink-soft); line-height: 1.65; margin-top: var(--space-4); }
.legal-body p:first-of-type { margin-top: 0; }
.legal-body strong { color: var(--ink); font-weight: 600; }
.legal-body a { color: var(--accent-ink); }

.legal-list {
  margin-top: var(--space-4); display: flex; flex-direction: column; gap: var(--space-2);
  color: var(--ink-soft); line-height: 1.6;
}
.legal-list li { padding-left: var(--space-5); position: relative; }
.legal-list li::before {
  content: ""; position: absolute; left: 0; top: 0.65em;
  width: 5px; height: 5px; border-radius: 50%; background: var(--accent);
}

.legal-table-wrap { margin-top: var(--space-5); overflow-x: auto; }
.legal-table {
  width: 100%; border-collapse: collapse; font-size: var(--text-sm);
  background: var(--card); border: 1px solid var(--line); border-radius: var(--radius);
}
.legal-table th, .legal-table td {
  text-align: left; padding: var(--space-3) var(--space-4);
  border-bottom: 1px solid var(--line-soft); vertical-align: top;
}
.legal-table th { color: var(--ink); font-weight: 600; background: var(--paper-alt); }
.legal-table td { color: var(--ink-soft); }
.legal-table tr:last-child td { border-bottom: none; }

.legal-todo {
  margin-top: var(--space-10); padding: var(--space-4) var(--space-5);
  background: var(--paper-alt); border-radius: var(--radius);
  font-size: var(--text-sm); color: var(--ink-faint);
}

@media (max-width: 640px) {
  .legal-section { padding: var(--space-10) 0 var(--space-16); }
  .legal-section h1 { font-size: 1.75rem; }
}
