.popups-host,
.popups-host__overlay {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.popups-host {
    position: fixed;
    z-index: 100;
    opacity: 0;
    visibility: hidden;
    overflow: auto;
    transition: opacity 0.3s;
}
.popups-host_shown {
    z-index: 101;
    visibility: visible;
    opacity: 1;
}
.popups-host_shown:not(.popups-host_fullscreen) ~ .messenger-button {
    z-index: 100;
    transition:
        0.3s 0.7s,
        z-index;
}
.popups-host.popups-host_fullscreen .popups-host__content {
    flex-grow: 1;
    width: 100%;
}
.popups-host.popups-host_fullscreen .popups-host__close-button_transparent.sb-round-icon {
    background-color: rgba(17, 17, 17, 0.04);
}
.popups-host.popups-host_fullscreen .popups-host__close-button_transparent.sb-round-icon:hover {
    background-color: rgba(17, 17, 17, 0.16);
}
.popups-host.popups-host_fullscreen ~ .s-cart {
    z-index: 101;
}
.popups-host .popups-host__close-button.sb-round-icon {
    position: fixed;
    z-index: 3;
    border-radius: 50%;
    background-color: #fff;
}
.popups-host .popups-host__close-button.sb-round-icon:hover {
    background-color: hsla(0, 0%, 100%, 0.8);
}
@media screen and (max-width: 959px) {
    .popups-host .popups-host__close-button.sb-round-icon {
        top: 16px;
        right: 16px;
    }
}
.popups-host__container {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 100%;
}
.popups-host__content {
    position: relative;
    z-index: 2;
    display: flex;
    min-height: 0;
}
@media screen and (max-width: 639px) {
    .popups-host__content {
        flex-grow: 1;
    }
    .popup-info_payment {
        padding: 28px 16px;
    }
}
.popups-host__overlay {
    position: absolute;
    z-index: 1;
    background-color: rgba(17, 17, 17, 0.56);
}
.popup-error,
.popup-info {
    position: relative;
    box-sizing: border-box;
    background-color: #fff;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.16);
}
.popup-info {
    display: flex;
    flex-direction: column;
}
.popup-info_payment {
    align-items: center;
}
@media screen and (min-width: 640px) {
    .popup-info_payment {
        padding: 64px 28px;
    }
}
@media screen and (max-width: 639px) {
    .popup-info_with-button {
        justify-content: center;
        align-items: center;
        padding: 28px 16px;
    }
    .popup-info_small {
        width: 100vw;
    }
}
@media screen and (min-width: 640px) {
    .popup-info_with-button {
        align-items: flex-start;
        padding: 28px;
    }
    .popup-info_small {
        width: 484px;
    }
}
.popup-info_fullscreen {
    justify-content: center;
    align-items: center;
    height: 100vh;
}
.popup-info__icon {
    margin-bottom: 32px;
}
.popup-info__button {
    margin-top: 32px;
}
@media screen and (max-width: 639px) {
    .popup-error {
        width: 100vw;
        min-height: 100%;
    }
}
@media screen and (min-width: 640px) {
    .popup-error {
        width: 496px;
    }
}
@media screen and (min-width: 960px) {
    .popups-host:not(.popups-host_fullscreen) .popups-host__content {
        padding: 60px 0;
    }
    .popups-host .popups-host__close-button.sb-round-icon {
        top: 20px;
        right: 20px;
    }
    .popup-error {
        display: flex;
        align-items: flex-start;
        justify-content: center;
    }
}
@media (min-width: 960px) and (max-width: 1359px) {
    .popup-error {
        padding: 0 20px;
    }
}
@media screen and (min-width: 1360px) {
    .popup-error {
        padding: 0 24px;
    }
}
.popup-error__container {
    padding: 72px 0;
}
