/* =========================================================
LENIS
========================================================= */

html.lenis,
html.lenis body {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

/* =========================================================
GLOBAL
========================================================= */

html,
body {
  overflow-x: hidden;
}

/* =========================================================
ELEMENTOR SAFETY
========================================================= */

.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget,
.elementor-widget-container {
  overflow: visible !important;
}

.elementor-heading-title {
  overflow: visible !important;
  text-wrap: balance;

  /* IMPORTANT : on laisse Elementor gérer la typo */
  font: inherit;
  color: inherit;
}

/* =========================================================
GSAP BASE
========================================================= */

.fx-reveal,
.fx-blur,
.fx-rotate,
.fx-scale,
.fx-slide,
.fx-typewriter,
.fx-fade,
.fx-zoom-out,
.fx-zoom-in,
.fx-swing,
.fx-flip,
.fx-wave,
.fx-bounce,
.fx-skew,
.fx-stretch,
.fx-cinematic,
.fx-scramble,
.fx-mask-reveal,
.fx-depth {
  display: block;
  position: relative;
  line-height: inherit;
}

/* Neutralise les animations Elementor */

.fx-reveal,
.fx-blur,
.fx-rotate,
.fx-scale,
.fx-slide,
.fx-typewriter,
.fx-fade,
.fx-zoom-out,
.fx-zoom-in,
.fx-swing,
.fx-flip,
.fx-wave,
.fx-bounce,
.fx-skew,
.fx-stretch,
.fx-cinematic,
.fx-scramble,
.fx-mask-reveal,
.fx-depth,
.img-reveal,
.img-zoom,
.img-blur,
.img-rotate,
.img-parallax {

  animation: none !important;
  transition: none !important;
  transform: none;
}

/* =========================================================
SPLITTYPE FIX
========================================================= */

.word,
.char,
.line {

  position: relative;

  /* uniquement ce dont GSAP a besoin */
  will-change: transform, opacity, filter;
  backface-visibility: hidden;
  transform: translateZ(0);

  /* laisser Elementor gérer TOUTE la typo */
  font: inherit;
  color: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

.word,
.char {
  display: inline-block;
}

.line {
  display: block;
}

.word {
  white-space: nowrap;
}

/* sécurité Elementor */

.elementor-heading-title .word,
.elementor-heading-title .char,
.elementor-heading-title .line,
.elementor-widget-text-editor .word,
.elementor-widget-text-editor .char,
.elementor-widget-text-editor .line {

  font: inherit;
  color: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

/* =========================================================
3D
========================================================= */

.fx-rotate,
.fx-flip,
.fx-swing {
  perspective: 1000px;
}

.fx-rotate .char,
.fx-flip .char,
.fx-swing .char {
  transform-style: preserve-3d;
}

/* =========================================================
SPECIAL FX
========================================================= */

.fx-scramble {
  display: inline-block;
  will-change: contents;
}

.fx-mask-reveal {
  display: inline-block;
  overflow: hidden;
  will-change: clip-path;
}

.fx-depth {
  display: inline-block;
  transform-style: preserve-3d;
  will-change: transform;
}

/* =========================================================
CINEMATIC
========================================================= */

.fx-cinematic {
  letter-spacing: .02em;
}

.fx-cinematic .word {
  padding-bottom: .15em;
}

/* =========================================================
IMAGES
========================================================= */

.img-reveal,
.img-zoom,
.img-blur,
.img-rotate,
.img-parallax {

  overflow: hidden;
  position: relative;
}

.img-parallax img {

  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* =========================================================
PERFORMANCE
========================================================= */

.word,
.char {

  will-change: transform, opacity;
  transform: translateZ(0);
}

/* =========================================================
RESPONSIVE
========================================================= */

@media (max-width:767px){

  .word,
  .char{

    -webkit-font-smoothing: antialiased;
    transform: translateZ(0);
  }

  .fx-cinematic{
    letter-spacing:0;
  }

}

/* =========================================================
WOOCOMMERCE
========================================================= */

.added_to_cart{
  display:none!important;
}