#mdo-banner,
#mdo-reopen {
    box-sizing: border-box;
}

.mdo-hidden {
    display: none !important;
}

#mdo-banner {
    position: fixed;
    inset: auto 16px 16px 16px;
    z-index: 999999;
    font-family: var(--mdo-font, inherit);
}

.mdo-box {
    max-width: 980px;
    margin: 0 auto;
    background: var(--mdo-bg, #181818);
    color: var(--mdo-text, #fff);
    border-radius: var(--mdo-radius, 16px);
    box-shadow: 0 12px 36px rgba(0, 0, 0, .35);
    padding: 22px;
}

.mdo-content h2 {
    margin: 0 0 8px;
    font-size: 20px;
    color: var(--mdo-text, #fff);
}

.mdo-content p {
    margin: 0 0 10px;
    line-height: 1.45;
}

.mdo-links {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.mdo-links a {
    color: #fff;
    text-decoration: underline;
}

.mdo-details {
    margin-top: 14px;
    border-top: 1px solid rgba(255, 255, 255, .18);
    padding-top: 12px;
}

.mdo-row {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    padding: 12px 0;
    border-bottom: 1px solid rgba(255, 255, 255, .12);
}

.mdo-row small {
    display: block;
    opacity: .8;
    margin-top: 4px;
}

.mdo-row input {
    width: 22px;
    height: 22px;
}

.mdo-disabled {
    opacity: .7;
}

.mdo-actions {
    display: flex;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 16px;
}

.mdo-actions button,
.mdo-reopen,
.mdo-shortcode-reopen,
.mdo-media-placeholder button {
    border: 0;
    border-radius: 999px;
    padding: 10px 16px;
    cursor: pointer;
    font-weight: 700;
}

#mdo-accept,
#mdo-save,
.mdo-media-placeholder button {
    background: var(--mdo-accent, #fff);
    color: var(--mdo-button-text, #181818);
}

#mdo-banner input[type="checkbox"],
.mdo-shortcode-consent input[type="checkbox"] {
    accent-color: var(--mdo-checkbox-active, var(--mdo-accent, #fff));
    background-color: var(--mdo-checkbox, transparent);
}

#mdo-reject,
#mdo-customize {
    background: transparent;
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .7);
}

.mdo-reopen {
    position: fixed;
    left: 14px;
    bottom: 14px;
    z-index: 999998;
    background: #181818;
    color: #fff;
    font-size: 13px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .25);
}

.mdo-cookie-details {
    margin-top: 12px;
}

.mdo-cookie-details summary {
    cursor: pointer;
    font-weight: 700;
}

.mdo-cookie-table-wrap {
    overflow-x: auto;
    margin-top: 10px;
}

.mdo-cookie-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
}

.mdo-cookie-table th,
.mdo-cookie-table td {
    border: 1px solid rgba(255, 255, 255, .18);
    padding: 8px;
    text-align: left;
    vertical-align: top;
}

.mdo-media-placeholder {
    background: #181818;
    color: #fff;
    padding: 24px;
    border-radius: 12px;
    text-align: center;
    margin: 12px 0;
}

.mdo-media-placeholder p {
    margin: 0 0 12px;
}

.mdo-shortcode-reopen {
    background: #181818;
    color: #fff;
}

@media (max-width: 640px) {
    .mdo-actions {
        flex-direction: column;
    }

    .mdo-actions button {
        width: 100%;
    }

    #mdo-banner {
        inset: auto 10px 10px 10px;
    }
}


#mdo-banner button,
#mdo-banner input,
#mdo-banner table,
#mdo-reopen,
.mdo-shortcode-reopen,
.mdo-media-placeholder {
    font-family: inherit;
}

#mdo-banner.mdo-position-center {
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    width: min(980px, calc(100vw - 32px));
}
.mdo-legal-note {
    font-size: 12px;
    opacity: .7;
    margin: 12px 0 0;
}
@media (max-width: 640px) {
    #mdo-banner.mdo-position-center {
        inset: auto 10px 10px 10px;
        transform: none;
        width: auto;
    }
}

.mdo-cookie-group {
    margin-top: 14px;
}
.mdo-cookie-group h3 {
    margin: 12px 0 8px;
    font-size: 15px;
    color: var(--mdo-text, #fff);
}


/* R2Y 4.0.6: canonical UX fix for long cookie details */
#mdo-banner {
    max-height: calc(100vh - 24px);
}

.mdo-box {
    max-height: calc(100vh - 32px);
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.mdo-content {
    flex: 0 0 auto;
}

.mdo-details {
    flex: 1 1 auto;
    max-height: 55vh;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding-right: 6px;
}

.mdo-cookie-details {
    max-height: 42vh;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding-right: 4px;
}

.mdo-cookie-table-wrap {
    overflow-x: auto;
    max-width: 100%;
}

.mdo-cookie-table {
    min-width: 720px;
}

.mdo-actions {
    flex: 0 0 auto;
    position: sticky;
    bottom: 0;
    background: var(--mdo-bg, #181818);
    padding-top: 12px;
    z-index: 2;
}

.mdo-legal-note {
    flex: 0 0 auto;
}

@media (max-width: 640px) {
    #mdo-banner {
        max-height: calc(100vh - 20px);
    }

    .mdo-box {
        max-height: calc(100vh - 20px);
    }

    .mdo-details {
        max-height: 48vh;
    }

    .mdo-cookie-details {
        max-height: 36vh;
    }

    .mdo-cookie-table {
        min-width: 640px;
    }
}

/* marker: r2y-privacy-suite-ux-fix-4-0-6 */

#mdo-banner .mdo-button-primary,
#mdo-banner button.mdo-button-primary,
#mdo-banner .mdo-actions button:first-child {
    background: var(--mdo-accent, #f4b400);
    color: var(--mdo-button-text, #111111);
}
#mdo-banner {
    font-family: inherit;
}
#mdo-banner[data-font-mode="system"] {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}


/* Custom checkbox colors */
#mdo-banner input[type="checkbox"] {
    accent-color: var(--mdo-checkbox-active, #f4b400);
    border-color: var(--mdo-checkbox, #f4b400);
    outline-color: var(--mdo-checkbox-active, #f4b400);
}

#mdo-banner input[type="checkbox"]:checked {
    accent-color: var(--mdo-checkbox-active, #f4b400);
}

#mdo-banner input[type="checkbox"]:focus,
#mdo-banner input[type="checkbox"]:focus-visible {
    outline: 2px solid var(--mdo-checkbox-active, #f4b400);
    outline-offset: 2px;
}

/* Mobile Safari / iOS consistency */
@media (max-width: 768px) {
    #mdo-banner input[type="checkbox"] {
        accent-color: var(--mdo-checkbox-active, #f4b400);
    }
}


html.mdo-builder-context #mdo-banner,
html.mdo-builder-context .mdo-media-placeholder,
body.et-fb #mdo-banner,
body.et-bfb #mdo-banner,
body.elementor-editor-active #mdo-banner,
body.fl-builder-edit #mdo-banner,
body.et-fb .mdo-media-placeholder,
body.et-bfb .mdo-media-placeholder,
body.elementor-editor-active .mdo-media-placeholder,
body.fl-builder-edit .mdo-media-placeholder {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}


/* Divi 4 / classic visual builder safety */
body.et_pb_pagebuilder_layout #mdo-banner,
body.et_pb_use_builder #mdo-banner,
body.et_divi_theme #mdo-banner,
body.et-db #mdo-banner,
body.et_pb_pagebuilder_layout .mdo-media-placeholder,
body.et_pb_use_builder .mdo-media-placeholder,
body.et_divi_theme .mdo-media-placeholder,
body.et-db .mdo-media-placeholder {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}


.mdo-media-placeholder[data-mdo-placeholder="external-media"] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
    justify-content: center;
    min-height: 220px;
    padding: 24px;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 12px;
    background: rgba(0,0,0,.72);
    color: #fff;
    text-align: center;
}

.mdo-media-placeholder[data-mdo-placeholder="external-media"] p {
    margin: 0;
    max-width: 620px;
}

.mdo-media-placeholder[data-mdo-placeholder="external-media"] button {
    cursor: pointer;
    border: 0;
    border-radius: 999px;
    padding: 10px 16px;
    background: var(--mdo-accent, #f4b400);
    color: var(--mdo-button-text, #111111);
    font-weight: 700;
}


.mdo-media-click-overlay {
    position: fixed;
    inset: 0;
    z-index: 2147483646;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(0,0,0,.62);
}
.mdo-media-click-box {
    position: relative;
    max-width: 520px;
    width: min(520px, 100%);
    padding: 24px;
    border-radius: 16px;
    background: var(--mdo-bg, #111);
    color: var(--mdo-text, #fff);
    box-shadow: 0 18px 60px rgba(0,0,0,.28);
    text-align: center;
}
.mdo-media-click-box button:not(.mdo-media-click-close) {
    cursor: pointer;
    border: 0;
    border-radius: 999px;
    padding: 10px 16px;
    background: var(--mdo-accent, #f4b400);
    color: var(--mdo-button-text, #111);
    font-weight: 700;
}
.mdo-media-click-close {
    position: absolute;
    top: 8px;
    right: 10px;
    border: 0;
    background: transparent;
    color: inherit;
    font-size: 24px;
    line-height: 1;
    cursor: pointer;
}


html.mdo-builder-context #mdo-banner,
html.mdo-builder-context .mdo-media-placeholder,
body.bricks-is-builder #mdo-banner,
body.ct-builder #mdo-banner,
body.oxygen-builder-body #mdo-banner,
body.breakdance-editor #mdo-banner,
body.brz-ed #mdo-banner,
body.cornerstone-editor #mdo-banner,
body.bricks-is-builder .mdo-media-placeholder,
body.ct-builder .mdo-media-placeholder,
body.oxygen-builder-body .mdo-media-placeholder,
body.breakdance-editor .mdo-media-placeholder,
body.brz-ed .mdo-media-placeholder,
body.cornerstone-editor .mdo-media-placeholder {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}


/* External media click blocker visibility fix */
.mdo-media-click-overlay {
    z-index: 2147483647 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}
.mdo-media-click-box {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: none !important;
}
.mdo-media-click-box p {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    margin: 0 0 16px !important;
    color: inherit !important;
}


/* 4.3.43: always-visible blocked media placeholder */
.mdo-media-placeholder[data-mdo-placeholder="external-media"] {
    position: relative !important;
    z-index: 5 !important;
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    isolation: isolate;
}
.mdo-media-placeholder[data-mdo-placeholder="external-media"]::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    border-radius: inherit;
    background: rgba(0,0,0,.72);
}
.mdo-media-placeholder[data-mdo-placeholder="external-media"] p,
.mdo-media-placeholder[data-mdo-placeholder="external-media"] button {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}
html.mdo-media-overlay-open .mdo-media-click-overlay,
.mdo-media-click-overlay:hover,
.mdo-media-click-overlay {
    opacity: 1 !important;
    visibility: visible !important;
}
html.mdo-media-overlay-open .mdo-media-click-box,
.mdo-media-click-overlay:hover .mdo-media-click-box,
.mdo-media-click-box {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}


/* 4.3.46: make external-media overlay action reliably clickable */
.mdo-media-click-overlay,
.mdo-media-click-overlay * {
    box-sizing: border-box;
}
.mdo-media-click-overlay {
    pointer-events: auto !important;
}
.mdo-media-click-box {
    pointer-events: auto !important;
}
.mdo-media-click-box button {
    position: relative !important;
    z-index: 2 !important;
    pointer-events: auto !important;
    user-select: none;
}


/* 4.3.49 Mobile external-media blocker fix */
@media (max-width: 768px) {
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 220px !important;
        max-height: min(70vh, 520px) !important;
        overflow: auto !important;
        padding: 20px 14px !important;
        gap: 14px !important;
        align-items: center !important;
        justify-content: center !important;
        -webkit-overflow-scrolling: touch;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] p {
        max-width: 100% !important;
        font-size: 15px !important;
        line-height: 1.45 !important;
        margin: 0 !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] button {
        position: sticky !important;
        bottom: 0 !important;
        width: 100% !important;
        max-width: 320px !important;
        min-height: 48px !important;
        padding: 13px 16px !important;
        font-size: 15px !important;
        touch-action: manipulation !important;
        -webkit-tap-highlight-color: transparent;
    }

    .mdo-media-click-overlay {
        align-items: flex-end !important;
        justify-content: center !important;
        padding: 12px !important;
        overflow: auto !important;
        -webkit-overflow-scrolling: touch;
    }

    .mdo-media-click-box {
        width: 100% !important;
        max-width: 100% !important;
        max-height: calc(100vh - 24px) !important;
        overflow: auto !important;
        padding: 24px 16px 18px !important;
        border-radius: 18px 18px 14px 14px !important;
    }

    .mdo-media-click-box p {
        font-size: 15px !important;
        line-height: 1.45 !important;
        margin-bottom: 14px !important;
    }

    .mdo-media-click-box button:not(.mdo-media-click-close) {
        width: 100% !important;
        min-height: 50px !important;
        padding: 14px 16px !important;
        font-size: 15px !important;
        touch-action: manipulation !important;
        -webkit-tap-highlight-color: transparent;
    }

    .mdo-media-click-close {
        min-width: 44px !important;
        min-height: 44px !important;
        top: 4px !important;
        right: 6px !important;
        z-index: 3 !important;
    }
}


/* 4.3.50: make external-media accept button reliably clickable */
.mdo-media-click-overlay {
    z-index: 2147483647 !important;
    pointer-events: auto !important;
    touch-action: auto !important;
}
.mdo-media-click-box {
    position: relative !important;
    z-index: 2147483647 !important;
    pointer-events: auto !important;
}
.mdo-media-click-box [data-mdo-control="external-media-accept"],
.mdo-media-click-box button:not(.mdo-media-click-close) {
    position: relative !important;
    z-index: 2147483647 !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    touch-action: manipulation !important;
}
.mdo-media-click-box [data-mdo-control="external-media-close"] {
    position: absolute !important;
    z-index: 2147483647 !important;
    pointer-events: auto !important;
}


/* 4.3.51 mobile iframe blocker reliability + safe area */
@media (max-width: 768px) {
    .mdo-media-click-overlay {
        position: fixed !important;
        inset: 0 !important;
        align-items: center !important;
        justify-content: center !important;
        padding: 14px 14px calc(24px + env(safe-area-inset-bottom, 0px)) 14px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        min-height: 100dvh !important;
        box-sizing: border-box !important;
        -webkit-overflow-scrolling: touch;
    }

    .mdo-media-click-box {
        width: 100% !important;
        max-width: 420px !important;
        max-height: calc(100dvh - 44px - env(safe-area-inset-bottom, 0px)) !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        margin: auto !important;
        padding: 24px 16px calc(22px + env(safe-area-inset-bottom, 0px)) 16px !important;
        border-radius: 18px !important;
        box-sizing: border-box !important;
    }

    .mdo-media-click-box button:not(.mdo-media-click-close),
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] button {
        width: 100% !important;
        max-width: 340px !important;
        min-height: 52px !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        touch-action: manipulation !important;
        pointer-events: auto !important;
        position: relative !important;
        z-index: 2147483647 !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 230px !important;
        max-height: calc(100dvh - 32px - env(safe-area-inset-bottom, 0px)) !important;
        overflow-y: auto !important;
        padding: 22px 14px calc(24px + env(safe-area-inset-bottom, 0px)) 14px !important;
        box-sizing: border-box !important;
    }
}


/* 4.3.54 hard mobile fix: external media dialog is viewport-fixed, not popup-flow based */
@media (max-width: 768px) {
    html.mdo-media-overlay-open,
    html.mdo-media-overlay-open body {
        overflow: hidden !important;
    }

    .mdo-media-click-overlay {
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        min-height: 100vh !important;
        min-height: 100dvh !important;
        padding: 16px !important;
        padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px)) !important;
        margin: 0 !important;
        display: block !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
        z-index: 2147483647 !important;
        background: rgba(0,0,0,.72) !important;
        transform: none !important;
    }

    .mdo-media-click-box {
        position: fixed !important;
        left: 50% !important;
        top: 50% !important;
        bottom: auto !important;
        right: auto !important;
        transform: translate(-50%, -50%) !important;
        width: calc(100vw - 32px) !important;
        max-width: 420px !important;
        height: auto !important;
        max-height: calc(100dvh - 44px - env(safe-area-inset-bottom, 0px)) !important;
        margin: 0 !important;
        padding: 26px 16px calc(24px + env(safe-area-inset-bottom, 0px)) 16px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        border-radius: 18px !important;
        box-sizing: border-box !important;
        z-index: 2147483647 !important;
        -webkit-overflow-scrolling: touch;
    }

    .mdo-media-click-box p {
        margin: 0 0 16px 0 !important;
        padding: 0 !important;
        max-width: 100% !important;
        font-size: 15px !important;
        line-height: 1.45 !important;
        display: block !important;
    }

    .mdo-media-click-box button:not(.mdo-media-click-close) {
        width: 100% !important;
        max-width: none !important;
        min-height: 52px !important;
        margin: 0 !important;
        padding: 14px 16px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        border-radius: 999px !important;
        font-size: 15px !important;
        line-height: 1.25 !important;
        pointer-events: auto !important;
        touch-action: manipulation !important;
        position: relative !important;
        z-index: 2147483647 !important;
    }

    .mdo-media-click-close {
        width: 44px !important;
        height: 44px !important;
        min-width: 44px !important;
        min-height: 44px !important;
        top: 4px !important;
        right: 6px !important;
        z-index: 2147483647 !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] {
        width: 100% !important;
        max-width: 100% !important;
        min-height: 240px !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        padding: 24px 14px !important;
        margin: 12px 0 !important;
        box-sizing: border-box !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] button {
        width: 100% !important;
        max-width: 340px !important;
        min-height: 52px !important;
        flex-shrink: 0 !important;
    }
}


/* 4.3.55 iPhone hard fix: use bottom sheet, never clipped by mobile viewport */
@media (max-width: 768px) {
    .mdo-media-click-overlay {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100dvh !important;
        min-height: 100dvh !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
        display: flex !important;
        align-items: flex-end !important;
        justify-content: center !important;
        background: rgba(0,0,0,.72) !important;
        box-sizing: border-box !important;
        z-index: 2147483647 !important;
        transform: none !important;
    }

    .mdo-media-click-box {
        position: relative !important;
        left: auto !important;
        top: auto !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;
        width: 100% !important;
        max-width: 100% !important;
        max-height: calc(100dvh - 18px) !important;
        margin: 0 10px calc(10px + env(safe-area-inset-bottom, 0px)) 10px !important;
        padding: 30px 16px calc(28px + env(safe-area-inset-bottom, 0px)) 16px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        border-radius: 20px !important;
        box-sizing: border-box !important;
        border: 2px solid rgba(255,255,255,.9) !important;
        background-clip: padding-box !important;
    }

    .mdo-media-click-box button:not(.mdo-media-click-close) {
        width: 100% !important;
        min-height: 54px !important;
        margin-bottom: 0 !important;
    }

    .mdo-media-click-close {
        top: 5px !important;
        right: 8px !important;
    }
}


/* 4.3.59 final authority: stable mobile external-media bottom sheet */
@media (max-width: 768px) {
    html.mdo-media-overlay-open,
    html.mdo-media-overlay-open body {
        overflow: hidden !important;
        height: 100% !important;
    }

    .mdo-media-click-overlay {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100dvh !important;
        min-height: 100dvh !important;
        display: flex !important;
        align-items: flex-end !important;
        justify-content: center !important;
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
        background: rgba(0,0,0,.72) !important;
        z-index: 2147483647 !important;
        box-sizing: border-box !important;
    }

    .mdo-media-click-box {
        position: relative !important;
        width: calc(100vw - 20px) !important;
        max-width: 430px !important;
        max-height: calc(100dvh - 20px - env(safe-area-inset-bottom, 0px)) !important;
        margin: 0 10px calc(10px + env(safe-area-inset-bottom, 0px)) 10px !important;
        padding: 30px 16px calc(28px + env(safe-area-inset-bottom, 0px)) 16px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        border-radius: 20px !important;
        border: 2px solid rgba(255,255,255,.92) !important;
        background-clip: padding-box !important;
        box-sizing: border-box !important;
        transform: none !important;
        z-index: 2147483647 !important;
        -webkit-overflow-scrolling: touch;
    }

    .mdo-media-click-box button:not(.mdo-media-click-close) {
        width: 100% !important;
        min-height: 54px !important;
        padding: 14px 16px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        pointer-events: auto !important;
        touch-action: manipulation !important;
    }
}


/* 4.3.60 WPBakery / Visual Composer builder safety */
body.vc_editor #mdo-banner,
body.wpb-js-composer #mdo-banner,
body.compose-mode #mdo-banner,
body.view-mode #mdo-banner,
body.vcv-ui #mdo-banner,
body.vcv-editor #mdo-banner,
body.vc_editor .mdo-media-placeholder,
body.wpb-js-composer .mdo-media-placeholder,
body.compose-mode .mdo-media-placeholder,
body.view-mode .mdo-media-placeholder,
body.vcv-ui .mdo-media-placeholder,
body.vcv-editor .mdo-media-placeholder {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}


/* 4.3.69 stability authority */
#mdo-banner,
#mdo-banner *,
.mdo-media-click-overlay,
.mdo-media-click-overlay *,
.mdo-media-placeholder,
.mdo-media-placeholder * {
    box-sizing: border-box;
}

#mdo-banner a,
.mdo-media-click-overlay button,
.mdo-media-placeholder button {
    pointer-events: auto;
}

@media (max-width: 768px) {
    .mdo-media-click-overlay {
        position: fixed !important;
        inset: 0 !important;
        width: 100vw !important;
        height: 100dvh !important;
        z-index: 2147483647 !important;
        display: flex !important;
        align-items: flex-end !important;
        justify-content: center !important;
        overflow: hidden !important;
        padding: 0 !important;
        margin: 0 !important;
        background: rgba(0,0,0,.72) !important;
    }

    .mdo-media-click-box {
        width: calc(100vw - 20px) !important;
        max-width: 430px !important;
        max-height: calc(100dvh - 20px - env(safe-area-inset-bottom, 0px)) !important;
        margin: 0 10px calc(10px + env(safe-area-inset-bottom, 0px)) 10px !important;
        padding: 30px 16px calc(28px + env(safe-area-inset-bottom, 0px)) 16px !important;
        overflow-y: auto !important;
        border-radius: 20px !important;
        border: 2px solid rgba(255,255,255,.92) !important;
        background-clip: padding-box !important;
        transform: none !important;
        -webkit-overflow-scrolling: touch;
    }
}


/* 4.3.73: legal/privacy links must always remain clickable */
#mdo-banner a,
.mdo-legal-links a,
.mdo-footer-links a {
    pointer-events: auto !important;
    position: relative;
    z-index: 2;
}


/* 4.3.75 privacy settings opener attribute guard */
[data-mdo-reopen="1"] {
    cursor: pointer !important;
    pointer-events: auto !important;
    position: relative;
    z-index: 2147483640;
}




/* 4.3.78: preserve original reopen design; only ensure clickability */
#mdo-reopen,
.mdo-reopen,
[data-mdo-reopen="1"] {
    pointer-events: auto !important;
    cursor: pointer !important;
}

button.mdo-reopen {
    font: inherit;
}


/* If the plugin places the opener outside the banner, keep it subtle and theme-friendly */
body > #mdo-reopen.mdo-reopen {
    position: fixed;
    left: 16px;
    bottom: calc(16px + env(safe-area-inset-bottom, 0px));
    z-index: 999998;
}





/* 4.3.82 layout-safe consent isolation */
#mdo-banner.mdo-hidden,
#mdo-details.mdo-hidden,
#mdo-save.mdo-hidden,
#mdo-customize.mdo-hidden {
    display: none !important;
}

#mdo-banner:not(.mdo-hidden) {
    position: fixed !important;
    left: 50% !important;
    bottom: 24px !important;
    transform: translateX(-50%) !important;
    z-index: 2147483000 !important;
    width: min(960px, calc(100vw - 32px)) !important;
    max-height: calc(100dvh - 48px) !important;
    overflow: auto !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    pointer-events: auto !important;
    isolation: isolate !important;
}

#mdo-banner,
#mdo-banner *,
#mdo-reopen,
.mdo-media-click-overlay,
.mdo-media-click-overlay *,
.mdo-media-placeholder,
.mdo-media-placeholder * {
    box-sizing: border-box !important;
}

#mdo-reopen.mdo-reopen,
a#mdo-reopen.mdo-reopen {
    position: fixed !important;
    left: 16px !important;
    bottom: calc(16px + env(safe-area-inset-bottom, 0px)) !important;
    z-index: 2147482500 !important;
    display: inline !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--mdo-link-color, currentColor) !important;
    text-decoration: underline !important;
    font: inherit !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 768px) {
    #mdo-banner:not(.mdo-hidden) {
        left: 12px !important;
        right: 12px !important;
        bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
        transform: none !important;
        width: auto !important;
        max-height: calc(100dvh - 24px - env(safe-area-inset-bottom, 0px)) !important;
    }
}


