/* Convert px to rem
** Usage:
** font-size: rem(23);
*/
/* A small function allowing skipping base64 encoding
** and simply pasting the SVG markup right in the CSS.
** @author Jakob Eriksen
** @link http://codepen.io/jakob-e/pen/doMoML
** @param {String} $svg - SVG image to encode
** @return {String} - Encoded SVG data uri
*/
/* Replace `$search` with `$replace` in `$string`
** @author Hugo Giraudel
** @link http://sassmeister.com/gist/1b4f2da5527830088e4d
** @param {String} $string - Initial string
** @param {String} $search - Substring to replace
** @param {String} $replace ('') - New value
** @return {String} - Updated string
*/
/* Replace substring 'fillColor' to real color from variables */
/* Convert px to rem
** Usage:
** font-size: rem(23);
*/
/* A small function allowing skipping base64 encoding
** and simply pasting the SVG markup right in the CSS.
** @author Jakob Eriksen
** @link http://codepen.io/jakob-e/pen/doMoML
** @param {String} $svg - SVG image to encode
** @return {String} - Encoded SVG data uri
*/
/* Replace `$search` with `$replace` in `$string`
** @author Hugo Giraudel
** @link http://sassmeister.com/gist/1b4f2da5527830088e4d
** @param {String} $string - Initial string
** @param {String} $search - Substring to replace
** @param {String} $replace ('') - New value
** @return {String} - Updated string
*/
/* Replace substring 'fillColor' to real color from variables */
/* Mixin for button animation,
    use: @include button-animation(); for .btn-primary-dark--white-bg button
*/
/* Mixin for arrow link animation,
    use: @include arrow-link-animation(); for .btn-tertiary-dark--white-bg button
*/
/* Mixin for link animation,
    use: @include link-animation(); for .btn-link-dark--white-bg button
*/
/* Mixin for button background animation,
    use: @include hoverBgEffect($primary-slate, $scale: 1.4, $speed: 0.4s);
*/
/**
 * Mixin for adding gradient line to the bottom.
 * @param {$side-colors} color.
 */
/**
 * Mixin for adding text underline.
 */
/**
 * Mixin for cropping the text.
 * @param {$line-clamp} number of visible lines.
 */
