div.row {
  position: relative;
  margin: 0 -1rem;
  box-sizing: border-box;
  height: 100%;
  font-size: 0;
}

div.row > div.col {
  position: relative;
  display: inline-block;
  vertical-align: top;
  height: 100%;
  margin: 0 1rem;
  box-sizing: border-box;
  font-size: 1rem;
  text-align: left;
}

div.row > div.col:first-child { margin-left: 1rem; }
div.row > div.col:last-child { margin-right: 1rem; }

div.row > div.col.left { text-align: left; }
div.row > div.col.center { text-align: center; }
div.row > div.col.right { text-align: right; }

div.row > div.col-0 { display: none; height: 0; }
div.row > div.col-1 { width: calc((100% / 12 * 1) - 2rem); }
div.row > div.col-2 { width: calc((100% / 12 * 2) - 2rem); }
div.row > div.col-3 { width: calc((100% / 12 * 3) - 2rem); }
div.row > div.col-4 { width: calc((100% / 12 * 4) - 2rem); }
div.row > div.col-5 { width: calc((100% / 12 * 5) - 2rem); }
div.row > div.col-6 { width: calc((100% / 12 * 6) - 2rem); }
div.row > div.col-7 { width: calc((100% / 12 * 7) - 2rem); }
div.row > div.col-8 { width: calc((100% / 12 * 8) - 2rem); }
div.row > div.col-9 { width: calc((100% / 12 * 9) - 2rem); }
div.row > div.col-10 { width: calc((100% / 12 * 10) - 2rem); }
div.row > div.col-11 { width: calc((100% / 12 * 11) - 2rem); }
div.row > div.col-12 { width: calc((100% / 12 * 12) - 2rem); }

@media only screen and (max-width : 1400px) {
  div.row > div.col-xl-0 { display: inline-block; height: 0; overflow: hidden; }
  div.row > div.col-xl-1 { display: inline-block; width: calc((100% / 12 * 1) - 2rem); }
  div.row > div.col-xl-2 { display: inline-block; width: calc((100% / 12 * 2) - 2rem); }
  div.row > div.col-xl-3 { display: inline-block; width: calc((100% / 12 * 3) - 2rem); }
  div.row > div.col-xl-4 { display: inline-block; width: calc((100% / 12 * 4) - 2rem); }
  div.row > div.col-xl-5 { display: inline-block; width: calc((100% / 12 * 5) - 2rem); }
  div.row > div.col-xl-6 { display: inline-block; width: calc((100% / 12 * 6) - 2rem); }
  div.row > div.col-xl-7 { display: inline-block; width: calc((100% / 12 * 7) - 2rem); }
  div.row > div.col-xl-8 { display: inline-block; width: calc((100% / 12 * 8) - 2rem); }
  div.row > div.col-xl-9 { display: inline-block; width: calc((100% / 12 * 9) - 2rem); }
  div.row > div.col-xl-10 { display: inline-block; width: calc((100% / 12 * 10) - 2rem); }
  div.row > div.col-xl-11 { display: inline-block; width: calc((100% / 12 * 11) - 2rem); }
  div.row > div.col-xl-12 { display: inline-block; width: calc((100% / 12 * 12) - 2rem); }

  div.row > div.col-xl-left { text-align: left !important; }
  div.row > div.col-xl-center { text-align: center !important; }

  div.row > div.col-xl-mb1 { margin-bottom: 1rem; }
  div.row > div.col-xl-mb2 { margin-bottom: 2rem; }
  div.row > div.col-xl-mb3 { margin-bottom: 3rem; }
  div.row > div.col-xl-mb4 { margin-bottom: 4rem; }
}

@media only screen and (max-width : 1200px) {
  div.row > div.col-lg-0 { display: inline-block; height: 0 !important; overflow: hidden; }
  div.row > div.col-lg-1 { display: inline-block; width: calc((100% / 12 * 1) - 2rem); }
  div.row > div.col-lg-2 { display: inline-block; width: calc((100% / 12 * 2) - 2rem); }
  div.row > div.col-lg-3 { display: inline-block; width: calc((100% / 12 * 3) - 2rem); }
  div.row > div.col-lg-4 { display: inline-block; width: calc((100% / 12 * 4) - 2rem); }
  div.row > div.col-lg-5 { display: inline-block; width: calc((100% / 12 * 5) - 2rem); }
  div.row > div.col-lg-6 { display: inline-block; width: calc((100% / 12 * 6) - 2rem); }
  div.row > div.col-lg-7 { display: inline-block; width: calc((100% / 12 * 7) - 2rem); }
  div.row > div.col-lg-8 { display: inline-block; width: calc((100% / 12 * 8) - 2rem); }
  div.row > div.col-lg-9 { display: inline-block; width: calc((100% / 12 * 9) - 2rem); }
  div.row > div.col-lg-10 { display: inline-block; width: calc((100% / 12 * 10) - 2rem); }
  div.row > div.col-lg-11 { display: inline-block; width: calc((100% / 12 * 11) - 2rem); }
  div.row > div.col-lg-12 { display: inline-block; width: calc((100% / 12 * 12) - 2rem); }

  div.row > div.col-lg-left { text-align: left !important; }
  div.row > div.col-lg-center { text-align: center !important; }

  div.row > div.col-lg-mb1 { margin-bottom: 1rem; }
  div.row > div.col-lg-mb2 { margin-bottom: 2rem; }
  div.row > div.col-lg-mb3 { margin-bottom: 3rem; }
  div.row > div.col-lg-mb4 { margin-bottom: 4rem; }
}

