/*------------------------------------------------------------
Utility Classes
------------------------------------------------------------*/

/* Display
------------------------------------------------------------*/
.display-flex      { display: flex; }
.display-block     { display: block; }
.display-inline    { display: inline; }
.display-none      { display: none; }


/* Margin
------------------------------------------------------------*/
.m-0          { margin: 0; }
.m-h-0        { margin-left: 0; margin-right: 0; }
.m-v-0        { margin-top: 0; margin-bottom: 0; }

.m-t-0        { margin-top: 0; }
.m-t-4        { margin-top: .4rem; }
.m-t-8        { margin-top: .8rem; }
.m-t-12       { margin-top: 1.2rem; }
.m-t-16       { margin-top: 1.6rem; }
.m-t-20       { margin-top: 2rem; }
.m-t-32       { margin-top: 3.2rem; }
.m-t-40       { margin-top: 4rem; }
.m-t-60       { margin-top: 6rem; }
.m-t-80       { margin-top: 8rem; }
.m-t-100      { margin-top: 10rem; }
.m-t-120      { margin-top: 12rem; }

.m-b-0        { margin-bottom: 0; }
.m-b-4        { margin-bottom: .4rem; }
.m-b-8        { margin-bottom: .8rem; }
.m-b-12       { margin-bottom: 1.2rem; }
.m-b-16       { margin-bottom: 1.6rem; }
.m-b-20       { margin-bottom: 2rem; }
.m-b-32       { margin-bottom: 3.2rem; }
.m-b-40       { margin-bottom: 4rem; }
.m-b-60       { margin-bottom: 6rem; }
.m-b-80       { margin-bottom: 8rem; }
.m-b-100      { margin-bottom: 10rem; }
.m-b-120      { margin-bottom: 12rem; }

.m-l-0        { margin-left: 0; }
.m-l-4        { margin-left: .4rem; }
.m-l-8        { margin-left: .8rem; }
.m-l-12       { margin-left: 1.2rem; }
.m-l-16       { margin-left: 1.6rem; }
.m-l-20       { margin-left: 2rem; }
.m-l-32       { margin-left: 3.2rem; }
.m-l-40       { margin-left: 4rem; }
.m-l-60       { margin-left: 6rem; }
.m-l-80       { margin-left: 8rem; }
.m-l-100      { margin-left: 10rem; }
.m-l-120      { margin-left: 12rem; }

.m-r-0        { margin-right: 0; }
.m-r-4        { margin-right: .4rem; }
.m-r-8        { margin-right: .8rem; }
.m-r-12       { margin-right: 1.2rem; }
.m-r-16       { margin-right: 1.6rem; }
.m-r-20       { margin-right: 2rem; }
.m-r-32       { margin-right: 3.2rem; }
.m-r-40       { margin-right: 4rem; }
.m-r-60       { margin-right: 6rem; }
.m-r-80       { margin-right: 8rem; }
.m-r-100      { margin-right: 10rem; }
.m-r-120      { margin-right: 12rem; }


/* Padding
------------------------------------------------------------*/
.p-0          { padding: 0; }
.p-h-0        { padding-left: 0; padding-right: 0; }
.p-v-0        { padding-top: 0; padding-bottom: 0; }

.p-t-0        { padding-top: 0; }
.p-t-4        { padding-top: .4rem; }
.p-t-8        { padding-top: .8rem; }
.p-t-12       { padding-top: 1.2rem; }
.p-t-16       { padding-top: 1.6rem; }
.p-t-20       { padding-top: 2rem; }
.p-t-32       { padding-top: 3.2rem; }
.p-t-40       { padding-top: 4rem; }
.p-t-60       { padding-top: 6rem; }
.p-t-80       { padding-top: 8rem; }
.p-t-100      { padding-top: 10rem; }
.p-t-120      { padding-top: 12rem; }

.p-b-0        { padding-bottom: 0; }
.p-b-4        { padding-bottom: .4rem; }
.p-b-8        { padding-bottom: .8rem; }
.p-b-12       { padding-bottom: 1.2rem; }
.p-b-16       { padding-bottom: 1.6rem; }
.p-b-20       { padding-bottom: 2rem; }
.p-b-32       { padding-bottom: 3.2rem; }
.p-b-40       { padding-bottom: 4rem; }
.p-b-60       { padding-bottom: 6rem; }
.p-b-80       { padding-bottom: 8rem; }
.p-b-100      { padding-bottom: 10rem; }
.p-b-120      { padding-bottom: 12rem; }

.p-l-0        { padding-left: 0; }
.p-l-4        { padding-left: .4rem; }
.p-l-8        { padding-left: .8rem; }
.p-l-12       { padding-left: 1.2rem; }
.p-l-16       { padding-left: 1.6rem; }
.p-l-20       { padding-left: 2rem; }
.p-l-32       { padding-left: 3.2rem; }
.p-l-40       { padding-left: 4rem; }
.p-l-60       { padding-left: 6rem; }
.p-l-80       { padding-left: 8rem; }
.p-l-100      { padding-left: 10rem; }
.p-l-120      { padding-left: 12rem; }

.p-r-0        { padding-right: 0; }
.p-r-4        { padding-right: .4rem; }
.p-r-8        { padding-right: .8rem; }
.p-r-12       { padding-right: 1.2rem; }
.p-r-16       { padding-right: 1.6rem; }
.p-r-20       { padding-right: 2rem; }
.p-r-32       { padding-right: 3.2rem; }
.p-r-40       { padding-right: 4rem; }
.p-r-60       { padding-right: 6rem; }
.p-r-80       { padding-right: 8rem; }
.p-r-100      { padding-right: 10rem; }
.p-r-120      { padding-right: 12rem; }


/* Position
------------------------------------------------------------*/
.left              { float: left; }
.right             { float: right; }
.center            { margin: 0 auto; }

.flex-start {
  display: flex;
  align-items: flex-start;
}

.flex-center {
  display: flex;
  align-items: center;
}

.flex-end {
  display: flex;
  align-items: flex-end;
}


/* Align Text
------------------------------------------------------------*/
.text-left         { text-align: left; }
.text-right        { text-align: right; }
.text-center       { text-align: center; }