.b-content-tile-carousel {
  text-align: initial;
  padding: 4rem 0;
  overflow: hidden;
  color: var(--carousel-text-color, #34303d);
  background-color: var(--carousel-bg, #f6f4f0);
}
@media (min-width: 1300px) {
  .b-content-tile-carousel {
    padding: 6.25rem 0 6.25rem 11rem;
  }
}
.b-content-tile-carousel__inner {
  position: relative;
}
.b-content-tile-carousel__content {
  padding: 0 2rem;
}
@media (min-width: 1300px) {
  .b-content-tile-carousel__content {
    padding: 0;
  }
}
.b-content-tile-carousel__description {
  font-size: 1rem;
  line-height: 1.5;
}
.b-content-tile-carousel__slides {
  margin-top: 3.5rem;
}
.b-content-tile-carousel__title {
  color: var(--carousel-text-color, #34303d);
  font-size: var(--title-font-size-mobile, 2rem);
  font-weight: 700;
}
@media (min-width: 1300px) {
  .b-content-tile-carousel__title {
    font-size: var(--title-font-size-desktop, 2.625rem);
    margin-right: calc(2 * 44px + 20px + 64px);
  }
}
.b-content-tile-carousel-description {
  font-size: 1rem;
}
.b-content-tile-carousel__button {
  margin-top: 2.5rem;
}
@media (min-width: 1024px) {
  .b-content-tile-carousel__button {
    margin-top: 3.5rem;
  }
}
.b-content-tile-carousel .slick-list {
  margin-right: -0.375rem;
  padding-left: 1.625rem;
}
@media (min-width: 1300px) {
  .b-content-tile-carousel .slick-list {
    margin: 0 -1rem;
    overflow: visible;
    padding: 0;
  }
}
.b-content-tile-carousel .slick-slide {
  float: left;
  margin: 0 0.375rem;
}
@media (min-width: 1300px) {
  .b-content-tile-carousel .slick-slide {
    margin: 0 1rem;
  }
}
@media (min-width: 1024px) {
  .b-content-tile-carousel .slick-slider {
    position: static;
  }
}
.b-content-tile-carousel .slick-slider .slick-track,
.b-content-tile-carousel .slick-slider .slick-list {
  direction: ltr;
  cursor: pointer;
}
.b-content-tile-carousel .slick-arrow {
  background-color: rgba(255, 255, 255, 0.5);
  width: 44px;
  height: 44px;
  border-radius: 50%;
  padding: 0.75rem;
  -webkit-transition: background-color 250ms ease, opacity 250ms ease;
  transition: background-color 250ms ease, opacity 250ms ease;
}
[dir=rtl] .b-content-tile-carousel .slick-arrow {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
@media (max-width: 991.98px) {
  .b-content-tile-carousel .slick-arrow {
    display: none !important;
  }
}
@media (min-width: 1024px) {
  .b-content-tile-carousel .slick-arrow {
    -webkit-transform: none;
            transform: none;
    top: 0;
  }
}
.b-content-tile-carousel .slick-arrow:hover {
  background-color: #fff;
}
.b-content-tile-carousel .slick-arrow::before {
  background-position: center center;
  width: 100%;
  height: 100%;
}
.b-content-tile-carousel .slick-arrow.slick-disabled {
  pointer-events: none;
}
.b-content-tile-carousel .slick-prev {
  left: 2rem;
  right: auto;
}
@media (min-width: 1024px) {
  .b-content-tile-carousel .slick-prev {
    left: auto;
    right: calc(44px + 20px + 64px);
  }
}
.b-content-tile-carousel .slick-next {
  left: auto;
  right: 0;
}
@media (min-width: 1024px) {
  .b-content-tile-carousel .slick-next {
    right: 64px;
  }
}
.b-content-tile-carousel .slick-arrow--dark {
  padding: 1rem !important;
  background-color: #34303d;
}
.b-content-tile-carousel .slick-arrow--dark:hover {
  background-color: #34303d;
}
.b-content-tile-carousel .slick-arrow--dark:not(.slick-disabled, :disabled):hover, .b-content-tile-carousel .slick-arrow--dark:not(.slick-disabled, :disabled):focus-visible {
  opacity: 0.8;
  background-color: #34303d;
}
.b-content-tile-carousel .slick-arrow--dark.slick-disabled, .b-content-tile-carousel .slick-arrow--dark:disabled {
  opacity: 0.6;
  pointer-events: none;
}
.b-content-tile-carousel .slick-arrow--dark::before {
  opacity: 0.75;
}
.b-content-tile-carousel .slick-arrow--dark.slick-prev::before {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath stroke='%23fffdfb' stroke-linecap='round' stroke-width='2' d='M11 5l11 11-11 11' fill='none' fill-rule='evenodd'/%3E%3C/svg%3E");
}
.b-content-tile-carousel .slick-arrow--dark.slick-next::before {
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath stroke='%23fffdfb' stroke-linecap='round' stroke-width='2' d='M11 5l11 11-11 11' fill='none' fill-rule='evenodd'/%3E%3C/svg%3E");
}
.b-content-tile-carousel .button-main {
  margin-top: 2.5rem;
}
.b-content-tile-carousel .common-image-component {
  position: absolute;
  width: 100%;
}

.b-content-tile-slide__image-wrapper {
  position: relative;
  padding-bottom: 100%;
}
.b-content-tile-slide__image, .b-content-tile-slide__image-wrapper > img {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.b-content-tile-slide__content-wrapper {
  position: absolute;
  left: 1.5rem;
  bottom: 1.5rem;
}
.b-content-tile-slide__content-wrapper > *:not(:last-child) {
  margin-bottom: 1.25rem;
}
.b-content-tile-slide__title {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--carousel-text-color, #fff);
  margin: 0;
}
@media (min-width: 1024px) {
  .b-content-tile-slide__title {
    font-size: 1.25rem;
  }
}
.b-content-tile-slide__details {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.6;
  color: var(--carousel-text-color, #fff);
  margin: 0;
}
@media (min-width: 1024px) {
  .b-content-tile-slide__details {
    font-size: 1rem;
  }
}
.b-content-tile-slide__description {
  font-size: 0.75rem;
  line-height: 1.6;
  margin: 1.5rem 0 0;
}
.b-content-tile-slide--with-footer .b-content-tile-slide__content-wrapper {
  inset: auto 0 0;
  padding: 1rem;
  padding-right: 5rem;
  background-color: #1C1F21;
  min-height: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.b-content-tile-slide--with-footer .b-content-tile-slide__content-wrapper > * {
  margin: 0;
}
.b-content-tile-slide--with-footer .b-content-tile-slide__content-wrapper .button {
  position: absolute;
  right: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.b-content-tile-slide--with-footer .b-content-tile-slide__title {
  font-size: 1rem;
  font-weight: 400;
  color: #00d1d2;
}
.b-content-tile-slide--with-footer .b-content-tile-slide__details {
  font-size: 1rem;
  font-weight: 700;
}
.b-content-tile-slide--centered .b-content-tile-slide__image-wrapper {
  border-radius: 0.25rem;
  overflow: hidden;
}
.b-content-tile-slide--centered .b-content-tile-slide__content-wrapper {
  text-align: center;
  inset: auto 0.875rem 1.75rem;
}
.b-content-tile-slide--centered .b-content-tile-slide__content-wrapper .button {
  margin-top: 1.375rem;
}
.b-content-tile-slide--centered .b-content-tile-slide__title {
  font-weight: 700;
  font-size: 1.25rem;
  font-size: clamp(1.25rem, 2vw, 1.75rem);
  margin-bottom: 0;
}
.b-content-tile-slide--centered .b-content-tile-slide__details {
  margin-top: 0.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #fffdfb;
  opacity: 0.6;
}

.b-content-tile-carousel--compact, .b-content-tile-carousel--shifted {
  padding: 2rem 0;
}
@media (min-width: 1300px) {
  .b-content-tile-carousel--compact, .b-content-tile-carousel--shifted {
    padding: 4rem 0 2rem 4rem;
    padding-left: max(4rem, 4rem + (100% - 1312px) / 2);
  }
}
@media (min-width: 1300px) {
  .b-content-tile-carousel--compact .site-width, .b-content-tile-carousel--shifted .site-width {
    margin: 0;
    max-width: unset;
  }
}
.b-content-tile-carousel--compact .b-content-tile-carousel__content--header, .b-content-tile-carousel--shifted .b-content-tile-carousel__content--header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
  min-height: 3.125rem;
}
.b-content-tile-carousel--compact .b-content-tile-carousel__title, .b-content-tile-carousel--shifted .b-content-tile-carousel__title {
  margin-right: calc(2 * 3rem + 1.5rem + 32px - 1rem);
}
@media (min-width: 1300px) {
  .b-content-tile-carousel--compact .b-content-tile-carousel__title, .b-content-tile-carousel--shifted .b-content-tile-carousel__title {
    margin-right: calc(2 * 3rem + 1.5rem + 64px);
  }
}
.b-content-tile-carousel--compact .b-content-tile-carousel__title, .b-content-tile-carousel--shifted .b-content-tile-carousel__title,
.b-content-tile-carousel--compact .b-content-tile-carousel__description,
.b-content-tile-carousel--shifted .b-content-tile-carousel__description {
  margin-bottom: 0;
}
.b-content-tile-carousel--compact .b-content-tile-carousel__slides, .b-content-tile-carousel--shifted .b-content-tile-carousel__slides,
.b-content-tile-carousel--compact .b-content-tile-carousel__button,
.b-content-tile-carousel--shifted .b-content-tile-carousel__button {
  margin-top: 2rem;
}
.b-content-tile-carousel--compact .slick-slider, .b-content-tile-carousel--shifted .slick-slider {
  position: static;
}
.b-content-tile-carousel--compact .slick-track, .b-content-tile-carousel--shifted .slick-track {
  margin-left: 0;
}
.b-content-tile-carousel--compact .slick-arrow, .b-content-tile-carousel--shifted .slick-arrow {
  display: block !important;
  top: 0;
  left: auto;
  -webkit-transform: none;
          transform: none;
  width: 3rem;
  height: 3rem;
}
.b-content-tile-carousel--compact .slick-prev, .b-content-tile-carousel--shifted .slick-prev {
  padding: 1rem 1.0625rem 1rem 0.9375rem;
  right: calc(3rem + 1.5rem + 32px);
}
@media (min-width: 1300px) {
  .b-content-tile-carousel--compact .slick-prev, .b-content-tile-carousel--shifted .slick-prev {
    right: calc(3rem + 1.5rem + 64px);
  }
}
.b-content-tile-carousel--compact .slick-next, .b-content-tile-carousel--shifted .slick-next {
  padding: 1rem 0.9375rem 1rem 1.0625rem;
  right: 32px;
}
@media (min-width: 1300px) {
  .b-content-tile-carousel--compact .slick-next, .b-content-tile-carousel--shifted .slick-next {
    right: 64px;
  }
}

@media (min-width: 1300px) {
  .b-content-tile-carousel--shifted .b-content-tile-carousel__slides {
    padding-left: 8rem;
  }
}
