.privacy-page { max-width: 1050px; overflow-wrap: anywhere; }
.privacy-page section, .privacy-page article, .privacy-page details { margin-block: 2rem; }
.privacy-page p, .privacy-page li { line-height: 1.75; }
.privacy-page a:not(.button) { text-decoration: underline; text-underline-offset: .2em; }
.privacy-page form { max-width: 780px; margin-block: 1.5rem; }
.privacy-page label { display: block; margin-top: 1rem; }
.privacy-page input:not([type=checkbox]), .privacy-page textarea, .privacy-page select { width: 100%; max-width: 100%; }
.privacy-page .checkbox-label { display: flex; align-items: start; gap: .75rem; }
.privacy-page .checkbox-label input { width: auto; flex-shrink: 0; }
.privacy-page button { margin-block: 1rem; }
.privacy-page dt { font-weight: 700; margin-top: .75rem; }
.privacy-page dd { margin-left: 0; }
.privacy-page nav ul { columns: 2; padding-left: 1.5rem; }
.privacy-table { overflow-x: auto; }
.privacy-table table { width: 100%; border-collapse: collapse; }
.privacy-table th, .privacy-table td { text-align: left; padding: .75rem; border: 1px solid #bacada; vertical-align: top; }
.privacy-snapshot { white-space: pre-wrap; overflow-wrap: anywhere; font-size: .9rem; }
@media (max-width: 640px) { .privacy-page nav ul { columns: 1; } }
.cookie-banner { position: fixed; z-index: 200; bottom: 1rem; left: 1rem; right: 1rem; max-width: 960px; margin-inline: auto; padding: 1.25rem; background: #fff; color: #102a43; border: 2px solid #245481; border-radius: 12px; box-shadow: 0 5px 24px #102a4333; max-height: 75vh; overflow-y: auto; }
.cookie-banner[hidden] { display: none; }
.cookie-banner h2 { font-size: 1.25rem; }
.cookie-actions { display: flex; gap: .75rem; flex-wrap: wrap; }
.cookie-actions .button { flex: 1 1 180px; text-align: center; justify-content: center; }
