/** Shopify CDN: Minification failed

Line 329:1 Expected "}" to go with "{"

**/
.hero-banners-section .banner-content.center .banner-two-columns-box {
  text-align: center;
}

.hero-banners-section .banner-content.right .banner-two-columns-box {
  text-align: right;
}

.hero-banners-section .hero-banner-card:hover .banner-text {
  height: auto;
}

@media screen and (min-width: 990px) {
  .hero-banners-section-main {
    scrollbar-gutter: stable;
    overflow-x: hidden;
  }

  .hero-banners-section .hero-banners {
    display: flex;
    gap: 0;
    overflow: visible;
    align-items: flex-end;
    position: relative;
    z-index: 1;
    isolation: isolate;
  }

  .hero-banners-section .hero-banner-card {
    position: relative;
    flex: 1 1 0;
    min-height: 40rem;
    border-radius: var(--media-radius);
    overflow: hidden;
    transform-origin: center bottom;
    transform: translateZ(0);
    backface-visibility: hidden;
    will-change: transform;
    z-index: 1;
    outline: 1px solid transparent;
    outline-offset: -1px;
  }

  .hero-banners-section .hero-banner-card:first-child {
    transform-origin: left bottom;
  }

  .hero-banners-section .hero-banner-card:last-child {
    transform-origin: right bottom;
  }

  /* .hero-banners-section .hero-banner-card:hover {
    transform: scaleY(1.18) scaleX(1.2) translateZ(0.01px);
    z-index: 10;
  }

  .hero-banners-section .hero-banner-card:first-child:hover {
    transform: scaleY(1.18) scaleX(1.2) translateX(1px) translateZ(0.01px);
  }

  .hero-banners-section .hero-banner-card:last-child:hover {
    transform: scaleY(1.18) scaleX(1.2) translateX(-1px) translateZ(0.01px);
  }

  .hero-banners-section
  .hero-banners:not(:hover)
  .hero-banner-card.hero-banner-card--featured {
    transform: scaleY(1.08) scaleX(1.06) translateZ(0.01px);
    z-index: 5;
  }

  .hero-banners-section
  .hero-banners:not(:hover)
  .hero-banner-card.hero-banner-card--featured:first-child {
    transform: scaleY(1.08) scaleX(1.06) translateX(1px) translateZ(0.01px);
  }

  .hero-banners-section
  .hero-banners:not(:hover)
  .hero-banner-card.hero-banner-card--featured:last-child {
    transform: scaleY(1.08) scaleX(1.06) translateX(-1px) translateZ(0.01px);
  } */

  /* .hero-banners-section
  .hero-banners:hover
  .hero-banner-card.hero-banner-card--featured:not(:hover) {
    transform: scale(1) translateZ(0);
    z-index: 1;
  }

  .hero-banners-section .hero-banners:hover .hero-banner-card:not(:hover) {
    transform: scale(1) translateZ(0);
  } */

  .hero-banners-section .hero-banner-card .banner-media {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
  }

  .hero-banners-section .hero-banner-card .banner-media,
  .hero-banners-section .hero-banner-card .banner-media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  .hero-banners-section .hero-banner-card .banner-media img {
    transform-origin: center;
    transform: scale(1) translateZ(0);
    transition: transform 0.8s cubic-bezier(.2,.9,.2,1), filter 0.6s ease;
    will-change: transform;
  }

  .hero-banners-section .hero-banner-card:hover .banner-media img {
    transform: scale(1.06) translateZ(0);
  }

  /* .hero-banners-section .hero-banner-card::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom, rgba(0, 0, 0, 0.15), rgba(0, 0, 0, 0.35));
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.45s ease;
    z-index: 1;
    transform: translateZ(0);
  } */

  .hero-banners-section .hero-banner-card:hover::after {
    opacity: 1;
  }

  .hero-banners-section .hero-banner-card .banner-content {
    position: relative;
    z-index: 2;
  }

  .hero-banners-section .hero-banner-card .banner-two-columns-box {
    transform: translateY(12px);
    opacity: 0.9;
    transition: transform 0.55s cubic-bezier(.2,.9,.2,1), opacity 0.45s ease;
  }

  .hero-banners-section .hero-banner-card:hover .banner-two-columns-box {
    transform: translateY(0);
    opacity: 1;
  }

  /*
 * Petit titre et titre principal :
 * toujours visibles sur les trois cartes.
 */
.hero-banners-section .hero-banner-card .image-with-text-text,
.hero-banners-section .hero-banner-card .banner-heading {
  opacity: 1;
  transform: perspective(200px) rotateY(0deg) translateX(0);
  transform-origin: left center;
  transition:
    opacity 0.25s ease-in-out,
    transform 0.45s cubic-bezier(.2,.9,.2,1);
}

/*
 * Description :
 * masquée sans hover, mais on conserve l'animation 3D originale.
 */
.hero-banners-section .hero-banner-card .banner-text {
  max-height: 0;
  margin-top: 0 !important;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transform: perspective(200px) rotateY(-30deg) translateX(-20%);
  transform-origin: left center;

  transition:
    max-height 0.45s cubic-bezier(.2,.9,.2,1),
    margin-top 0.45s cubic-bezier(.2,.9,.2,1),
    opacity 0.25s ease-in-out,
    visibility 0s linear 0.45s,
    transform 0.45s cubic-bezier(.2,.9,.2,1);
}

/*
 * Bouton :
 * toujours visible sur les trois cartes.
 */
.hero-banners-section .hero-banner-card .banner-buttons {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
  transition:
    opacity 0.25s ease-in-out,
    transform 0.35s cubic-bezier(.2,.9,.2,1);
}

.hero-banners-section .hero-banner-card .banner-buttons .button {
  font-size: calc(var(--font-body-scale) * 1.8rem);
}

/*
 * Au hover, la description se déplie et joue
 * l'animation rotateY existante.
 */
.hero-banners-section .hero-banner-card:hover .banner-text {
  max-height: 15rem;
  margin-top: 1rem !important;
  opacity: 1;
  visibility: visible;
  transform: perspective(200px) rotateY(0deg) translateX(0);

  transition:
    max-height 0.55s cubic-bezier(.2,.9,.2,1),
    margin-top 0.55s cubic-bezier(.2,.9,.2,1),
    opacity 0.25s ease-in-out,
    visibility 0s linear 0s,
    transform 0.45s cubic-bezier(.2,.9,.2,1);
}

@media screen and (min-width: 750px) {
  .hero-banners-section .banner--large:not(.banner--adapt) {
    min-height: 82rem;
  }
}

@media screen and (max-width: 990px) {
  .hero-banners-section .slider.slider--mobile .slider-slide {
    position: relative;
    transform: scale(0.93);
    opacity: 0.7;
    transition:
      transform 0.35s ease,
      opacity 0.25s ease,
      box-shadow 0.25s ease;
    will-change: transform;
  }

  .hero-banners-section .slider.slider--mobile .slider-slide.is-active {
    transform: scale(1);
    opacity: 1;
    z-index: 2;
  }

  .hero-banners-section .slider.slider--mobile .slider-slide .banner-media img {
    transform-origin: center;
    transform: scale(1);
    transition: transform 0.6s ease, filter 0.6s ease;
  }

  .hero-banners-section .slider.slider--mobile .slider-slide.is-active .banner-media img {
    transform: scale(1.06);
  }

  .hero-banners-section .slider.slider--mobile .slider-slide::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
      to bottom,
      rgba(0, 0, 0, 0.10),
      rgba(0, 0, 0, 0.30)
    );
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.35s ease;
    z-index: 1;
  }

  .hero-banners-section .slider.slider--mobile .slider-slide.is-active::after {
    opacity: 1;
  }

  .hero-banners-section .slider.slider--mobile .slider-slide .banner-content {
    position: relative;
    z-index: 2;
  }

  .hero-banners-section .slider.slider--mobile .slider-slide .image-with-text-text,
  .hero-banners-section .slider.slider--mobile .slider-slide .banner-heading,
  .hero-banners-section .slider.slider--mobile .slider-slide .banner-text,
  .hero-banners-section .slider.slider--mobile .slider-slide .banner-buttons {
    opacity: 0;
    visibility: hidden;
    transform-origin: left center;
    transition:
      opacity 0.25s ease-in-out,
      transform 0.35s ease-out;
  }

  .hero-banners-section .slider.slider--mobile .slider-slide .image-with-text-text,
  .hero-banners-section .slider.slider--mobile .slider-slide .banner-heading,
  .hero-banners-section .slider.slider--mobile .slider-slide .banner-text {
    transform: perspective(200px) rotateY(-25deg) translateX(-15%);
  }

  .hero-banners-section .slider.slider--mobile .slider-slide .banner-buttons {
    transform: translateY(40%);
  }

  .hero-banners-section .slider.slider--mobile .slider-slide.is-active .image-with-text-text,
  .hero-banners-section .slider.slider--mobile .slider-slide.is-active .banner-heading,
  .hero-banners-section .slider.slider--mobile .slider-slide.is-active .banner-text {
    opacity: 1;
    visibility: visible;
    transform: perspective(200px) rotateY(0deg) translateX(0);
  }

  .hero-banners-section .slider.slider--mobile .slider-slide.is-active .banner-buttons {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }

  .hero-banners-section .slider.slider--mobile {
    scroll-padding-left: 0;
  }

  .hero-banners-section.banner-two-columns .grid .grid-item {
    margin-bottom: 0;
  }
}