/* stylelint-disable scss/operator-no-unspaced */
/* stylelint-enable scss/operator-no-unspaced */
/* Breakpoint viewport sizes and media queries.

Breakpoints are defined as a map of (name: minimum width), order from small to large:
   (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)

 The map defined in the `$breakpoint` global variable is used as the `$breakpoints` argument by default.

 Name of the next breakpoint, or null for the last breakpoint.

  >> breakpoint-next(sm)
   md
  >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
   md
  >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))
   md
*/
/* Minimum breakpoint width. Null for the smallest (first) breakpoint.
    >> ecl-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
    576px
*/
/* Maximum breakpoint width. Null for the largest (last) breakpoint.
   The maximum value is calculated as the minimum of the next one less 0.1.

   >> ecl-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
   767px
*/
/* Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.
    Useful for making responsive utilities.

    >> infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
    ""  (Returns a blank string)
    >> infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))
    "-sm"
*/
/*
   * Media size
   */
.ecl-u-media-a-s {
  height: 77px !important;
  width: 77px !important;
}

.ecl-u-media-h-s {
  width: 77px !important;
}

.ecl-u-media-v-s {
  height: 77px !important;
}

.ecl-u-media-a-m {
  height: 100px !important;
  width: 100px !important;
}

.ecl-u-media-h-m {
  width: 100px !important;
}

.ecl-u-media-v-m {
  height: 100px !important;
}

@media (min-width: 480px) {
  .ecl-u-media-a-s-s {
    height: 77px !important;
    width: 77px !important;
  }
  .ecl-u-media-h-s-s {
    width: 77px !important;
  }
  .ecl-u-media-v-s-s {
    height: 77px !important;
  }
  .ecl-u-media-a-s-m {
    height: 100px !important;
    width: 100px !important;
  }
  .ecl-u-media-h-s-m {
    width: 100px !important;
  }
  .ecl-u-media-v-s-m {
    height: 100px !important;
  }
}
@media (min-width: 768px) {
  .ecl-u-media-a-m-s {
    height: 77px !important;
    width: 77px !important;
  }
  .ecl-u-media-h-m-s {
    width: 77px !important;
  }
  .ecl-u-media-v-m-s {
    height: 77px !important;
  }
  .ecl-u-media-a-m-m {
    height: 100px !important;
    width: 100px !important;
  }
  .ecl-u-media-h-m-m {
    width: 100px !important;
  }
  .ecl-u-media-v-m-m {
    height: 100px !important;
  }
}
@media (min-width: 996px) {
  .ecl-u-media-a-l-s {
    height: 77px !important;
    width: 77px !important;
  }
  .ecl-u-media-h-l-s {
    width: 77px !important;
  }
  .ecl-u-media-v-l-s {
    height: 77px !important;
  }
  .ecl-u-media-a-l-m {
    height: 100px !important;
    width: 100px !important;
  }
  .ecl-u-media-h-l-m {
    width: 100px !important;
  }
  .ecl-u-media-v-l-m {
    height: 100px !important;
  }
}
@media (min-width: 1140px) {
  .ecl-u-media-a-xl-s {
    height: 77px !important;
    width: 77px !important;
  }
  .ecl-u-media-h-xl-s {
    width: 77px !important;
  }
  .ecl-u-media-v-xl-s {
    height: 77px !important;
  }
  .ecl-u-media-a-xl-m {
    height: 100px !important;
    width: 100px !important;
  }
  .ecl-u-media-h-xl-m {
    width: 100px !important;
  }
  .ecl-u-media-v-xl-m {
    height: 100px !important;
  }
}
/*
   * Media ratio
   */
