.columns-element {
    min-width: 0;
    margin-block: 2rem;
}

.columns-element>.fw-cols--grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 2rem;
    min-width: 0;
}

.columns-element>.fw-cols--grid[data-cols-desktop="1"] {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.columns-element>.fw-cols--grid[data-cols-desktop="2"] {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.columns-element>.fw-cols--grid[data-cols-desktop="3"] {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.columns-element>.fw-cols--grid[data-cols-desktop="4"] {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.columns-element>.fw-cols--grid[data-cols-desktop="5"] {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.columns-element>.fw-cols--grid[data-cols-desktop="6"] {
    grid-template-columns: repeat(6, minmax(0, 1fr));
}

.columns-element>.fw-cols--grid[data-cols-gap="none"] {
    gap: 0;
}

.columns-element>.fw-cols--grid[data-cols-gap="small"] {
    gap: 1rem;
}

.columns-element>.fw-cols--grid[data-cols-gap="normal"] {
    gap: 2rem;
}

.columns-element>.fw-cols--grid[data-cols-gap="large"] {
    gap: 3rem;
}

.columns-element>.fw-cols--grid[data-cols-gap="xlarge"] {
    gap: 4rem;
}

.columns-element>.fw-cols--grid>.fw-col {
    float: none;
    width: auto;
    min-width: 0;
    padding: 0;
}



@media (max-width: 1024px) {
    .columns-element>.fw-cols--grid[data-cols-tablet="1"] {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .columns-element>.fw-cols--grid[data-cols-tablet="2"] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .columns-element>.fw-cols--grid[data-cols-tablet="3"] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .columns-element>.fw-cols--grid[data-cols-tablet="4"] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .columns-element>.fw-cols--grid[data-cols-mobile="1"] {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }

    .columns-element>.fw-cols--grid[data-cols-mobile="2"] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}