/* Sonne & Hoffnung — Legal pages shared style */
.legal-page { padding: 30px 0 90px; }
.legal-page .wrap { max-width: 860px; }
.legal-page article { background: white; border-radius: 28px; padding: 60px 70px; border: 1px solid var(--line); }
.legal-page article > p.intro { font-size: 18px; color: var(--muted); line-height: 1.6; margin-bottom: 36px; padding-bottom: 28px; border-bottom: 1px solid var(--line); }
.legal-page h2 { font-size: 28px; font-weight: 700; letter-spacing: -0.01em; margin-top: 40px; margin-bottom: 14px; }
.legal-page h2 em { font-family: 'Instrument Serif', serif; font-style: italic; color: var(--terra); font-weight: 400; }
.legal-page h2:first-of-type { margin-top: 0; }
.legal-page h3 { font-size: 17px; font-weight: 700; margin-top: 22px; margin-bottom: 8px; color: var(--ink); }
.legal-page p { font-size: 16px; line-height: 1.65; color: #3a423d; margin-bottom: 14px; }
.legal-page ul, .legal-page ol { padding-left: 24px; margin-bottom: 16px; color: #3a423d; }
.legal-page ul li, .legal-page ol li { font-size: 16px; line-height: 1.65; margin-bottom: 8px; padding-left: 6px; }
.legal-page address { font-style: normal; font-size: 16px; line-height: 1.7; padding: 22px 26px; background: var(--bg); border-radius: 16px; margin-bottom: 14px; }
.legal-page .toc { background: var(--bg-3); padding: 24px 28px; border-radius: 18px; margin-bottom: 36px; }
.legal-page .toc h4 { font-size: 12px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--muted); margin-bottom: 14px; font-weight: 700; }
.legal-page .toc ol { list-style: none; padding-left: 0; columns: 2; column-gap: 24px; margin-bottom: 0; }
.legal-page .toc ol li { font-size: 14px; margin-bottom: 6px; padding-left: 0; break-inside: avoid; }
.legal-page .toc a { color: var(--ink); border-bottom: 1px dashed var(--line); padding-bottom: 1px; }
.legal-page .toc a:hover { color: var(--terra); border-bottom-color: var(--terra); }
.legal-page .updated { font-size: 13px; color: var(--muted); margin-top: 40px; padding-top: 24px; border-top: 1px solid var(--line); font-style: italic; }

@media (max-width: 720px) {
  .legal-page article { padding: 36px 24px !important; border-radius: 20px !important; }
  .legal-page h2 { font-size: 22px !important; }
  .legal-page .toc ol { columns: 1 !important; }
}
