.legal-page {
  --legal-bg: #fff;
  --legal-text: #18181b;
  --legal-muted: #52525b;
  --legal-border: #e4e4e7;

  background: var(--legal-bg);
  color: var(--legal-text);
}

.legal-page .legal-header {
  padding: 1.25rem 0;
  border-color: var(--legal-border);
}

.legal-page .brand-link {
  color: var(--legal-text);
}

.legal-page .bot-link,
.legal-page .legal-document a {
  color: var(--legal-text);
  text-decoration: underline;
  text-decoration-color: #a1a1aa;
  text-underline-offset: 0.2em;
}

.legal-page .bot-link:hover,
.legal-page .legal-document a:hover {
  text-decoration-color: currentcolor;
}

.legal-page .legal-main {
  padding: 3rem 0 5rem;
}

.legal-page .legal-document {
  max-width: 768px;
}

.legal-page .legal-document h1 {
  margin-bottom: 0.75rem;
  color: var(--legal-text);
  font-size: clamp(2.25rem, 6vw, 3.25rem);
  font-weight: 800;
  line-height: 1.08;
}

.legal-page .legal-updated {
  margin-bottom: 3rem;
  color: var(--legal-muted);
}

.legal-page .legal-document h2 {
  margin-top: 2.75rem;
  color: var(--legal-text);
  font-size: 1.5rem;
  font-weight: 750;
}

.legal-page .legal-document h3 {
  color: var(--legal-text);
}

.legal-page .legal-document p,
.legal-page .legal-document li {
  color: var(--legal-muted);
  line-height: 1.75;
}

.legal-page .legal-document strong {
  color: var(--legal-text);
}

.legal-page .legal-note {
  background: #fafafa;
  border-color: var(--legal-border);
}

.legal-page footer {
  background: var(--legal-bg);
  border-color: var(--legal-border);
}

.legal-page footer a,
.legal-page .footer-copyright,
.legal-page .legal-footer-links span {
  color: var(--legal-muted);
}

.legal-page footer a:hover {
  color: var(--legal-text);
}

.legal-page .legal-footer-links {
  gap: 0.45rem;
}

.legal-page .legal-footer-links span {
  line-height: 1;
}

@media (prefers-color-scheme: dark) {
  .legal-page {
    --legal-bg: #111113;
    --legal-text: #f4f4f5;
    --legal-muted: #a1a1aa;
    --legal-border: #27272a;
  }

  .legal-page .legal-note {
    background: #18181b;
  }
}

@media (max-width: 479px) {
  .legal-page .legal-nav {
    align-items: flex-start;
  }

  .legal-page .legal-main {
    padding-top: 2.5rem;
  }
}
