Elements

Elements are the building blocks for the Design System. Reusable Molecules that can be placed and joined together to form more complex components and layouts. CSS class names are created using the Block-Element__Modifier (BEM) pattern.

Body-Wrapper and Section

The Body-Wrapper is a block element that holds all elements inside of it and is set to Overflow:Hidden to element any objects breaking outside of the page and forcing a sideways scroll.

The Section element is a Horizontal-Flex__Box set to Center-Center and has side Padding to restrain other components and create gutters on Mobile screens. It is used to hold Content and divide up the page. Top and Bottom Padding creates White Space between Content.

Wrapper-Row

The Wrapper-Row is a Block element without any Padding. A wrapper holds child elements tightly; it wraps them, unlike a container that has padding. Wrappers can be used to hold Card or Grid elements in place.

Container-Row

The Container-Row is a Horizontal-Flex__Box with Padding added as a combo class. It will hold Child Elements in a horizontal row. It can also hold Columns. At Mobile breakpoints it becomes a Vertical-Flex__Box. Columns are Block-Elements or Vertical-Flex__Box with Padding.

Column-Left

Column-Right

Container-Grid

The Container-Grid is a Bootstrap style 12-Column and Auto generated Row grid with 16px gaps. It holds Child Elements Horizontally and Vertically. Set it to maintain the 12-Column grid across all breakpoints, or scale down to fewer Columns on Mobile Landscape and Mobile Portrait.

Responsive Flexbox Grid

Columns need to be nested within  a "grid-row" and a direct child of a "container".  All columns start off at equal-widths by defining the class of "col" and auto-collapse at the mobile portrait breakpoint if no responsive classes are defined. 
col
col
col
col
col
col
col
col
col
col

Remove Gutters

To remove all padding from columns, use the "no-gutters" class preceded by the initial class of "col".
col
no-gutters
 no-gutters
no-gutters
no-gutters
no-gutters

Full Width Container

Define your div with a class of "container-fluid" for full width.
col
col
col
col

Responsive Grid

Grid - Desktop

To define our 12 column grid, all classes must precede with the initial class of "col"
col
col-3
col-1
col-11
col-2
col-10
col-3
col-9
col-4
col-8
col-5
col-7
col-6
col-6
col-12

Vertical Alignment

Align-Start

To align columns from the top, combine a class of  "align-start" preceded by the class of "grid-row"
grid-row
align-start
align-start
align-start
align-start

Align-Center

To align columns from the center, combine a class of  "align-center" preceded by the class of "grid-row"
grid-row
align-center
align-center
align-center
align-center

Align-End

To align columns from the center, combine a class of  "align-end" preceded by the class of "grid-row"
grid-row
align-end
align-end
align-end
align-end

Horizontal Alignment

Justify-Start

To align columns from the left, combine a class of  "justify-start" preceded by the by class of "grid-row"
grid-row
justify-start
justify-start
justify-start

Justify-Center

To align columns from the right, combine a class of  "justify-center" preceded by the class of "grid-row"
grid-row
justify-center
justify-center
justify-center

Justify-End

To align columns from the right, combine a class of  "justify-end" preceded by the class of "grid-row"
grid-row
justify-end
justify-end
justify-end

Justify-Between

To evenly space columns between each-other, combine a class of  "justify-between" preceded by the class of "grid-row"
grid-row
justify-between
justify-between
justify-between

Justify-Around

To evenly space columns around each-other, combine a class of  "justify-around" preceded by the class of "grid-row"
grid-row
justify-around
justify-around
justify-around