@media only screen and (max-width : 992px) {
  div.row > div.col-md-0 { display: inline-block; height: 0 !important; overflow: hidden; }
  div.row > div.col-md-1 { display: inline-block; width: calc((100% / 12 * 1) - 2rem); }
  div.row > div.col-md-2 { display: inline-block; width: calc((100% / 12 * 2) - 2rem); }
  div.row > div.col-md-3 { display: inline-block; width: calc((100% / 12 * 3) - 2rem); }
  div.row > div.col-md-4 { display: inline-block; width: calc((100% / 12 * 4) - 2rem); }
  div.row > div.col-md-5 { display: inline-block; width: calc((100% / 12 * 5) - 2rem); }
  div.row > div.col-md-6 { display: inline-block; width: calc((100% / 12 * 6) - 2rem); }
  div.row > div.col-md-7 { display: inline-block; width: calc((100% / 12 * 7) - 2rem); }
  div.row > div.col-md-8 { display: inline-block; width: calc((100% / 12 * 8) - 2rem); }
  div.row > div.col-md-9 { display: inline-block; width: calc((100% / 12 * 9) - 2rem); }
  div.row > div.col-md-10 { display: inline-block; width: calc((100% / 12 * 10) - 2rem); }
  div.row > div.col-md-11 { display: inline-block; width: calc((100% / 12 * 11) - 2rem); }
  div.row > div.col-md-12 { display: inline-block; width: calc((100% / 12 * 12) - 2rem); }

  div.row > div.col-md-left { text-align: left !important; }
  div.row > div.col-md-center { text-align: center !important; }

  div.row > div.col-md-mb1 { margin-bottom: 1rem; }
  div.row > div.col-md-mb2 { margin-bottom: 2rem; }
  div.row > div.col-md-mb3 { margin-bottom: 3rem; }
  div.row > div.col-md-mb4 { margin-bottom: 4rem; }
}

@media only screen and (max-width : 768px) {
  div.row > div.col-sm-0 { display: inline-block; height: 0 !important; overflow: hidden; }
  div.row > div.col-sm-1 { display: inline-block; width: calc((100% / 12 * 1) - 2rem); }
  div.row > div.col-sm-2 { display: inline-block; width: calc((100% / 12 * 2) - 2rem); }
  div.row > div.col-sm-3 { display: inline-block; width: calc((100% / 12 * 3) - 2rem); }
  div.row > div.col-sm-4 { display: inline-block; width: calc((100% / 12 * 4) - 2rem); }
  div.row > div.col-sm-5 { display: inline-block; width: calc((100% / 12 * 5) - 2rem); }
  div.row > div.col-sm-6 { display: inline-block; width: calc((100% / 12 * 6) - 2rem); }
  div.row > div.col-sm-7 { display: inline-block; width: calc((100% / 12 * 7) - 2rem); }
  div.row > div.col-sm-8 { display: inline-block; width: calc((100% / 12 * 8) - 2rem); }
  div.row > div.col-sm-9 { display: inline-block; width: calc((100% / 12 * 9) - 2rem); }
  div.row > div.col-sm-10 { display: inline-block; width: calc((100% / 12 * 10) - 2rem); }
  div.row > div.col-sm-11 { display: inline-block; width: calc((100% / 12 * 11) - 2rem); }
  div.row > div.col-sm-12 { display: inline-block; width: calc((100% / 12 * 12) - 2rem); }
  
  div.row > div.col-sm-left { text-align: left !important; }
  div.row > div.col-sm-center { text-align: center !important; }

  div.row > div.col-sm-mb1 { margin-bottom: 1rem; }
  div.row > div.col-sm-mb2 { margin-bottom: 2rem; }
  div.row > div.col-sm-mb3 { margin-bottom: 3rem; }
  div.row > div.col-sm-mb4 { margin-bottom: 4rem; }
}

@media only screen and (max-width : 576px) {
  div.row > div.col-xs-0 { display: inline-block; height: 0 !important; overflow: hidden; }
  div.row > div.col-xs-1 { display: inline-block; width: calc((100% / 12 * 1) - 2rem); }
  div.row > div.col-xs-2 { display: inline-block; width: calc((100% / 12 * 2) - 2rem); }
  div.row > div.col-xs-3 { display: inline-block; width: calc((100% / 12 * 3) - 2rem); }
  div.row > div.col-xs-4 { display: inline-block; width: calc((100% / 12 * 4) - 2rem); }
  div.row > div.col-xs-5 { display: inline-block; width: calc((100% / 12 * 5) - 2rem); }
  div.row > div.col-xs-6 { display: inline-block; width: calc((100% / 12 * 6) - 2rem); }
  div.row > div.col-xs-7 { display: inline-block; width: calc((100% / 12 * 7) - 2rem); }
  div.row > div.col-xs-8 { display: inline-block; width: calc((100% / 12 * 8) - 2rem); }
  div.row > div.col-xs-9 { display: inline-block; width: calc((100% / 12 * 9) - 2rem); }
  div.row > div.col-xs-10 { display: inline-block; width: calc((100% / 12 * 10) - 2rem); }
  div.row > div.col-xs-11 { display: inline-block; width: calc((100% / 12 * 11) - 2rem); }
  div.row > div.col-xs-12 { display: inline-block; width: calc((100% / 12 * 12) - 2rem); }
  
  div.row > div.col-xs-left { text-align: left !important; }
  div.row > div.col-xs-center { text-align: center !important; }

  div.row > div.col-xs-mb1 { margin-bottom: 1rem; }
  div.row > div.col-xs-mb2 { margin-bottom: 2rem; }
  div.row > div.col-xs-mb3 { margin-bottom: 3rem; }
  div.row > div.col-xs-mb4 { margin-bottom: 4rem; }
}