.container {
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    width: 1170px;
}

.row {
  display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
  display: -ms-flexbox;      /* TWEENER - IE 10 */
  display: -webkit-flex;     /* NEW - Chrome */
  display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
  flex-direction: row;
  flex-wrap: wrap;
}

.col {
  -webkit-box-flex: 1;      /* OLD - iOS 6-, Safari 3.1-6 */
  -moz-box-flex: 1;         /* OLD - Firefox 19- */
  width: 20%;               /* For old syntax, otherwise collapses. */
  -webkit-flex: 1;          /* Chrome */
  -ms-flex: 1;              /* IE 10 */
  flex: 1;             		/* NEW, Spec - Opera 12.1, Firefox 20+ */
  margin: 0;
  padding: 0 0 0 1em;
  box-sizing: border-box;
}

.col:first-child { padding-left: 0; }
.col:last-child { padding-right: 0; }

   
/* nested grids */
.row .row, .row.nested {
  flex: 1 1 auto;
}

/* full width grids */
.row.wide-fit {
  margin-left: -10px;
  margin-right: -10px;
}

/* center grids */
.row.center {
  justify-content: center;
}

.center .col {
  flex-grow: 0;
  flex-shrink: 0;
}

/* columns widths */

.col-span-1 {
  flex-basis: 8.3333%;
}

.col-span-2 {
  flex-basis: 16.6666%; 
}

.col-span-3 {
  flex-basis: 25%;
}

.col-span-4 {
  flex-basis: 33.3333%;
}

.col-span-5 {
  flex-basis: 41.6666%;
}

.col-span-6 {
  flex-basis: 50%;
}

.col-span-7 {
  flex-basis: 58.3333%;
}

.col-span-8 {
  flex-basis: 66.6666%;
}

.col-span-9 {
  flex-basis: 75%;
}

.col-span-10 {
  flex-basis: 83.3333%;
}

.col-span-11 {
  flex-basis: 91.6666%;
}

.col-span-12 {
  flex-basis: 100%;
}

/* examples */

.fixed-width {
  flex: 0 0 500px;
  background-color: rgba(255,0,0,0.1) !important;
}

@media only screen and (max-width: 48em) {
  .col-span-1,
  .col-span-2,
  .col-span-3,
  .col-span-4,
  .col-span-5,
  .col-span-6,
  .col-span-7,
  .col-span-8,
  .col-span-9,
  .col-span-10,
  .col-span-11 {
    flex-basis: 100%;
    padding:0;
  }

  .nested .col {
    flex-basis: 100%;
  }
  
}
