/****************************
 Cookiebot
****************************/

/* Hide Cookiebot branding on the banner */
a#CybotCookiebotDialogPoweredbyCybot,
div#CybotCookiebotDialogPoweredByText {
    display: none;
}

/* Hide Cookiebot branding on the floating widget */
#CookiebotWidget .CookiebotWidget-body .CookiebotWidget-main-logo {
    display: none !important;
}

/* Floating widget next to the accessiBe trigger (measured on the live site, 2026-10-19).
   >=1024px: accessiBe is bottom-left, 45px at left/bottom 20px. Put Cookiebot (48px) beside it,
   centered on the same line: left = 20 + 45 + 10px gap, bottom = 20 + (45 - 48) / 2.
   <=1023px: accessiBe switches to its compact trigger bottom-right (right/bottom 3px), so mirror
   it bottom-left. !important is needed because Cookiebot injects its own position rules. */
@media screen and (min-width: 1024px) {
    #CookiebotWidget {
        left: 75px !important;
        right: auto !important;
        bottom: 18px !important;
    }
}
@media screen and (max-width: 1023.98px) {
    #CookiebotWidget:not(.CookiebotWidget-open) {
        left: 3px !important;
        right: auto !important;
        bottom: 2px !important;    /* trigger centre 3 + 45/2 = 25.5px; 25.5 - 48/2 ~ 2px */
    }
}
@media screen and (max-width: 600px) {
    /* Open panel spans the screen; lift it so the accessiBe trigger doesn't cover its buttons */
    #CookiebotWidget.CookiebotWidget-open {
        bottom: 56px !important;
    }
}

/* Placeholder shown in place of blocked embeds until Marketing cookies are accepted */
.cookieconsent-optout-marketing {
    padding: 20px;
    background: #f4f8fd;
    text-align: center;
}

/* Footer "Cookie Declaration" link: matches the other copyright links, plus a visible focus ring */
.copyright-text a.footer-cookie-link:focus-visible {
    outline: 2px solid #e8e8e8;
    outline-offset: 2px;
}

/* Cookie Declaration modal: sit above other fixed, high z-index widgets (accessiBe trigger etc.) */
#cookieDeclarationModal { z-index: 2147483647; }
/* Only raise the backdrop while the cookie modal is open, so other modals stay above theirs */
body:has(#cookieDeclarationModal.in) .modal-backdrop { z-index: 2147483646; }
#cookieDeclarationModal .modal-dialog { max-width: 760px; }
#cookieDeclarationModal .modal-body {
    max-height: 70vh;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 25px 30px;
    font-size: 14px;
    line-height: 1.6;
}
#cookieDeclarationModal .modal-title { color: #222; }
#CookieDeclarationContainer { max-width: 100%; word-wrap: break-word; overflow-wrap: break-word; }
#CookieDeclarationContainer .cookie-declaration-loading { margin: 0; color: #666; }
#CookieDeclarationContainer h2,
#CookieDeclarationContainer h3 { font-size: 17px; margin: 20px 0 8px; color: #222; }
#CookieDeclarationContainer h2:first-child,
#CookieDeclarationContainer h3:first-child { margin-top: 0; }
#CookieDeclarationContainer p { font-size: 14px; margin-bottom: 10px; }
#CookieDeclarationContainer a { color: #1b6f84; text-decoration: underline; word-break: break-word; }
#CookieDeclarationContainer table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border-collapse: collapse;
    margin: 10px 0 20px;
    font-size: 13px;
}
#CookieDeclarationContainer table thead,
#CookieDeclarationContainer table tbody,
#CookieDeclarationContainer table tr { display: table; width: 100%; table-layout: fixed; }
#CookieDeclarationContainer table th,
#CookieDeclarationContainer table td {
    padding: 8px 10px;
    border: 1px solid #e5edf5;
    text-align: left;
    vertical-align: top;
    word-break: break-word;
}
#CookieDeclarationContainer table th { background: #f4f8fd; }
