.legal-hero {
  border-block-end: var(--border-width-thin) solid var(--color-border-default);
  background: var(--color-background-brand-deep);
  color: var(--color-text-inverse);
}

.legal-hero .section-header__eyebrow,
.legal-hero .legal-hero__summary,
.legal-hero .legal-hero__updated {
  color: var(--color-green-100);
}

.legal-hero .section-header__title {
  color: var(--color-text-inverse-strong);
}

.legal-hero__summary {
  max-inline-size: var(--measure-reading);
  font-size: var(--font-size-lead);
}

.legal-hero__updated {
  margin-block-end: 0;
  font-size: var(--font-size-secondary);
}

.legal-content {
  background: var(--color-background-page);
}

.legal-layout {
  display: grid;
  gap: var(--space-10);
}

.legal-nav {
  align-self: start;
  padding: var(--space-6);
  border: var(--border-width-thin) solid var(--color-border-default);
  border-radius: var(--radius-medium);
  background: var(--color-background-subtle);
}

.legal-nav__title {
  margin-block: 0 var(--space-3);
  color: var(--color-text-primary);
  font-family: var(--font-family-body);
  font-size: var(--font-size-interface);
  font-weight: var(--font-weight-semibold);
}

.legal-nav__list {
  display: grid;
  gap: var(--space-2);
  margin: 0;
  padding: 0;
  list-style: none;
}

.legal-nav__link {
  display: inline-flex;
  min-block-size: var(--size-touch-target);
  align-items: center;
}

.legal-document {
  min-inline-size: 0;
  max-inline-size: var(--measure-reading);
}

.legal-section + .legal-section {
  margin-block-start: var(--space-10);
  padding-block-start: var(--space-10);
  border-block-start: var(--border-width-thin) solid var(--color-border-default);
}

.legal-section h2 {
  margin-block-start: 0;
}

.legal-section h3 {
  margin-block-start: var(--space-6);
}

.legal-section li + li {
  margin-block-start: var(--space-2);
}

.legal-callout {
  margin-block-start: var(--space-6);
  padding: var(--space-5);
  border-inline-start: var(--space-1) solid var(--color-decoration-copper);
  background: var(--color-background-subtle);
}

.legal-callout > :first-child {
  margin-block-start: 0;
}

.legal-callout > :last-child {
  margin-block-end: 0;
}

@media (min-width: 64rem) {
  .legal-layout {
    grid-template-columns: minmax(12rem, 0.45fr) minmax(0, 1fr);
    align-items: start;
    gap: var(--space-12);
  }

  .legal-nav {
    position: sticky;
    inset-block-start: var(--space-6);
  }
}

@media print {
  .legal-nav {
    display: none;
  }

  .legal-layout {
    display: block;
  }

  .legal-hero {
    color: CanvasText;
    background: transparent;
  }

  .legal-hero .section-header__title,
  .legal-hero .section-header__eyebrow,
  .legal-hero .legal-hero__summary,
  .legal-hero .legal-hero__updated {
    color: CanvasText;
  }
}
