.row-flex {
  display: flex;
  flex-wrap: wrap;

  @for $i from 1 through 12 {
    [class*="col-xs-#{$i}"] {
      flex: $i 0 (100% / 12 * $i);
    }

    [class*="col-xs-#{$i}"]:last-child {
      flex: 0 0 (100% / 12 * $i);
    }
  }

  @media (min-width: 768px) {
    @for $i from 1 through 12 {
      [class*="col-sm-#{$i}"] {
        flex: $i 0 (100% / 12 * $i);
      }

      [class*="col-sm-#{$i}"]:last-child {
        flex: 0 0 (100% / 12 * $i);
      }
    }
  }

  @media (min-width: 992px) {
    @for $i from 1 through 12 {
      [class*="col-md-#{$i}"] {
        flex: $i 0 (100% / 12 * $i);
      }

      [class*="col-md-#{$i}"]:last-child {
        flex: 0 0 (100% / 12 * $i);
      }
    }
  }

  @media (min-width: 1200px) {
    @for $i from 1 through 12 {
      [class*="col-lg-#{$i}"] {
        flex: $i 0 (100% / 12 * $i);
      }

      [class*="col-lg-#{$i}"]:last-child {
        flex: 0 0 (100% / 12 * $i);
      }
    }
  }
}
