.sf_row {
    display: grid;
    column-gap: 30px;
    width: 100%;
}

.sf_column {
    overflow: auto;
}

.sf_col--2 {
    grid-template-columns: repeat(2, 1fr);
}

.sf_col--3 {
    grid-template-columns: repeat(3, 1fr);
}

.sf_col--4 {
    grid-template-columns: repeat(4, 1fr);
}

@media only screen and (min-width: 768px) and (max-width: 1299px) {

    .sf_col--4,
    .sf_col--3 {
        grid-template-columns: repeat(2, 1fr);
        grid-row-gap: 30px;
    }
}

@media only screen and (min-width: 0) and (max-width: 767px) {

    .sf_col--4,
    .sf_col--3,
    .sf_col--2 {
        grid-template-columns: repeat(1, 1fr);
        grid-row-gap: 30px;
    }
}
