@charset "UTF-8";

/* -----------------------------------------------------------------

    Copyright  : 2023
    Created on : 2023-11-08, 2:57 PM
    Author     : Sébastien FOURNIER <contact@sebastien-fournier.com>

    MIXIN CONTAINER :
    ================

------------------------------------------------------------------ */

@mixin make-container-fluid-left-right($gutter: $grid-gutter-width) {
    padding-right: $gutter, 2;
    padding-left: $gutter, 2;
}

@mixin make-container-fluid-left($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {
    $limit: false;
    @each $breakpoint, $container-max-width in $max-widths {
        @if ($breakpoint == $container-fluid-side-limit) {
            $limit: true;
        }
        @if ($limit) {
            @include media-breakpoint-up($breakpoint, $breakpoints) {
                margin-right: calc((100% - #{$container-max-width}) / 2);
                width: calc(100% - ((100% - #{$container-max-width}) / 2));
            }
        }
    }
}

@mixin make-container-fluid-right($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {
    $limit: false;
    @each $breakpoint, $container-max-width in $max-widths {
        @if ($breakpoint == $container-fluid-side-limit) {
            $limit: true;
        }
        @if ($limit) {
            @include media-breakpoint-up($breakpoint, $breakpoints) {
                margin-left: calc((100% - #{$container-max-width}) / 2);
                width: calc(100% - ((100% - #{$container-max-width}) / 2));
            }
        }
    }
}

@mixin make-container-fluid-large($gutter: $container-fluid-large-padding-x) {
    @include mediaQuery(min-lg) {
        --#{$prefix}gutter-x: #{$gutter};
        --#{$prefix}gutter-y: 0;
        width: 100%;
        padding-right: calc(var(--#{$prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list
        padding-left: calc(var(--#{$prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list
        margin-right: auto;
        margin-left: auto;
    }
    @include mediaQuery(between-md-lg) {
        padding-right: 3rem !important;
        padding-left: 3rem !important;
    }
    @include mediaQuery(max-md) {
        padding-right: 1.5rem !important;
        padding-left: 1.5rem !important;
    }
}

.container-fluid-left {
    @include make-container-fluid-left-right();
    @include make-container-fluid-left();
}

.container-fluid-right {
    @include make-container-fluid-left-right();
    @include make-container-fluid-right();
}

.container-fluid-large {
    @include make-container-fluid-large();
}