.mod-popup-promo[hidden]{display:none!important}
.mod-popup-promo{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:16px;animation:pp-fade .25s ease-out}
.mod-popup-promo__overlay{position:absolute;inset:0;opacity:var(--pp-opacity,.7);cursor:pointer}
.mod-popup-promo__dialog{position:relative;background:#fff;border-radius:12px;width:100%;max-height:92vh;overflow:auto;box-shadow:0 20px 60px rgba(0,0,0,.35);animation:pp-pop .3s cubic-bezier(.2,.9,.3,1.2)}
.mod-popup-promo__link{display:block;color:inherit;text-decoration:none}
.mod-popup-promo__image{display:block;width:100%;height:auto;border-radius:12px 12px 0 0}
.mod-popup-promo__dialog:has(.mod-popup-promo__image:only-child) .mod-popup-promo__image{border-radius:12px}
.mod-popup-promo__text{padding:20px 24px 24px}
.mod-popup-promo__title{margin:0 0 8px;font-size:1.4rem;line-height:1.25}
.mod-popup-promo__body{font-size:1rem;line-height:1.5}
.mod-popup-promo__close{position:absolute;top:8px;right:8px;width:36px;height:36px;border-radius:50%;border:0;background:rgba(0,0,0,.6);color:#fff;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:2;transition:background .2s}
.mod-popup-promo__close:hover{background:#000}
.mod-popup-promo__close:focus-visible{outline:2px solid #fff;outline-offset:2px}
@media (max-width:480px){.mod-popup-promo{padding:8px}.mod-popup-promo__text{padding:16px}.mod-popup-promo__title{font-size:1.2rem}}
@keyframes pp-fade{from{opacity:0}to{opacity:1}}
@keyframes pp-pop{from{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}
@media (prefers-reduced-motion:reduce){.mod-popup-promo,.mod-popup-promo__dialog{animation:none}}