/* 4.3.84 consent opener regression fix */
#mdo-banner.mdo-hidden {
    display: none !important;
}

#mdo-banner:not(.mdo-hidden) {
    position: fixed !important;
    left: 50% !important;
    bottom: 24px !important;
    transform: translateX(-50%) !important;
    z-index: 2147483000 !important;
    width: min(960px, calc(100vw - 32px)) !important;
    max-height: calc(100dvh - 48px) !important;
    overflow: auto !important;
    margin: 0 !important;
    pointer-events: auto !important;
}

#mdo-details.mdo-hidden,
#mdo-save.mdo-hidden,
#mdo-customize.mdo-hidden {
    display: none !important;
}

#mdo-reopen[data-mdo-reopen="1"] {
    pointer-events: auto !important;
    cursor: pointer !important;
}





/* 4.3.87 restored original black multilingual reopen button */
#mdo-reopen.mdo-reopen,
button#mdo-reopen.mdo-reopen,
a#mdo-reopen.mdo-reopen {
    position: fixed !important;
    left: 16px !important;
    bottom: calc(16px + env(safe-area-inset-bottom, 0px)) !important;
    z-index: 2147482500 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    min-height: 38px !important;
    max-width: calc(100vw - 32px) !important;
    padding: 9px 14px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(255,255,255,.35) !important;
    background: #111 !important;
    color: #fff !important;
    text-decoration: none !important;
    font: inherit !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    margin: 0 !important;
    box-shadow: 0 5px 18px rgba(0,0,0,.22) !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

