.cpn.v1 {
    --mn_wth: 101.444rem;
    /* ── Grid layout ──────────────────────────────────── */

    .cpn-v1-grid {
        text-align: center;

        @media (width >= 1280px) {
            display: grid;
            grid-template-columns: 1fr auto;
            grid-template-areas:
                "header  arrows"
                "scroller scroller"
                "cta     cta";
            text-align: left;
            align-items: center;
            
            .cpn-v1-hdr     { grid-area: header; }
            .cpn-v1-list    { grid-area: scroller; }
            [data-role="arrows"]  { grid-area: arrows; justify-content: center; margin-top: 0; }
            .cpn-v1-cta     { grid-area: cta; }
        }
    }



    /* ── Scrollable coupon list ───────────────────────── */

    .cpn-v1-list {
        align-items: stretch;
        

        > li {
            width: min(22rem, 80vw);

            @media (width >= 1280px) {
                width: calc((100% - (var(--grd-sp-dyn) * 2)) / 3);
            }

        }
    }


    /* ── Coupon title in accent color ─────────────────── */

    .ttl {
        font-style: normal;
        text-transform: uppercase;
        letter-spacing: 0.12em;
    }

    .prc {
        --title-color: var(--text-color);
    }

    /* ── Scroll arrow buttons ─────────────────────────── */

    .cpn-v1-arrows {

        button {
            background: none;
            border: none;
            padding: 0;
            cursor: pointer;
            line-height: 0;
        }
    }

}

.vid.v1:has(+ .cpn.v1) {
    margin-bottom: calc(-2.5 * var(--pd-v));

    .vid-popup {
        position: relative;
        z-index: 2;
    }

    + .cpn.v1 .bg-bx.pd_v {
        padding-top: calc(var(--pd-v) * 2.5);
    }
}