.image-promo-popup[hidden]{display:none!important}
.image-promo-popup{position:fixed;inset:0;z-index:10020;display:grid;place-items:center;padding:24px}
.image-promo-popup-backdrop{position:absolute;inset:0;background:rgba(5,28,40,.76);backdrop-filter:blur(5px)}
.image-promo-popup-dialog{position:relative;z-index:1;width:min(920px,calc(100vw - 48px));max-height:calc(100vh - 48px);margin:0;border-radius:22px;background:#fff;box-shadow:0 36px 100px rgba(0,25,38,.42);animation:imagePopupIn .34s ease both}
.image-promo-popup-link,.image-promo-popup-link picture{display:block;width:100%}
.image-promo-popup-link{overflow:hidden;border-radius:22px;background:#eef6f9;line-height:0}
.image-promo-popup-link img{display:block;width:100%;height:auto;max-height:calc(100vh - 48px);object-fit:contain;object-position:center}
.image-promo-popup-close{position:absolute;z-index:3;right:-15px;top:-15px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:3px solid #fff;border-radius:50%;background:#173f54;color:#fff;font:700 29px/1 Arial,sans-serif;cursor:pointer;box-shadow:0 9px 24px rgba(0,0,0,.28)}
.image-promo-popup-close:hover{background:#0d6b91;transform:scale(1.04)}
body.image-popup-open{overflow:hidden}
@keyframes imagePopupIn{from{opacity:0;transform:translateY(20px) scale(.97)}to{opacity:1;transform:none}}
@media(max-width:760px){
  .image-promo-popup{padding:18px}
  .image-promo-popup-dialog{width:min(600px,calc(100vw - 36px));max-height:calc(100vh - 36px);border-radius:18px}
  .image-promo-popup-link{border-radius:18px}
  .image-promo-popup-link img{max-height:calc(100vh - 36px)}
  .image-promo-popup-close{right:-11px;top:-11px;width:40px;height:40px;font-size:26px}
}
@media(prefers-reduced-motion:reduce){.image-promo-popup-dialog{animation:none}}
