/* =================================================
   ForMove - Pagine legali (Privacy, Termini)
================================================= */

.legal-section { padding: 20px 0 120px; }
.legal-wrap {
  max-width: 760px;
  margin: 0 auto;
  padding: 0 28px;
}

.legal-updated {
  font-family: var(--font-mono);
  font-size: .82rem;
  color: var(--ink-soft);
  margin-bottom: 40px;
}

.legal-notice {
  background: var(--kraft);
  border: 1px solid var(--kraft-dark);
  border-radius: var(--radius);
  padding: 18px 22px;
  margin-bottom: 48px;
  font-size: .9rem;
  color: var(--kraft-darker);
}
.legal-notice strong { color: var(--ink); }

.legal-toc {
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 22px 26px;
  margin-bottom: 56px;
}
.legal-toc h2 {
  font-family: var(--font-mono);
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--ink-soft);
  margin-bottom: 14px;
}
.legal-toc ol {
  margin: 0; padding-left: 20px;
  columns: 2;
  column-gap: 24px;
}
.legal-toc li { font-size: .88rem; margin-bottom: 8px; break-inside: avoid; }
.legal-toc a { color: var(--ink-soft); }
.legal-toc a:hover { color: var(--primary); }

.legal-article { margin-bottom: 44px; scroll-margin-top: 100px; }
.legal-article h2 {
  font-size: 1.25rem;
  margin-bottom: 14px;
  display: flex;
  align-items: baseline;
  gap: 10px;
}
.legal-article h2 .art-num {
  font-family: var(--font-mono);
  font-size: .8rem;
  color: var(--primary);
}
.legal-article p, .legal-article li {
  font-size: .95rem;
  color: var(--ink-soft);
  margin-bottom: 12px;
}
.legal-article ul { padding-left: 20px; }

.placeholder {
  background: var(--primary-bg);
  color: var(--primary-dark);
  padding: 1px 7px;
  border-radius: 4px;
  font-family: var(--font-mono);
  font-size: .88em;
  white-space: nowrap;
}

@media (max-width: 640px) {
  .legal-toc ol { columns: 1; }
}