#mdo-reopen.mdo-reopen:hover,
button#mdo-reopen.mdo-reopen:hover,
a#mdo-reopen.mdo-reopen:hover,
#mdo-reopen.mdo-reopen:focus,
button#mdo-reopen.mdo-reopen:focus,
a#mdo-reopen.mdo-reopen:focus {
    background: #000 !important;
    color: #fff !important;
    outline: 2px solid rgba(0,0,0,.25) !important;
    outline-offset: 2px !important;
}


/* 4.3.88 stable consent panel without click-blocking backdrop */
#mdo-consent-backdrop {
    display: none !important;
    pointer-events: none !important;
}

html.mdo-consent-open {
    overflow: auto !important;
}

#mdo-banner:not(.mdo-hidden) {
    z-index: 2147483001 !important;
    pointer-events: auto !important;
    transition: none !important;
    animation: none !important;
}

#mdo-banner:not(.mdo-hidden),
#mdo-banner:not(.mdo-hidden) * {
    pointer-events: auto !important;
}

#mdo-banner:not(.mdo-hidden) button,
#mdo-banner:not(.mdo-hidden) a,
#mdo-banner:not(.mdo-hidden) input,
#mdo-banner:not(.mdo-hidden) label {
    position: relative;
    z-index: 2;
    pointer-events: auto !important;
}

