/* ===== PAGINAS LEGALES ===== */

.legal-hero {
  background: var(--negro-brasa);
  color: var(--marfil);
  border-bottom: 1px solid color-mix(in srgb, var(--humo) 24%, transparent);
}
.legal-hero .page-hero__kicker { color: var(--ambar-muro); }

.legal {
  background: var(--negro-brasa);
  color: color-mix(in srgb, var(--marfil) 86%, transparent);
  padding-inline: var(--gutter);
  padding-block: var(--space-block) var(--space-section) !important;
  margin-top: -1px;
}
.legal > * { max-width: 70ch; }
.legal .lead {
  color: color-mix(in srgb, var(--marfil) 82%, transparent);
  margin-bottom: var(--space-block);
  max-width: 60ch;
}
.legal__sec {
  margin-bottom: clamp(2.2rem, 5vw, 3.5rem);
  border-top: 1px solid color-mix(in srgb, var(--humo) 25%, transparent);
  padding-top: 1.3rem;
}
.legal__sec h2 {
  color: var(--arena);
  font-size: clamp(1.3rem, 2.2vw, 1.8rem);
  margin-bottom: 1rem;
}
.legal__sec p { margin-bottom: 0.9em; max-width: 70ch; }

.table-wrap { overflow-x: auto; margin-top: 1.2rem; }
.legal__table {
  border-collapse: collapse;
  color: color-mix(in srgb, var(--marfil) 84%, transparent);
  font-size: 0.875rem;
  min-width: 40rem;
}
.legal__table th, .legal__table td {
  text-align: left;
  padding: 0.8rem 1rem;
  border: 1px solid color-mix(in srgb, var(--humo) 34%, transparent);
  vertical-align: top;
}
.legal__table th {
  background: color-mix(in srgb, var(--marron-marca) 72%, transparent);
  color: var(--arena);
  font-family: var(--font-mono);
  font-size: 0.75rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
