/* Independent, nonmodal notice: no backdrop, scroll lock or page-wide hit area. */
.cms-cookie-notice {
    position: fixed;
    inset: auto auto max(20px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));
    z-index: 110;
    box-sizing: border-box;
    width: min(420px, calc(100vw - 40px));
    max-height: calc(100dvh - 40px);
    overflow: auto;
    padding: 20px;
    border: 1px solid #0d203126;
    border-radius: 16px;
    background: #fffdf8;
    color: #0d2031;
    box-shadow: 0 8px 32px #0d203124;
    font-family: Manrope, Arial, sans-serif;
    text-align: start;
}
.cms-cookie-notice[hidden] { display: none !important; }
.cms-cookie-notice h2 { margin: 0 0 8px; color: #0d2031; font: 700 15px/1.4 Manrope, Arial, sans-serif; letter-spacing: 0; }
.cms-cookie-notice p { margin: 0; color: #40515e; font: 400 12px/1.65 Manrope, Arial, sans-serif; }
.cms-cookie-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; margin-top: 14px; }
.cms-cookie-actions button, .cms-cookie-actions a { box-sizing: border-box; min-height: 44px; font: 600 12px/1.35 Manrope, Arial, sans-serif; }
.cms-cookie-actions button { cursor: pointer; border-radius: 24px; padding: 10px 15px; margin: 0; width: auto; letter-spacing: 0; text-transform: none; }
.cms-cookie-actions .cms-cookie-accept { background: #0d2031; color: #fffdf8; border: 1px solid #0d2031; }
.cms-cookie-actions .cms-cookie-accept:hover { background: #24465a; }
.cms-cookie-actions .cms-cookie-later { background: transparent; color: #0d2031; border: 1px solid #0d203140; }
.cms-cookie-actions .cms-cookie-later:hover { background: #0d20310a; }
.cms-cookie-actions a { display: inline-flex; align-items: center; color: #284f59; text-decoration: underline; text-underline-offset: 3px; }
.cms-cookie-actions :focus-visible { outline: 2px solid #287e71; outline-offset: 3px; }
@media (max-width: 600px) {
    .cms-cookie-notice { inset: auto 12px max(82px, calc(env(safe-area-inset-bottom) + 70px)) 12px; width: auto; max-height: calc(100dvh - 110px); padding: 16px; border-radius: 14px; }
}
