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

.d-flex.row::before {
  display: none;
}

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

.flex-direction-row {
  -webkit-box-direction: normal;
  -webkit-box-orient: horizontal;
  -moz-flex-direction: row;
  -ms-flex-direction: row;
  flex-direction: row;
}

.flex-direction-row-reverse {
  -webkit-box-direction: reverse;
  -webkit-box-orient: horizontal;
  -moz-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

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

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

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

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

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

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

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

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

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

.flex-justify-stretch {
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  -moz-align-items: stretch;
  align-items: stretch;
}

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

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

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

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

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