.ecl-u-media-ratio-16-9 {
  position: relative !important;
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
}
.ecl-u-media-ratio-16-9::before {
  content: "" !important;
  display: block !important;
  padding-top: 56.25% !important;
  width: 100% !important;
}
.ecl-u-media-ratio-16-9 .ecl-u-media-content {
  height: 100% !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 100% !important;
}
.ecl-u-media-ratio-16-9 > iframe {
  bottom: 0;
  left: 0;
  min-height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.ecl-u-media-ratio-4-3 {
  position: relative !important;
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
}
.ecl-u-media-ratio-4-3::before {
  content: "" !important;
  display: block !important;
  padding-top: 75% !important;
  width: 100% !important;
}
.ecl-u-media-ratio-4-3 .ecl-u-media-content {
  height: 100% !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 100% !important;
}
.ecl-u-media-ratio-4-3 > iframe {
  bottom: 0;
  left: 0;
  min-height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.ecl-u-media-ratio-3-2 {
  position: relative !important;
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
}
.ecl-u-media-ratio-3-2::before {
  content: "" !important;
  display: block !important;
  padding-top: 66.6666666667% !important;
  width: 100% !important;
}
.ecl-u-media-ratio-3-2 .ecl-u-media-content {
  height: 100% !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 100% !important;
}
.ecl-u-media-ratio-3-2 > iframe {
  bottom: 0;
  left: 0;
  min-height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.ecl-u-media-ratio-1-1 {
  position: relative !important;
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
}
.ecl-u-media-ratio-1-1::before {
  content: "" !important;
  display: block !important;
  padding-top: 100% !important;
  width: 100% !important;
}
.ecl-u-media-ratio-1-1 .ecl-u-media-content {
  height: 100% !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 100% !important;
}
.ecl-u-media-ratio-1-1 > iframe {
  bottom: 0;
  left: 0;
  min-height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

/*
   * Background origin
   */
.ecl-u-media-bg-origin-border {
  background-origin: border-box !important;
}

.ecl-u-media-bg-origin-padding {
  background-origin: padding-box !important;
}

.ecl-u-media-bg-origin-content {
  background-origin: content-box !important;
}

/*
   * Background position
   */
.ecl-u-media-bg-position-initial {
  background-position: 0 0 !important;
}

.ecl-u-media-bg-position-top {
  background-position: top !important;
}

.ecl-u-media-bg-position-bottom {
  background-position: bottom !important;
}

.ecl-u-media-bg-position-left {
  background-position: left !important;
}

.ecl-u-media-bg-position-right {
  background-position: right !important;
}

.ecl-u-media-bg-position-center {
  background-position: center !important;
}

/*
   * Background repeat
   */
.ecl-u-media-bg-repeat-all {
  background-repeat: repeat !important;
}

.ecl-u-media-bg-repeat-x {
  background-repeat: repeat-x !important;
}

.ecl-u-media-bg-repeat-y {
  background-repeat: repeat-y !important;
}

.ecl-u-media-bg-repeat-none {
  background-repeat: no-repeat !important;
}

/*
   * Background size
   */
.ecl-u-media-bg-size-auto {
  background-size: auto !important;
}

.ecl-u-media-bg-size-contain {
  background-size: contain !important;
}

.ecl-u-media-bg-size-cover {
  background-size: cover !important;
}

/**
 * Media container component
 * @define media-container
 */
.ecl-media-container {
  border-radius: 0;
  box-shadow: none;
  display: flex;
  flex-direction: column;
  margin: 0;
  overflow: hidden;
  position: relative;
}

.ecl-media-container__media {
  display: block;
  height: auto;
  min-height: 1px;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.ecl-media-container__media > iframe {
  display: block;
  height: auto;
  width: 100%;
}

.ecl-media-container__caption {
  background-color: #f5f5f5;
  border: 1px solid #cfcfcf;
  color: #404040;
  font: normal normal 400 1rem/1.5rem arial, sans-serif;
  padding: 0.75rem;
  position: relative;
}

.ecl-media-container__media--ratio-16-9 {
  position: relative !important;
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
}
.ecl-media-container__media--ratio-16-9::before {
  content: "" !important;
  display: block !important;
  padding-top: 56.25% !important;
  width: 100% !important;
}
.ecl-media-container__media--ratio-16-9 .ecl-u-media-content {
  height: 100% !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 100% !important;
}
.ecl-media-container__media--ratio-16-9 > iframe {
  bottom: 0;
  left: 0;
  min-height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.ecl-media-container__media--ratio-4-3 {
  position: relative !important;
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
}
.ecl-media-container__media--ratio-4-3::before {
  content: "" !important;
  display: block !important;
  padding-top: 75% !important;
  width: 100% !important;
}
.ecl-media-container__media--ratio-4-3 .ecl-u-media-content {
  height: 100% !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 100% !important;
}
.ecl-media-container__media--ratio-4-3 > iframe {
  bottom: 0;
  left: 0;
  min-height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.ecl-media-container__media--ratio-3-2 {
  position: relative !important;
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
}
.ecl-media-container__media--ratio-3-2::before {
  content: "" !important;
  display: block !important;
  padding-top: 66.6666666667% !important;
  width: 100% !important;
}
.ecl-media-container__media--ratio-3-2 .ecl-u-media-content {
  height: 100% !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 100% !important;
}
.ecl-media-container__media--ratio-3-2 > iframe {
  bottom: 0;
  left: 0;
  min-height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.ecl-media-container__media--ratio-1-1 {
  position: relative !important;
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
}
.ecl-media-container__media--ratio-1-1::before {
  content: "" !important;
  display: block !important;
  padding-top: 100% !important;
  width: 100% !important;
}
.ecl-media-container__media--ratio-1-1 .ecl-u-media-content {
  height: 100% !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  width: 100% !important;
}
.ecl-media-container__media--ratio-1-1 > iframe {
  bottom: 0;
  left: 0;
  min-height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
}

.ecl-media-container--full-width {
  left: 50%;
  -webkit-margin-start: calc(-50vw + (16px / 2));
          margin-inline-start: calc(-50vw + (16px / 2));
  width: calc(100vw - 16px);
}