/**
 * Theme Name:     Hello Elementor Child
 * Author:         alveo.design
 * Template:       hello-elementor
 * Text Domain:	   hello-elementor-child
 * Description:    Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
 * Author URI:     http://Stéphane%20@%20alveo.design
 */

 .bordsarrondis3::before, .elementor-11 .elementor-element.elementor-element-23b68d2::before {
  border-radius: 0px 20px 20px 20px;
}
.elementor-element-23b68d2 {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.elementor-element-23b68d2 .e-con-inner {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.elementor-element-23b68d2::before {
  content: "";
  display: block;
  position: absolute;
  inset: 0; /* équivaut à top: 0; right: 0; bottom: 0; left: 0; */
  background-size: cover;
  background-position: center;
  border-radius: 0px 20px 20px 20px;
  z-index: 0;
      max-width: 1280px;
    margin: 0 auto;
}

.titre-actu-boucle {
    font-size: 18px;
    font-weight: 700;
    line-height: 20px;
  color:#152E59;
}

.elementor-11 .elementor-element.elementor-element-7d35e42::before {

  background-size: 100% 300px!important; /* force la déformation */

}





.temoignages .elementor-swiper-button.elementor-swiper-button-prev {
    background: url('https://2025.lecause.ch/wp-content/uploads/2025/05/main-v-g.png') center center no-repeat !important;
    background-size: contain !important;
    width: 58px;
    height: 188px;
    border: none;
    left: -4px !important;
}

/* Masque l’icône SVG par défaut */
.temoignages .elementor-swiper-button.elementor-swiper-button-prev svg {
    display: none !important;
}

.temoignages .elementor-swiper-button.elementor-swiper-button-next {
    background: url('https://2025.lecause.ch/wp-content/uploads/2025/05/main-v-d.png') center center no-repeat !important;
    background-size: contain !important;
    width: 58px;
    height: 188px;
    border: none; 
    right: -4px !important;
}
.temoignages.bleu .elementor-swiper-button.elementor-swiper-button-prev {
    background: url('https://2025.lecause.ch/wp-content/uploads/2025/06/main-b-g.png') center center no-repeat !important;
    background-size: contain !important;
}
.temoignages.bleu .elementor-swiper-button.elementor-swiper-button-next {
    background: url('https://2025.lecause.ch/wp-content/uploads/2025/06/main-b-d.png') center center no-repeat !important;
    background-size: contain !important;
}


.temoignages .elementor-swiper-button.elementor-swiper-button-prev , .temoignages .elementor-swiper-button.elementor-swiper-button-next {
  transition: transform 0.3s ease;
    transform: translateY(-50%);

}

    .rmp_menu_trigger-1319 #rmp-menu-wrap-1319 .rmp-submenu .rmp-menu-item-link:hover, #rmp-menu-wrap-1319 .rmp-submenu .rmp-menu-item-link:focus,  #rmp-menu-wrap-1319  .current-menu-item {
        background-color: #ea5045;
    }

     #rmp-menu-wrap-1319 .rmp-submenu .rmp-menu-item-link:hover, #rmp-menu-wrap-1319 .rmp-submenu .rmp-menu-item-link:focus {
        background-color: #ea5045;
    }
    
body .elementor-element .swiper .elementor-swiper-button, body .elementor-element .swiper~.elementor-swiper-button, body .elementor-lightbox .swiper .elementor-swiper-button, body .elementor-lightbox .swiper~.elementor-swiper-button {
    top: 43%;
    transform: translateY(-43%);

}
body .elementor-1056 .elementor-element.elementor-element-867e48f .elementor-swiper-button.elementor-swiper-button-prev svg {
    margin-left: -20px;
}
body .elementor-1056 .elementor-element.elementor-element-867e48f .elementor-swiper-button.elementor-swiper-button-next svg {
    margin-right: -20px;
}

body .elementor-widget-image-carousel .swiper-slide {
    text-align: left;
}

.elementor-image-carousel-caption {
  position: relative;
    top: -70px;
    left: 30px;
    background: #08284F;
    display: inline-block;
    padding: 10px;
    border-radius: 0px 15px 15px 15px;
}

/* Stikcky menu */ 
/* Appliquer les effets uniquement après un scroll réel */
.elementor-element-8c1d8b3.is-scrolled .elementor-element-548ec0d img {
  transform: scale(0.50) !important;
  transition: transform 0.3s ease;
      margin-top: -8px;
}


.elementor-element-8c1d8b3.is-scrolled .elementor-element-8e80349 {
  display: none;
}
.elementor-34 .elementor-element-8c1d8b3.is-scrolled  .elementor-element.elementor-element-777218a  .elementor-nav-menu .elementor-item {
    font-family: "Barlow Condensed", Sans-serif;
    font-size: 18px;
    font-weight: 400;
    line-height: 18px;
        padding: 5px 20px;
}