#mdo-banner:not(.mdo-hidden) ~ #mdo-reopen,
html.mdo-consent-open #mdo-reopen {
    display: none !important;
}

/* Keep the black multilingual opener, but prevent jumpy movement */
#mdo-reopen.mdo-reopen,
button#mdo-reopen.mdo-reopen,
a#mdo-reopen.mdo-reopen {
    transition: none !important;
    animation: none !important;
}


/* 4.3.89 direct consent button reliability */
#mdo-banner:not(.mdo-hidden) #mdo-accept,
#mdo-banner:not(.mdo-hidden) #mdo-reject,
#mdo-banner:not(.mdo-hidden) #mdo-save {
    pointer-events: auto !important;
    cursor: pointer !important;
    position: relative !important;
    z-index: 2147483002 !important;
}


/* 4.4.0 isolated iframe blocker placeholder */
.mdo-media-placeholder[data-mdo-placeholder="external-media"] {
    position: relative !important;
    z-index: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 220px !important;
    padding: 24px !important;
    text-align: center !important;
    box-sizing: border-box !important;
    pointer-events: auto !important;
    background: rgba(245,245,245,.96) !important;
    border: 1px solid rgba(0,0,0,.12) !important;
    border-radius: 12px !important;
}

.mdo-media-placeholder[data-mdo-placeholder="external-media"] button {
    pointer-events: auto !important;
    cursor: pointer !important;
}


/* 4.4.2 iframe blocker correctness */
iframe[data-mdo-blocked="external-media"],
embed[data-mdo-blocked="external-media"],
object[data-mdo-blocked="external-media"] {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

.mdo-media-placeholder[data-mdo-placeholder="external-media"] {
    pointer-events: auto !important;
    position: relative !important;
    z-index: 5 !important;
}

#mdo-banner .mdo-media-placeholder,
#mdo-banner .mdo-media-click-overlay {
    display: none !important;
}


/* 4.4.3 consolidated external media blocker */
.mdo-media-placeholder[data-mdo-placeholder="external-media"] {
    position: relative !important;
    z-index: 5 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 220px !important;
    width: 100% !important;
    padding: 24px !important;
    text-align: center !important;
    box-sizing: border-box !important;
    pointer-events: auto !important;
    background: rgba(245,245,245,.96) !important;
    border: 1px solid rgba(0,0,0,.12) !important;
    border-radius: 12px !important;
}

.mdo-media-placeholder[data-mdo-placeholder="external-media"] button,
.mdo-media-click-overlay button {
    pointer-events: auto !important;
    cursor: pointer !important;
}

#mdo-banner .mdo-media-placeholder,
#mdo-banner .mdo-media-click-overlay {
    display: none !important;
}


/* 4.4.4 early external media guard */
iframe[data-mdo-early-blocked="1"],
embed[data-mdo-early-blocked="1"],
object[data-mdo-early-blocked="1"] {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}


/* 4.4.6 first-click media blocker fix */
.mdo-media-placeholder[data-mdo-placeholder="external-media"] {
    pointer-events: auto !important;
    z-index: 10 !important;
}


/* 4.4.7 immediate late-popup iframe blocker */
iframe[data-mdo-immediate-blocked="1"],
embed[data-mdo-immediate-blocked="1"],
object[data-mdo-immediate-blocked="1"] {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}


/* 4.4.8 strict opt-in first-visit banner */
#mdo-banner:not(.mdo-hidden) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
}

html.mdo-consent-open #mdo-reopen {
    display: none !important;
}

#mdo-banner:not(.mdo-hidden) #mdo-statistics,
#mdo-banner:not(.mdo-hidden) #mdo-marketing,
#mdo-banner:not(.mdo-hidden) #mdo-external-media {
    pointer-events: auto !important;
}


/* 4.4.9 first-visit consent visibility safety */
html.mdo-consent-open #mdo-banner:not(.mdo-hidden) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    z-index: 2147483000 !important;
}


/* 4.4.10 opt-in banner visible-by-default */
#mdo-banner:not(.mdo-hidden) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    z-index: 2147483000 !important;
}

#mdo-banner.mdo-hidden {
    display: none !important;
}

html.mdo-consent-open #mdo-reopen {
    display: none !important;
}


/* 4.4.11 opt-in banner and choices reliability */
#mdo-banner:not(.mdo-hidden) {
    position: fixed !important;
    left: 50% !important;
    bottom: 24px !important;
    transform: translateX(-50%) !important;
    width: min(960px, calc(100vw - 32px)) !important;
    max-height: calc(100dvh - 48px) !important;
    overflow: auto !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    z-index: 2147483000 !important;
}

