.legal-page {
  display: flex;
  width: 100%;
  max-width: 760px;
  flex-direction: column;
  align-items: stretch;
  padding-top: clamp(16px, 3vw, 32px);
}

.legal-page__header {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: clamp(48px, 5vw, 80px);
}

.legal-page__eyebrow {
  font-size: var(--type-eyebrow-font-size);
  font-weight: var(--type-eyebrow-font-weight);
  line-height: var(--type-eyebrow-line-height);
  letter-spacing: var(--type-eyebrow-letter-spacing);
  text-transform: var(--type-eyebrow-text-transform);
  color: var(--muted);
}

.legal-page__header h1 {
  margin: 0;
  font-size: var(--type-h2-font-size);
  font-weight: var(--type-h2-font-weight);
  line-height: var(--type-h2-line-height);
  letter-spacing: var(--type-h2-letter-spacing);
  color: var(--ink);
}

.legal-page__meta {
  margin: 0;
  font-size: var(--type-body-sm-font-size);
  font-weight: var(--type-body-sm-font-weight);
  line-height: 1.4;
  color: var(--muted);
}

.legal-page__body {
  display: flex;
  flex-direction: column;
  gap: clamp(40px, 4vw, 56px);
}

.legal-page__section {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}

.legal-page__section h2 {
  margin: 0;
  font-size: var(--type-h3-font-size);
  font-weight: var(--type-h3-font-weight);
  line-height: var(--type-h3-line-height);
  letter-spacing: var(--type-h3-letter-spacing);
  word-spacing: 0.02em;
  color: var(--ink);
}

.legal-page__section p {
  margin: 0;
  font-size: var(--type-body-sm-font-size);
  font-weight: var(--type-body-sm-font-weight);
  line-height: 1.6;
  color: var(--muted);
}

.legal-page__section ul {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin: 0;
  padding: 0;
  padding-left: 20px;
}

.legal-page__section li {
  font-size: var(--type-body-sm-font-size);
  font-weight: var(--type-body-sm-font-weight);
  line-height: 1.6;
  color: var(--muted);
}

.legal-page__section strong {
  font-weight: 600;
  color: var(--ink);
}

.legal-page__contact {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding-top: clamp(40px, 4vw, 56px);
  border-top: 1px solid #e7e7e7;
  margin-top: clamp(40px, 4vw, 56px);
}

.legal-page__contact p {
  margin: 0;
  font-size: var(--type-body-sm-font-size);
  font-weight: var(--type-body-sm-font-weight);
  line-height: 1.6;
  color: var(--muted);
}

.legal-page__contact a {
  width: fit-content;
  font-size: var(--type-body-sm-font-size);
  font-weight: 600;
  line-height: 1.6;
  text-decoration: none;
  color: var(--ink);
  transition: color 180ms ease;
}

.legal-page__contact a:hover {
  color: #ff80ad;
}

.legal-page__contact a:focus-visible {
  border-radius: 4px;
  outline: 2px solid #ff80ad;
  outline-offset: 4px;
}

@media (max-width: 809.98px) {
.page.page--legal {
  min-height: 100svh;
}

.legal-page {
    padding-top: 24px;
  }

  .legal-page__header h1 {
    font-size: var(--type-h2-mobile-font-size);
  }

  .legal-page__section h2 {
    font-size: var(--type-h3-mobile-font-size);
  }
}
