.flex { display: flex; align-items: center; flex-wrap: wrap; > *:last-child { margin-left: 0; margin-right: 0; } > li { list-style: none; padding: 0; margin-left: 0; } &--center { justify-content: center; } &--align-equal { align-items: stretch; > * { align-self: stretch; } } &--no-wrap { flex-wrap: no-wrap; } &--space-between { justify-content: space-between; } } ul.flex { margin: 0; } .gap { &-15 { > * { margin-right: 15px; } } &-20 { > * { margin-right: 20px; } } &-30 { > * { margin-right: 30px; } } &-60 { > * { margin-right: 60px; } } } .flex-fit { flex:1; } .flex-space-between { justify-content: space-between; } .flex-align-top { align-items: flex-start; } .grid-cols{ display: grid; grid-template-columns: repeat( auto-fit, minmax(26%, 1fr) ); grid-gap: var(--space); &--collapse { grid-gap: 0; > div:first-child { border-right:0; border-top-right-radius: 0; border-bottom-right-radius:0; } > div:last-child { border-left-width:0; border-top-left-radius: 0; border-bottom-left-radius:0; } } &--gap-small { grid-gap: var(--space); } &--gap-large { grid-gap: var(--space-x2); } &--2 { grid-template-columns: repeat( auto-fit, minmax(36%, 1fr) ); } &--4 { grid-template-columns: repeat( auto-fit, minmax(20%, 1fr) ); } &--5 { grid-template-columns: repeat( auto-fit, minmax(10%, 1fr) ); } } @media screen and (max-width: 850px) { .grid-cols{ grid-template-columns: repeat(2, 1fr); } .grid-cols--full-md{ grid-template-columns: repeat(1, 1fr); } } @media screen and (max-width: 550px) { .grid-cols{ grid-template-columns: repeat(1, 1fr); } }