#mdo-details:not(.mdo-hidden),
#mdo-save:not(.mdo-hidden) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#mdo-customize.mdo-hidden {
    display: none !important;
}

@media (max-width: 768px) {
    #mdo-banner:not(.mdo-hidden) {
        left: 12px !important;
        right: 12px !important;
        bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
        transform: none !important;
        width: auto !important;
        max-height: calc(100dvh - 24px - env(safe-area-inset-bottom, 0px)) !important;
    }
}


/* 4.4.13 independent customize button visibility */
#mdo-details:not(.mdo-hidden) {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#mdo-save:not(.mdo-hidden) {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

#mdo-customize.mdo-hidden {
    display: none !important;
}


/* 4.4.14 centered consent buttons */
#mdo-banner button,
#mdo-save,
#mdo-customize,
[data-mdo-control] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    line-height: 1.2 !important;
}


/* 4.4.15 full-page iframe blocker support */
iframe[data-mdo-blocked="external-media"],
embed[data-mdo-blocked="external-media"],
object[data-mdo-blocked="external-media"] {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}


/* 4.4.79 black/white placeholder redesign */
.mdo-minimal-media-placeholder {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 190px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 12px !important;
    padding: 32px 24px !important;
    margin: 18px 0 !important;
    border: 2px solid #111 !important;
    border-radius: 18px !important;
    background: #fff !important;
    color: #111 !important;
    text-align: center !important;
    position: relative !important;
    z-index: 20 !important;
    box-shadow: 0 10px 35px rgba(0,0,0,.08) !important;
}
.mdo-minimal-media-placeholder strong {
    display: block !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    letter-spacing: .01em !important;
}
.mdo-minimal-media-placeholder p {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.5 !important;
    max-width: 540px !important;
}
.mdo-minimal-media-placeholder button {
    cursor: pointer !important;
    padding: 12px 18px !important;
    border-radius: 999px !important;
    border: 0 !important;
    background: #111 !important;
    color: #fff !important;
    font-weight: 600 !important;
    transition: transform .15s ease, opacity .15s ease !important;
}
.mdo-minimal-media-placeholder button:hover {
    opacity: .92 !important;
    transform: translateY(-1px) !important;
}

[data-mdo-minimal-media-host="1"] {
    min-height: 190px !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}


/* 4.4.80 safety cleanup */
.mdo-minimal-media-placeholder button:focus-visible {
    outline: 3px solid #111 !important;
    outline-offset: 3px !important;
}
.mdo-minimal-media-placeholder[hidden] {
    display: none !important;
}


/* 4.5.16: Robust frontend checkbox color sync, independent from Divi static CSS/native accent quirks. */
#mdo-banner input[type="checkbox"],
.mdo-shortcode-consent input[type="checkbox"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    border-radius: 5px !important;
    border: 2px solid var(--mdo-checkbox-active, var(--mdo-checkbox, var(--mdo-accent, #f4b400))) !important;
    background: rgba(255,255,255,.08) !important;
    accent-color: var(--mdo-checkbox-active, var(--mdo-checkbox, var(--mdo-accent, #f4b400))) !important;
    position: relative !important;
    box-shadow: 0 0 0 1px rgba(0,0,0,.35) !important;
}
#mdo-banner input[type="checkbox"]:checked,
.mdo-shortcode-consent input[type="checkbox"]:checked {
    background: var(--mdo-checkbox-active, var(--mdo-checkbox, var(--mdo-accent, #f4b400))) !important;
    border-color: var(--mdo-checkbox-active, var(--mdo-checkbox, var(--mdo-accent, #f4b400))) !important;
}
#mdo-banner input[type="checkbox"]:checked::after,
.mdo-shortcode-consent input[type="checkbox"]:checked::after {
    content: "" !important;
    position: absolute !important;
    left: 5px !important;
    top: 1px !important;
    width: 5px !important;
    height: 10px !important;
    border: solid var(--mdo-button-text, #111111) !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg) !important;
}


/* 4.5.32: Divi Extra safe visual normalization.
   CSS-only patch based on stable 4.5.20 logic. No ARMember/Polylang/redirect hooks changed. */
#mdo-banner .mdo-service-table-wrap,
#mdo-banner .mdo-service-table,
#mdo-banner .mdo-service-table table,
#mdo-banner .mdo-service-table thead,
#mdo-banner .mdo-service-table tbody,
#mdo-banner .mdo-service-table tr,
#mdo-banner .mdo-service-table th,
#mdo-banner .mdo-service-table td,
#mdo-banner .mdo-service-group,
#mdo-banner .mdo-service-group *,
body.et_extra_layout #mdo-banner .mdo-service-table-wrap,
body.et_extra_layout #mdo-banner .mdo-service-table,
body.et_extra_layout #mdo-banner .mdo-service-table table,
body.et_extra_layout #mdo-banner .mdo-service-table thead,
body.et_extra_layout #mdo-banner .mdo-service-table tbody,
body.et_extra_layout #mdo-banner .mdo-service-table tr,
body.et_extra_layout #mdo-banner .mdo-service-table th,
body.et_extra_layout #mdo-banner .mdo-service-table td,
body.et_extra_layout #mdo-banner .mdo-service-group,
body.et_extra_layout #mdo-banner .mdo-service-group * {
    border-color: rgba(255,255,255,.10) !important;
    outline: 0 !important;
    box-shadow: none !important;
}

body.et_extra_layout #mdo-banner .mdo-service-table,
body.et_extra_layout #mdo-banner .mdo-service-table table,
body.et_extra_layout #mdo-banner .mdo-service-group {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background-color: rgba(8,8,10,.96) !important;
}

body.et_extra_layout #mdo-banner .mdo-service-table th,
body.et_extra_layout #mdo-banner .mdo-service-table td {
    background-color: rgba(12,12,14,.98) !important;
    border-width: 0 0 1px 0 !important;
}

body.et_extra_layout #mdo-banner .mdo-service-table thead th,
body.et_extra_layout #mdo-banner .mdo-service-group h4 {
    background-color: rgba(24,24,28,.98) !important;
    border-width: 0 0 1px 0 !important;
}

body.et_extra_layout #mdo-banner input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    max-height: 18px !important;
    padding: 0 !important;
    margin: 0 8px 0 0 !important;
}

body.et_extra_layout #mdo-banner input[type="checkbox"]:checked::after {
    left: 5px !important;
    top: 1px !important;
    width: 5px !important;
    height: 10px !important;
    border-color: #ffffff !important;
}


/* 4.5.36: Visual-only polish on stable 4.5.33 logic.
   Normal frontend font sizing + checkbox checkmark contrast. No ARMember/Polylang/blocker changes. */
#mdo-banner {
    font-size: 14px !important;
    line-height: 1.5 !important;
}
#mdo-banner .mdo-box {
    font-size: 14px !important;
}
#mdo-banner .mdo-content h2 {
    font-size: clamp(18px, 1.45vw, 24px) !important;
    line-height: 1.22 !important;
}
#mdo-banner .mdo-content p,
#mdo-banner .mdo-row,
#mdo-banner .mdo-row small,
#mdo-banner .mdo-cookie-details,
#mdo-banner .mdo-cookie-table {
    font-size: 13px !important;
}
#mdo-banner input[type="checkbox"]:checked::after,
.mdo-shortcode-consent input[type="checkbox"]:checked::after {
    border-color: #ffffff !important;
    filter: drop-shadow(0 0 1px rgba(0,0,0,.95));
}
#mdo-banner .mdo-cookie-details summary {
    padding-top: 8px !important;
}


/* 4.5.37: Cornelia Vital / Divi Extra final border normalization.
   Visual-only: remove thick white grid/table borders in the cookie list without touching logic. */
body.et_extra_layout #mdo-banner .mdo-service-table-wrap,
body.et_extra_layout #mdo-banner .mdo-service-table,
body.et_extra_layout #mdo-banner .mdo-service-table table,
body.et_extra_layout #mdo-banner .mdo-service-table thead,
body.et_extra_layout #mdo-banner .mdo-service-table tbody,
body.et_extra_layout #mdo-banner .mdo-service-table tr,
body.et_extra_layout #mdo-banner .mdo-service-table th,
body.et_extra_layout #mdo-banner .mdo-service-table td,
body.et_extra_layout #mdo-banner .mdo-service-group,
body.et_extra_layout #mdo-banner .mdo-service-group *,
body.et_extra_layout #mdo-banner .mdo-cookie-details,
body.et_extra_layout #mdo-banner .mdo-cookie-details *,
body.et_extra_layout #mdo-banner .mdo-cookie-table,
body.et_extra_layout #mdo-banner .mdo-cookie-table *,
body.et_extra_layout #mdo-banner table,
body.et_extra_layout #mdo-banner table * {
    border-color: transparent !important;
    box-shadow: none !important;
    outline: 0 !important;
}

body.et_extra_layout #mdo-banner .mdo-service-table-wrap,
body.et_extra_layout #mdo-banner .mdo-service-table,
body.et_extra_layout #mdo-banner .mdo-service-table table,
body.et_extra_layout #mdo-banner .mdo-service-group,
body.et_extra_layout #mdo-banner .mdo-cookie-details,
body.et_extra_layout #mdo-banner .mdo-cookie-table {
    border: 0 !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    background-color: rgba(10,10,12,.98) !important;
    overflow: hidden !important;
}

