.cta.v2 {

    /* Kicker overrides (left side) */
    .fnt_t-nt.cstm.ctas-v2-kicker {
        --fnt-t-nt-w: 700;
        --fnt-t-nt-ff: var(--fnt-t);
        --fnt-t-nt-tt: uppercase;
        --fnt-t-nt-ls: 0.25em;
        opacity: 0.6;
        @media screen and (min-width:1280px) {
            --fnt-t-nt-s: 0.67rem;
        }
    }

    /* Phone kicker overrides (right card) */
    .fnt_t-nt.cstm.ctas-v2-phone-kicker {
        --fnt-t-nt-w: 700;
        --fnt-t-nt-ff: var(--fnt-t);
        --fnt-t-nt-tt: uppercase;
        --fnt-t-nt-ls: 0.167em;
        opacity: 0.5;

        @media screen and (min-width:1280px) {
            --fnt-t-nt-s: 0.67rem;
        }
    }

    /* Phone number size override */
    .fnt_phn {
        @media screen and (min-width:1280px) {
            --fnt-phn-s: 1.7rem;
        }
    }

    /* Red primary button in dark card */
    .bg-bx.ulk-bg {
        @media screen and (min-width:1280px) {
            &::after {
                position: absolute;
                top: 0;
                right: calc((((var(--vw_) - clamp(var(--mn_min), var(--mn-w), var(--mn_max)) ) / 2) ) * -1);
                width: 100%;
                height: 100%;
                background-color: var(--inner-theme);
                content:'';
                z-index: -1;
            }
        }

        > .pd_v.pd_h {
            gap: 0.875rem;
            @media screen and (min-width:1280px) {
                padding: 1.5rem 2.5rem;
            }
        }
    }

    /* Badge */
    .ctas-v2-badge {
        font-size: 3.1rem;
        flex-shrink: 0;
    }

    /* Left content */
    .ctas-v2-left > div {
        gap: 0.625rem;
    }

    /* Button stack */
    .ctas-v2-btns {
        gap: 0.75rem;

        @media screen and (min-width:1280px) {
            li {
                .btn {
                    width: 100%;
                }
            }
        }
    }

    @media screen and (min-width:1280px) {
        & {
            --fnt-t-co-s: 2.67rem;
            padding-block: 0;
        }
    }
}