.home-hero h1 {
  max-width: 18ch;
}

.kicker-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1rem;
  color: var(--muted-light);
  font-size: 0.95rem;
}

.stat-row {
  display: grid;
  gap: 0.8rem;
}

.loc-grid a {
  display: grid;
  gap: 0.25rem;
  min-height: 100%;
}

.policy h2 {
  margin-top: 0.5rem;
}

.policy .prose {
  max-width: 48rem;
}

.legal-updated {
  margin: 0.75rem 0 0;
  color: var(--muted-light);
  font-size: 0.95rem;
}

.hero-copy .legal-updated {
  margin-bottom: 1.25rem;
}

.legal-toc {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.35rem 2rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.legal-toc a {
  display: inline-block;
  padding: 0.2rem 0;
}

.legal-doc h2 {
  scroll-margin-top: 5.5rem;
}

.legal-doc h2:not(:first-child) {
  margin-top: 2.4rem;
}

@media (min-width: 720px) {
  .legal-toc {
    grid-template-columns: 1fr 1fr;
  }
}

.contact-layout {
  display: grid;
  gap: 1.5rem;
}

.not-found {
  min-height: 70vh;
  display: grid;
  align-content: center;
  gap: 1rem;
  padding-block: 4rem;
}

.not-found h1 {
  font-size: clamp(3rem, 10vw, 7rem);
}

.sample-label {
  color: var(--muted-light);
  font-size: 0.85rem;
}