.elementor-34 .elementor-element.elementor-element-8c1d8b3.is-scrolled   {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  --padding-top: 0!important;
    --padding-bottom: 0!important;
   height: 50px;
}


.elementor-element-8c1d8b3.is-scrolled .elementor-nav-menu--main {
  font-size: 0.35em !important;
  transition: font-size 0.3s ease;
}


.elementor-element-8c1d8b3.is-scrolled .elementor-element-43146ff .e-con>.elementor-widget>.elementor-widget-container {
    height: 42px;
}

/* Position normale (avant scroll) */
.elementor-element-8c1d8b3 {
  transition: transform 0.3s ease;
  transform: translateY(0); /* descend pour laisser place à la bande bleue */
}

/* Après scroll : remonte */
.elementor-element-8c1d8b3.is-scrolled {
  transform: translateY(-50px);
    padding-top: 8px !important;
  padding-bottom: 8px !important;
}

/* fait disparaitre la barre bleu au scrool */
/* Prépare une animation douce de disparition */
.elementor-element-efe320c {
  transition: opacity 0.3s ease, transform 0.3s ease;
}




/* Resposnive design pour smartphone */
@media screen and (max-width: 640px) {

 .temoignages .elementor-swiper-button.elementor-swiper-button-prev,.temoignages .elementor-swiper-button.elementor-swiper-button-next, .temoignages.bleu .elementor-swiper-button.elementor-swiper-button-prev, .temoignages.bleu .elementor-swiper-button.elementor-swiper-button-next {
   width: 38px;
    height: 128px;
}
.elementor-heading-title {
    font-size: 36px!important;
    line-height: 38px!important;
}

h3.elementor-heading-title {
        font-size: 68px !important;
        line-height: 58px !important;
}

.rmp-menu-additional-content svg {
  width: 24px!important;
  height: 24px!important;
  fill: white!important; /* ou la couleur de ton texte/menu */
  display: inline-block;
  vertical-align: middle;
  margin-right: 8px;
}
.rmp-menu-additional-content {
  color: white!important;
}
.titremenu {
  margin: 10px 0;
}
.phoneicon {
        top: 5px;
        left: 6px;
        padding: 2px 6px;
        position: relative;
        height: 20px;
}
.phonenum {
  left:5px;
}

#rmp-menu-additional-content-1319 {
  background: #ea5045;
  padding: 5%;
}
        #rmp-menu-wrap-1319 {
        padding-top: 15px;
 }
}

.temoignages .elementor-swiper-button.elementor-swiper-button-prev:hover, .temoignages .elementor-swiper-button.elementor-swiper-button-next:hover {
    transform: translateY(-50%) scale(0.90);


}

/* Masque l’icône SVG par défaut */
.temoignages .elementor-swiper-button.elementor-swiper-button-next svg {
    display: none !important;
}


.descendhover {
  position: relative;
  overflow: hidden;
}

/* Bloc texte à faire apparaître */
.descendhover .texte-hover {
  position: absolute;
  top: 100%; /* commence juste en dessous du parent */
  left: 0;
  right: 0;

  width: 100%;
  box-sizing: border-box;
    color: white;
  padding: 20px;

  opacity: 0;
  transform: translateY(0);
  transition: opacity 0.3s ease-in-out, transform 0.4s ease-in-out;

  z-index: 9;
}
@media screen and (min-width: 640px) {
/* Bloc parent : au repos on masque les débordements */

/* Mais au hover, on autorise le dépassement vers le bas */
.descendhover:hover {
  overflow: visible;
  z-index: 1; /* facultatif si tu as des chevauchements */
}


/* Apparition en douceur */
.descendhover:hover .texte-hover {
  opacity: 1;
  transform: translateY(10px); /* animation vers le bas */
}
}
@media screen and (max-width: 640px) {
.descendhover:hover {
   /* margin-bottom: 100px; */
}
}







/* carousel filp box */

.service-title{
    z-index: 1;
    position: relative;
    text-align: left;
    bottom: 6px;
    left: 9px;
}

/* Conteneur des flèches sous le carousel, à gauche */
.slick-slider .slick-arrow {
    position: static !important;   /* Ne pas utiliser absolute */
    display: inline-block;
    vertical-align: middle;
    width: 32px !important;        /* Taille réduite */
    height: 32px !important;
    font-size: 1.2rem !important;
    margin: 8px 4px 0 0;           /* espace entre les flèches */
    background: #fff !important;   /* optionnel : fond blanc */
    color: #00548f !important;     /* couleur de la flèche */
    border-radius: 50%;
    box-shadow: none;
    border: 1px solid #eee;
}


