.em-consent[hidden],.em-consent [hidden],.em-privacy-bar [hidden]{display:none!important}
.em-privacy-bar{display:flex;justify-content:center;align-items:center;gap:22px;padding:18px 24px;background:#142540;color:#fff;font-size:14px}
.em-privacy-bar:empty{display:none}
.em-privacy-bar button,.em-consent__links button{font:inherit;color:inherit;padding:0;border:0;background:none;text-decoration:underline;text-underline-offset:5px;cursor:pointer}
.em-privacy-bar button,.em-privacy-bar a{min-height:44px;display:inline-flex;align-items:center}
.em-consent{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:flex-end;justify-content:center;padding:24px;background:rgba(12,26,48,.4);overscroll-behavior:contain}
body.em-consent-open{overflow:hidden}
.em-consent__dialog{position:relative;width:min(880px,100%);max-height:calc(100vh - 48px);max-height:min(880px,calc(100dvh - 48px));overflow:auto;overscroll-behavior:contain;background:#fff;color:#252525;border:1px solid #ececec;border-radius:22px;padding:28px 32px 24px;box-shadow:0 20px 80px #07172e45;animation:em-consent-in .28s ease-out;line-height:1.7;text-align:start}
.em-consent__dialog h2{font-size:25px;line-height:1.4;font-weight:500;letter-spacing:0;text-align:center;margin:0 44px 28px;color:#292929}
.em-consent__dialog>p{font-size:17px;line-height:1.85;margin:0 0 30px;color:#494949}
.em-consent__close{position:absolute;inset-block-start:14px;inset-inline-end:18px;width:44px;height:44px;padding:0;border:0;background:none;color:#202020;font-family:Arial,sans-serif;font-size:40px;line-height:1;cursor:pointer}
.em-consent__actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.em-consent__button{min-height:64px;padding:14px 18px;border:1px solid #e8e8e8;border-radius:11px;background:#f7f7f7;color:#2d2d2d;font-family:inherit;font-size:19px;line-height:1.35;font-weight:500;cursor:pointer;transition:background .18s,transform .18s}
.em-consent__button:hover{background:#ededed;transform:translateY(-2px)}
.em-consent__accept,.em-consent__save{background:#cfb170;border-color:#cfb170;color:#202b40;font-weight:650}
.em-consent__accept:hover,.em-consent__save:hover{background:#bfa063}
.em-consent :focus-visible,.em-privacy-bar :focus-visible{outline:3px solid #21446c;outline-offset:4px}
.em-privacy-bar :focus-visible{outline-color:#e3c888}
.em-consent__links{text-align:center;padding-top:23px;font-size:15px;color:#21446c}
.em-consent__links a{text-decoration:underline;text-underline-offset:5px}
.em-consent__preferences{border-block-start:1px solid #e4e6eb;margin-block-end:22px}
.em-consent__category{display:flex;align-items:flex-start;gap:24px;padding:20px 0;border-block-end:1px solid #e4e6eb}
.em-consent__category>div{flex:1;min-width:0}
.em-consent__category h3,.em-consent__category label{display:block;font-size:17px;font-weight:650;margin:0 0 5px;color:#172942}
.em-consent__category p{font-size:14px;line-height:1.65;margin:0;color:#59616d}
.em-consent__category input{flex:none;appearance:auto;width:25px;height:25px;margin:3px 0;accent-color:#25466e;cursor:pointer}
.em-consent__badge{flex:none;display:inline-block;color:#35583c;background:#edf4ee;border-radius:20px;padding:5px 12px;font-size:12px;white-space:nowrap}
.em-consent__save{width:100%;min-height:50px;margin-block-start:18px}
.em-consent__status{position:fixed;inset-inline:20px;bottom:24px;z-index:2147483001;width:max-content;max-width:calc(100% - 40px);margin:0 auto;padding:12px 20px;border-radius:10px;background:#142540;color:#fff;font-size:14px;box-shadow:0 6px 24px #14254030}
.em-consent__status:empty{display:none}
@keyframes em-consent-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:600px){.em-consent{padding:10px}.em-consent__dialog{padding:24px 20px 20px;border-radius:18px;max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px)}.em-consent__dialog h2{font-size:22px;margin-bottom:20px}.em-consent__dialog>p{font-size:15px;margin-bottom:22px;line-height:1.75}.em-consent__actions{grid-template-columns:1fr 1fr;gap:10px}.em-consent__actions>button:last-child{grid-column:1/-1}.em-consent__button{min-height:52px;font-size:16px;padding:12px}.em-consent__category{gap:14px}.em-consent__badge{font-size:10px;padding:5px 8px}.em-consent__links{padding-top:17px}}
@media(prefers-reduced-motion:reduce){.em-consent__dialog{animation:none}.em-consent__button{transition:none}.em-consent__button:hover{transform:none}}
@media(max-width:600px){.em-consent{padding-bottom:max(10px,env(safe-area-inset-bottom,0px));padding-inline-start:max(10px,env(safe-area-inset-left,0px));padding-inline-end:max(10px,env(safe-area-inset-right,0px))}.em-consent__dialog{max-height:calc(100svh - 20px);-webkit-overflow-scrolling:touch}.em-consent__button:hover{transform:none}.em-consent__button,.em-consent__close{touch-action:manipulation}}

/* 2.10: readable consent actions in all three languages. */
@media(max-width:900px){
 .em-privacy-bar{flex-wrap:wrap;gap:8px 22px;padding-inline:16px;text-align:center}
 .em-consent__dialog{scroll-padding-block:20px}
 .em-consent__category{flex-wrap:wrap}
 .em-consent__category>div{flex:1 1 160px}
 .em-consent__actions>button{overflow-wrap:break-word}
}
@media(max-width:760px){
 .em-consent__dialog h2{margin-inline:28px;font-size:21px;line-height:1.35}
 .em-consent__category label{min-height:44px;display:flex;align-items:center}
 .em-consent__category input{width:28px;height:28px;margin-top:8px}
}
@media(max-width:480px){
 .em-consent__actions{grid-template-columns:minmax(0,1fr)}
 .em-consent__actions>button{grid-column:1;min-height:48px}
 .em-consent__dialog{padding-inline:16px}
}
