/* Container for the flexbox */ .template-flexbox { display: flex; gap: var(--template-flexbox-gap); flex-wrap: wrap; flex-direction: var(--template-flexbox-direction); --template-flexbox-columns: 3; /* Default columns count */ } /* Flex items */ .template-flexbox-item { --template-flexbox-item-span: 1; /* Default span is 1 */ --template-flexbox-item-width: calc((100% / var(--template-flexbox-columns)) - (var(--template-flexbox-gap) * (var(--template-flexbox-columns) - 1) / var(--template-flexbox-columns))); flex-basis: var(--template-flexbox-item-width); flex-grow: 0; /* Prevent growing */ flex-shrink: 0; /* Prevent shrinking */ } /* Media query for different screen sizes */ @media (max-width: 1120px) { .template-flexbox { --template-flexbox-columns: 2 !important; } } @media (max-width: 640px) { .template-flexbox { --template-flexbox-columns: 1 !important; } }