.legal-page {
  max-width: 760px;
  margin: 0 auto;
  padding: 35px 5vw 40px;
}
.legal-page .meta {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--ink-dim);
  display: inline-flex; gap: 10px; align-items: center;
  margin-bottom: 22px;
}
.legal-page .meta .pin {
  width: 14px; height: 14px; border-radius: 50%;
  background: var(--riso-pink);
  box-shadow: 2px 2px 0 var(--riso-green);
}
.legal-page h1 {
  font-size: clamp(34px, 4vw, 52px);
  line-height: 1.05;
  letter-spacing: -0.03em;
  font-weight: 600;
  margin-bottom: 12px;
}
.legal-page .updated {
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--ink-faint);
  margin-bottom: 40px;
}
.legal-page h2 {
  font-size: 20px;
  font-weight: 600;
  letter-spacing: -0.01em;
  margin: 36px 0 12px;
  color: var(--ink);
}
.legal-page p,
.legal-page li {
  font-size: 16px;
  line-height: 1.6;
  color: var(--ink-dim);
}
.legal-page p { margin-bottom: 14px; }
.legal-page ul { margin: 0 0 14px 20px; }
.legal-page li { margin-bottom: 6px; }
.legal-page a {
  color: var(--riso-pink-deep);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.legal-page a:hover { color: var(--riso-green-deep); }

@media (max-width: 540px) {
  .legal-page { padding: 36px 5vw 30px; }
}
