.consent-banner[hidden],.consent-settings[hidden]{display:none!important}
.consent-banner{position:fixed;z-index:10020;right:16px;bottom:16px;left:16px;pointer-events:none}
.consent-banner__content{max-width:1180px;margin:auto;padding:20px;border:1px solid #d9b77f;border-radius:16px;background:#fffaf1;box-shadow:0 12px 38px rgba(22,54,62,.24);display:grid;grid-template-columns:minmax(0,1fr) minmax(500px,.9fr);gap:22px;align-items:center;pointer-events:auto}
.consent-banner h2,.consent-settings h2{margin:0;color:var(--ink)}
.consent-banner p{margin:7px 0 0;line-height:1.5}
.consent-banner__legal{display:flex;gap:18px;font-size:14px}
.consent-banner__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.consent-action{min-height:48px;width:100%;padding:10px 13px;font-size:14px}
.consent-settings{position:fixed;z-index:10030;inset:0;display:grid;place-items:center;padding:20px}
.consent-settings__backdrop{position:absolute;inset:0;background:rgba(8,34,40,.62)}
.consent-settings__panel{position:relative;width:min(760px,100%);max-height:min(760px,calc(100vh - 40px));overflow:auto;padding:24px;border-radius:16px;background:#fffaf1;box-shadow:0 18px 54px rgba(0,0,0,.3);outline:0}
.consent-settings__heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
.consent-settings__close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #9bbbc1;border-radius:50%;background:#fff;color:var(--ink);font-size:28px;cursor:pointer}
.consent-category{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:center;margin-top:14px;padding:16px;border:1px solid #dfc9a4;border-radius:12px;background:#fff}
.consent-category p{margin:5px 0;line-height:1.45}.consent-category small{color:var(--muted)}
.consent-switch{display:grid;justify-items:center;gap:5px;min-width:94px;font-size:12px;font-weight:750}.consent-switch input{width:24px;height:24px;accent-color:var(--teal-dark)}
.consent-settings__privacy{margin:18px 0}.consent-settings__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.consent-settings__actions .button{min-height:46px}
.consent-banner button:focus-visible,.consent-settings button:focus-visible,.consent-settings input:focus-visible,.footer-consent-link:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
body.consent-settings-open{overflow:hidden}
@media(max-width:900px){.consent-banner__content{grid-template-columns:1fr}.consent-banner__actions{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:640px){.consent-banner{right:8px;bottom:8px;left:8px}.consent-banner__content{padding:15px;gap:13px}.consent-banner__copy{font-size:14px}.consent-banner__actions{grid-template-columns:1fr}.consent-action{min-height:44px}.consent-settings{padding:8px}.consent-settings__panel{max-height:calc(100vh - 16px);padding:17px}.consent-category{grid-template-columns:1fr;padding:13px}.consent-switch{display:flex;justify-content:flex-start;align-items:center}.consent-settings__actions{grid-template-columns:1fr}}
 .consent-banner,.consent-settings{--ink:#16363e;--orange:#d87916;color:#16363e;font-family:inherit;font-size:15px;line-height:1.5;text-align:left}
 .consent-banner a,.consent-settings a{color:#194d5a;text-decoration:underline}.consent-banner .button,.consent-settings .button,.consent-payment-gate .button{display:flex;justify-content:center;align-items:center;padding:11px 14px;border:1px solid #194d5a;background:#194d5a;color:white;border-radius:8px;font:600 14px/1.3 inherit;cursor:pointer;min-height:46px;text-align:center}
 .consent-banner .button:hover,.consent-settings .button:hover{background:#103b46}.consent-banner__content{max-height:calc(100dvh - 32px);overflow:auto}.consent-settings__panel{max-height:calc(100dvh - 40px)}
 .footer-consent-link{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer;text-decoration:underline}.consent-payment-gate{padding:16px;margin:12px 0;background:#f2f7f6;border:1px solid #bccfcf;border-radius:12px;font-size:14px;line-height:1.45;color:#16363e}.consent-payment-gate p{margin:0 0 10px}.consent-category small{display:block}.consent-switch input{width:20px;height:20px;accent-color:#194d5a}
 