.rso-cookie-banner[hidden],
.rso-cookie-settings[hidden] { display: none !important; }
.rso-cookie-banner {
    position: fixed;
    z-index: 100000;
    left: max(16px, env(safe-area-inset-left));
    right: max(16px, env(safe-area-inset-right));
    bottom: max(16px, env(safe-area-inset-bottom));
    display: flex;
    align-items: center;
    gap: 24px;
    max-width: 960px;
    margin: 0 auto;
    padding: 20px 24px;
    border: 1px solid rgba(232, 205, 159, .3);
    border-radius: 12px;
    background: rgba(22, 22, 22, .97);
    color: #f5f1e8;
    box-shadow: 0 12px 48px rgba(0, 0, 0, .4);
    backdrop-filter: blur(12px);
    font: 400 13px/1.6 Montserrat, sans-serif;
    text-align: left;
}
.rso-cookie-banner p { flex: 1; margin: 0; font: inherit; color: inherit; }
.rso-cookie-banner p a { color: #e8cd9f; text-decoration: underline; text-underline-offset: 3px; white-space: nowrap; }
.rso-cookie-actions { display: flex; flex-shrink: 0; gap: 10px; }
.rso-cookie-actions button {
    min-height: 44px;
    padding: 10px 18px;
    border: 1px solid #a99b84;
    border-radius: 6px;
    background: transparent;
    color: #f5f1e8;
    font: 600 12px/1.4 Montserrat, sans-serif;
    cursor: pointer;
}
.rso-cookie-actions [data-cookie-choice="accepted"] { background: #e8cd9f; border-color: #e8cd9f; color: #171717; }
.rso-cookie-actions button:hover { border-color: #fff; }
.rso-cookie-actions button:focus-visible,
.rso-cookie-settings:focus-visible,
.rso-cookie-banner a:focus-visible { outline: 2px solid #e8cd9f; outline-offset: 4px; }
.rso-cookie-settings { padding: 0; border: 0; background: none; color: inherit; font: inherit; text-decoration: underline; cursor: pointer; }
/* GTM's CookieYes tag runs only after our gate opens; its engine is synced, not its UI. */
.rso-cookie-managed .cky-consent-container,
.rso-cookie-managed .cky-btn-revisit-wrapper,
.rso-cookie-managed .cky-modal,
.rso-cookie-managed .cky-overlay { display: none !important; }
@media (max-width: 700px) {
    .rso-cookie-banner { flex-direction: column; align-items: stretch; gap: 14px; padding: 18px; }
    .rso-cookie-actions button { flex: 1; }
}
