.promo-cleaning[hidden]{display:none!important}
.promo-cleaning{
    position:fixed;inset:0;z-index:9999;
    display:flex;align-items:center;justify-content:center;padding:20px
}
.promo-cleaning__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.48)}
.promo-cleaning__dialog{
    position:relative;width:min(520px,100%);padding:30px 30px 26px;
    border-radius:24px;background:#fff;box-shadow:0 24px 70px rgba(0,0,0,.24);
    text-align:center
}
.promo-cleaning__close{
    position:absolute;top:10px;right:14px;border:0;background:transparent;
    font-size:32px;line-height:1;cursor:pointer;opacity:.65
}
.promo-cleaning__close:hover{opacity:1}
.promo-cleaning__logo{
    display:block;width:58px;height:auto;margin:0 auto 10px
}
.promo-cleaning__badge{
    display:inline-block;margin-bottom:12px;padding:7px 14px;border-radius:999px;
    background:#b51f2e;color:#fff;font-weight:700;letter-spacing:.06em
}
.promo-cleaning__dialog h2{margin:0 0 8px}
.promo-cleaning__price{
    margin:8px 0 14px;font-size:clamp(38px,7vw,52px);
    line-height:1;font-weight:800
}
.promo-cleaning__text{margin:0 auto 22px;max-width:390px}
.promo-cleaning__button{display:inline-flex;justify-content:center}
.promo-cleaning__note{
    margin:18px 0 0;font-size:12px;line-height:1.4;opacity:.68
}
@media(max-width:600px){
    .promo-cleaning{align-items:flex-end;padding:12px}
    .promo-cleaning__dialog{padding:28px 20px 22px;border-radius:22px}
    .promo-cleaning__button{width:100%}
}
