/**
 * https://davidhellmann.com/blog/development/sass-breakpoint-mixin
 */
section,
.section,
footer {
  position: relative;
}
section--half-width,
.section--half-width,
footer--half-width {
  display: grid;
  grid-template-columns: 50% 50%;
}
section--half-width-left .content,
.section--half-width-left .content,
footer--half-width-left .content {
  margin-left: auto;
  padding-left: calc(var(--bs-gutter-x));
}
section--half-width-right,
.section--half-width-right,
footer--half-width-right {
  background: hotpink;
}
section--half-width-right .content,
.section--half-width-right .content,
footer--half-width-right .content {
  margin-right: auto;
  padding-right: calc(var(--bs-gutter-x));
}
section--half-width [class*=container],
.section--half-width [class*=container],
footer--half-width [class*=container] {
  height: 100%;
}
section--half-width [class*=container] .content,
.section--half-width [class*=container] .content,
footer--half-width [class*=container] .content {
  width: calc(var(--container-width) * 0.5);
}
section.section-has-big-image,
.section.section-has-big-image,
footer.section-has-big-image {
  overflow: hidden;
}
section.section-margin-0 > [class*=container],
.section.section-margin-0 > [class*=container],
footer.section-margin-0 > [class*=container] {
  --section-margin-y: 0rem;
}
section.section-margin-top-0 > [class*=container],
.section.section-margin-top-0 > [class*=container],
footer.section-margin-top-0 > [class*=container] {
  --section-margin-y: inherit;
  --section-margin-top: 0rem;
}
section.section-margin-top-50 > [class*=container],
.section.section-margin-top-50 > [class*=container],
footer.section-margin-top-50 > [class*=container] {
  --section-margin-y: inherit;
  --section-margin-top: 5rem;
}
section.section-margin-bottom-0 > [class*=container],
.section.section-margin-bottom-0 > [class*=container],
footer.section-margin-bottom-0 > [class*=container] {
  --section-margin-y: inherit;
  --section-margin-bottom: 0rem;
}
section.section-margin-bottom-50 > [class*=container],
.section.section-margin-bottom-50 > [class*=container],
footer.section-margin-bottom-50 > [class*=container] {
  --section-margin-y: inherit;
  --section-margin-bottom: 5rem;
}
section.section-margin-bottom-75 > [class*=container],
.section.section-margin-bottom-75 > [class*=container],
footer.section-margin-bottom-75 > [class*=container] {
  --section-margin-y: inherit;
  --section-margin-bottom: 7.5rem;
}
section.section-margin-bottom-100 > [class*=container],
.section.section-margin-bottom-100 > [class*=container],
footer.section-margin-bottom-100 > [class*=container] {
  --section-margin-y: inherit;
  --section-margin-bottom: 10rem;
}
section.section-margin-bottom-150 > [class*=container],
.section.section-margin-bottom-150 > [class*=container],
footer.section-margin-bottom-150 > [class*=container] {
  --section-margin-y: inherit;
  --section-margin-bottom: 15rem;
}
section.section-padding-0,
.section.section-padding-0,
footer.section-padding-0 {
  --section-padding-top: 0rem;
  --section-padding-bottom: 0rem;
}
section.section-padding-10,
.section.section-padding-10,
footer.section-padding-10 {
  --section-padding-top: calc(var(--section-padding-y) * 0.125);
  --section-padding-bottom: calc(var(--section-padding-y) * 0.125);
}
section.section-padding-25,
.section.section-padding-25,
footer.section-padding-25 {
  --section-padding-top: calc(var(--section-padding-y) * 0.333334);
  --section-padding-bottom: calc(var(--section-padding-y) * 0.333334);
}
section.section-padding-50,
.section.section-padding-50,
footer.section-padding-50 {
  --section-padding-top: calc(var(--section-padding-y) * 0.666667);
  --section-padding-bottom: calc(var(--section-padding-y) * 0.666667);
}
section.section-padding-100,
.section.section-padding-100,
footer.section-padding-100 {
  --section-padding-top: calc(var(--section-padding-y));
  --section-padding-bottom: calc(var(--section-padding-y));
}
section.section-padding-125,
.section.section-padding-125,
footer.section-padding-125 {
  --section-padding-top: calc(var(--section-padding-y) * 1.666667);
  --section-padding-bottom: calc(var(--section-padding-y) * 1.666667);
}
section.section-padding-150,
.section.section-padding-150,
footer.section-padding-150 {
  --section-padding-top: calc(var(--section-padding-y) * 2);
  --section-padding-bottom: calc(var(--section-padding-y) * 2);
}
section.section-padding-top-0,
.section.section-padding-top-0,
footer.section-padding-top-0 {
  --section-padding-top: 0rem;
}
section.section-padding-top-25,
.section.section-padding-top-25,
footer.section-padding-top-25 {
  --section-padding-top: calc(var(--section-padding-y) * 0.333334);
}
section.section-padding-top-50,
.section.section-padding-top-50,
footer.section-padding-top-50 {
  --section-padding-top: calc(var(--section-padding-y) * 0.666667);
}
section.section-padding-top-100,
.section.section-padding-top-100,
footer.section-padding-top-100 {
  --section-padding-top: var(--section-padding-y);
}
section.section-padding-top-150,
.section.section-padding-top-150,
footer.section-padding-top-150 {
  --section-padding-top: calc(var(--section-padding-y) * 2);
}
section.section-padding-bottom-0,
.section.section-padding-bottom-0,
footer.section-padding-bottom-0 {
  --section-padding-bottom: 0rem;
}
section.section-padding-bottom-25,
.section.section-padding-bottom-25,
footer.section-padding-bottom-25 {
  --section-padding-bottom: calc(var(--section-padding-y) * 0.333334);
}
section.section-padding-bottom-50,
.section.section-padding-bottom-50,
footer.section-padding-bottom-50 {
  --section-padding-bottom: calc(var(--section-padding-y) * 0.666667);
}
section.section-padding-bottom-100,
.section.section-padding-bottom-100,
footer.section-padding-bottom-100 {
  --section-padding-bottom: var(--section-padding-y);
}
section.section-padding-bottom-150,
.section.section-padding-bottom-150,
footer.section-padding-bottom-150 {
  --section-padding-bottom: calc(var(--section-padding-y) * 2);
}
@media (min-width: 768px) {
  section.section-padding-md-25,
  .section.section-padding-md-25,
  footer.section-padding-md-25 {
    --section-padding-top: calc(var(--section-padding-y) * 0.333334);
    --section-padding-bottom: calc(var(--section-padding-y) * 0.333334);
  }
  section.section-padding-md-50,
  .section.section-padding-md-50,
  footer.section-padding-md-50 {
    --section-padding-top: calc(var(--section-padding-y) * 0.666667);
    --section-padding-bottom: calc(var(--section-padding-y) * 0.666667);
  }
  section.section-padding-md-100,
  .section.section-padding-md-100,
  footer.section-padding-md-100 {
    --section-padding-top: calc(var(--section-padding-y) * 1);
    --section-padding-bottom: calc(var(--section-padding-y) * 1);
  }
  section.section-padding-md-125,
  .section.section-padding-md-125,
  footer.section-padding-md-125 {
    --section-padding-top: calc(var(--section-padding-y) * 1.666667);
    --section-padding-bottom: calc(var(--section-padding-y) * 1.666667);
  }
  section.section-margin-bottom-md-0 > [class*=container],
  .section.section-margin-bottom-md-0 > [class*=container],
  footer.section-margin-bottom-md-0 > [class*=container] {
    --section-margin-y: inherit;
    --section-margin-bottom: 0rem;
  }
  section.section-padding-top-md-25,
  .section.section-padding-top-md-25,
  footer.section-padding-top-md-25 {
    --section-padding-top: calc(var(--section-padding-y) * 0.333334);
  }
}
@media (min-width: 992px) {
  section.section-margin-bottom-lg-150 > [class*=container],
  .section.section-margin-bottom-lg-150 > [class*=container],
  footer.section-margin-bottom-lg-150 > [class*=container] {
    --section-margin-y: inherit;
    --section-margin-bottom: 15rem;
  }
  section.section-padding-lg-0,
  .section.section-padding-lg-0,
  footer.section-padding-lg-0 {
    --section-padding-top: calc(var(--section-padding-y) * 0);
    --section-padding-bottom: calc(var(--section-padding-y) * 0);
  }
}
section.section-height-100 > [class*=container],
.section.section-height-100 > [class*=container],
footer.section-height-100 > [class*=container] {
  min-height: 100vh;
}
section.section-height-100.has-section-cta-below > [class*=container],
.section.section-height-100.has-section-cta-below > [class*=container],
footer.section-height-100.has-section-cta-below > [class*=container] {
  min-height: calc(100vh - var(--section-cta-height));
}
section.section-height-80 > [class*=container],
.section.section-height-80 > [class*=container],
footer.section-height-80 > [class*=container] {
  min-height: 80vh;
}
section.section-height-80.has-section-cta-below > [class*=container],
.section.section-height-80.has-section-cta-below > [class*=container],
footer.section-height-80.has-section-cta-below > [class*=container] {
  height: calc(80vh - var(--section-cta-height));
}
section.section-height-50 > [class*=container],
.section.section-height-50 > [class*=container],
footer.section-height-50 > [class*=container] {
  height: 50vh;
  min-height: 50vh;
}
section.section-height-50.has-section-cta-below > [class*=container],
.section.section-height-50.has-section-cta-below > [class*=container],
footer.section-height-50.has-section-cta-below > [class*=container] {
  height: calc(50vh - var(--section-cta-height));
}
section.gray,
.section.gray,
footer.gray {
  background: var(--color-background-alt-3);
}
@media (min-width: 992px) {
  section.shifted-background,
  .section.shifted-background,
  footer.shifted-background {
    background: unset;
  }
  section.shifted-background .container,
  .section.shifted-background .container,
  footer.shifted-background .container {
    position: relative;
  }
  section.shifted-background .container::before,
  .section.shifted-background .container::before,
  footer.shifted-background .container::before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(-1 * (100vw - var(--container-width)) * 0.25);
    display: block;
    width: calc(100vw - (100vw - var(--container-width)) * 0.25);
    height: 100%;
    background: hotpink;
  }
}
section > [class*=container],
.section > [class*=container],
footer > [class*=container] {
  display: flex;
  margin: var(--section-margin-y) auto;
  margin-top: var(--section-margin-top, var(--section-margin-y));
  margin-bottom: var(--section-margin-bottom, var(--section-margin-y));
  padding: var(--section-padding-y) calc(var(--section-padding-x) * 0.5);
  padding-top: var(--section-padding-top, var(--section-padding-y));
  padding-bottom: var(--section-padding-bottom, var(--section-padding-y));
}
section > .container-fluid--right,
.section > .container-fluid--right,
footer > .container-fluid--right {
  margin-right: 0;
  padding-right: 0;
  margin-left: calc((100vw - var(--container-width)) * 0.5);
  max-width: calc(100vw - (100vw - var(--container-width)) * 0.5);
}
