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

.legal-header {
  position: static;
}

.legal-nav {
  font-size: 0.72rem;
}

.legal-main {
  margin: 0 auto;
  max-width: 900px;
  padding: clamp(64px, 9vw, 112px) clamp(22px, 6vw, 70px);
}

.legal-main h1 {
  color: var(--forest);
  font-size: clamp(3rem, 7vw, 5.7rem);
  margin-bottom: 20px;
}

.legal-meta {
  border-bottom: 1px solid rgba(37, 59, 45, 0.14);
  color: var(--muted);
  font-size: 0.84rem;
  margin-bottom: 48px;
  padding-bottom: 28px;
}

.legal-main section + section {
  border-top: 1px solid rgba(37, 59, 45, 0.12);
  margin-top: 38px;
  padding-top: 34px;
}

.legal-main h2 {
  color: var(--forest);
  font-size: clamp(1.7rem, 4vw, 2.4rem);
  letter-spacing: -0.02em;
  margin-bottom: 16px;
}

.legal-main h3 {
  font-family: var(--serif);
  font-size: 1.25rem;
  margin: 25px 0 8px;
}

.legal-main p,
.legal-main li {
  color: var(--muted);
  line-height: 1.85;
}

.legal-main li + li {
  margin-top: 8px;
}

.legal-main a {
  color: #6d3f48;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.legal-main address {
  color: var(--muted);
  font-family: var(--sans);
  font-size: 1rem;
}

.legal-notice {
  background: var(--sage-pale);
  border-left: 4px solid var(--sage-text);
  padding: 18px 22px;
}

@media (max-width: 680px) {
  .legal-nav a:first-child {
    display: inline;
  }

  .legal-header .mini-brand small {
    display: none;
  }

  .legal-header nav {
    gap: 12px;
  }

  .legal-header nav a {
    font-size: 0.64rem;
  }
}
