/* Legal and privacy pages. */
.legal-hero {
  padding: var(--sp-9) 0 var(--sp-8);
  background: var(--c-graphite);
}

.legal-hero .eyebrow {
  margin-bottom: var(--sp-3);
  color: var(--c-cyan-soft);
}

.legal-hero__title {
  max-width: 14ch;
  margin-bottom: var(--sp-4);
  color: var(--c-white);
  font-size: clamp(2.5rem, 6vw, 4.5rem);
}

.legal-hero__lead {
  max-width: 64ch;
  color: rgba(255, 255, 255, 0.78);
  font-size: var(--fs-md);
}

.legal-hero__date {
  display: block;
  margin-top: var(--sp-5);
  color: rgba(255, 255, 255, 0.62);
  font-size: var(--fs-sm);
}

.legal-doc {
  padding: var(--sp-9) 0 var(--sp-12);
}

.legal-doc__content {
  max-width: 820px;
}

.legal-doc section + section {
  margin-top: var(--sp-8);
  padding-top: var(--sp-8);
  border-top: 1px solid var(--c-border);
}

.legal-doc h2 {
  margin-bottom: var(--sp-4);
  font-size: clamp(1.4rem, 3vw, 2rem);
  line-height: 1.2;
}

.legal-doc p,
.legal-doc li {
  color: var(--c-text-soft);
}

.legal-doc ul {
  display: grid;
  gap: var(--sp-3);
  margin-top: var(--sp-4);
  padding-left: var(--sp-5);
  list-style: disc;
}

.legal-doc a {
  color: var(--c-cyan-dark);
  text-decoration: underline;
  text-underline-offset: 0.18em;
}

.legal-doc code {
  padding: 0.12em 0.35em;
  border: 1px solid var(--c-border);
  border-radius: var(--r-sm);
  background: var(--c-ice);
  color: var(--c-text);
  font-size: 0.9em;
}

.legal-doc__cross-link {
  display: inline-flex;
  margin-top: var(--sp-9);
  font-weight: 700;
}

@media (max-width: 600px) {
  .legal-hero { padding: var(--sp-8) 0 var(--sp-7); }
  .legal-doc { padding: var(--sp-8) 0 var(--sp-10); }
}
