// Single container class with breakpoint max-widths
.sw-container,
// 100% wide container at all breakpoints
.sw-container-fluid {
    @include make-container(15px);
}

// Responsive containers that are 100% wide until a breakpoint
@each $breakpoint,
$container-max-width in $container-max-widths {
    .sw-container-#{$breakpoint} {
        @extend .sw-container-fluid;
    }

    @include media-breakpoint-up($breakpoint, $grid-breakpoints) {
        %responsive-container-#{$breakpoint} {
            max-width: $container-max-width;
        }

        // Extend each breakpoint which is smaller or equal to the current breakpoint
        $extend-breakpoint: true;

        @each $name,
        $width in $grid-breakpoints {
            @if ($extend-breakpoint) {
                .sw-container#{breakpoint-infix($name, $grid-breakpoints)} {
                    @extend %responsive-container-#{$breakpoint};
                }

                // Once the current breakpoint is reached, stop extending
                @if ($breakpoint==$name) {
                    $extend-breakpoint: false;
                }
            }
        }
    }
}