body.et_extra_layout #mdo-banner .mdo-service-table th,
body.et_extra_layout #mdo-banner .mdo-service-table td,
body.et_extra_layout #mdo-banner .mdo-cookie-table th,
body.et_extra_layout #mdo-banner .mdo-cookie-table td {
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.06) !important;
    background-color: rgba(12,12,14,.98) !important;
}

body.et_extra_layout #mdo-banner .mdo-service-table tr:last-child th,
body.et_extra_layout #mdo-banner .mdo-service-table tr:last-child td,
body.et_extra_layout #mdo-banner .mdo-cookie-table tr:last-child th,
body.et_extra_layout #mdo-banner .mdo-cookie-table tr:last-child td {
    border-bottom: 0 !important;
}


/* 4.5.39: small iPhone mobile external-media blocker visibility/tap fix */
@media (max-width: 480px) and (orientation: portrait) {
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] {
        min-height: clamp(158px, 54vw, 210px) !important;
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        padding: 13px 12px !important;
        gap: 9px !important;
        justify-content: center !important;
        align-items: center !important;
        border-radius: 14px !important;
        pointer-events: auto !important;
        touch-action: auto !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] p {
        font-size: 13px !important;
        line-height: 1.32 !important;
        margin: 0 !important;
        max-width: 100% !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] button,
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] [data-mdo-control="external-media-accept"] {
        width: 100% !important;
        max-width: 280px !important;
        min-height: 44px !important;
        padding: 10px 13px !important;
        font-size: 13px !important;
        line-height: 1.18 !important;
        position: relative !important;
        z-index: 2147483647 !important;
        pointer-events: auto !important;
        touch-action: manipulation !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    .mdo-media-click-overlay {
        padding-bottom: env(safe-area-inset-bottom, 0px) !important;
    }

    .mdo-media-click-box {
        max-height: calc(100dvh - 12px - env(safe-area-inset-bottom, 0px)) !important;
        margin-bottom: calc(6px + env(safe-area-inset-bottom, 0px)) !important;
        padding: 24px 14px calc(18px + env(safe-area-inset-bottom, 0px)) 14px !important;
    }

    .mdo-media-click-box button:not(.mdo-media-click-close),
    .mdo-media-click-box [data-mdo-control="external-media-accept"] {
        min-height: 46px !important;
        font-size: 14px !important;
        pointer-events: auto !important;
        touch-action: manipulation !important;
    }
}


/* 4.5.40: Vital Divi Extra border hard reset + iPhone Vinca media blocker final fix.
   CSS-only visuals/tap sizing. No ARMember/Polylang/redirect logic touched. */
body #mdo-banner .mdo-service-table-wrap,
body #mdo-banner .mdo-service-table,
body #mdo-banner .mdo-service-table table,
body #mdo-banner .mdo-service-table thead,
body #mdo-banner .mdo-service-table tbody,
body #mdo-banner .mdo-service-table tr,
body #mdo-banner .mdo-service-table th,
body #mdo-banner .mdo-service-table td,
body #mdo-banner .mdo-cookie-table,
body #mdo-banner .mdo-cookie-table table,
body #mdo-banner .mdo-cookie-table thead,
body #mdo-banner .mdo-cookie-table tbody,
body #mdo-banner .mdo-cookie-table tr,
body #mdo-banner .mdo-cookie-table th,
body #mdo-banner .mdo-cookie-table td,
body #mdo-banner .mdo-service-group,
body #mdo-banner .mdo-service-group *,
body #mdo-banner .mdo-cookie-details,
body #mdo-banner .mdo-cookie-details * {
    outline: 0 !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

body #mdo-banner .mdo-service-table-wrap,
body #mdo-banner .mdo-service-table,
body #mdo-banner .mdo-service-table table,
body #mdo-banner .mdo-cookie-table,
body #mdo-banner .mdo-cookie-table table,
body #mdo-banner .mdo-cookie-details {
    border: 0 !important;
    border-color: transparent !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    background-clip: padding-box !important;
}

body #mdo-banner .mdo-service-table th,
body #mdo-banner .mdo-service-table td,
body #mdo-banner .mdo-cookie-table th,
body #mdo-banner .mdo-cookie-table td,
body #mdo-banner .mdo-service-group {
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 0 !important;
    border-color: rgba(255,255,255,.055) !important;
    background-clip: padding-box !important;
}

body #mdo-banner .mdo-service-table th,
body #mdo-banner .mdo-service-table td,
body #mdo-banner .mdo-cookie-table th,
body #mdo-banner .mdo-cookie-table td {
    border-bottom-width: 1px !important;
    border-bottom-style: solid !important;
}

body.et_extra_layout #mdo-banner .mdo-service-table th,
body.et_extra_layout #mdo-banner .mdo-service-table td,
body.et_extra_layout #mdo-banner .mdo-cookie-table th,
body.et_extra_layout #mdo-banner .mdo-cookie-table td,
body.et-db #mdo-banner .mdo-service-table th,
body.et-db #mdo-banner .mdo-service-table td,
body.et-db #mdo-banner .mdo-cookie-table th,
body.et-db #mdo-banner .mdo-cookie-table td {
    border-color: rgba(255,255,255,.045) !important;
    border-width: 0 0 1px 0 !important;
}

@media (max-width: 480px) and (orientation: portrait) {
    .mdo-media-placeholder[data-mdo-placeholder="external-media"],
    .mdo-minimal-media-placeholder {
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
        padding: 12px 10px calc(14px + env(safe-area-inset-bottom, 0px)) 10px !important;
        margin: 8px 0 !important;
        gap: 8px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        transform: none !important;
        pointer-events: auto !important;
        touch-action: auto !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] p,
    .mdo-minimal-media-placeholder p,
    .mdo-minimal-media-placeholder strong {
        max-width: 100% !important;
        margin: 0 !important;
        line-height: 1.25 !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] p,
    .mdo-minimal-media-placeholder p {
        font-size: 12.5px !important;
    }

    .mdo-minimal-media-placeholder strong {
        font-size: 14px !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] button,
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] [data-mdo-control="external-media-accept"],
    .mdo-minimal-media-placeholder button,
    .mdo-minimal-media-placeholder [data-mdo-control="external-media-accept"] {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        max-width: 260px !important;
        min-height: 42px !important;
        height: auto !important;
        padding: 9px 12px !important;
        margin: 0 auto !important;
        font-size: 12.5px !important;
        line-height: 1.15 !important;
        white-space: normal !important;
        overflow: visible !important;
        position: relative !important;
        z-index: 2147483647 !important;
        pointer-events: auto !important;
        touch-action: manipulation !important;
        -webkit-user-select: none !important;
        user-select: none !important;
    }

    [data-mdo-minimal-media-host="1"] {
        min-height: 0 !important;
        height: auto !important;
        overflow: visible !important;
    }
}


/* 4.5.41: Real compat-mode CSS targets for Divi Extra/Vital + mobile media placeholder hardening.
   Visual/touch-only. No ARMember/Polylang/redirect logic changed. */