.slick-nav.slick-prev.style-1, .slick-nav.slick-next.style-1 {
  padding:20px;
  box-shadow: none;
  border: 0;
      background-color: var(--e-global-color-bee301f)!important;
}
  .slick-prev.style-1:before, .slick-next.style-1:before {
  font-size: 14px!important;
    line-height: 38px!important;
    font-weight: 700!important;
}
   


/* Pour placer les deux flèches SOUS le carousel et à gauche */
.slick-slider {
    display: flex!important;
    flex-direction: column!important;
}

.slick-slider .slick-list {
    order: 1!important;
}
.slick-slider .slick-arrow {
    order: 2!important;
}


.outer-slider-arrow[dir="ltr"] .slick-nav.slick-prev.slick-arrow {
    left: 65px!important;
    position: relative !important;
}
.outer-slider-arrow[dir="ltr"] .slick-nav.slick-next.slick-arrow {
     right: -120px!important;
    top: -49px!important;
    position: relative !important;
}

@media screen and (max-width: 640px) {
  body.search #content.site-main {
    padding: 100px 20px;
}

  .outer-slider-arrow[dir="ltr"] .slick-nav.slick-prev.slick-arrow {
    top: -27px!important;
}
.outer-slider-arrow[dir="ltr"] .slick-nav.slick-next.slick-arrow {
    top: -75px!important;
}
}

/* ne pas afficher dernière bordure accordéon */
.elementor-widget-n-accordion .e-n-accordion-item:last-child .e-n-accordion-item-title {
    border-bottom: none !important;
}



.boutoncategorie a {
border: 1.434px solid var(--RED, #EA5045);
background: var(--RED, #EA5045);
display: inline-block;
padding: 4px 10px;
    width: 140px;
    margin: 0 auto;
      white-space: nowrap;        /* Empêche le retour à la ligne dans le texte */
  word-break: keep-all;       /* Empêche la coupure de mots */

}


html body .post-actu .elementor-element.elementor-element-1465fe6 .elementor-icon-list-item {
    line-height: 48px;
}

.elementor-widget-taxonomy-filter .e-filter-item  {
border: 1.434px solid var(--RED, #EA5045);
background: var(--RED, #EA5045);
}


.page-id-63  .margefooter {
  display: none;
}

.elementor-location-footer .lienblanc a, .elementor-location-footer .lienblanc {
  color:#fff!important;

}

#rmp_menu_trigger-1319 {
    border-radius: 0 5px 5px 5px!important;
}

/* Champ recherche *//* Champ recherche *//* Champ recherche */
/* Champ recherche */
.search-flyout {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  min-width: 44px;
}

.search-flyout-form {
  position: relative;
  display: flex;
  align-items: center;
  transition: width 0.4s cubic-bezier(.5,1.6,.4,1);
  width: 44px; /* taille de la loupe seule */
}

.search-flyout-input {
  opacity: 0;
  width: 0;
  padding: 0 !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  margin: 0 !important;
  background: transparent !important;
  color: var(--e-global-color-text);
  transition: width 0.4s cubic-bezier(.5,1.6,.4,1), opacity 0.2s;
  border-radius: 25px 0 0 25px;
}

.search-flyout-form.active {
  width: 240px; /* largeur totale du champ ouvert */
}

.search-flyout-form.active .search-flyout-input {
      font-family: "Barlow Condensed", Sans-serif;
  opacity: 1;
  width: 180px;
  padding: 9px 16px 9px 16px !important;
  border-radius: 25px 0 0 25px;
  background: transparent;
  margin-left: 0;
  color: var(--e-global-color-text);
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
}

.search-flyout-trigger {
  
  background: none;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  padding: 8px;
  margin-left: 0;
  margin-right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.4s cubic-bezier(.5,1.6,.4,1), margin 0.4s;
  position: relative;
  z-index: 2;
  color: var(--e-global-color-text)!important; /* LOUPE NOIRE */
   border: none!important;
}

.search-flyout-trigger:hover, .search-flyout-trigger:focus {
  border: none!important;
  background:none!important;
}

.search-flyout-form.active .search-flyout-trigger {
  /* Déplace la loupe à droite du champ */
  transform: translateX(180px);
  border-radius: 0 25px 25px 0;
  margin-left: -44px;
  background: none;
  border: 1px!important;
  color: var(--e-global-color-text)!important;
}
.search-flyout-trigger svg {
  color: var(--e-global-color-text) !important;
  stroke: #111 !important;
}
.search-flyout-form .search-flyout-input:focus {
  outline: none;
}