/* Legal pages extend the shared alexneff.dev design system. */
.legal-hero {
  min-height: 0;
  padding: 132px 0 58px;
}
.legal-hero .wrap,
.legal-copy .wrap { max-width: 820px; }
.legal-hero h1 {
  max-width: 760px;
  font-size: clamp(40px, 6vw, 66px);
}
.legal-hero .lede { max-width: 680px; }
.legal-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 20px;
  margin-top: 24px;
  color: var(--text-faint);
  font-family: var(--mono);
  font-size: 11px;
  letter-spacing: .03em;
  text-transform: uppercase;
}
.legal-copy { padding-top: 64px; }
.legal-copy article {
  display: grid;
  gap: 42px;
}
.legal-copy section {
  padding: 0 0 42px;
  border-bottom: 1px solid var(--border);
}
.legal-copy section:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}
.legal-copy h2 {
  margin-bottom: 14px;
  font-size: clamp(21px, 2.6vw, 27px);
  letter-spacing: -.02em;
}
.legal-copy p,
.legal-copy li {
  color: var(--text-dim);
  font-size: 15px;
  line-height: 1.75;
}
.legal-copy p + p { margin-top: 14px; }
.legal-copy ul {
  display: grid;
  gap: 10px;
  margin: 16px 0 0 20px;
}
.legal-copy strong {
  color: var(--text);
  font-weight: 600;
}
.legal-callout {
  padding: 20px 22px;
  border: 1px solid var(--border-strong);
  border-left: 3px solid var(--accent);
  border-radius: var(--radius);
  background: var(--bg-card);
}
.legal-copy a { color: var(--accent); }
.legal-copy a:hover { color: var(--text); }
@media (max-width: 600px) {
  .legal-hero { padding: 96px 0 44px; }
  .legal-copy { padding-top: 48px; }
  .legal-copy article { gap: 32px; }
  .legal-copy section { padding-bottom: 32px; }
}
