.v2-app-promo {
    position: fixed;
    z-index: 1200;
    inset: 0;
    display: grid;
    place-items: center;
    padding: clamp(1rem, 3vw, 2rem);
    opacity: 0;
    visibility: hidden;
    transition: opacity .24s ease, visibility .24s ease;
}

.v2-app-promo.is-visible {
    opacity: 1;
    visibility: visible;
}

.v2-app-promo__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(11, 22, 43, .68);
    backdrop-filter: blur(5px);
}

.v2-app-promo__content {
    position: relative;
    z-index: 1;
    display: grid;
    width: min(88vw, 34rem);
    gap: .75rem;
    transform: translateY(.75rem) scale(.985);
    transition: transform .28s ease;
}

.v2-app-promo.is-visible .v2-app-promo__content {
    transform: translateY(0) scale(1);
}

.v2-app-promo__image {
    display: block;
    width: 100%;
    height: auto;
    filter: drop-shadow(0 1.4rem 2.7rem rgba(0, 0, 0, .27));
}

.v2-app-promo__close {
    position: absolute;
    z-index: 1;
    top: -.7rem;
    right: -.7rem;
    display: grid;
    width: 2.45rem;
    height: 2.45rem;
    place-items: center;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, .94);
    color: #1f4278;
    box-shadow: 0 .55rem 1.25rem rgba(8, 25, 56, .22);
    cursor: pointer;
    font-size: .92rem;
}

.v2-app-promo__install {
    display: inline-flex;
    width: 100%;
    min-height: 3.25rem;
    align-items: center;
    justify-content: center;
    border-radius: .9rem;
    background: #4c91e8;
    color: #fff;
    font-size: 1rem;
    font-weight: 600;
    text-decoration: none;
    box-shadow: 0 .75rem 1.35rem rgba(76, 145, 232, .24);
    transition: background .2s ease, transform .2s ease;
}

.v2-app-promo__install:hover {
    background: #367ed9;
    color: #fff;
    transform: translateY(-2px);
}

.v2-app-promo-open {
    overflow: hidden;
}

@media (max-width: 640px) {
    .v2-app-promo__content {
        width: min(88vw, 24rem);
    }

    .v2-app-promo__close {
        top: -.55rem;
        right: -.35rem;
        width: 2.25rem;
        height: 2.25rem;
    }

    .v2-app-promo__install {
        min-height: 3.25rem;
    }
}
