.edit-post-visual-editor,
.edit-post-visual-editor p{
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
    font-size: 19px;
    letter-spacing: 0.01em;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    
    font-weight: 400;
    letter-spacing: 0.01em;
}

.wp-block-ttfb-blocks-chapter {

    // Fix title line-height
    .main-title .blocks-rich-text__tinymce.mce-content-body,
    .sup-title .blocks-rich-text__tinymce.mce-content-body{
        line-height: 1.2;
    }

    // Fix content width and height
    .main-content,
    .main-content .blocks-rich-text__tinymce.mce-content-body{
        width: 100%;
        min-height: 200px;
    }

    .imageWrapper {
        position: relative;
    }

    .imageSelector{
        border-radius: 5px;
        //border: 3px dashed gray;
        border: 1px solid #e2e4e7;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 100%;
        min-height: 200px;
        background: #f8f9f9;
        flex-direction: column;
    }

    .labelImage{
        font-weight: bold;
        color: #3a3a3a;
        font-size: 16px;
        line-height: 1;
        display: flex;
        align-items: center;
        margin-bottom: 1rem;
    }

    button {

        &.remove-image {

            background-color: red;
            border: 2px red solid;
            padding: 5px 5px 0;
            position: absolute;
            top: 0;
            left: 0;
            opacity: .9;

            svg {
                background: red;
                fill: white;
            }

            &:hover {
                opacity: 1;
            }

        }

    }

}



// Ajout
.weight900{ font-weight: 900; }
.first-mt0 > *:first-child{ margin-top: 0; }
.last-mb0 > *:last-child{ margin-bottom: 0; }

$space1: 0.5rem;
$space2: 1.5rem;
$space3: 3rem;
$space4: 4rem;

$base-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;

$text-color: #3A4145;
$blue: #1078ff;
$gray-darkest: #0d0d0d;
$gray-darker: #1a1a1a;
$gray-dark: #404040;
$gray: gray;
$gray-light: #bfbfbf;
$gray-lighter: #e6e6e6;
$gray-lightest: #fafafa;
$color-success: #2ecc71;
$color-warning: #ffca28;
$color-error: #e74c3c;
$black: $text-color;
$bold: 700;


$speed: 0.2s;
$easing: ease;
$button-height: 2.25rem;
$button-border-radius: 3px;
$button-border-color: $gray-darker;

/*! ace.css | https://github.com/basscss/ace | MIT License */
.xxs-text{ font-size: 70%; }
.xs-text{ font-size: 80%; }
.sm-text{ font-size: 90%; }
.lg-text{ font-size: 110%; }
.xl-text{ font-size: 120%; }
.xxl-text{ font-size: 130%; }

.weight1{ font-weight: 100; }
.weight100{ font-weight: 200; }
.weight200{ font-weight: 100; }
.weight500{ font-weight: 500; }
.weight600{ font-weight: 600; }
.weight700{ font-weight: 700; }


.text-color{ color: $text-color; }

.display-no { display: none }

.hover-opacity{ transition: opacity 0.2s ease; }
.hover-opacity:hover{ opacity: 0.8; }

/* Basscss Typography */

.font-family-inherit { font-family: inherit }

.font-size-inherit { font-size: inherit }

.text-decoration-none { text-decoration: none }

.lighter    { font-weight: lighter; }

.regular { font-weight: normal }

.bold    { font-weight: bold; }

.bolder    { font-weight: bolder; }

.italic  { font-style: italic }

.style-none  { font-style: none }

.caps    { text-transform: uppercase;  }

.lower    { text-transform: none;  }

.left-align   { text-align: left }

.center       { text-align: center }

.right-align  { text-align: right }

.justify      { text-align: justify }

.nowrap { white-space: nowrap }

.break-word { word-wrap: break-word }

.line-height-1 { line-height: 1 }

.line-height-2 { line-height: 1.125 }

.line-height-3 { line-height: 1.25 }

.line-height-4 { line-height: 1.5 }

.list-style-none { list-style: none }

.underline { text-decoration: underline }

