* + .c-box-row-wrapper {
  margin-top: 3rem;
}

.c-box-row-wrapper + * {
  margin-top: 3rem;
}

.c-box-row {
  margin-bottom: -2rem;
}

.box-row {
  div {
    flex-grow: 0;

    > *:last-child {
      margin-bottom: 0;
    }
  }

  .l-container--padded__all {
    @media all and (min-width: 60em) {
      padding: 3rem 2rem;
    }
  }
}

.box-row-3up .col-lg {
  @media all and (min-width: 60em) {
    flex-basis: 33.333%;
    flex-grow: 0;
    min-width: 33.333%;
  }
}

 /* if it's in a WP column */
.wp-block-column .c-box-row {
  .l-container--padded__all,
  .container-padding-all {
    @media all and (min-width: 47em) {
      padding: 2rem;
    }
  }

  .col-lg,
  .col-lg-4 {
    padding-left: .5rem;
    padding-right: .5rem;
  }

  &.align-left {
    justify-content: left;
  }

  &.align-right {
    justify-content: right;
  }

  &.align-center {
    justify-content: center;
  }

  &.equal-heights [class^="col-"] {
    margin-top: 16px;
    margin-bottom: 16px;
    padding-left: 16px;
    padding-right: 16px;
  }
}

 /* Without class dependencies */
.c-box-row.align-center {
  justify-content: center;
}

.wp-block-acf-grey-boxes .c-box-row {
  &.align-left {
    justify-content: left;
  }

  &.align-right {
    justify-content: right;
  }

  &.align-center {
    justify-content: center;
  }
}

.box-row-4up {
  .col-lg {
    @media all and (min-width: 60em) {
      flex-basis: 50%;
      flex-grow: 0;
      flex-shrink: 1;
    }

    @media all and (min-width: 70em) {
      flex-basis: 25%;
    }
  }
}

.stacked-2x2 .box-row-4up {
  .col-lg,
  .col-lg-4 {
    @media all and (min-width: 60em) {
      flex-basis: 50%;
      max-width: 50%;
      min-width: 50%;
    }
  }
}

 /* IE11 fix */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .box-row-3up .col-lg {
    flex-basis: calc(33.333% - 2rem);
  }

  .box-row-4up .col-lg {
    flex-basis: calc(25% - 2rem);
  }
}

 /* WP fixes that broke with v6.0 */
.wp-container-6.horizontal-subnav {
  gap: 0 !important;
}
