@use 'sass:math';
@import '../abstract/_all';

.container-full {
  margin-left: auto;
  margin-right: auto;
  max-width: $container-full;
  padding-inline: $padding-global;
  position: relative;
  @media (min-width: $break-sm) {
    max-width: nth(map-values($breakpoints), 2);
    padding-inline: $padding-global;
    width: 90%;
  }
  @media (min-width: $break-md) {
    max-width: nth(map-values($breakpoints), 3);
    width: 80%;
  }
  @media (min-width: $break-lg) {
    max-width: nth(map-values($breakpoints), 4);
    width: 80%;
  }
}
.container-total {
  margin-left: 0;
  margin-right: 0;
  max-width: 100%;
  position: relative;
  width: 100%;
  @media (min-width: $break-md) {
    max-width: 100%;
    width: 100%;
  }
}
.container-bleed {
  margin-left: auto;
  margin-right: auto;
  padding-inline: 0;
  position: relative;
}
.container-fluid {
  margin-left: auto;
  margin-right: auto;
  padding-inline: $padding-global;
  position: relative;
}
.container-body {
  padding-left: 16px;
  padding-right: 16px;
  @media (min-width: $break-md) {
    padding-left: 40px;
    padding-right: 40px;
  }
}
.container-body2 {
  overflow: hidden;
  padding-left: 16px;
  @media (min-width: $break-md) {
    padding-left: 40px;
  }
  .swiper-container {
    overflow: inherit;
  }
}
.container {
  margin-left: auto;
  margin-right: auto;
  max-width: $container;
  padding-inline: $padding-global;
  position: relative;
  width: 100%;
  @media (min-width: $break-sm) {
    max-width: nth(map-values($breakpoints), 2);
    padding-inline: $padding-global;
    width: 90%;
  }
  @media (min-width: $break-md) {
    max-width: nth(map-values($breakpoints), 3);
    width: 80%;
  }
  @media (min-width: $break-lg) {
    max-width: nth(map-values($breakpoints), 4);
    width: 80%;
  }
  @media (min-width: $break-xl) {
    max-width: nth(map-values($breakpointscols), 5);
    width: 100%;
  }
}
.container-2 {
  margin-left: auto;
  margin-right: auto;
  max-width: $container-2;
  padding-inline: $padding-global;
  position: relative;
  width: 90%;
}
.container-3 {
  margin-left: auto;
  margin-right: auto;
  max-width: $container-3;
  padding-inline: $padding-global * 3;
  position: relative;
  width: 100%;
  @media (min-width: $break-sm) {
    padding-inline: $padding-global;
  }
}
.container-4 {
  margin-left: auto;
  margin-right: auto;
  max-width: $container-4;
  padding-inline: $padding-global * 2;
  position: relative;
  width: 100%;
}
.container-5 {
  margin: 0 auto;
  max-width: $container-5;
  padding: 0 $padding-global;
  position: relative;
  width: 100%;
  @media (min-width: $break-lg) {
    max-width: 1000px;
    padding: 0;
  }
}
.container-6 {
  margin: 0 auto;
  max-width: $container-6;
  padding: 0 $padding-global;
  position: relative;
  width: 100%;
}
.container-7 {
  margin: 0 auto;
  max-width: 295px;
  padding: 0 $padding-global * 2;
  position: relative;
  width: 100%;
  @media (min-width: $break-sm) {
    max-width: 460px;
    padding-left: $padding-global;
    padding-right: $padding-global;
  }
  @media (min-width: $break-md) {
    max-width: 460px;
  }
  @media (min-width: $break-lg) {
    max-width: 595px;
  }
}
.container-8 {
  margin: 0 auto;
  max-width: $container-8;
  padding: 0 $padding-global;
  position: relative;
  width: 100%;
}
.container-9 {
  margin: 0 auto;
  max-width: $container-9;
  padding: 0 $padding-mobile;
  position: relative;
  width: 100%;
  @media (min-width: $break-sm) {
    padding: 0 $padding-global;
  }
}
.container-10 {
  max-width: $container-10;
  position: relative;
}
.container-11 {
  margin: 0 auto;
  max-width: $container-11;
  padding: 0 $padding-mobile;
  position: relative;
  width: 100%;
  @media (min-width: $break-sm) {
    padding: 0 $padding-global;
  }
}
.container-12 {
  max-width: $container-12;
  padding: 0 $padding-mobile;
  position: relative;
  width: 100%;
  @media (min-width: $break-sm) {
    padding: 0 $padding-global;
  }
}
.container-360 {
  max-width: 360px;
  width: 100%;
}
.container-496 {
  max-width: 496px;
  width: 100%;
}
.container-512 {
  max-width: 512px;
  width: 100%;
}
.container-640 {
  max-width: 640px;
  width: 100%;
}
.row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -$padding-global;
  margin-right: -$padding-global;
  @for $i from 2 through length($breakpointscols) {
    @media (min-width: nth(map-values($breakpointscols), $i)) {
      margin-left: -$padding-global;
      margin-right: -$padding-global;
    }
  }
}
@for $i from 1 through 4 {
  @media (min-width: nth(map-values($breakpointscols), $i)) {
    @for $c from 1 through $totalCols {
      .col-#{nth(map-keys($breakpointscols), $i)}-#{$c} {
        flex: 0 0 math.percentage(math.div($c, $totalCols));
        max-width: math.percentage(math.div($c, $totalCols));
      }
    }
  }
}
@for $i from 5 through $colBreakpointscols {
  @media (min-width: nth(map-values($breakpointscols), $i)) {
    @for $c from 1 through $totalColsXl {
      .col-#{nth(map-keys($breakpointscols), $i)}-#{$c} {
        flex: 0 0 math.percentage(math.div($c, $totalColsXl));
        max-width: math.percentage(math.div($c, $totalColsXl));
      }
    }
  }
}
[class*='col-'] {
  box-sizing: border-box;
  min-height: 1px;
  padding-left: $padding-global;
  padding-right: $padding-global;
  position: relative;
}
.col {
  display: block;
  flex: 1 1 0;
  padding: 0 $padding-global;
}
.col-sm {
  @media (min-width: $break-sm) {
    display: block;
    flex: 1 1 0;
    padding: 0 $padding-global;
  }
}
.col-md {
  @media (min-width: $break-sm) {
    display: block;
    flex: 1 1 0;
    padding: 0 $padding-global;
  }
}
.col-lg {
  @media (min-width: $break-sm) {
    display: block;
    flex: 1 1 0;
    padding: 0 $padding-global;
  }
}
.bleed {
  margin-left: -$padding-global;
  margin-right: -$padding-global;
  width: auto;
}
@include bleed(0);
@include bleed(4);
@include bleed(8);
.list-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, 1fr);
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
}
.grid-1 {
  display: grid;
  grid-template-columns: 1fr;
}
.grid-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
.grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
.grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
.colgap-16 {
  column-gap: 16px;
}
.gap-8 {
  gap: 8px;
}
.colgap-8 {
  column-gap: 8px;
}
.grid-gap-8 {
  gap: 8px;
}
.grid-gap-16 {
  gap: 16px;
}
.grid-8 {
  align-items: start;
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
  img {
    border: 1px solid #eaeaea;
  }
}
.grid-2-desktop {
  @media (min-width: $break-sm) {
    align-items: end;
    column-gap: 16px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
.sm\:grid-1 {
  @media (min-width: $break-sm) {
    display: grid;
    grid-template-columns: 1fr;
  }
}
.sm\:grid-2 {
  @media (min-width: $break-sm) {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
.sm\:grid-3 {
  @media (min-width: $break-sm) {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.sm\:grid-4 {
  @media (min-width: $break-sm) {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
  }
}
.sm\:grid-8 {
  @media (min-width: $break-sm) {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
  }
}
.grid-auto {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));
}
.sm\:grid-gap-16 {
  @media (min-width: $break-sm) {
    column-gap: 16px;
  }
}
.grid-2-wide {
  grid-column: span 2;
}
.grid-3-6-8 {
  column-gap: 6px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  max-width: 100%;
  @media (min-width: $break-md) {
    column-gap: 16px;
    grid-template-columns: repeat(6, 1fr);
  }
  @media (min-width: $break-lg) {
    column-gap: 16px;
    grid-template-columns: repeat(8, 1fr);
  }
}
@each $col in $cols-grids {
  .grid-cols-#{$col} {
    display: grid;
    grid-template-columns: repeat(#{$col}, minmax(0, 1fr));
  }
}
@each $bp, $value in $breakpointscols {
  @each $col in $cols-grids {
    .#{$bp}\:grid-cols-#{$col} {
      @media (min-width: $value) {
        display: grid;
        grid-template-columns: repeat(#{$col}, minmax(0, 1fr));
      }
    }
  }
}
