.consent-shell{position:relative;z-index:1000;font-family:"Avenir Next",Avenir,"Segoe UI",system-ui,sans-serif}.consent-banner{position:fixed;z-index:1001;right:20px;bottom:20px;left:20px;display:grid;max-width:1180px;grid-template-columns:1fr auto;align-items:end;gap:34px;margin:auto;padding:26px;color:#172c2b;border:1px solid rgba(23,44,43,.15);border-radius:24px;background:rgba(250,249,246,.97);box-shadow:0 28px 90px rgba(4,19,38,.25);backdrop-filter:blur(18px)}.consent-banner[hidden],.consent-modal[hidden]{display:none}.consent-banner h2,.consent-panel h2{margin:0;font-size:clamp(24px,3vw,38px);font-weight:650;letter-spacing:-.045em;line-height:1.05}.consent-banner p:not(.consent-eyebrow){max-width:740px;margin:12px 0 0;color:#65716d;font-size:13px}.consent-eyebrow{margin:0 0 8px;color:#55766f;font-size:9px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.consent-actions button,.consent-link{min-height:48px;padding:0 17px;border:1px solid rgba(23,44,43,.18);border-radius:999px;color:#172c2b;background:#fff;font-size:12px;font-weight:760;cursor:pointer}.consent-actions button:last-child{color:#fff;border-color:#102c2d;background:#102c2d}.consent-link{min-height:0;margin-top:12px;padding:0;border:0;border-radius:0;color:#55766f;background:transparent;text-decoration:underline;text-underline-offset:3px}.consent-modal{position:fixed;z-index:1002;inset:0;display:grid;padding:20px;background:rgba(4,19,38,.72);backdrop-filter:blur(8px);place-items:center}.consent-panel{position:relative;width:min(700px,100%);max-height:calc(100svh - 40px);padding:34px;border-radius:26px;background:#f8f7f3;box-shadow:0 35px 110px rgba(0,0,0,.4);overflow:auto}.consent-close{position:absolute;top:18px;right:18px;display:grid;width:42px;height:42px;padding:0;border:1px solid rgba(23,44,43,.15);border-radius:50%;background:#fff;font-size:24px;cursor:pointer;place-items:center}.consent-category{display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;margin-top:18px;padding:20px;border:1px solid rgba(23,44,43,.13);border-radius:18px;background:#fff}.consent-category span b,.consent-category span small{display:block}.consent-category span small{margin-top:4px;color:#65716d;font-size:12px}.consent-category strong{color:#55766f;font-size:11px}.consent-category input{position:absolute;opacity:0}.consent-category i{position:relative;width:48px;height:28px;border-radius:999px;background:#c7cbc8;transition:background .2s}.consent-category i::after{position:absolute;top:4px;left:4px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(0,0,0,.2);content:"";transition:transform .2s}.consent-category input:checked+i{background:#55766f}.consent-category input:checked+i::after{transform:translateX(20px)}.consent-category input:focus-visible+i{outline:3px solid #d7a17b;outline-offset:3px}.consent-legal{margin:18px 0;color:#65716d;font-size:11px}.consent-open{overflow:hidden}@media(max-width:700px){.consent-banner{right:10px;bottom:10px;left:10px;grid-template-columns:1fr;gap:18px;padding:20px}.consent-actions{grid-template-columns:1fr}.consent-panel{padding:28px 20px}.consent-category{padding:16px}.consent-banner h2,.consent-panel h2{padding-right:34px}}
