/* Add-on for legal markdown — nav/footer from main.css */

.legal-page-main {
  min-height: 45vh;
}

.legal-page-wrap {
  max-width: 820px;
  margin: 0 auto;
  padding: 32px 24px 48px;
}

.legal-page-title {
  font-size: clamp(1.5rem, 4vw, 1.85rem);
  font-weight: 800;
  margin: 0 0 10px;
  line-height: 1.25;
  letter-spacing: -0.02em;
}

.legal-page-lead {
  margin: 0 0 28px;
  font-size: 15px;
  color: var(--text-muted);
  line-height: 1.6;
}

.legal-doc {
  font-size: 15px;
  line-height: 1.75;
  color: #1f2937;
}

.legal-doc .legal-page-placeholder {
  color: var(--text-muted);
  margin: 0;
}

.legal-page-error {
  color: #b45309;
  margin: 0;
}

.legal-doc h1 {
  font-size: 1.35rem;
  font-weight: 800;
  margin: 2.25rem 0 1rem;
  padding-bottom: 0.5rem;
  border-bottom: 2px solid var(--green-light);
  color: var(--text-primary);
  scroll-margin-top: calc(var(--nav-height, 64px) + 20px);
}

.legal-doc h1:first-child {
  margin-top: 0;
}

.legal-doc h2 {
  font-size: 1.08rem;
  font-weight: 700;
  margin: 1.75rem 0 0.75rem;
  color: var(--text-primary);
}

.legal-doc h3 {
  font-size: 1rem;
  font-weight: 700;
  margin: 1.25rem 0 0.5rem;
  color: #374151;
}

.legal-doc p {
  margin: 0.65rem 0;
}

.legal-doc ul {
  margin: 0.5rem 0 1rem;
  padding-left: 1.35rem;
}

.legal-doc li {
  margin: 0.35rem 0;
}

.legal-doc li::marker {
  color: var(--green-dark);
}

.legal-doc hr {
  border: none;
  border-top: 1px solid var(--border);
  margin: 1.75rem 0;
}

.legal-doc a {
  color: #369709;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.legal-doc a:hover {
  color: var(--green-dark);
}

.legal-doc strong {
  font-weight: 700;
  color: var(--text-primary);
}
