.consent-open{overflow:visible}
.consent-layer{position:fixed;inset:0;z-index:100000;display:flex;align-items:flex-end;justify-content:center;padding:20px;background:rgba(9,34,54,.56);backdrop-filter:blur(3px);pointer-events:none}
.consent-dialog{position:relative;width:min(760px,100%);max-height:calc(100dvh - 40px);overflow-y:auto;overscroll-behavior:contain;padding:28px;border:1px solid #cfe0df;border-radius:24px;background:#fff;color:#173650;box-shadow:0 24px 70px rgba(9,34,54,.24);pointer-events:auto}
.consent-dialog h2{margin:4px 0 12px;font-size:clamp(1.55rem,3vw,2.15rem);line-height:1.15}
.consent-dialog p{margin:0;line-height:1.65}
.consent-kicker{color:#23877e;font-size:.78rem;font-weight:800;letter-spacing:.15em}
.consent-more{margin-top:10px!important}
.consent-more a{color:#177f78;font-weight:700}
.consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}
.consent-button{min-height:50px;padding:12px 18px;border:2px solid #1c405d;border-radius:14px;font:inherit;font-weight:800;cursor:pointer}
.consent-essential{background:#fff;color:#173650}
.consent-accept{background:linear-gradient(100deg,#1d506d,#39a497);color:#fff}
.consent-button:focus-visible,.consent-close:focus-visible,.consent-settings-link:focus-visible{outline:3px solid #efad55;outline-offset:3px}
.consent-close{position:absolute;top:14px;right:16px;width:40px;height:40px;border:0;border-radius:50%;background:#edf7f4;color:#173650;font-size:1.7rem;line-height:1;cursor:pointer}
.consent-settings-link{grid-column:1/-1;display:block;width:max-content;margin:14px auto 0;padding:4px;border:0;background:transparent;color:inherit;font:inherit;font-size:.86rem;text-decoration:underline;cursor:pointer}
@media(max-width:600px){
  .consent-layer{padding:10px}
  .consent-dialog{max-height:calc(100dvh - 20px);padding:22px 18px;border-radius:18px}
  .consent-actions{grid-template-columns:1fr}
  .consent-accept{order:-1}
}
