:root{--consent-primary:#214a38;--consent-dark:#173528;--consent-accent:#e8c472;--consent-accent-bright:#f2d58f;--consent-cream:#fffaf0;--consent-ink:#4f5d55;--consent-muted:#68776f}
.consent-overlay,.consent-overlay *{box-sizing:border-box}
html.consent-open,html.consent-open body{overflow:hidden}
.consent-overlay{position:fixed;inset:0;z-index:2147483646;display:grid;place-items:center;overflow-y:auto;padding:30px;background:#101e18b3;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);opacity:0;visibility:hidden;transition:opacity .28s ease,visibility .28s ease}
.consent-overlay[hidden]{display:none!important}.consent-overlay.is-visible{opacity:1;visibility:visible}
.consent-dialog{position:relative;width:610px;max-width:100%;max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px);overflow:auto;padding:28px 34px 24px;color:var(--consent-ink);text-align:center;background:radial-gradient(circle at 50% -25%,#e8c47252,transparent 42%),var(--consent-cream);border:1px solid #ffffffb8;border-top:7px solid var(--consent-accent);border-radius:30px;box-shadow:0 30px 90px #0816106b,0 0 0 1px #e8c4722e;transform:translateY(18px) scale(.985);transition:transform .32s ease}
.consent-overlay.is-visible .consent-dialog{transform:none}
.consent-symbol{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 12px;color:var(--consent-primary);background:linear-gradient(145deg,#fffdf7,#f6ebcf);border:1px solid #214a382e;border-radius:50%;box-shadow:0 8px 24px #214a381a}
.consent-symbol svg{width:32px;height:32px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.consent-eyebrow{margin:0 0 9px;color:var(--consent-primary);text-transform:uppercase;letter-spacing:.18em;font:800 10px Arial,sans-serif}
.consent-dialog h2{margin:0;color:var(--consent-dark);font:400 clamp(34px,3.4vw,40px)/1.08 Georgia,"Times New Roman",serif;letter-spacing:-.025em;white-space:nowrap}
.consent-copy{max-width:525px;margin:18px auto 0;color:var(--consent-ink);font:15.5px/1.58 Arial,sans-serif;text-wrap:balance}
.consent-assurance{max-width:525px;margin:10px auto 0;color:var(--consent-muted);font:13px/1.5 Arial,sans-serif;text-wrap:balance}
.consent-actions{display:grid;gap:12px;max-width:470px;margin:23px auto 0}
.consent-button{width:100%;min-height:53px;padding:13px 22px;border-radius:999px;cursor:pointer;font:14px Arial,sans-serif;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.consent-button:hover{transform:translateY(-1px)}
.consent-accept{color:#172d23;background:linear-gradient(135deg,var(--consent-accent-bright),var(--consent-accent));border:1px solid #4a36162e;box-shadow:0 10px 25px #7b591838;font-weight:800}.consent-decline{color:var(--consent-dark);background:#ffffff73;border:1px solid #214a3847;font-weight:400}
.consent-privacy-link{display:inline-block;margin-top:13px;color:var(--consent-muted);font:12px Arial,sans-serif;text-decoration:underline;text-underline-offset:3px}
.consent-settings-link{margin-left:14px;padding:0 0 2px;color:inherit;background:transparent;border:0;border-bottom:1px solid currentColor;cursor:pointer;font:inherit;opacity:.82}.consent-settings-floating{position:fixed;right:14px;bottom:14px;z-index:1000;margin:0;padding:8px 11px;color:#fff;background:#173528d9;border:1px solid #ffffff55;border-radius:999px;font:11px Arial,sans-serif}
.consent-button:focus-visible,.consent-privacy-link:focus-visible,.consent-settings-link:focus-visible{outline:3px solid var(--consent-accent);outline-offset:3px}
@media(max-width:860px){.consent-dialog{padding-inline:clamp(25px,7vw,56px)}.consent-dialog h2{white-space:normal}}
@media(max-width:560px){.consent-overlay{padding:14px}.consent-dialog{max-height:calc(100vh - 28px);max-height:calc(100dvh - 28px);padding:24px 21px 20px;border-radius:20px}.consent-symbol{width:48px;height:48px;margin-bottom:10px}.consent-dialog h2{font-size:clamp(32px,9.5vw,41px)}.consent-copy{margin-top:16px;font-size:14px}.consent-assurance{font-size:12.5px}.consent-actions{margin-top:20px}.consent-button{min-height:48px}}
