/**
 * BND Push frontend styles.
 */
.bnd-push-optin {
    box-sizing: border-box;
    display: flex;
    flex-direction: var(--bnd-optin-layout, column);
    align-items: stretch;
    justify-content: flex-start;
    gap: var(--bnd-optin-gap, 24px);
    width: 100%;
    min-height: 205px;
    padding: var(--bnd-optin-padding, 24px);
    border: var(--bnd-optin-border-width, 0) solid var(--bnd-optin-border-color, #FFFFFF);
    border-radius: var(--bnd-optin-radius, 8px);
    background: var(--bnd-optin-bg, #FFFFFF);
    box-shadow: var(--bnd-optin-shadow, 0 8px 40px rgba(0,0,0,.20));
    color: var(--bnd-optin-text-color, #333333);
    font-family: "Museosans", Arial, sans-serif;
    font-size: var(--bnd-optin-text-size, 16px);
    font-weight: 300;
    line-height: 1.45;
    text-align: var(--bnd-optin-text-align, left);
}
.bnd-push-optin *, .bnd-push-optin *::before, .bnd-push-optin *::after { box-sizing: border-box; }
.bnd-push-optin__content {
    display: flex;
    flex: 0 0 auto;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
}
.bnd-push-optin__title {
    width: 100%;
    margin: 0;
    color: var(--bnd-optin-title-color, #333333);
    font-family: "MuseoSlab", Georgia, serif;
    font-size: var(--bnd-optin-title-size, 24px);
    font-style: normal;
    font-weight: 500;
    line-height: 1.3;
    letter-spacing: -0.01em;
}
.bnd-push-optin__text, .bnd-push-optin__status {
    width: 100%;
    margin: 0;
    color: var(--bnd-optin-text-color, #333333);
    font-family: "Museosans", Arial, sans-serif;
    font-size: var(--bnd-optin-text-size, 16px);
    font-weight: 300;
    line-height: 1.45;
}
.bnd-push-optin__status:not(:empty) { margin-top: 0; font-size: 14px; }
.bnd-push-optin__actions {
    display: flex;
    flex: 0 0 auto;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 24px;
    width: 100%;
    min-width: 0;
    min-height: 48px;
}
.bnd-push-optin button.bnd-push-optin__button,
.bnd-push-optin button.bnd-push-optin__button:hover,
.bnd-push-optin button.bnd-push-optin__button:active {
    all: unset !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    order: 1 !important;
    align-items: center !important;
    justify-content: center !important;
    width: var(--bnd-optin-button-width, auto) !important;
    min-width: min(202px, 100%) !important;
    min-height: 48px !important;
    padding: var(--bnd-optin-button-py, 12px) var(--bnd-optin-button-px, 20px) !important;
    border: var(--bnd-optin-button-border-width, 0) solid var(--bnd-optin-button-border-color, #07806D) !important;
    border-radius: var(--bnd-optin-button-radius, 8px) !important;
    background: var(--bnd-optin-button-bg, #07806D) !important;
    background-image: none !important;
    color: var(--bnd-optin-button-color, #FFFFFF) !important;
    font-family: "Museosans", Arial, sans-serif !important;
    font-size: var(--bnd-optin-button-size, 16px) !important;
    font-style: normal !important;
    font-weight: 500 !important;
    letter-spacing: .01em !important;
    line-height: 1.5 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-shadow: none !important;
    white-space: normal !important;
    cursor: pointer !important;
    box-shadow: none !important;
    transform: none !important;
    translate: none !important;
    scale: none !important;
    rotate: none !important;
    filter: none !important;
    opacity: 1 !important;
    outline: 0 !important;
    animation: none !important;
    transition: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}
.bnd-push-optin button.bnd-push-optin__button::before,
.bnd-push-optin button.bnd-push-optin__button::after,
.bnd-push-optin button.bnd-push-optin__button:hover::before,
.bnd-push-optin button.bnd-push-optin__button:hover::after { content: none !important; display: none !important; }
.bnd-push-optin button.bnd-push-optin__button:focus-visible { outline: 3px solid #07568A !important; outline-offset: 3px !important; }
.bnd-push-optin button.bnd-push-optin__button:disabled,
.bnd-push-optin button.bnd-push-optin__button:disabled:hover {
    background: #CDCDCD !important;
    border-color: #CDCDCD !important;
    color: #333333 !important;
    cursor: not-allowed !important;
}
.bnd-push-optin button.bnd-push-optin__dismiss,
.bnd-push-optin button.bnd-push-optin__dismiss:hover,
.bnd-push-optin button.bnd-push-optin__dismiss:active {
    all: unset !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    order: 0 !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 48px !important;
    margin: 0 !important;
    padding: 12px 12px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    background-image: none !important;
    color: var(--bnd-optin-dismiss-color, #333333) !important;
    font-family: "Museosans", Arial, sans-serif !important;
    font-size: 16px !important;
    font-style: normal !important;
    font-weight: 500 !important;
    letter-spacing: .01em !important;
    line-height: 1.5 !important;
    text-align: var(--bnd-optin-dismiss-align, center) !important;
    text-decoration: none !important;
    text-shadow: none !important;
    white-space: nowrap !important;
    cursor: pointer !important;
    box-shadow: none !important;
    transform: none !important;
    translate: none !important;
    scale: none !important;
    rotate: none !important;
    filter: none !important;
    opacity: 1 !important;
    outline: 0 !important;
    animation: none !important;
    transition: none !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}
.bnd-push-optin button.bnd-push-optin__dismiss::before,
.bnd-push-optin button.bnd-push-optin__dismiss::after,
.bnd-push-optin button.bnd-push-optin__dismiss:hover::before,
.bnd-push-optin button.bnd-push-optin__dismiss:hover::after { content: none !important; display: none !important; }
.bnd-push-optin button.bnd-push-optin__dismiss:focus-visible { outline: 3px solid #07568A !important; outline-offset: 2px !important; }
.bnd-push-optin--layout-horizontal { min-height: 0; align-items: center; }
.bnd-push-optin--layout-horizontal .bnd-push-optin__actions { width: auto; flex: 0 0 auto; }
.bnd-push-optin--layout-vertical { align-items: stretch; }

.bnd-push-global {
    z-index: var(--bnd-global-z-index, 9998);
    width: min(var(--bnd-global-max-width, 440px), calc(100vw - var(--bnd-global-offset-x, 24px) - var(--bnd-global-offset-x, 24px)));
}
.bnd-push-global[data-bnd-push-desktop-mode="fixed"] { position: fixed; transform: none; }
.bnd-push-global[data-bnd-push-desktop-mode="fixed"][data-bnd-push-desktop-position="bottom-right"] { right: var(--bnd-global-offset-x, 24px); bottom: var(--bnd-global-offset-y, 24px); left: auto; top: auto; }
.bnd-push-global[data-bnd-push-desktop-mode="fixed"][data-bnd-push-desktop-position="bottom-left"] { left: var(--bnd-global-offset-x, 24px); bottom: var(--bnd-global-offset-y, 24px); right: auto; top: auto; }
.bnd-push-global[data-bnd-push-desktop-mode="fixed"][data-bnd-push-desktop-position="top-right"] { right: var(--bnd-global-offset-x, 24px); top: var(--bnd-global-offset-y, 24px); left: auto; bottom: auto; }
.bnd-push-global[data-bnd-push-desktop-mode="fixed"][data-bnd-push-desktop-position="top-left"] { left: var(--bnd-global-offset-x, 24px); top: var(--bnd-global-offset-y, 24px); right: auto; bottom: auto; }
.bnd-push-global[data-bnd-push-desktop-mode="fixed"][data-bnd-push-desktop-position="top-center"] { left: 50%; top: var(--bnd-global-offset-y, 24px); right: auto; bottom: auto; transform: translateX(-50%); }
.bnd-push-global[data-bnd-push-desktop-mode="fixed"][data-bnd-push-desktop-position="center-center"] { left: 50%; top: 50%; right: auto; bottom: auto; transform: translate(-50%, -50%); }
.bnd-push-global[data-bnd-push-desktop-mode="fixed"][data-bnd-push-desktop-position="center-right"] { right: var(--bnd-global-offset-x, 24px); top: 50%; left: auto; bottom: auto; transform: translateY(-50%); }
.bnd-push-global[data-bnd-push-desktop-mode="fixed"][data-bnd-push-desktop-position="bottom-center"] { left: 50%; bottom: var(--bnd-global-offset-y, 24px); right: auto; top: auto; transform: translateX(-50%); }
.bnd-push-global[data-bnd-push-desktop-mode="fixed"][data-bnd-push-desktop-position="center-left"] { left: var(--bnd-global-offset-x, 24px); top: 50%; right: auto; bottom: auto; transform: translateY(-50%); }
.bnd-push-global[data-bnd-push-desktop-mode="relative"] { position: relative; transform: none; margin-top: var(--bnd-global-offset-y, 24px); margin-bottom: var(--bnd-global-offset-y, 24px); }
.bnd-push-global[data-bnd-push-desktop-mode="relative"][data-bnd-push-desktop-align="left"] { margin-left: var(--bnd-global-offset-x, 24px); margin-right: auto; }
.bnd-push-global[data-bnd-push-desktop-mode="relative"][data-bnd-push-desktop-align="center"] { margin-left: auto; margin-right: auto; }
.bnd-push-global[data-bnd-push-desktop-mode="relative"][data-bnd-push-desktop-align="right"] { margin-left: auto; margin-right: var(--bnd-global-offset-x, 24px); }

@media (max-width: 640px) {
    .bnd-push-optin {
        min-height: 0;
        flex-direction: var(--bnd-mobile-layout, column);
        align-items: stretch;
        gap: var(--bnd-mobile-gap, 20px);
        padding: var(--bnd-mobile-padding, 20px);
        border-width: var(--bnd-mobile-border-width, 0);
        border-color: var(--bnd-mobile-border-color, #FFFFFF);
        border-radius: var(--bnd-mobile-radius, 8px);
        background: var(--bnd-mobile-bg, #FFFFFF);
        box-shadow: var(--bnd-mobile-shadow, 0 8px 32px rgba(0,0,0,.18));
        color: var(--bnd-mobile-text-color, #333333);
        font-size: var(--bnd-mobile-text-size, 16px);
        text-align: var(--bnd-mobile-text-align, left);
    }
    .bnd-push-optin__title { color: var(--bnd-mobile-title-color, #333333); font-size: var(--bnd-mobile-title-size, 22px); }
    .bnd-push-optin__text, .bnd-push-optin__status { color: var(--bnd-mobile-text-color, #333333); font-size: var(--bnd-mobile-text-size, 16px); }
    .bnd-push-optin__actions { flex-direction: column; align-items: stretch; gap: 12px; }
    .bnd-push-optin button.bnd-push-optin__button,
    .bnd-push-optin button.bnd-push-optin__button:hover,
    .bnd-push-optin button.bnd-push-optin__button:active {
        width: var(--bnd-mobile-button-width, 100%) !important;
        min-width: 0 !important;
        padding: var(--bnd-mobile-button-py, 12px) var(--bnd-mobile-button-px, 20px) !important;
        border-width: var(--bnd-mobile-button-border-width, 0) !important;
        border-color: var(--bnd-mobile-button-border-color, #07806D) !important;
        border-radius: var(--bnd-mobile-button-radius, 8px) !important;
        background: var(--bnd-mobile-button-bg, #07806D) !important;
        color: var(--bnd-mobile-button-color, #FFFFFF) !important;
        font-size: var(--bnd-mobile-button-size, 16px) !important;
    }
    .bnd-push-optin button.bnd-push-optin__dismiss,
    .bnd-push-optin button.bnd-push-optin__dismiss:hover,
    .bnd-push-optin button.bnd-push-optin__dismiss:active {
        width: 100% !important;
        color: var(--bnd-mobile-dismiss-color, #333333) !important;
        text-align: var(--bnd-mobile-dismiss-align, center) !important;
    }
    .bnd-push-global { z-index: var(--bnd-mobile-z-index, 9998); width: min(var(--bnd-mobile-max-width, 440px), calc(100vw - var(--bnd-mobile-offset-x, 12px) - var(--bnd-mobile-offset-x, 12px))); }
    .bnd-push-global[data-bnd-push-mobile-mode="fixed"] { position: fixed; margin: 0; transform: none; }
    .bnd-push-global[data-bnd-push-mobile-mode="fixed"][data-bnd-push-mobile-position="bottom-right"] { right: var(--bnd-mobile-offset-x, 12px); bottom: calc(var(--bnd-mobile-offset-y, 12px) + env(safe-area-inset-bottom, 0px)); left: auto; top: auto; transform: none; }
    .bnd-push-global[data-bnd-push-mobile-mode="fixed"][data-bnd-push-mobile-position="bottom-left"] { left: var(--bnd-mobile-offset-x, 12px); bottom: calc(var(--bnd-mobile-offset-y, 12px) + env(safe-area-inset-bottom, 0px)); right: auto; top: auto; transform: none; }
    .bnd-push-global[data-bnd-push-mobile-mode="fixed"][data-bnd-push-mobile-position="top-right"] { right: var(--bnd-mobile-offset-x, 12px); top: var(--bnd-mobile-offset-y, 12px); left: auto; bottom: auto; transform: none; }
    .bnd-push-global[data-bnd-push-mobile-mode="fixed"][data-bnd-push-mobile-position="top-left"] { left: var(--bnd-mobile-offset-x, 12px); top: var(--bnd-mobile-offset-y, 12px); right: auto; bottom: auto; transform: none; }
    .bnd-push-global[data-bnd-push-mobile-mode="fixed"][data-bnd-push-mobile-position="top-center"] { left: 50%; top: var(--bnd-mobile-offset-y, 12px); right: auto; bottom: auto; transform: translateX(-50%); }
    .bnd-push-global[data-bnd-push-mobile-mode="fixed"][data-bnd-push-mobile-position="center-center"] { left: 50%; top: 50%; right: auto; bottom: auto; transform: translate(-50%, -50%); }
    .bnd-push-global[data-bnd-push-mobile-mode="fixed"][data-bnd-push-mobile-position="center-right"] { right: var(--bnd-mobile-offset-x, 12px); top: 50%; left: auto; bottom: auto; transform: translateY(-50%); }
    .bnd-push-global[data-bnd-push-mobile-mode="fixed"][data-bnd-push-mobile-position="bottom-center"] { left: 50%; bottom: calc(var(--bnd-mobile-offset-y, 12px) + env(safe-area-inset-bottom, 0px)); right: auto; top: auto; transform: translateX(-50%); }
    .bnd-push-global[data-bnd-push-mobile-mode="fixed"][data-bnd-push-mobile-position="center-left"] { left: var(--bnd-mobile-offset-x, 12px); top: 50%; right: auto; bottom: auto; transform: translateY(-50%); }
    .bnd-push-global[data-bnd-push-mobile-mode="relative"][data-bnd-push-mobile-position] { position: relative; top: auto; right: auto; bottom: auto; left: auto; transform: none; margin-top: var(--bnd-mobile-offset-y, 12px); margin-bottom: var(--bnd-mobile-offset-y, 12px); }
    .bnd-push-global[data-bnd-push-mobile-mode="relative"][data-bnd-push-mobile-align="left"] { margin-left: var(--bnd-mobile-offset-x, 12px); margin-right: auto; }
    .bnd-push-global[data-bnd-push-mobile-mode="relative"][data-bnd-push-mobile-align="center"] { margin-left: auto; margin-right: auto; }
    .bnd-push-global[data-bnd-push-mobile-mode="relative"][data-bnd-push-mobile-align="right"] { margin-left: auto; margin-right: var(--bnd-mobile-offset-x, 12px); }
}
@media (prefers-reduced-motion: reduce) { .bnd-push-optin * { scroll-behavior: auto !important; transition: none !important; } }
