.legal-document {
  background: var(--color-surface-dark);
  color: var(--color-on-accent);
}

.legal-document__hero {
  padding-block: clamp(var(--space-2xl), 8.3333vw, 7.5rem);
  background: var(--color-surface-raised);
}

.legal-document__hero-inner { display: flex; justify-content: center; }

.legal-document__title {
  max-width: 60.1875rem;
  margin: 0;
  font-size: clamp(2rem, 4.4444vw, var(--fs-page-hero-title));
  font-weight: 274;
  line-height: var(--lh-tight);
  letter-spacing: -.01em;
  text-align: center;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
  overflow-wrap: anywhere;
}

.legal-document__content {
  max-width: 44.5rem;
  margin-inline: auto;
  overflow-wrap: anywhere;
}

.legal-document__section {
  padding-block: var(--space-2xl);
}

.legal-document__section > .wp-block-group__inner-container {
  display: grid;
  gap: var(--space-xl);
}

.legal-document__section-heading {
  margin: 0;
  color: var(--color-on-accent);
  font-size: clamp(1.5rem, 2.0833vw, var(--fs-article-heading));
  font-weight: 274;
  line-height: var(--lh-tight);
  letter-spacing: -.015em;
  text-box-trim: trim-both;
  text-box-edge: cap alphabetic;
}

.legal-document__section-copy > .wp-block-group__inner-container {
  display: grid;
  gap: var(--space-md);
}

.legal-document__content :where(p, ul, ol, blockquote, table) {
  margin: 0;
  color: var(--color-text-secondary);
  font-size: var(--fs-body-large);
  font-weight: 274;
  line-height: var(--lh-description);
  letter-spacing: -.03em;
  white-space: pre-wrap;
}

.legal-document__content :where(ul, ol) { padding-inline-start: var(--space-md); }
.legal-document__content :where(a) { color: var(--color-header-border-start); }
.legal-document__content :where(a:focus-visible) { outline-color: var(--color-header-border-start); }
.legal-document__content :where(figure, img, video, iframe) { max-width: 100%; height: auto; }
.legal-document__content :where(figure) { margin-inline: 0; }
.legal-document__content :where(table) { display: block; overflow-x: auto; }

@media (width <= 48rem) {
  .legal-document__hero { padding-block: var(--space-2xl); }
  .legal-document__section > .wp-block-group__inner-container { gap: var(--space-lg); }
}
