/* Alignment CSS */

/* Center alignments */
.text-center {
  text-align: center;
}

/* Flex alignments */
.d-flex {
  display: flex;
}

.align-items-center {
  align-items: center;
}

.justify-content-end {
  justify-content: flex-end;
}

/* Bootstrap-like grid (basic) */
.row {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -15px;
}

.col-lg-3, .col-lg-4, .col-xl-2, .col-xl-10 {
  padding: 0 15px;
}

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

.col-lg-4 {
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
}

.col-xl-2 {
  flex: 0 0 16.666667%;
  max-width: 16.666667%;
}

.col-xl-10 {
  flex: 0 0 83.333333%;
  max-width: 83.333333%;
}

.col-md-2, .col-md-4, .col-md-6, .col-md-8 {
  padding: 0 15px;
}

.col-md-2 {
  flex: 0 0 16.666667%;
  max-width: 16.666667%;
}

.col-md-4 {
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
}

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

.col-md-8 {
  flex: 0 0 66.666667%;
  max-width: 66.666667%;
}

@media (max-width: 992px) {
  .col-lg-3, .col-lg-4 {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

@media (max-width: 768px) {
  .row {
    margin: 0 -10px;
  }
  
  .col-lg-3, .col-lg-4, .col-xl-2, .col-xl-10,
  .col-md-2, .col-md-4, .col-md-6, .col-md-8 {
    flex: 0 0 100%;
    max-width: 100%;
    padding: 0 10px;
  }
}