/* Quiet, readable disclosures. No overlay, tracking or simulated consent. */
.footer-legal { flex-wrap: wrap; column-gap: 28px; row-gap: 0; }
.privacy-notice { max-width: 78ch; margin-top: 24px; font-size: .875rem; line-height: 1.65; color: #4c574e; }
.privacy-notice a { text-decoration: underline; text-underline-offset: 3px; font-weight: 600; overflow-wrap: anywhere; }
.config-section .privacy-notice { color: #bdc8c2; margin-top: 16px; }
.config-section .privacy-notice a { color: #ffae91; }
.custom-file .privacy-notice { font-size: .875rem; }
.custom-file .privacy-notice a { display: inline; margin: 0; font-size: inherit; }
.contact .privacy-notice { color: #29211d; margin-top: 32px; }
.contact .privacy-notice a:focus-visible { outline-color: #141718; }
.legal-contact .privacy-notice a { min-height: auto; display: inline; }
.legal-contact .privacy-notice { display: block; }
#quote-dialog .privacy-notice { font-size: .875rem; margin-top: 20px; }
/* This capped container must not inherit the viewport-wide .section gutters. */
.privacy-page .privacy-section { width: 100%; max-width: 1500px; margin-inline: auto; padding-inline: clamp(24px, 5.2vw, 80px); }
.privacy-page h1 { font-size: clamp(48px, 6.5vw, 90px); line-height: 1.05; margin: 24px 0; }
.privacy-intro { max-width: 700px; font-size: 1.125rem; line-height: 1.7; color: #4c574e; }
.privacy-updated { margin-top: 18px; font-size: .875rem; color: #4c574e; }
.privacy-summary { list-style: none; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); padding: 0; margin: 36px 0 48px; border-block: 1px solid #bbc4bc; }
.privacy-summary li { padding: 22px 24px 22px 0; font-size: 1rem; font-weight: 600; line-height: 1.55; }
.privacy-summary li::before { content: '+'; color: #ac340f; margin-right: 9px; }
.privacy-layout { display: grid; grid-template-columns: minmax(220px, .85fr) minmax(0, 2fr); gap: 64px; align-items: start; }
.privacy-toc { display: flex; flex-direction: column; gap: 0; font-size: 1rem; padding-right: 20px; border-left: 2px solid #d4d7d4; }
.privacy-toc p { padding: 0 0 16px 18px; font-weight: 600; }
.privacy-toc a { color: #424d45; padding: 10px 0 10px 18px; min-height: 44px; line-height: 1.45; border-left: 2px solid transparent; margin-left: -2px; }
.privacy-toc a:hover { color: #a3300e; border-left-color: #c33c12; }
.privacy-copy { min-width: 0; max-width: 76ch; overflow-wrap: anywhere; }
.privacy-copy section { margin-bottom: 38px; scroll-margin-top: 30px; }
.privacy-copy h2 { font-size: 1.875rem; line-height: 1.2; margin-bottom: 18px; font-weight: 600; }
.privacy-copy p, .privacy-copy li, .cookie-inventory { font-size: 1rem; line-height: 1.75; }
.privacy-copy p + p { margin-top: 14px; }
.privacy-copy ul { padding-left: 22px; margin: 16px 0; }
.privacy-copy li + li { margin-top: 10px; }
.privacy-copy a { color: #9d2e0c; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.cookie-inventory { margin: 20px 0; padding: 0 22px; background: #e7ebe5; border-left: 3px solid #b43a17; }
.cookie-inventory > div { padding: 20px 0; }
.cookie-inventory > div + div { border-top: 1px solid #c3cbc1; }
.cookie-inventory dt { font-weight: 600; overflow-wrap: anywhere; }
.cookie-inventory dd { margin: 6px 0 0; }
html[lang="de"] .privacy-page { hyphens: auto; }
@media (max-width: 900px) {
 .privacy-layout { grid-template-columns: minmax(0, 1fr); gap: 36px; }
 .privacy-toc { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); padding-right: 0; }
 .privacy-toc p { grid-column: 1 / -1; }
 .privacy-summary { margin-bottom: 32px; }
}
@media (max-width: 550px) {
 .privacy-page h1 { font-size: clamp(42px, 11vw, 60px); }
 .privacy-section { padding-block: 42px; }
 .privacy-page .privacy-section { padding-inline: 6%; }
 .privacy-summary { grid-template-columns: minmax(0, 1fr); }
 .privacy-summary li { padding: 16px 0; }
 .privacy-summary li + li { border-top: 1px solid #d4d7d4; }
 .privacy-toc { display: flex; }
 .privacy-copy h2 { font-size: 1.625rem; }
 .cookie-inventory { padding-inline: 16px; }
 .footer-legal { column-gap: 20px; }
}
