/* Presentation only: Complianz retains control of visibility and consent. */
#cmplz-cookiebanner-container .cmplz-cookiebanner {
    box-sizing: border-box;
    width: 440px !important;
    min-width: 0 !important;
    max-width: calc(100vw - 24px) !important;
    height: auto !important;
    max-height: calc(100vh - 24px) !important;
    max-height: calc(100dvh - 24px) !important;
    inset: auto 16px 16px auto !important;
    transform: none !important;
    zoom: 1 !important;
    margin: 0 !important;
    padding: 16px !important;
    overflow: auto !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: none !important;
    grid-auto-rows: auto !important;
    gap: 10px !important;
    align-content: start !important;
    font-family: inherit !important;
    color: #222;
    background: #fff;
    border: 1px solid #deded8 !important;
    border-radius: 16px !important;
    box-shadow: 0 6px 28px #0002 !important;
}
#cmplz-cookiebanner-container .cmplz-cookiebanner > * {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
}
#cmplz-cookiebanner-container .cmplz-header { display: block !important; max-height: none !important; padding: 0 !important; }
#cmplz-cookiebanner-container .cmplz-header .cmplz-title {
    display: block !important;
    text-align: left !important;
    font-size: 16px !important;
    line-height: 1.3 !important;
    font-weight: 600 !important;
}
#cmplz-cookiebanner-container .cmplz-logo,
#cmplz-cookiebanner-container .cmplz-divider { display: none !important; }
#cmplz-cookiebanner-container .cmplz-body {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    max-height: calc(100vh - 230px) !important;
    max-height: calc(100dvh - 230px) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
}
#cmplz-cookiebanner-container .cmplz-message,
#cmplz-cookiebanner-container .cmplz-message p {
    width: auto !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-wrap: anywhere;
}
#cmplz-cookiebanner-container .cmplz-categories { width: 100% !important; margin-top: 10px !important; animation: none !important; }
#cmplz-cookiebanner-container .cmplz-category:not(:last-child) { margin-bottom: 6px !important; }
#cmplz-cookiebanner-container .cmplz-category .cmplz-category-header {
    grid-template-columns: minmax(0, 1fr) auto 32px !important;
    gap: 6px !important;
    padding: 4px 8px !important;
    min-height: 44px !important;
}
#cmplz-cookiebanner-container .cmplz-category-title { font-size: 14px !important; }
#cmplz-cookiebanner-container .cmplz-always-active { font-size: 12px !important; white-space: nowrap; }
#cmplz-cookiebanner-container .cmplz-description { font-size: 13px !important; line-height: 1.5 !important; }
#cmplz-cookiebanner-container .cmplz-buttons {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-rows: auto !important;
    align-items: stretch !important;
    gap: 8px !important;
    width: 100% !important;
}
#cmplz-cookiebanner-container .cmplz-buttons .cmplz-btn {
    box-sizing: border-box !important;
    min-width: 0 !important;
    width: 100% !important;
    min-height: 44px !important;
    height: auto !important;
    padding: 10px 8px !important;
    margin: 0 !important;
    font-family: inherit !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 20px !important;
    white-space: normal !important;
    border-radius: 10px !important;
    zoom: 1 !important;
    flex: 0 0 auto !important;
}
#cmplz-cookiebanner-container .cmplz-btn.cmplz-accept,
#cmplz-cookiebanner-container .cmplz-btn.cmplz-deny {
    background: #171717 !important;
    color: #fff !important;
    border: 1px solid #171717 !important;
    opacity: 1 !important;
}
#cmplz-cookiebanner-container .cmplz-btn.cmplz-view-preferences,
#cmplz-cookiebanner-container .cmplz-btn.cmplz-save-preferences {
    grid-column: 1 / -1 !important;
    background: #f4f3ef !important;
    color: #222 !important;
    border: 1px solid #a9a9a3 !important;
    font-weight: 400 !important;
}
#cmplz-cookiebanner-container .cmplz-documents { display: block !important; }
#cmplz-cookiebanner-container .cmplz-documents ul {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: flex-start !important;
    gap: 4px 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}
#cmplz-cookiebanner-container .cmplz-documents li { margin: 0 !important; padding: 0 !important; }
#cmplz-cookiebanner-container .cmplz-documents a { display: inline-block; font-size: 13px !important; line-height: 24px !important; text-decoration: underline !important; }
.cmplz-cookiebanner :focus-visible,.cmplz-manage-consent:focus-visible,.fa-cookie-settings:focus-visible { outline: 3px solid #156484 !important; outline-offset: 3px !important; }
.fa-cookie-settings { font: inherit; cursor: pointer; border: 0; background: transparent; color: inherit; padding: 0; text-decoration: underline; text-underline-offset: 4px; }
.fa-global-footer .fa-cookie-settings { font-weight: 600; }
.cmplz-manage-consent { min-height: 44px !important; font-family: inherit !important; font-size: 14px !important; font-weight: 600 !important; line-height: 1.2 !important; }
@media (max-width: 640px) {
    #cmplz-cookiebanner-container .cmplz-cookiebanner {
        inset: auto 12px 12px auto !important;
        bottom: max(12px, env(safe-area-inset-bottom)) !important;
        width: calc(100vw - 24px) !important;
        padding: 14px !important;
        gap: 8px !important;
    }
}
