| $gridItemSpace: 15%; |
| |
| .grid-section { |
| &:not(:last-of-type) { |
| padding-bottom: 30px; |
| } |
| .grid-items { |
| display: flex; |
| flex-direction: row; |
| flex-wrap: wrap; |
| } |
| |
| %grid-col-base { |
| flex-shrink: 0; |
| display: flex; |
| } |
| |
| .grid-item { |
| flex: 1; |
| display: flex; |
| flex-direction: column; |
| } |
| |
| .grid-item-stretch { |
| @extend .grid-item; |
| & *:last-child { |
| flex: 1; |
| display: flex; |
| flex-direction: column; |
| } |
| } |
| |
| .grid-col-1 { |
| @extend %grid-col-base; |
| flex-basis: 25%; |
| &:after { |
| flex-basis: $gridItemSpace; |
| content: ' '; |
| } |
| } |
| |
| .grid-col-2 { |
| @extend %grid-col-base; |
| flex-basis: 50%; |
| &:after { |
| flex-basis: $gridItemSpace / 2; |
| content: ' '; |
| } |
| } |
| .grid-col-3 { |
| @extend %grid-col-base; |
| flex-basis: 75%; |
| &:after { |
| flex-basis: $gridItemSpace / 3; |
| content: ' '; |
| } |
| } |
| .grid-col-4 { |
| @extend %grid-col-base; |
| flex-basis: 100%; |
| &:after { |
| flex-basis: $gridItemSpace / 4; |
| content: ' '; |
| } |
| } |
| } |