/* Consent is independent of Bootstrap/MDB and follows the public form palette. */
.ca-consent { color:#25343b; background:#fff; font:400 14px/1.5 system-ui,sans-serif; letter-spacing:0; box-sizing:border-box; }
.ca-consent *, .ca-consent *::before, .ca-consent *::after { box-sizing:border-box; letter-spacing:0; }
.ca-consent[hidden] { display:none !important; }
.ca-consent-banner { position:fixed; z-index:1090; inset:auto 0 0; padding:20px 24px; border-top:2px solid #1f4e5f; box-shadow:0 -3px 18px #25343b15; }
.ca-consent-inner { max-width:1140px; margin:auto; display:flex; align-items:center; gap:24px; }
.ca-consent-copy { flex:1; min-width:0; }
.ca-consent h2 { font:700 18px/1.4 system-ui,sans-serif; margin:0 0 8px; color:#1f4e5f; }
.ca-consent p { margin:0 0 8px; }
.ca-consent a { color:#1f4e5f; text-decoration:underline; }
.ca-consent-actions { display:flex; gap:10px; flex-wrap:wrap; }
.ca-consent button { display:inline-flex; align-items:center; justify-content:center; border:1px solid #1f4e5f; color:#1f4e5f; background:#fff; border-radius:6px; min-height:44px; padding:10px 18px; font:600 14px/1.4 system-ui,sans-serif; cursor:pointer; text-align:center; }
.ca-consent-actions button { flex:1; min-width:110px; }
.ca-consent button:hover { background:#edf4f6; }
.ca-consent :is(button,a):focus-visible { outline:3px solid #d9a72f; outline-offset:3px; }
.ca-consent-dialog { border:1px solid #afbec4; border-radius:8px; padding:24px; width:calc(100% - 32px); max-width:520px; max-height:calc(100dvh - 32px); overflow:auto; }
.ca-consent-dialog::backdrop { background:#17272d80; }
.ca-consent-dialog .ca-consent-actions { margin-top:18px; }
.ca-consent-close { margin-top:14px; width:100%; }
.ca-consent-status { padding:10px 12px; background:#edf4f6; border-left:3px solid #1f4e5f; }
.ca-consent-link { font:inherit; color:inherit; border:0; background:none; text-decoration:underline; cursor:pointer; padding:0; }
@media(max-width:767px) {
 .ca-consent-banner { padding:16px; max-height:65dvh; overflow:auto; }
 .ca-consent-inner { display:block; }
 .ca-consent-actions { margin-top:12px; }
 .ca-consent-dialog { padding:20px; }
}