body.et_extra_layout #mdo-compat-modal .mdo-compat-services,
body.et_extra_layout #mdo-compat-modal .mdo-compat-service-group,
body.et_extra_layout #mdo-compat-modal .mdo-compat-table-wrap,
body.et_extra_layout #mdo-compat-modal .mdo-compat-services table,
body.et_extra_layout #mdo-compat-modal .mdo-compat-services thead,
body.et_extra_layout #mdo-compat-modal .mdo-compat-services tbody,
body.et_extra_layout #mdo-compat-modal .mdo-compat-services tr,
body.et_extra_layout #mdo-compat-modal .mdo-compat-services th,
body.et_extra_layout #mdo-compat-modal .mdo-compat-services td,
body.et-db #mdo-compat-modal .mdo-compat-services,
body.et-db #mdo-compat-modal .mdo-compat-service-group,
body.et-db #mdo-compat-modal .mdo-compat-table-wrap,
body.et-db #mdo-compat-modal .mdo-compat-services table,
body.et-db #mdo-compat-modal .mdo-compat-services thead,
body.et-db #mdo-compat-modal .mdo-compat-services tbody,
body.et-db #mdo-compat-modal .mdo-compat-services tr,
body.et-db #mdo-compat-modal .mdo-compat-services th,
body.et-db #mdo-compat-modal .mdo-compat-services td {
    box-shadow: none !important;
    outline: 0 !important;
    text-shadow: none !important;
}
body.et_extra_layout #mdo-compat-modal .mdo-compat-service-group,
body.et-db #mdo-compat-modal .mdo-compat-service-group {
    border: 0 !important;
    background: rgba(10,10,12,.96) !important;
    overflow: hidden !important;
}
body.et_extra_layout #mdo-compat-modal .mdo-compat-services table,
body.et-db #mdo-compat-modal .mdo-compat-services table {
    border: 0 !important;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    background: rgba(10,10,12,.96) !important;
}
body.et_extra_layout #mdo-compat-modal .mdo-compat-services th,
body.et_extra_layout #mdo-compat-modal .mdo-compat-services td,
body.et-db #mdo-compat-modal .mdo-compat-services th,
body.et-db #mdo-compat-modal .mdo-compat-services td {
    border-left: 0 !important;
    border-right: 0 !important;
    border-top: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.045) !important;
    background-color: rgba(12,12,14,.98) !important;
    background-clip: padding-box !important;
}
body.et_extra_layout #mdo-compat-modal .mdo-compat-services thead th,
body.et-db #mdo-compat-modal .mdo-compat-services thead th,
body.et_extra_layout #mdo-compat-modal .mdo-compat-service-group h4,
body.et-db #mdo-compat-modal .mdo-compat-service-group h4 {
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.045) !important;
    background-color: rgba(18,18,22,.98) !important;
}
@media (max-width: 480px) and (orientation: portrait) {
    .mdo-media-placeholder[data-mdo-placeholder="external-media"],
    .mdo-minimal-media-placeholder {
        min-height: 128px !important;
        max-height: none !important;
        height: auto !important;
        overflow: visible !important;
        padding: 10px 9px calc(12px + env(safe-area-inset-bottom, 0px)) 9px !important;
        margin: 6px 0 !important;
        gap: 7px !important;
    }
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] p,
    .mdo-minimal-media-placeholder p {
        font-size: 12px !important;
        line-height: 1.18 !important;
    }
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] button,
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] [data-mdo-control="external-media-accept"],
    .mdo-minimal-media-placeholder button,
    .mdo-minimal-media-placeholder [data-mdo-control="external-media-accept"] {
        min-height: 40px !important;
        max-width: 240px !important;
        font-size: 12px !important;
        padding: 8px 10px !important;
        cursor: pointer !important;
    }
}


/* 4.5.42: iPhone portrait external-media placeholder anti-clipping.
   CSS-only visual layer; paired with JS inline-style override because older blocker hosts set inline min-height:180px!important. */
@media (max-width: 480px) and (orientation: portrait) {
    [data-mdo-minimal-media-host="1"],
    [data-mdo-minimal-media-host="1"] > *,
    .mdo-media-placeholder[data-mdo-placeholder="external-media"],
    .mdo-minimal-media-placeholder {
        max-height: none !important;
        overflow: visible !important;
        box-sizing: border-box !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"],
    .mdo-minimal-media-placeholder {
        min-height: auto !important;
        padding: 8px 8px calc(10px + env(safe-area-inset-bottom, 0px)) 8px !important;
        margin: 4px 0 !important;
        gap: 5px !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: center !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] p,
    .mdo-minimal-media-placeholder p {
        font-size: 11.5px !important;
        line-height: 1.12 !important;
        margin: 0 !important;
        max-width: 100% !important;
    }

    .mdo-minimal-media-placeholder strong {
        font-size: 12.5px !important;
        line-height: 1.1 !important;
        margin: 0 !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] button,
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] [data-mdo-control="external-media-accept"],
    .mdo-minimal-media-placeholder button,
    .mdo-minimal-media-placeholder [data-mdo-control="external-media-accept"] {
        min-height: 34px !important;
        max-width: 220px !important;
        width: auto !important;
        padding: 7px 10px !important;
        font-size: 11.5px !important;
        line-height: 1.1 !important;
        margin: 0 auto !important;
        position: relative !important;
        z-index: 2147483647 !important;
        pointer-events: auto !important;
        touch-action: manipulation !important;
    }
}


/* 4.5.43: iPhone portrait final compact blocker card.
   The previous fix made the button tappable, but small iPhones could still clip the lower edge
   inside Divi/video aspect-ratio wrappers. This keeps the whole hint card below 100px and
   relaxes wrapper clipping via the paired JS patch. */
@media (max-width: 480px) and (orientation: portrait) {
    [data-mdo-minimal-media-host="1"],
    [data-mdo-minimal-media-host="1"] *,
    .mdo-media-placeholder[data-mdo-placeholder="external-media"],
    .mdo-minimal-media-placeholder {
        box-sizing: border-box !important;
    }

    [data-mdo-minimal-media-host="1"] {
        min-height: 98px !important;
        height: auto !important;
        max-height: none !important;
        overflow: visible !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"],
    .mdo-minimal-media-placeholder {
        min-height: 88px !important;
        height: auto !important;
        max-height: 98px !important;
        overflow: visible !important;
        padding: 5px 7px 7px 7px !important;
        margin: 2px 0 !important;
        gap: 3px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        border-width: 1px !important;
        border-radius: 12px !important;
    }

    .mdo-minimal-media-placeholder strong {
        font-size: 11px !important;
        line-height: 1.05 !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] p,
    .mdo-minimal-media-placeholder p {
        font-size: 10.5px !important;
        line-height: 1.05 !important;
        margin: 0 !important;
        padding: 0 !important;
        max-width: 100% !important;
    }

    .mdo-media-placeholder[data-mdo-placeholder="external-media"] button,
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] [data-mdo-control="external-media-accept"],
    .mdo-minimal-media-placeholder button,
    .mdo-minimal-media-placeholder [data-mdo-control="external-media-accept"] {
        min-height: 28px !important;
        height: 28px !important;
        max-width: 210px !important;
        width: auto !important;
        padding: 5px 9px !important;
        font-size: 10.5px !important;
        line-height: 1 !important;
        margin: 0 auto !important;
        border-width: 1px !important;
    }
}


/* 4.5.44: iPhone/Vinca portrait anti-clip final pass.
   Some Divi video wrappers keep aspect-ratio/zero-height clipping alive on iPhone portrait.
   This override keeps the existing blocker logic, but turns the mobile placeholder into a
   self-contained compact card and removes the hard max-height that clipped the lower edge. */
