.awebooking,
.awebooking-block {
  .flex-space {
    flex-grow: 1;
  }

  .columns {
    @include make-row();
  }

  .columns.no-gutters,
  .columns.no-gutters {
    margin-right: 0;
    margin-left: 0;

    > .column,
    > [class*="column-"] {
      padding-right: 0;
      padding-left: 0;
    }
  }
}

// Common properties for all breakpoints
%grid-column {
  position: relative;
  width: 100%;
  min-height: 1px; // Prevent columns from collapsing when empty
  padding-right: ($grid-gutter-width / 2);
  padding-left: ($grid-gutter-width / 2);
}

@each $breakpoint in map-keys($grid-breakpoints) {
  $infix: breakpoint-infix($breakpoint, $grid-breakpoints);

  .awebooking .column#{$infix},
  .awebooking-block .column#{$infix} {
    @extend %grid-column;
  }

  // Allow columns to stretch full width below their breakpoints
  @for $i from 1 through $grid-columns {
    .awebooking .column#{$infix}-#{$i},
    .awebooking-block .column#{$infix}-#{$i} {
      @extend %grid-column;
    }
  }

  @include media-breakpoint-up($breakpoint, $grid-breakpoints) {
    // Provide basic `.col-{bp}` classes for equal-width flexbox columns
    .awebooking .column#{$infix},
    .awebooking-block .column#{$infix} {
      flex-basis: 0;
      flex-grow: 1;
      max-width: 100%;
    }

    @for $i from 1 through $grid-columns {
      .awebooking .column#{$infix}-#{$i},
      .awebooking-block .column#{$infix}-#{$i} {
        @include make-col($i, $grid-columns);
      }
    }
  }
}
