/* 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"
*/
/**
 * Featured item component
 * @define featured-item
 */
.ecl-featured-item__heading {
  color: #262b38;
  font: normal normal 400 2rem/2.5rem arial, sans-serif;
  font-weight: 400;
  margin-bottom: 1rem;
  margin-top: 0;
}

.ecl-featured-item__container {
  padding: 0;
}

.ecl-featured-item__item {
  box-sizing: border-box;
  flex-basis: 50%;
  flex-grow: 1;
}
.ecl-featured-item__item:first-child {
  padding-bottom: 1rem;
}

.ecl-featured-item__title {
  color: #171a22;
  font: normal normal 400 1.125rem/1.75rem arial, sans-serif;
  font-weight: 700;
  margin-bottom: 0.75rem;
  margin-top: 0;
}

.ecl-featured-item__description {
  color: #515560;
  font: normal normal 400 1rem/1.5rem arial, sans-serif;
  margin-bottom: 0.75rem;
  margin-top: 0;
}

.ecl-featured-item__link {
  margin-bottom: 1rem;
}

/**
* Extended
*/
.ecl-featured-item--extended .ecl-featured-item__container {
  background-color: #e7edfa;
  -webkit-border-start: 8px solid #0e47cb;
          border-inline-start: 8px solid #0e47cb;
  border-radius: 4px;
  overflow: hidden;
  padding-bottom: 1rem;
  -webkit-padding-start: 0.5rem;
          padding-inline-start: 0.5rem;
  -webkit-padding-end: 1rem;
          padding-inline-end: 1rem;
  padding-top: 1rem;
}
.ecl-featured-item--extended .ecl-featured-item__heading {
  -webkit-padding-start: calc(
      0.5rem + 8px
    );
          padding-inline-start: calc(
      0.5rem + 8px
    );
  -webkit-padding-end: 1rem;
          padding-inline-end: 1rem;
}

/* stylelint-disable-next-line order/order */
@media (min-width: 480px) {
  .ecl-featured-item__heading {
    font: normal normal 400 2.25rem/2.75rem arial, sans-serif;
    font-weight: 400;
    margin-bottom: 1rem;
  }
  .ecl-featured-item__container {
    display: flex;
    flex-wrap: wrap;
  }
  .ecl-featured-item__item {
    box-sizing: border-box;
    flex-basis: 50%;
  }
  .ecl-featured-item__item:first-child {
    padding-bottom: 0;
    -webkit-padding-end: 1rem;
            padding-inline-end: 1rem;
  }
  .ecl-featured-item__container--right {
    flex-direction: row-reverse;
  }
  .ecl-featured-item__container--right .ecl-featured-item__item:first-child {
    -webkit-padding-end: 0;
            padding-inline-end: 0;
  }
  .ecl-featured-item__container--right .ecl-featured-item__item:last-child {
    padding-bottom: 0;
    -webkit-padding-end: 1rem;
            padding-inline-end: 1rem;
  }
  .ecl-featured-item__link {
    margin-bottom: 0;
  }
  /**
  * Extended
  */
  .ecl-featured-item--extended .ecl-featured-item__container {
    padding-bottom: 1rem;
    -webkit-padding-start: 1.5rem;
            padding-inline-start: 1.5rem;
    -webkit-padding-end: 1rem;
            padding-inline-end: 1rem;
    padding-top: 1rem;
  }
  .ecl-featured-item--extended .ecl-featured-item__heading {
    -webkit-padding-start: calc(
        1.5rem + 8px
      );
            padding-inline-start: calc(
        1.5rem + 8px
      );
  }
}