.ed-legal-page .privacy-hero {
  padding-block: clamp(2rem, 6vw, 4rem);
}

.ed-legal-page .privacy-hero__title,
.ed-legal-document h1 {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  line-height: 1.18;
  overflow-wrap: anywhere;
  text-wrap: balance;
}

.ed-legal-page--form,
.ed-legal-page__policy {
  padding-block: clamp(2rem, 5vw, 4rem);
}

.ed-legal-document {
  max-width: 76ch;
  margin-inline: auto;
  padding: clamp(1rem, 4vw, 2.75rem);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  background: var(--color-surface);
  color: var(--color-text);
}

.ed-legal-document,
.ed-legal-page .privacy-section__body {
  font-size: 1rem;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

.ed-legal-document h2,
.ed-legal-document h3,
.ed-legal-document h4 {
  line-height: 1.3;
}

.ed-legal-document h2 {
  font-size: clamp(1.125rem, 2.5vw, 1.375rem);
}

.ed-legal-document > * + *,
.ed-legal-page .privacy-section__body > * + * {
  margin-block-start: 0.9em;
}

.ed-legal-document > :is(h2, h3, h4):not(:first-child) {
  margin-block-start: 1.6em;
}

.ed-legal-document ul,
.ed-legal-document ol {
  padding-inline-start: 1.4em;
}

.ed-legal-document ul { list-style: disc; }
.ed-legal-document ol { list-style: decimal; }

.ed-legal-document a,
.ed-legal-page .privacy-section__body a {
  color: var(--color-primary-hover);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.ed-legal-page--form .ed-legal-document > h1 + p {
  color: var(--color-text-muted);
  font-weight: 600;
}

.ed-legal-document > .ed-legal-document__back {
  margin-block-start: 1.75rem;
  padding-block-start: 1rem;
  border-top: 1px solid var(--color-border-soft);
}
