.vls.v1 {

    /* Heading — large display size with a blue accent word (the <em> in the header) */
    header h4 {
        font-size: clamp(2.75rem, 5.5vw, 5rem);
        line-height: 1.05;
    }

    header h4 em {
        color: var(--accent);
        font-style: normal;
    }

    .flr-hd {
        font-size: 2.5rem;
        flex-shrink: 0;
    }

    .vls-v1-icon {
        flex-shrink: 0;
    }

    .vls-v1-icon svg {
        display: block;
        height: 2rem;
        width: auto;
    }

    /* Card titles — kicker-sized (down from 2rem), uppercase, letter-spaced */
    .vls-v1-item strong {
        font-weight: 700;
        font-size: 1.9rem;
        letter-spacing: 0.06em;
    }
    .vls-v1-item .gp_sp {
        gap: 1rem;
    }
    /* Responsive columns: 1 across (small) -> 2 across -> 4 across.
       Steps are defined against the .mn_tn container (max ~75rem), which never
       reaches the global mx-4 78rem breakpoint, so set them here. */
    .grd {
        @container (width >= 40rem) {
            & { --itm-val: 50; }
        }

        @container (width >= 62rem) {
            & { --itm-val: 25; }
        }
    }

}