.truncate {
  max-width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.list-reset {
  list-style: none;
  padding-left: 0;
}

.list-before-reset:before,
.list-before-reset li:before{
    display: none;
}

/* Basscss Layout */

.inline       { display: inline }

.block        { display: block }

.inline-block { display: inline-block }

.table        { display: table }

.table-cell   { display: table-cell }

.overflow-hidden { overflow: hidden }

.overflow-scroll { overflow: scroll }

.overflow-auto   { overflow: auto }

.clearfix:before,
.clearfix:after {
  content: " ";
  display: table
}

.clearfix:after { clear: both }

.left  { float: left }

.right { float: right }

.fit { max-width: 100% }

.max-width-1 { max-width: 24rem }

.max-width-2 { max-width: 32rem }

.max-width-3 { max-width: 768px } // 64rem

.max-width-4 { max-width: 1024px } // 64rem

.max-width-5 { max-width: 1200px; } // 75rem

.border-box { box-sizing: border-box }

/* Basscss Align */

.align-baseline { vertical-align: baseline }

.align-top      { vertical-align: top }

.align-middle   { vertical-align: middle }

.align-bottom   { vertical-align: bottom }

/* Basscss Margin */

.m0  { margin:        0 }

.mt0 { margin-top:    0 }

.mr0 { margin-right:  0 }

.mb0 { margin-bottom: 0 }

.ml0 { margin-left:   0 }

.mx0 { margin-left:   0; margin-right:  0 }

.my0 { margin-top:    0; margin-bottom: 0 }

.m1  { margin: $space1 }

.mt1 { margin-top: $space1 }

.mr1 { margin-right: $space1 }

.mb1 { margin-bottom: $space1 }

.ml1 { margin-left: $space1 }

.mx1 { margin-left: $space1; margin-right: $space1 }

.my1 { margin-top: $space1; margin-bottom: $space1 }

.m2  { margin: $space2 }

.mt2 { margin-top: $space2 }

.mr2 { margin-right: $space2 }

.mb2 { margin-bottom: $space2 }

.ml2 { margin-left: $space2 }

.mx2 { margin-left: $space2; margin-right: $space2 }

.my2 { margin-top: $space2; margin-bottom: $space2 }

.m3  { margin: $space3 }

.mt3 { margin-top: $space3 }

.mr3 { margin-right: $space3 }

.mb3 { margin-bottom: $space3 }

.ml3 { margin-left: $space3 }

.mx3 { margin-left: $space3; margin-right: $space3 }

.my3 { margin-top: $space3; margin-bottom: $space3 }

.m4  { margin: $space4 }

.mt4 { margin-top: $space4 }

.mr4 { margin-right: $space4 }

.mb4 { margin-bottom: $space4 }

.ml4 { margin-left: $space4 }

.mx4 { margin-left: $space4; margin-right: $space4 }

.my4 { margin-top: $space4; margin-bottom: $space4 }

.mxn1 { margin-left: -$space1; margin-right: -$space1; }

.mxn2 { margin-left: -$space2; margin-right: -$space2; }

.mxn3 { margin-left: -$space3; margin-right: -$space3; }

.mxn4 { margin-left: -$space4; margin-right: -$space4; }

.ml-auto { margin-left: auto }

.mr-auto { margin-right: auto }

.mx-auto { margin-left: auto; margin-right: auto; }

/* Basscss Padding */

.p0  { padding: 0 }

.pt0 { padding-top: 0 }

.pr0 { padding-right: 0 }

.pb0 { padding-bottom: 0 }

.pl0 { padding-left: 0 }

.px0 { padding-left: 0; padding-right:  0 }

.py0 { padding-top: 0;  padding-bottom: 0 }

.p1  { padding: $space1 }

.pt1 { padding-top: $space1 }

.pr1 { padding-right: $space1 }

.pb1 { padding-bottom: $space1 }

.pl1 { padding-left: $space1 }

.py1 { padding-top: $space1; padding-bottom: $space1 }

.px1 { padding-left: $space1; padding-right: $space1 }

.p2  { padding: $space2 }

.pt2 { padding-top: $space2 }

.pr2 { padding-right: $space2 }

.pb2 { padding-bottom: $space2 }

.pl2 { padding-left: $space2 }

.py2 { padding-top: $space2; padding-bottom: $space2 }

.px2 { padding-left: $space2; padding-right: $space2 }

.p3  { padding: $space3 }

.pt3 { padding-top: $space3 }

.pr3 { padding-right: $space3 }

.pb3 { padding-bottom: $space3 }

.pl3 { padding-left: $space3 }

.py3 { padding-top: $space3; padding-bottom: $space3 }

.px3 { padding-left: $space3; padding-right: $space3 }

.p4  { padding: $space4 }

.pt4 { padding-top: $space4 }

.pr4 { padding-right: $space4 }

.pb4 { padding-bottom: $space4 }

.pl4 { padding-left: $space4 }

.py4 { padding-top: $space4; padding-bottom: $space4 }

.px4 { padding-left: $space4; padding-right: $space4 }

/* Basscss Grid */

.col {
  float: left;
  box-sizing: border-box;
}

.col-right {
  float: right;
  box-sizing: border-box;
}

.col-1 {
  width: 8.33333%;
}

.col-2 {
  width: 16.66667%;
}

.col-3 {
  width: 25%;
}

.col-4 {
  width: 33.33333%;
}

.col-5 {
  width: 41.66667%;
}

.col-6 {
  width: 50%;
}

.col-7 {
  width: 58.33333%;
}

.col-8 {
  width: 66.66667%;
}

.col-9 {
  width: 75%;
}

.col-10 {
  width: 83.33333%;
}

.col-11 {
  width: 91.66667%;
}

.col-12 {
  width: 100%;
}

@media (min-width: 40em) {

  .sm-col {
    float: left;
    box-sizing: border-box;
  }

  .sm-col-right {
    float: right;
    box-sizing: border-box;
  }

  .sm-col-1 {
    width: 8.33333%;
  }

  .sm-col-2 {
    width: 16.66667%;
  }

  .sm-col-3 {
    width: 25%;
  }

  .sm-col-4 {
    width: 33.33333%;
  }

  .sm-col-5 {
    width: 41.66667%;
  }

  .sm-col-6 {
    width: 50%;
  }

  .sm-col-7 {
    width: 58.33333%;
  }

  .sm-col-8 {
    width: 66.66667%;
  }

  .sm-col-9 {
    width: 75%;
  }

  .sm-col-10 {
    width: 83.33333%;
  }

  .sm-col-11 {
    width: 91.66667%;
  }

  .sm-col-12 {
    width: 100%;
  }

}

@media (min-width: 52em) {

  .md-col {
    float: left;
    box-sizing: border-box;
  }

  .md-col-right {
    float: right;
    box-sizing: border-box;
  }

  .md-col-1 {
    width: 8.33333%;
  }

  .md-col-2 {
    width: 16.66667%;
  }

  .md-col-3 {
    width: 25%;
  }

  .md-col-4 {
    width: 33.33333%;
  }

  .md-col-5 {
    width: 41.66667%;
  }

  .md-col-6 {
    width: 50%;
  }

  .md-col-7 {
    width: 58.33333%;
  }

  .md-col-8 {
    width: 66.66667%;
  }

  .md-col-9 {
    width: 75%;
  }

  .md-col-10 {
    width: 83.33333%;
  }

  .md-col-11 {
    width: 91.66667%;
  }

  .md-col-12 {
    width: 100%;
  }

}

@media (min-width: 64em) {

  .lg-col {
    float: left;
    box-sizing: border-box;
  }

  .lg-col-right {
    float: right;
    box-sizing: border-box;
  }

  .lg-col-1 {
    width: 8.33333%;
  }

  .lg-col-2 {
    width: 16.66667%;
  }

  .lg-col-3 {
    width: 25%;
  }

  .lg-col-4 {
    width: 33.33333%;
  }

  .lg-col-5 {
    width: 41.66667%;
  }

  .lg-col-6 {
    width: 50%;
  }

  .lg-col-7 {
    width: 58.33333%;
  }

  .lg-col-8 {
    width: 66.66667%;
  }

  .lg-col-9 {
    width: 75%;
  }

  .lg-col-10 {
    width: 83.33333%;
  }

  .lg-col-11 {
    width: 91.66667%;
  }

  .lg-col-12 {
    width: 100%;
  }

  .lg-col-auto{ width: auto }

}

.inline-flex { display: inline-flex }

.flex { display: -webkit-box; display: -ms-flexbox; display: flex }

@media (min-width: 40em) {
  .sm-flex { display: -webkit-box; display: -ms-flexbox; display: flex }
}

@media (min-width: 52em) {
  .md-flex { display: -webkit-box; display: -ms-flexbox; display: flex }
}

@media (min-width: 64em) {
  .lg-flex { display: -webkit-box; display: -ms-flexbox; display: flex }
}

.flex-column  { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column }

.flex-wrap    { -ms-flex-wrap: wrap; flex-wrap: wrap }

.items-start    { -webkit-box-align: start; -ms-flex-align: start; -ms-grid-row-align: flex-start; align-items: flex-start }

.items-end      { -webkit-box-align: end; -ms-flex-align: end; -ms-grid-row-align: flex-end; align-items: flex-end }

.items-center   { -webkit-box-align: center; -ms-flex-align: center; -ms-grid-row-align: center; align-items: center }

.items-baseline { -webkit-box-align: baseline; -ms-flex-align: baseline; -ms-grid-row-align: baseline; align-items: baseline }

.items-stretch  { -webkit-box-align: stretch; -ms-flex-align: stretch; -ms-grid-row-align: stretch; align-items: stretch }

.self-start    { -ms-flex-item-align: start; align-self: flex-start }

.self-end      { -ms-flex-item-align: end; align-self: flex-end }

.self-center   { -ms-flex-item-align: center; align-self: center }

.self-baseline { -ms-flex-item-align: baseline; align-self: baseline }

.self-stretch  { -ms-flex-item-align: stretch; align-self: stretch }

.justify-start   { -webkit-box-pack: start; -ms-flex-pack: start; justify-content: flex-start }

.justify-end     { -webkit-box-pack: end; -ms-flex-pack: end; justify-content: flex-end }

.justify-center  { -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center }

.justify-between { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between }

.justify-around  { -ms-flex-pack: distribute; justify-content: space-around }

.content-start   { -ms-flex-line-pack: start; align-content: flex-start }

.content-end     { -ms-flex-line-pack: end; align-content: flex-end }

.content-center  { -ms-flex-line-pack: center; align-content: center }

.content-between { -ms-flex-line-pack: justify; align-content: space-between }

.content-around  { -ms-flex-line-pack: distribute; align-content: space-around }

.content-stretch { -ms-flex-line-pack: stretch; align-content: stretch }

/* 1. Fix for Chrome 44 bug. https://code.google.com/p/chromium/issues/detail?id=506893 */

.flex-auto {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  min-width: 0; /* 1 */
  min-height: 0; /* 1 */
}

.flex-none { -webkit-box-flex: 0; -ms-flex: none; flex: none }

.order-0 { -webkit-box-ordinal-group: 1; -ms-flex-order: 0; order: 0 }

.order-1 { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1 }

.order-2 { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2 }

.order-3 { -webkit-box-ordinal-group: 4; -ms-flex-order: 3; order: 3 }

.order-last { -webkit-box-ordinal-group: 100000; -ms-flex-order: 99999; order: 99999 }

/* Basscss Position */

.relative { position: relative }

.absolute { position: absolute }

.fixed    { position: fixed }

.top-0    { top: 0 }

.right-0  { right: 0 }

.bottom-0 { bottom: 0 }

.left-0   { left: 0 }

.z1 { z-index: 1 }

.z2 { z-index: 2 }

.z3 { z-index: 3 }

.z4 { z-index: 4 }

//.z-3{ z-index: -3; }

/* Basscss Border */

.border {
  border-style: solid;
  border-width: 1px;
}

.border-top {
  border-top-style: solid;
  border-top-width: 1px;
}

.border-right {
  border-right-style: solid;
  border-right-width: 1px;
}

.border-bottom {
  border-bottom-style: solid;
  border-bottom-width: 1px;
}

.border-left {
  border-left-style: solid;
  border-left-width: 1px;
}

.border-none { border: 0 }

.rounded { border-radius: 3px }

.circle  { border-radius: 50% }

.rounded-top    { border-radius: 3px 3px 0 0 }

.rounded-right  { border-radius: 0 3px 3px 0 }

.rounded-bottom { border-radius: 0 0 3px 3px }

.rounded-left   { border-radius: 3px 0 0 3px }

.not-rounded { border-radius: 0 }

/* Basscss Hide */

.hide {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}

@media (max-width: 40em) {
  .xs-hide { display: none !important }
}

@media (min-width: 40em) and (max-width: 52em) {
  .sm-hide { display: none !important }
}

@media (min-width: 52em) and (max-width: 64em) {
  .md-hide { display: none !important }
}

@media (min-width: 64em) {
  .lg-hide { display: none !important }
}

.display-none { display: none }

/* Basscss Responsive Margin */

@media (min-width: 40em) {

  .sm-m0  { margin:        0 }
  .sm-mt0 { margin-top:    0 }
  .sm-mr0 { margin-right:  0 }
  .sm-mb0 { margin-bottom: 0 }
  .sm-ml0 { margin-left:   0 }
  .sm-mx0 { margin-left:   0; margin-right:  0 }
  .sm-my0 { margin-top:    0; margin-bottom: 0 }

  .sm-m1  { margin: $space1 }
  .sm-mt1 { margin-top: $space1 }
  .sm-mr1 { margin-right: $space1 }
  .sm-mb1 { margin-bottom: $space1 }
  .sm-ml1 { margin-left: $space1 }
  .sm-mx1 { margin-left: $space1; margin-right: $space1 }
  .sm-my1 { margin-top: $space1; margin-bottom: $space1 }

  .sm-m2  { margin: $space2 }
  .sm-mt2 { margin-top: $space2 }
  .sm-mr2 { margin-right: $space2 }
  .sm-mb2 { margin-bottom: $space2 }
  .sm-ml2 { margin-left: $space2 }
  .sm-mx2 { margin-left: $space2; margin-right: $space2 }
  .sm-my2 { margin-top: $space2; margin-bottom: $space2 }

  .sm-m3  { margin: $space3 }
  .sm-mt3 { margin-top: $space3 }
  .sm-mr3 { margin-right: $space3 }
  .sm-mb3 { margin-bottom: $space3 }
  .sm-ml3 { margin-left: $space3 }
  .sm-mx3 { margin-left: $space3; margin-right: $space3 }
  .sm-my3 { margin-top: $space3; margin-bottom: $space3 }

  .sm-m4  { margin: $space4 }
  .sm-mt4 { margin-top: $space4 }
  .sm-mr4 { margin-right: $space4 }
  .sm-mb4 { margin-bottom: $space4 }
  .sm-ml4 { margin-left: $space4 }
  .sm-mx4 { margin-left: $space4; margin-right: $space4 }
  .sm-my4 { margin-top: $space4; margin-bottom: $space4 }

  .sm-mxn1 { margin-left: -$space1; margin-right: -$space1 }
  .sm-mxn2 { margin-left: -$space2; margin-right: -$space2 }
  .sm-mxn3 { margin-left: -$space3; margin-right: -$space3 }
  .sm-mxn4 { margin-left: -$space4; margin-right: -$space4 }

  .sm-ml-auto { margin-left:  auto }
  .sm-mr-auto { margin-right: auto }
  .sm-mx-auto { margin-left:  auto; margin-right: auto }

}

@media (min-width: 52em) {

  .md-m0  { margin:        0 }
  .md-mt0 { margin-top:    0 }
  .md-mr0 { margin-right:  0 }
  .md-mb0 { margin-bottom: 0 }
  .md-ml0 { margin-left:   0 }
  .md-mx0 { margin-left:   0; margin-right:  0 }
  .md-my0 { margin-top:    0; margin-bottom: 0 }

  .md-m1  { margin: $space1 }
  .md-mt1 { margin-top: $space1 }
  .md-mr1 { margin-right: $space1 }
  .md-mb1 { margin-bottom: $space1 }
  .md-ml1 { margin-left: $space1 }
  .md-mx1 { margin-left: $space1; margin-right: $space1 }
  .md-my1 { margin-top: $space1; margin-bottom: $space1 }

  .md-m2  { margin: $space2 }
  .md-mt2 { margin-top: $space2 }
  .md-mr2 { margin-right: $space2 }
  .md-mb2 { margin-bottom: $space2 }
  .md-ml2 { margin-left: $space2 }
  .md-mx2 { margin-left: $space2; margin-right: $space2 }
  .md-my2 { margin-top: $space2; margin-bottom: $space2 }

  .md-m3  { margin: $space3 }
  .md-mt3 { margin-top: $space3 }
  .md-mr3 { margin-right: $space3 }
  .md-mb3 { margin-bottom: $space3 }
  .md-ml3 { margin-left: $space3 }
  .md-mx3 { margin-left: $space3; margin-right: $space3 }
  .md-my3 { margin-top: $space3; margin-bottom: $space3 }

  .md-m4  { margin: $space4 }
  .md-mt4 { margin-top: $space4 }
  .md-mr4 { margin-right: $space4 }
  .md-mb4 { margin-bottom: $space4 }
  .md-ml4 { margin-left: $space4 }
  .md-mx4 { margin-left: $space4; margin-right: $space4 }
  .md-my4 { margin-top: $space4; margin-bottom: $space4 }

  .md-mxn1 { margin-left: -$space1; margin-right: -$space1; }
  .md-mxn2 { margin-left: -$space2; margin-right: -$space2; }
  .md-mxn3 { margin-left: -$space3; margin-right: -$space3; }
  .md-mxn4 { margin-left: -$space4; margin-right: -$space4; }

  .md-ml-auto { margin-left:  auto }
  .md-mr-auto { margin-right: auto }
  .md-mx-auto { margin-left: auto; margin-right: auto; }

}

@media (min-width: 64em) {

  .lg-m0  { margin:        0 }
  .lg-mt0 { margin-top:    0 }
  .lg-mr0 { margin-right:  0 }
  .lg-mb0 { margin-bottom: 0 }
  .lg-ml0 { margin-left:   0 }
  .lg-mx0 { margin-left:   0; margin-right:  0 }
  .lg-my0 { margin-top:    0; margin-bottom: 0 }

  .lg-m1  { margin: $space1 }
  .lg-mt1 { margin-top: $space1 }
  .lg-mr1 { margin-right: $space1 }
  .lg-mb1 { margin-bottom: $space1 }
  .lg-ml1 { margin-left: $space1 }
  .lg-mx1 { margin-left: $space1; margin-right: $space1 }
  .lg-my1 { margin-top: $space1; margin-bottom: $space1 }

  .lg-m2  { margin: $space2 }
  .lg-mt2 { margin-top: $space2 }
  .lg-mr2 { margin-right: $space2 }
  .lg-mb2 { margin-bottom: $space2 }
  .lg-ml2 { margin-left: $space2 }
  .lg-mx2 { margin-left: $space2; margin-right: $space2 }
  .lg-my2 { margin-top: $space2; margin-bottom: $space2 }

  .lg-m3  { margin: $space3 }
  .lg-mt3 { margin-top: $space3 }
  .lg-mr3 { margin-right: $space3 }
  .lg-mb3 { margin-bottom: $space3 }
  .lg-ml3 { margin-left: $space3 }
  .lg-mx3 { margin-left: $space3; margin-right: $space3 }
  .lg-my3 { margin-top: $space3; margin-bottom: $space3 }

  .lg-m4  { margin: $space4 }
  .lg-mt4 { margin-top: $space4 }
  .lg-mr4 { margin-right: $space4 }
  .lg-mb4 { margin-bottom: $space4 }
  .lg-ml4 { margin-left: $space4 }
  .lg-mx4 { margin-left: $space4; margin-right: $space4 }
  .lg-my4 { margin-top: $space4; margin-bottom: $space4 }

  .lg-mxn1 { margin-left: -$space1; margin-right: -$space1; }
  .lg-mxn2 { margin-left: -$space2; margin-right: -$space2; }
  .lg-mxn3 { margin-left: -$space3; margin-right: -$space3; }
  .lg-mxn4 { margin-left: -$space4; margin-right: -$space4; }

  .lg-ml-auto { margin-left:  auto }
  .lg-mr-auto { margin-right: auto }
  .lg-mx-auto { margin-left: auto; margin-right: auto; }

}

/* Basscss Responsive Padding */

@media (min-width: 40em) {

  .sm-p0  { padding:        0 }
  .sm-pt0 { padding-top:    0 }
  .sm-pr0 { padding-right:  0 }
  .sm-pb0 { padding-bottom: 0 }
  .sm-pl0 { padding-left:   0 }
  .sm-px0 { padding-left:   0; padding-right:  0 }
  .sm-py0 { padding-top:    0; padding-bottom: 0 }

  .sm-p1  { padding: $space1 }
  .sm-pt1 { padding-top: $space1 }
  .sm-pr1 { padding-right: $space1 }
  .sm-pb1 { padding-bottom: $space1 }
  .sm-pl1 { padding-left: $space1 }
  .sm-px1 { padding-left: $space1; padding-right: $space1 }
  .sm-py1 { padding-top: $space1; padding-bottom: $space1 }

  .sm-p2  { padding: $space2 }
  .sm-pt2 { padding-top: $space2 }
  .sm-pr2 { padding-right: $space2 }
  .sm-pb2 { padding-bottom: $space2 }
  .sm-pl2 { padding-left: $space2 }
  .sm-px2 { padding-left: $space2; padding-right: $space2 }
  .sm-py2 { padding-top: $space2; padding-bottom: $space2 }

  .sm-p3  { padding: $space3 }
  .sm-pt3 { padding-top: $space3 }
  .sm-pr3 { padding-right: $space3 }
  .sm-pb3 { padding-bottom: $space3 }
  .sm-pl3 { padding-left: $space3 }
  .sm-px3 { padding-left: $space3; padding-right: $space3 }
  .sm-py3 { padding-top: $space3; padding-bottom: $space3 }

  .sm-p4  { padding: $space4 }
  .sm-pt4 { padding-top: $space4 }
  .sm-pr4 { padding-right: $space4 }
  .sm-pb4 { padding-bottom: $space4 }
  .sm-pl4 { padding-left: $space4 }
  .sm-px4 { padding-left: $space4; padding-right: $space4 }
  .sm-py4 { padding-top: $space4; padding-bottom: $space4 }

}

@media (min-width: 52em) {

  .md-p0  { padding:        0 }
  .md-pt0 { padding-top:    0 }
  .md-pr0 { padding-right:  0 }
  .md-pb0 { padding-bottom: 0 }
  .md-pl0 { padding-left:   0 }
  .md-px0 { padding-left:   0; padding-right:  0 }
  .md-py0 { padding-top:    0; padding-bottom: 0 }

  .md-p1  { padding: $space1 }
  .md-pt1 { padding-top: $space1 }
  .md-pr1 { padding-right: $space1 }
  .md-pb1 { padding-bottom: $space1 }
  .md-pl1 { padding-left: $space1 }
  .md-px1 { padding-left: $space1; padding-right: $space1 }
  .md-py1 { padding-top: $space1; padding-bottom: $space1 }

  .md-p2  { padding: $space2 }
  .md-pt2 { padding-top: $space2 }
  .md-pr2 { padding-right: $space2 }
  .md-pb2 { padding-bottom: $space2 }
  .md-pl2 { padding-left: $space2 }
  .md-px2 { padding-left: $space2; padding-right: $space2 }
  .md-py2 { padding-top: $space2; padding-bottom: $space2 }

  .md-p3  { padding: $space3 }
  .md-pt3 { padding-top: $space3 }
  .md-pr3 { padding-right: $space3 }
  .md-pb3 { padding-bottom: $space3 }
  .md-pl3 { padding-left: $space3 }
  .md-px3 { padding-left: $space3; padding-right: $space3 }
  .md-py3 { padding-top: $space3; padding-bottom: $space3 }

  .md-p4  { padding: $space4 }
  .md-pt4 { padding-top: $space4 }
  .md-pr4 { padding-right: $space4 }
  .md-pb4 { padding-bottom: $space4 }
  .md-pl4 { padding-left: $space4 }
  .md-px4 { padding-left: $space4; padding-right: $space4 }
  .md-py4 { padding-top: $space4; padding-bottom: $space4 }

}

@media (min-width: 64em) {

  .lg-p0  { padding:        0 }
  .lg-pt0 { padding-top:    0 }
  .lg-pr0 { padding-right:  0 }
  .lg-pb0 { padding-bottom: 0 }
  .lg-pl0 { padding-left:   0 }
  .lg-px0 { padding-left:   0; padding-right:  0 }
  .lg-py0 { padding-top:    0; padding-bottom: 0 }

  .lg-p1  { padding: $space1 }
  .lg-pt1 { padding-top: $space1 }
  .lg-pr1 { padding-right: $space1 }
  .lg-pb1 { padding-bottom: $space1 }
  .lg-pl1 { padding-left: $space1 }
  .lg-px1 { padding-left: $space1; padding-right: $space1 }
  .lg-py1 { padding-top: $space1; padding-bottom: $space1 }

  .lg-p2  { padding: $space2 }
  .lg-pt2 { padding-top: $space2 }
  .lg-pr2 { padding-right: $space2 }
  .lg-pb2 { padding-bottom: $space2 }
  .lg-pl2 { padding-left: $space2 }
  .lg-px2 { padding-left: $space2; padding-right: $space2 }
  .lg-py2 { padding-top: $space2; padding-bottom: $space2 }

  .lg-p3  { padding: $space3 }
  .lg-pt3 { padding-top: $space3 }
  .lg-pr3 { padding-right: $space3 }
  .lg-pb3 { padding-bottom: $space3 }
  .lg-pl3 { padding-left: $space3 }
  .lg-px3 { padding-left: $space3; padding-right: $space3 }
  .lg-py3 { padding-top: $space3; padding-bottom: $space3 }

  .lg-p4  { padding: $space4 }
  .lg-pt4 { padding-top: $space4 }
  .lg-pr4 { padding-right: $space4 }
  .lg-pb4 { padding-bottom: $space4 }
  .lg-pl4 { padding-left: $space4 }
  .lg-px4 { padding-left: $space4; padding-right: $space4 }
  .lg-py4 { padding-top: $space4; padding-bottom: $space4 }

}

/* Basscss Responsive Layout */

@media (min-width: 40em) {

  .sm-inline       { display: inline }
  .sm-block        { display: block }
  .sm-inline-block { display: inline-block }
  .sm-table        { display: table }
  .sm-table-cell   { display: table-cell }

  .sm-overflow-hidden { overflow: hidden }
  .sm-overflow-scroll { overflow: scroll }
  .sm-overflow-auto   { overflow: auto }

  .sm-left  { float: left }
  .sm-right { float: right }

}

@media (min-width: 52em) {

  .md-inline       { display: inline }
  .md-block        { display: block }
  .md-inline-block { display: inline-block }
  .md-table        { display: table }
  .md-table-cell   { display: table-cell }

  .md-overflow-hidden { overflow: hidden }
  .md-overflow-scroll { overflow: scroll }
  .md-overflow-auto   { overflow: auto }

  .md-left  { float: left }
  .md-right { float: right }

}

@media (min-width: 64em) {

  .lg-inline       { display: inline }
  .lg-block        { display: block }
  .lg-inline-block { display: inline-block }
  .lg-table        { display: table }
  .lg-table-cell   { display: table-cell }

  .lg-overflow-hidden { overflow: hidden }
  .lg-overflow-scroll { overflow: scroll }
  .lg-overflow-auto   { overflow: auto }

  .lg-left  { float: left }
  .lg-right { float: right }

}

/* Basscss Responsive Position */

@media (min-width: 40em) {
  .sm-relative { position: relative }
  .sm-absolute { position: absolute }
  .sm-fixed    { position: fixed }

  .sm-top-0    { top: 0 }
  .sm-right-0  { right: 0 }
  .sm-bottom-0 { bottom: 0 }
  .sm-left-0   { left: 0 }
}

@media (min-width: 52em) {
  .md-relative { position: relative }
  .md-absolute { position: absolute }
  .md-fixed    { position: fixed }

  .md-top-0    { top: 0 }
  .md-right-0  { right: 0 }
  .md-bottom-0 { bottom: 0 }
  .md-left-0   { left: 0 }
}

@media (min-width: 64em) {
  .lg-relative { position: relative }
  .lg-absolute { position: absolute }
  .lg-fixed    { position: fixed }

  .lg-top-0    { top: 0 }
  .lg-right-0  { right: 0 }
  .lg-bottom-0 { bottom: 0 }
  .lg-left-0   { left: 0 }
}

/* Basscss Responsive Typography */

@media (min-width: 40em) {
  .sm-left-align   { text-align: left }
  .sm-center       { text-align: center }
  .sm-right-align  { text-align: right }
  .sm-justify      { text-align: justify }
}

@media (min-width: 52em) {
  .md-left-align   { text-align: left }
  .md-center       { text-align: center }
  .md-right-align  { text-align: right }
  .md-justify      { text-align: justify }
}

@media (min-width: 64em) {
  .lg-left-align   { text-align: left }
  .lg-center       { text-align: center }
  .lg-right-align  { text-align: right }
  .lg-justify      { text-align: justify }
}

/* Basscss Responsive Type Scale */

@media (min-width: 40em) {
  .sm-h00 { font-size: 4em }
  .sm-h0 { font-size: 3em }
  .sm-h1 { font-size: 2em }
  .sm-h2 { font-size: 1.5em }
  .sm-h3 { font-size: 1.25em }
  .sm-h4 { font-size:1em }
  .sm-h5 { font-size: .875em }
  .sm-h6 { font-size: .75em }
}

@media (min-width: 52em) {
  .md-h00 { font-size: 4em }
  .md-h0 { font-size: 3em }
  .md-h1 { font-size: 2em }
  .md-h2 { font-size: 1.5em }
  .md-h3 { font-size: 1.25em }
  .md-h4 { font-size:1em }
  .md-h5 { font-size: .875em }
  .md-h6 { font-size: .75em }
}

@media (min-width: 64em) {
  .lg-h00 { font-size: 4em }
  .lg-h0 { font-size: 3em }
  .lg-h1 { font-size: 2em }
  .lg-h2 { font-size: 1.5em }
  .lg-h3 { font-size: 1.25em }
  .lg-h4 { font-size:1em }
  .lg-h5 { font-size: .875em }
  .lg-h6 { font-size: .75em }
}

/* Basscss Colors */

/* 

   VARIABLES

   - Cool
   - Warm
   - Gray Scale

*/

.black  { color: $black; }

.gray   { color: #AAAAAA }

.silver { color: #DDDDDD }

.white  { color: #FFFFFF }

.aqua  { color: #7FDBFF }

.blue  { color: $blue }

.navy  { color: #001F3F }

.teal  { color: #39CCCC }

.green { color: #2ECC40 }

.olive { color: #3D9970 }

.lime  { color: #01FF70 }

.yellow  { color: #FFDC00 }

.orange  { color: #FF851B }

.red     { color: #FF4136 }

.fuchsia { color: #F012BE }

.purple  { color: #B10DC9 }

.maroon  { color: #85144B }

.color-inherit { color: inherit }

.muted-2 { opacity: .2 }
.muted { opacity: .5 }


/* Basscss Background Colors */

.bg-black  { background-color: #111111 }

.bg-gray   { background-color: #AAAAAA }

.bg-silver { background-color: #DDDDDD }

.bg-white  { background-color: #FFFFFF }

.bg-aqua  { background-color: #7FDBFF }

.bg-blue  { background-color: $blue }

.bg-navy  { background-color: #001F3F }

.bg-teal  { background-color: #39CCCC }

.bg-green { background-color: #2ECC40 }

.bg-olive { background-color: #3D9970 }

.bg-lime  { background-color: #01FF70 }

.bg-yellow  { background-color: #FFDC00 }

.bg-orange  { background-color: #FF851B }

.bg-red     { background-color: #FF4136 }

.bg-fuchsia { background-color: #F012BE }

.bg-purple  { background-color: #B10DC9 }

.bg-maroon  { background-color: #85144B }

/* Basscss Border Colors */

.border-black  { border-color: #111111 }

.border-gray   { border-color: #eee }

.border-silver { border-color: #DDDDDD }

.border-white  { border-color: #FFFFFF }

.border-aqua  { border-color: #7FDBFF }

.border-blue  { border-color: #0074D9 }

.border-navy  { border-color: #001F3F }

.border-teal  { border-color: #39CCCC }

.border-green { border-color: #2ECC40 }

.border-olive { border-color: #3D9970 }

.border-lime  { border-color: #01FF70 }

.border-yellow  { border-color: #FFDC00 }

.border-orange  { border-color: #FF851B }

.border-red     { border-color: #FF4136 }

.border-fuchsia { border-color: #F012BE }

.border-purple  { border-color: #B10DC9 }

.border-maroon  { border-color: #85144B }

/* Basscss Darken */

.bg-darken-1 { background-color: rgba(0, 0, 0, .0625) }

.bg-darken-2 { background-color: rgba(0, 0, 0, .125) }

.bg-darken-3 { background-color: rgba(0, 0, 0, .25) }

.bg-darken-4 { background-color: rgba(0, 0, 0, .5) }

/* Basscss Lighten */

.bg-lighten-1 { background-color: rgba(255, 255, 255, .0625) }

.bg-lighten-2 { background-color: rgba(255, 255, 255, .125) }

.bg-lighten-3 { background-color: rgba(255, 255, 255, .25) }

.bg-lighten-4 { background-color: rgba(255, 255, 255, .5) }

/* Basscss Background Images */

.bg-cover   { background-size: cover }

.bg-contain { background-size: contain }

.bg-center  { background-position: center }

.bg-top     { background-position: top }

.bg-right   { background-position: right }

.bg-bottom  { background-position: bottom }

.bg-left    { background-position: left }

.bg-no-repeat { background-repeat: no-repeat }

.bg-repeat-x { background-repeat: repeat-x }

.bg-repeat-y { background-repeat: repeat-y }

.bg-scroll { background-attachment: scroll }

.bg-fixed { background-repeat: fixed }

/* Basscss All */

.all-initial { all: initial }

.all-unset { all: unset }

.all-inherit { all: inherit }

.all-revert { all: revert }