.privacy-page { padding: 140px 0 100px; }
.privacy-page .privacy-lead { max-width: 760px; font-size: 1.05rem; line-height: 1.75; margin-bottom: 32px; }
.privacy-page a:not(.btn) { color: var(--white); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.privacy-page a:not(.btn):focus-visible, .privacy-topic summary:focus-visible { outline: 2px solid var(--quirso-magenta); outline-offset: 5px; }
.privacy-overview { padding: 28px 32px; border: 1px solid color-mix(in srgb, var(--quirso-magenta) 40%, transparent); border-radius: 10px; background: color-mix(in srgb, var(--white) 4%, transparent); margin-bottom: 24px; }
.privacy-page .privacy-overview h2 { color: var(--white); font-size: 1.3rem; margin-bottom: 20px; }
.privacy-overview ul { padding: 0; margin: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 20px 32px; }
.privacy-page .privacy-overview li { list-style: none; color: var(--gray-4); font-size: .95rem; line-height: 1.65; }
.privacy-page .privacy-overview li::before { content: none; }
.privacy-overview strong { display: block; color: var(--white); margin-bottom: 4px; }
.privacy-page .privacy-navigation { font-size: .9rem; color: var(--gray-3); margin-bottom: 20px; }
.privacy-topic { border-top: 1px solid color-mix(in srgb, var(--quirso-magenta) 40%, transparent); scroll-margin-top: 110px; }
.privacy-topic:last-of-type { border-bottom: 1px solid color-mix(in srgb, var(--quirso-magenta) 40%, transparent); }
.privacy-topic summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 22px 4px; cursor: pointer; list-style: none; }
.privacy-topic summary::-webkit-details-marker { display: none; }
.privacy-topic summary::after { content: '+'; color: var(--quirso-magenta); font-size: 1.6rem; flex: 0 0 24px; text-align: center; }
.privacy-topic[open] summary::after { content: '−'; }
.privacy-page .privacy-topic summary h2 { font-size: 1.15rem; color: var(--white); margin: 0; }
.privacy-topic-description { display: block; color: var(--gray-3); font-size: .85rem; font-weight: normal; line-height: 1.5; margin-top: 6px; }
.privacy-topic-body { padding: 0 4px 24px; max-width: 780px; }
.privacy-page .privacy-topic-body p, .privacy-page .privacy-topic-body li { color: var(--gray-4); font-size: .95rem; line-height: 1.75; margin-bottom: 16px; }
.privacy-page .privacy-topic-body h3 { color: var(--quirso-magenta); font-size: 1.05rem; margin: 24px 0 12px; }
.privacy-topic-body code { color: var(--white); }
.privacy-storage-table { color: var(--gray-4); font-size: .85rem; line-height: 1.6; table-layout: fixed; }
.privacy-storage-table caption { color: var(--gray-3); }
@media (max-width: 767px) {
  .privacy-page { padding: 110px 0 64px; }
  .privacy-page .inner-content h1 { font-size: clamp(1.5rem, 7.8vw, 1.85rem); }
  .privacy-overview { padding: 24px; }
  .privacy-overview ul { grid-template-columns: 1fr; gap: 16px; }
  .privacy-topic summary { gap: 12px; padding-block: 20px; }
  .privacy-storage-table th, .privacy-storage-table td { padding: 8px 6px; }
}
@media print {
  .privacy-topic-body { display: block !important; }
  .privacy-topic::details-content { content-visibility: visible; }
  .privacy-topic summary::after { content: none; }
}
