/* ElektroDom: bounded QA UI repairs. No consent/tracking policy or state changes. */
:root {
    --ed-action: #0d55a3;
    --ed-action-hover: #09427f;
    --ed-action-active: #073666;
    --ed-focus: #70b7ff;
    --ed-header-height: 150px;
}
html { scroll-padding-top: calc(var(--ed-header-height) + 16px); }
.qa-site-header {
    position: fixed; inset: 0 0 auto; z-index: 1000;
    background: #fff; box-shadow: 0 3px 16px rgb(5 35 72 / 14%);
}
body:has(> header.qa-site-header) { padding-top: var(--ed-header-height); }
:where(main, [id]):not(.termsfeed-com---reset) { scroll-margin-top: calc(var(--ed-header-height) + 16px); }
.qa-page-heading { font-weight: 400; margin: 0 0 16px; line-height: 1.3; }
.qa-visually-hidden {
    position: absolute !important; width: 1px !important; height: 1px !important;
    padding: 0 !important; margin: -1px !important; overflow: hidden !important;
    clip-path: inset(50%) !important; white-space: nowrap !important; border: 0 !important;
}
.qa-skip-link {
    position: fixed; top: 8px; left: 16px; z-index: 2000;
    transform: translateY(-180%); padding: 12px 18px;
    background: var(--ed-action); color: #fff; border-radius: 8px;
}
.qa-skip-link:focus { transform: none; color: #fff; outline: 3px solid var(--ed-focus); outline-offset: 3px; }
/* Native CMS actions retain their DOM/form contracts and feedback semantics. */
body .btn-primary, body .btn-secondary, body .btn-success, body .btn-warning,
body .btn-dark, body .btn-info, body .btn-default {
    color: #fff; background-color: var(--ed-action); border-color: var(--ed-action);
}
body :is(.btn-primary,.btn-secondary,.btn-success,.btn-warning,.btn-dark,.btn-info,.btn-default):hover {
    color: #fff; background-color: var(--ed-action-hover); border-color: var(--ed-action-hover);
}
body :is(.btn-primary,.btn-secondary,.btn-success,.btn-warning,.btn-dark,.btn-info,.btn-default):active {
    color: #fff; background-color: var(--ed-action-active); border-color: var(--ed-action-active);
}
body .btn:focus-visible, .qa-cookie-settings:focus-visible {
    outline: 3px solid var(--ed-focus); outline-offset: 3px;
}
body .btn:disabled, body .btn.disabled { opacity: .65; }
/* CMP presentation only: no initialization, category, cookie or callback changes. */
body .termsfeed-com---nb,
body .termsfeed-com---pc-overlay,
body .termsfeed-com---pc-dialog { z-index: 2147483647 !important; }
body .termsfeed-com---nb-simple {
    inset: auto 24px 24px auto !important; width: min(480px, calc(100vw - 48px)) !important;
    max-width: none !important; max-height: calc(100dvh - 48px) !important;
    overflow-y: auto; background: #fff !important; color: #18334f !important;
    border: 1px solid #cad9e8; border-radius: 16px; box-shadow: 0 16px 60px rgb(5 35 72 / 25%);
}
body .termsfeed-com---nb .cc-nb-main-container { padding: 24px !important; }
body .termsfeed-com---nb .cc-nb-title { color: #12365b !important; font-size: 23px !important; line-height: 1.3 !important; }
body .termsfeed-com---nb .cc-nb-text { color: #29445f !important; font-size: 16px !important; line-height: 1.5 !important; }
body .termsfeed-com---nb .cc-nb-buttons-container { display: grid; gap: 10px; }
body .termsfeed-com---nb button {
    min-height: 44px; width: 100%; margin: 0 !important; padding: 11px 16px !important;
    border-radius: 8px !important; font-size: 16px !important; line-height: 1.4 !important;
    font-weight: 600 !important; border: 1px solid var(--ed-action) !important;
}
body .termsfeed-com---nb .cc-nb-okagree { background: var(--ed-action) !important; color: #fff !important; }
body .termsfeed-com---nb .cc-nb-reject { background: #fff !important; color: var(--ed-action) !important; }
body .termsfeed-com---nb .cc-nb-changep { background: #edf4fc !important; color: var(--ed-action) !important; }
body .termsfeed-com---nb button:hover { background: var(--ed-action-hover) !important; color: #fff !important; }
body .termsfeed-com---nb button:active { background: var(--ed-action-active) !important; color: #fff !important; }
body .termsfeed-com---nb button:focus-visible,
body .termsfeed-com---pc-dialog :is(button,a,input):focus-visible { outline: 3px solid var(--ed-focus) !important; outline-offset: 3px !important; }
body .termsfeed-com---pc-dialog { color: #18334f !important; background: #fff !important; }
body .termsfeed-com---pc-dialog { width: min(750px, calc(100vw - 32px)) !important; max-width: none !important; margin: 16px auto !important; }
body .termsfeed-com---pc-dialog .cc-pc-container { background: #fff !important; color: #18334f !important; display: flex; flex-direction: column; max-height: calc(100dvh - 32px); }
body .termsfeed-com---pc-dialog .cc-pc-head,
body .termsfeed-com---pc-dialog .cc-cp-foot { flex-shrink: 0; }
body .termsfeed-com---pc-dialog .cc-cp-body { flex: 1; min-height: 0; overflow: auto; }
body .termsfeed-com---pc-dialog :is(.cc-cp-foot-save,.cc-cp-foot-byline) { color: var(--ed-action) !important; }
body .termsfeed-com---pc-dialog .cc-cp-foot-save { background: var(--ed-action) !important; color: #fff !important; border-color: var(--ed-action) !important; min-height: 44px; }
body .termsfeed-com---pc-dialog :is(.cc-pc-head,.cc-cp-body-content,.cc-cp-foot) { background: #fff !important; color: #18334f !important; border-color: #cad9e8 !important; }
body .termsfeed-com---pc-dialog :is(.cc-pc-head-title-text,.cc-pc-head-title-headline,.cc-cp-body-content-entry-title,.cc-cp-body-content-entry-text,.cc-cp-body-content-entry-text p,.cc-cp-body-content-entry-text label) { color: #18334f !important; }
body .termsfeed-com---pc-dialog .cc-cp-body-tabs { background: #edf4fc !important; }
body .termsfeed-com---pc-dialog .cc-cp-body-tabs-item-link { color: #12365b !important; min-height: 44px; }
body .termsfeed-com---pc-dialog .cc-cp-body-tabs-item[active="true"] { background: var(--ed-action) !important; }
body .termsfeed-com---pc-dialog .cc-cp-body-tabs-item[active="true"] .cc-cp-body-tabs-item-link { color: #fff !important; }
body .termsfeed-com---pc-dialog .cc-pc-head-close { color: #12365b !important; background: #edf4fc !important; border: 1px solid #8caac8 !important; box-shadow: none !important; min-width: 44px; min-height: 44px; }
body .termsfeed-com---pc-dialog .cc-pc-head-lang-select { background: #fff !important; color: #18334f !important; border: 1px solid #8caac8 !important; min-height: 44px; }
body .termsfeed-com---pc-dialog .cc-custom-checkbox { accent-color: var(--ed-action); }
body .termsfeed-com---pc-dialog .cc-custom-checkbox:checked + label::before { background: var(--ed-action) !important; border-color: var(--ed-action) !important; }
body .termsfeed-com---pc-dialog button:focus { outline: 3px solid var(--ed-focus) !important; outline-offset: 2px !important; }
body .termsfeed-com---pc-dialog .cc-cp-foot-save:hover { background: var(--ed-action-hover) !important; }
/* mmenu wraps the notices inside a z-index:1 page. Release that stacking trap
   only while a native CMP dialog is open; never move DOM or alter consent state. */
body:has(.termsfeed-com---nb:not(.termsfeed-com---is-hidden)) .mm-page,
body:has(.termsfeed-com---pc-overlay.termsfeed-com---is-visible) .mm-page { z-index: auto !important; }
/* Chat host must not cover CMP hit targets, even if its SDK uses max z-index. */
body:has(.termsfeed-com---nb:not(.termsfeed-com---is-hidden)) chat-widget,
body:has(.termsfeed-com---pc-dialog:not(.termsfeed-com---is-hidden)) chat-widget { z-index: 2147483000 !important; }
.qa-cookie-footer { text-align: center; background: #103a67; padding: 4px 16px 16px; }
.qa-cookie-settings { min-height: 44px; padding: 8px 12px; border: 1px solid #aecce9; border-radius: 8px; background: transparent; color: #fff; font: inherit; text-decoration: underline; }
.qa-cookie-settings:hover { background: #0d55a3; }
@media (max-width: 767px) {
    :root { --ed-header-height: 50px; }
    body .termsfeed-com---nb-simple {
        inset: auto 16px max(16px, env(safe-area-inset-bottom)) !important;
        width: calc(100vw - 32px) !important; max-height: calc(100dvh - 32px) !important;
    }
    body .termsfeed-com---nb .cc-nb-main-container { padding: 20px !important; }
}
@media (prefers-reduced-motion: reduce) { .qa-skip-link { transition: none; } }