@media (max-width: 480px) and (orientation: portrait) {
    [data-mdo-minimal-media-host="1"],
    .mdo-minimal-media-placeholder,
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] {
        max-height: none !important;
        overflow: visible !important;
        contain: none !important;
        clip-path: none !important;
        -webkit-mask-image: none !important;
        mask-image: none !important;
    }

    .mdo-minimal-media-placeholder,
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] {
        min-height: 74px !important;
        height: auto !important;
        padding: 6px 8px 8px 8px !important;
        margin: 0 !important;
        gap: 3px !important;
        border-radius: 10px !important;
    }

    .mdo-minimal-media-placeholder strong {
        font-size: 10.5px !important;
        line-height: 1 !important;
        margin: 0 !important;
    }

    .mdo-minimal-media-placeholder p,
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] p {
        font-size: 10px !important;
        line-height: 1.05 !important;
        margin: 0 !important;
        max-height: 22px !important;
        overflow: hidden !important;
    }

    .mdo-minimal-media-placeholder button,
    .mdo-minimal-media-placeholder [data-mdo-control="external-media-accept"],
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] button,
    .mdo-media-placeholder[data-mdo-placeholder="external-media"] [data-mdo-control="external-media-accept"] {
        min-height: 26px !important;
        height: 26px !important;
        max-height: 26px !important;
        padding: 4px 8px !important;
        font-size: 10px !important;
        line-height: 1 !important;
        margin: 0 auto !important;
    }
}


/* 4.5.56: after external-media consent, hints are physically removed by JS; this is the CSS safety net. */
.mdo-external-media-accepted-hidden,
.mdo-external-media-accepted-hidden * {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    height: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}


/* 4.5.65: ensure static YouTube placeholders on olartecoaching.ch/7cr.ch are visible above Divi 4/5 video thumbnails. */
[data-mdo-youtube-static-hint-host="1"] {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    overflow: visible !important;
    min-height: 220px !important;
}
[data-mdo-youtube-static-hint-host="1"] .et_pb_video_overlay,
[data-mdo-youtube-static-hint-host="1"] .et_pb_video_overlay_hover,
[data-mdo-youtube-static-hint-host="1"] .et_pb_video_play,
[data-mdo-youtube-static-hint-host="1"] .et_pb_video_overlay_hover a {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}
[data-mdo-youtube-static-hint="1"],
.mdo-yt-static-hint-462 {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: 100% !important;
    min-height: 220px !important;
    z-index: 2147483000 !important;
}

[data-mdo-divi-video-static-hint="1"] {
    height: auto !important;
    padding: 0 !important;
    background: transparent !important;
}
[data-mdo-divi-video-static-hint="1"] *:not(.mdo-yt-static-hint-462):not(.mdo-yt-static-hint-462 *) {
    max-height: none !important;
}
[data-mdo-divi-video-static-hint="1"] .mdo-yt-static-hint-462 {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    box-sizing: border-box !important;
}

/* 4.5.66: Divi 4 frontend video boxes use aspect-ratio padding; reset it so the liveyourvisions hint is visible on the frontend. */
html body [data-mdo-youtube-static-hint-host="1"],
html body [data-mdo-divi-video-static-hint="1"],
html body .et_pb_video[data-mdo-youtube-static-hint-host="1"],
html body .et_pb_video_box[data-mdo-youtube-static-hint-host="1"] {
    height: auto !important;
    min-height: 220px !important;
    padding: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    overflow: visible !important;
    background: transparent !important;
}
html body [data-mdo-youtube-static-hint-host="1"] > .mdo-media-placeholder,
html body [data-mdo-youtube-static-hint-host="1"] > .mdo-yt-static-hint-462,
html body [data-mdo-divi-video-static-hint="1"] > .mdo-media-placeholder,
html body [data-mdo-divi-video-static-hint="1"] > .mdo-yt-static-hint-462 {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 220px !important;
}


/* 4.5.70: gjlischka.ch / Themen King Frequency 1.0.4 consent UI isolation.
   Scope is intentionally narrow: normal non-ARM banner only, no ARMember/Commerce logic. */
body.r2y-frequency-theme-guard #mdo-banner,
body.r2y-frequency-theme-guard #mdo-banner * {
    box-sizing: border-box !important;
}

body.r2y-frequency-theme-guard #mdo-banner .mdo-box {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 980px !important;
    overflow: hidden !important;
}

body.r2y-frequency-theme-guard #mdo-banner .mdo-details:not(.mdo-hidden) {
    display: block !important;
    grid-template-columns: none !important;
    column-count: auto !important;
    gap: 0 !important;
    width: 100% !important;
    margin-top: 14px !important;
    padding-top: 12px !important;
}

body.r2y-frequency-theme-guard #mdo-banner .mdo-row,
body.r2y-frequency-theme-guard #mdo-banner label.mdo-row {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    grid-column: 1 / -1 !important;
    margin: 0 !important;
    padding: 12px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.12) !important;
    background: transparent !important;
    gap: 18px !important;
}

body.r2y-frequency-theme-guard #mdo-banner .mdo-row > span {
    display: block !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.r2y-frequency-theme-guard #mdo-banner .mdo-row strong,
body.r2y-frequency-theme-guard #mdo-banner .mdo-row small {
    display: block !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    text-align: left !important;
}

body.r2y-frequency-theme-guard #mdo-banner .mdo-row small {
    margin-top: 4px !important;
    opacity: .8 !important;
}

body.r2y-frequency-theme-guard #mdo-banner input[type="checkbox"] {
    -webkit-appearance: none !important;
    appearance: none !important;
    display: inline-block !important;
    flex: 0 0 18px !important;
    position: relative !important;
    float: none !important;
    clear: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    max-width: 18px !important;
    min-height: 18px !important;
    max-height: 18px !important;
    margin: 0 0 0 12px !important;
    padding: 0 !important;
    border: 2px solid var(--mdo-checkbox-active, var(--mdo-checkbox, var(--mdo-accent, #ffffff))) !important;
    border-radius: 5px !important;
    background: rgba(255,255,255,.08) !important;
    box-shadow: 0 0 0 1px rgba(0,0,0,.35) !important;
    transform: none !important;
}

body.r2y-frequency-theme-guard #mdo-banner input[type="checkbox"]::before {
    content: none !important;
    display: none !important;
}

body.r2y-frequency-theme-guard #mdo-banner input[type="checkbox"]:checked {
    background: var(--mdo-checkbox-active, var(--mdo-checkbox, var(--mdo-accent, #ffffff))) !important;
    border-color: var(--mdo-checkbox-active, var(--mdo-checkbox, var(--mdo-accent, #ffffff))) !important;
}

body.r2y-frequency-theme-guard #mdo-banner input[type="checkbox"]:checked::after {
    content: "" !important;
    position: absolute !important;
    left: 5px !important;
    top: 1px !important;
    width: 5px !important;
    height: 10px !important;
    border: solid #ffffff !important;
    border-width: 0 2px 2px 0 !important;
    transform: rotate(45deg) !important;
    filter: drop-shadow(0 0 1px rgba(0,0,0,.95));
}

body.r2y-frequency-theme-guard #mdo-banner .mdo-cookie-details {
    display: block !important;
    width: 100% !important;
    margin-top: 12px !important;
    padding: 0 !important;
    clear: both !important;
}

body.r2y-frequency-theme-guard #mdo-banner .mdo-actions {
    display: flex !important;
    flex-direction: row !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    margin-top: 16px !important;
}

body.r2y-frequency-theme-guard #mdo-banner .mdo-actions button {
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    margin: 0 !important;
}


/* 4.5.72: Consent header legal links stay visible against dark consent boxes.
   Scoped to plugin consent containers only; no global theme link colors are changed. */
#mdo-banner .mdo-links a,
#mdo-banner .mdo-links a:visited,
#mdo-banner .mdo-links a:hover,
#mdo-banner .mdo-links a:focus,
#mdo-banner .mdo-legal-links a,
#mdo-banner .mdo-legal-links a:visited,
#mdo-banner .mdo-legal-links a:hover,
#mdo-banner .mdo-legal-links a:focus,
#mdo-banner .mdo-footer-links a,
#mdo-banner .mdo-footer-links a:visited,
#mdo-banner .mdo-footer-links a:hover,
#mdo-banner .mdo-footer-links a:focus,
#mdo-compat-modal .mdo-compat-links a,
#mdo-compat-modal .mdo-compat-links a:visited,
#mdo-compat-modal .mdo-compat-links a:hover,
#mdo-compat-modal .mdo-compat-links a:focus {
    color: #ffffff !important;
    text-decoration: underline !important;
    text-decoration-color: rgba(255,255,255,.92) !important;
    text-underline-offset: 4px !important;
    opacity: 1 !important;
}
