/* page-specific styles */

/* ───────────── LEGAL / LONG-FORM PAGE ───────────── */
.legal-page { padding: 64px var(--pad-x) 100px; }
.legal-page .container { max-width: 880px; }
.legal-section { margin-bottom: 48px; }
.legal-section:last-child { margin-bottom: 0; }
.legal-section h2 {
  font-family: var(--font);
  font-weight: 700; color: var(--ink);
  letter-spacing: -.01em; margin: 0 0 18px;
  display: flex; align-items: baseline; gap: 12px;
}
.legal-section h2 .n {
  font-family: var(--mono); font-weight: 700;
  color: var(--accent-dark); letter-spacing: .12em;
  border: 1px solid var(--accent); padding: 4px 10px; border-radius: 6px;
  flex-shrink: 0; line-height: 1;
}
.legal-section p {
  line-height: 1.85; color: var(--ink-soft);
  margin: 0 0 12px;
}
.legal-section p:last-child { margin-bottom: 0; }
.legal-section p b { color: var(--ink); font-weight: 600; }
.legal-section ul {
  list-style: none; padding: 0; margin: 14px 0;
  display: flex; flex-direction: column; gap: 10px;
}
.legal-section ul li {
  line-height: 1.75; color: var(--ink-soft);
  padding-left: 20px; position: relative;
}
.legal-section ul li::before {
  content: "·"; position: absolute; left: 4px; top: -3px;
  color: var(--accent); font-weight: 700; font-size: 22px; line-height: 1;
}
.legal-section ul li b { color: var(--ink); font-weight: 600; }
.legal-meta {
  margin-top: 18px; padding: 20px 22px;
  background: var(--bg-alt); border: 1px solid var(--border); border-radius: 10px;
}
.legal-meta p { margin: 0 0 8px; }
.legal-meta p:last-child { margin-bottom: 0; }
.legal-meta a { color: var(--accent-dark); border-bottom: 1px solid var(--accent); }

@media (max-width: 720px) {
  .legal-page { padding: 48px var(--pad-x) 72px; }
  .legal-section h2 { flex-wrap: wrap; }

  /* 16px minimum */
  .legal-meta p { font-size: 16px; }
}
