.legal-main {
  background-color: var(--color-soft-ivory);
}

.legal-article {
  width: min(100% - 48px, 820px);
  margin-inline: auto;
  padding: clamp(64px, 8vw, 104px) 0 clamp(80px, 10vw, 128px);
}

.legal-heading {
  padding-bottom: clamp(32px, 5vw, 48px);
  border-bottom: 1px solid var(--color-warm-stone);
}

.legal-eyebrow,
.legal-acknowledgment-label {
  margin: 0;
  color: var(--color-burnt-orange);
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.13em;
}

.legal-heading h1 {
  margin: 14px 0 0;
  color: var(--color-firulais-forest);
  font-size: clamp(2.75rem, 6vw, 4.5rem);
  font-weight: 600;
  letter-spacing: -0.035em;
  line-height: 1.04;
}

.legal-updated {
  margin: 18px 0 0;
  color: var(--color-secondary-green);
  font-size: 0.9375rem;
  font-weight: 600;
}

.legal-section {
  padding-top: 34px;
}

.legal-section h2 {
  margin: 0 0 14px;
  color: var(--color-firulais-forest);
  font-size: clamp(1.35rem, 2.4vw, 1.7rem);
  font-weight: 600;
  letter-spacing: -0.015em;
  line-height: 1.2;
}

.legal-section p,
.legal-address,
.legal-acknowledgment p:last-child {
  margin: 0;
  color: var(--color-firulais-forest);
  font-size: 1.0625rem;
  line-height: 1.72;
}

.legal-section p + p {
  margin-top: 15px;
}

.legal-section h3 {
  margin: 24px 0 10px;
  color: var(--color-secondary-green);
  font-size: 1.1rem;
  font-weight: 700;
  line-height: 1.3;
}

.legal-section ul {
  margin: 12px 0 0;
  padding-left: 1.35em;
  color: var(--color-firulais-forest);
  font-size: 1.0625rem;
  line-height: 1.68;
}

.legal-section li + li {
  margin-top: 7px;
}

.legal-section li::marker {
  color: var(--color-burnt-orange);
}

.legal-section a,
.legal-acknowledgment a {
  color: var(--color-firulais-forest);
  font-weight: 600;
  text-decoration-color: var(--color-burnt-orange);
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.legal-address {
  font-style: normal;
}

.legal-address p + p {
  margin-top: 16px;
}

.legal-acknowledgment {
  margin-top: 44px;
  padding-top: 32px;
  border-top: 1px solid var(--color-warm-stone);
}

.legal-acknowledgment p:last-child {
  margin-top: 12px;
  font-weight: 600;
}

.legal-page .footer-group a[aria-current="page"] {
  color: var(--color-burnt-orange);
}

@media (max-width: 860px) {
  .legal-article {
    width: min(100% - 40px, 640px);
    padding-top: 48px;
    padding-bottom: 80px;
  }

  .legal-heading h1 {
    font-size: clamp(2.5rem, 12vw, 3.5rem);
  }

  .legal-section {
    padding-top: 30px;
  }

  .legal-section p,
  .legal-address,
  .legal-acknowledgment p:last-child {
    font-size: 1rem;
    line-height: 1.68;
  }

  .legal-section ul {
    font-size: 1rem;
  }
}
