.cookie-settings-link{appearance:none;border:0;background:transparent;color:inherit;padding:0;font:inherit;cursor:pointer}
.cookie-settings-link:hover,.cookie-settings-link:focus-visible{text-decoration:underline;text-underline-offset:4px}
body.consent-open{overflow:hidden}
.consent-overlay[hidden]{display:none}
.consent-overlay{position:fixed;z-index:1000;inset:0;display:flex;align-items:flex-end;justify-content:center;padding:24px;background:rgba(0,0,0,.55)}
.consent-dialog{position:relative;width:min(820px,100%);max-height:calc(100vh - 48px);overflow:auto;background:#fff;color:#0a0a0a;padding:34px;box-shadow:0 24px 80px rgba(0,0,0,.35)}
.consent-dialog h2{font-size:clamp(34px,5vw,58px);line-height:.95;letter-spacing:-.05em;margin:12px 50px 18px 0}
.consent-dialog p{color:#555;line-height:1.6;max-width:700px}
.consent-eyebrow{color:#ff1493;font-size:12px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}
.consent-close{position:absolute;right:18px;top:16px;width:42px;height:42px;border:1px solid #aaa;background:#fff;color:#000;font-size:28px;line-height:1;cursor:pointer}
.consent-categories{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:26px 0}
.consent-category{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid #d7d7d7;padding:18px;text-transform:none;letter-spacing:0}
.consent-category strong,.consent-category small{display:block}.consent-category strong{font-size:16px}.consent-category small{margin-top:5px;color:#666;font-size:12px;line-height:1.45;font-weight:400}
.consent-category input{flex:0 0 auto;width:22px;height:22px;accent-color:#ff1493}
.consent-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.consent-actions button{border:2px solid #0a0a0a;background:#fff;color:#0a0a0a;padding:14px 12px;font-size:12px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}
.consent-actions button:hover,.consent-actions button:focus-visible{border-color:#ff1493;color:#b00061}
.consent-dialog button:focus-visible,.consent-dialog input:focus-visible{outline:3px solid #ff1493;outline-offset:3px}
@media(max-width:700px){.consent-overlay{padding:0;align-items:flex-end}.consent-dialog{max-height:92vh;padding:26px 18px}.consent-categories,.consent-actions{grid-template-columns:1fr}.consent-dialog h2{margin-right:40px}}
