/* Estilos exclusivos para páginas legales (privacidad, términos, aviso). */

.legal-page {
  background: var(--paper);
  padding: 60px 0 100px;
}

.legal-inner {
  max-width: 760px;
  margin: 0 auto;
}

.legal-page h1 {
  font-family: var(--font-display);
  font-weight: 800;
  font-size: clamp(36px, 5vw, 56px);
  line-height: 1.05;
  letter-spacing: -0.025em;
  color: var(--ink);
  margin-top: 16px;
  margin-bottom: 8px;
}

.legal-meta {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.08em;
  color: var(--ink40);
  margin-bottom: 40px;
}

.lead-legal {
  font-family: var(--font-display);
  font-weight: 400;
  font-size: 19px;
  line-height: 1.55;
  color: var(--ink60);
  margin-bottom: 48px;
  padding: 24px 28px;
  background: var(--cream);
  border-radius: 12px;
  border-left: 3px solid var(--teal);
}

.legal-page h2 {
  font-family: var(--font-display);
  font-weight: 700;
  font-size: 22px;
  letter-spacing: -0.015em;
  color: var(--ink);
  margin-top: 40px;
  margin-bottom: 14px;
}

.legal-page p,
.legal-page ul {
  font-size: 16px;
  line-height: 1.7;
  color: var(--ink80);
  margin-bottom: 18px;
}

.legal-page ul {
  padding-left: 0;
  list-style: none;
}
.legal-page ul li {
  position: relative;
  padding-left: 24px;
  margin-bottom: 10px;
}
.legal-page ul li::before {
  content: "";
  position: absolute;
  left: 0; top: 12px;
  width: 8px; height: 1.5px;
  background: var(--teal-deep);
}

.legal-page strong { color: var(--ink); font-weight: 600; }
.legal-page a {
  color: var(--teal-deep);
  border-bottom: 1px solid var(--teal-soft);
  transition: color 0.15s, border-color 0.15s;
}
.legal-page a:hover { color: var(--teal); border-color: var(--teal); }

.legal-foot {
  margin-top: 56px;
  padding-top: 24px;
  border-top: 1px solid var(--ink10);
  font-size: 13px;
  color: var(--ink40);
  font-style: italic;
}
