.privacy-layout { display: grid; grid-template-columns: 280px minmax(0, 1fr); gap: 48px; border-top: 1px solid var(--rule); padding-top: 32px; }
.privacy-toc { align-self: start; position: sticky; top: 24px; max-height: calc(100vh - 48px); overflow-y: auto; padding-right: 16px; }
.privacy-toc summary { cursor: pointer; font-weight: 600; font-size: 15px; }
.privacy-toc ol { list-style: none; padding: 0; margin: 18px 0; }
.privacy-toc li { margin: 0 0 12px; font-size: 13px; line-height: 1.6; }
.privacy-toc a { text-decoration: none; color: var(--ink-muted); }
.privacy-content { min-width: 0; color: var(--ink-soft); font-size: 15px; line-height: 1.85; overflow-wrap: anywhere; }
.privacy-content h2 { font-family: var(--display); font-weight: 500; font-size: 28px; line-height: 1.4; margin: 52px 0 24px; padding-top: 28px; border-top: 1px solid var(--rule); scroll-margin-top: 24px; color: var(--ink); }
.privacy-content h2:first-child { margin-top: 0; padding-top: 0; border: 0; }
.privacy-content h3 { font-size: 18px; line-height: 1.5; margin: 28px 0 14px; color: var(--ink); }
.privacy-content p { margin: 0 0 16px; }
.privacy-content ul, .privacy-content ol { padding-left: 24px; margin: 16px 0 24px; }
.privacy-content li { margin-bottom: 8px; }
.privacy-content a, .privacy-page .imprint-basis a { color: var(--accent-deep); }
@media (max-width: 900px) {
  .privacy-layout { grid-template-columns: 1fr; gap: 28px; }
  .privacy-toc { position: static; max-height: none; padding: 0 0 20px; border-bottom: 1px solid var(--rule); }
}
@media print {
  .support-header, .support-footer, .privacy-toc, .skip { display: none; }
  .privacy-layout { display: block; }
}
