@charset "UTF-8";
/************************
*
* PLAN DES SCSS
*
01 => CONFIG
02 => LAYOUT
03 => PAGES
04 => COMPOSANTS
*
*
*************************/
/* Set core body defaults */
:root {
  color-scheme: unset;
}
body {
  min-height: 96vh;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
  max-width: 100vw;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: stretch;
  align-content: flex-end;
}
body .elementor-location-footer {
  bottom: 0;
}
/* Box sizing rules */
*, *::before, *::after {
  box-sizing: border-box;
}
/* Remove default padding */
ul[class], ol[class] {
  padding: 0;
}
p {
  margin-top: 0rem;
  margin-bottom: 1rem;
}
html {
  scroll-behavior: smooth;
}
/* Remove default margin */
body, h1, h2, h3, h4, ul[class], ol[class], li, figure, figcaption, blockquote, dl, dd {
  margin: 0;
}
/* Remove list styles on ul, ol elements with a class attribute */
ul[class], ol[class] {
  list-style: none;
}
/* Make images easier to work with */
img {
  max-width: 100%;
  height: auto;
  display: inline-block;
}
a {
  text-decoration: none;
}
/* Inherit fonts for inputs and buttons */
input, button, textarea, select {
  font: inherit;
}
/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
h1, h2, h3, h4, h5, h6 {
  font-weight: inherit;
  font-style: inherit;
  font-size: inherit;
  font-family: inherit;
  vertical-align: baseline;
}
/**
*
*  color BG + TXT
*
****************/
.bg_primary {
  background-color: #0A4A4A;
}
.txt_primary {
  color: #0A4A4A;
}
.bg_noir {
  background-color: #000000;
}
.txt_noir {
  color: #000000;
}
.bg_blanc {
  background-color: #ffffff;
}
.txt_blanc {
  color: #ffffff;
}
.bg_gris1 {
  background-color: #F2F2F2;
}
.txt_gris1 {
  color: #F2F2F2;
}
.bg_gris2 {
  background-color: #EDF0F0;
}
.txt_gris2 {
  color: #EDF0F0;
}
.bg_gris3 {
  background-color: #707070;
}
.txt_gris3 {
  color: #707070;
}
.bg_gris4 {
  background-color: #333333;
}
.txt_gris4 {
  color: #333333;
}
.bg_color1 {
  background-color: #0A4A4A;
}
.txt_color1 {
  color: #0A4A4A;
}
.bg_color2 {
  background-color: #3DAB36;
}
.txt_color2 {
  color: #3DAB36;
}
.bg_color3 {
  background-color: #39C749;
}
.txt_color3 {
  color: #39C749;
}
.bg_color4 {
  background-color: #AEFF76;
}
.txt_color4 {
  color: #AEFF76;
}
.bg_color5 {
  background-color: #EDF0F0;
}
.txt_color5 {
  color: #EDF0F0;
}
.bg_color6 {
  background-color: #28D6F2;
}
.txt_color6 {
  color: #28D6F2;
}
.bg_color7 {
  background-color: #FCCA00;
}
.txt_color7 {
  color: #FCCA00;
}
.bg_color8 {
  background-color: #D30DE9;
}
.txt_color8 {
  color: #D30DE9;
}
.bg_color9 {
  background-color: #F25CDD;
}
.txt_color9 {
  color: #F25CDD;
}
/**
*
* Colonne
*
****************/
.col2 p, .col3 p {
  margin: 0 !important;
}
.col2 ul, .col3 ul {
  margin-top: 0 !important;
}
@media screen and (min-width: 960px) {
  .col2 {
    columns: 2;
    column-gap: 25px;
    column-fill: balance;
  }
  .col3 {
    columns: 3;
    column-gap: 25px;
    column-fill: balance;
  }
}
/************************
* Header & fix header
*************************/
.header_m1 .gm-wrapper {
  width: 100%;
  z-index: 99;
  background-color: #ffffff !important;
  box-shadow: 0px 4px 9px 0px rgba(0, 0, 0, 0.15);
}
.header_m1 .gm-inner {
  position: relative;
  background-color: #ffffff !important;
}
@media (min-width: 1095px) {
  .header_m1 .gm-inner:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 35px;
    width: 100%;
    background-color: #EDF0F0;
    z-index: 1;
  }
}
.header_m1 .gm-inner .gm-container {
  flex-direction: row;
  transition: all 0.3s ease-in-out !important;
  justify-content: center;
}
@media (min-width: 1095px) {
  .header_m1 .gm-inner .gm-container {
    padding-left: 10px;
    padding-right: 10px;
    flex-direction: column;
  }
}
.header_m1 .gm-inner .gm-container .gm-logo {
  justify-content: space-between !important;
  transition: all 0.3s ease-in-out !important;
}
@media (min-width: 1095px) {
  .header_m1 .gm-inner .gm-container .gm-logo {
    height: 110px;
  }
}
.header_m1 .gm-inner .gm-container .gm-logo > a {
  align-items: flex-start;
  width: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
}
.header_m1 .gm-inner .gm-container .gm-logo > a img {
  width: 100%;
  transition: all 0.3s ease-in-out !important;
}
.header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  align-content: stretch;
  width: 100%;
  z-index: 2;
}
.header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-menu-item__txt-wrapper {
  transition: none !important;
}
.header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-menu-item--lvl-0.gm-open {
  background-color: transparent;
  color: #3DAB36 !important;
  transition: all 0.3s ease-in-out !important;
}
.header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-menu-item--lvl-0.gm-open > .gm-anchor .gm-menu-item__txt-wrapper {
  color: #0A4A4A !important;
}
.header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-menu-item--lvl-0 > a {
  padding: 5px 10px;
  margin: 0;
  background-color: transparent;
  color: #0A4A4A !important;
  font-family: "Poppins", sans-serif;
  text-transform: uppercase;
  font-weight: 600;
  font-size: 13px;
  transition: all 0.3s ease-in-out !important;
}
.header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-menu-item--lvl-0 > a:hover, .header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-menu-item--lvl-0 > a:active {
  background-color: transparent;
  color: #3DAB36 !important;
  transition: all 0.3s ease-in-out !important;
}
.header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-menu-item--lvl-0:first-child > a {
  padding-left: 0px;
}
.header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-menu-item--lvl-0:last-child > a {
  padding-right: 0px;
}
.header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-menu-item--lvl-0 .gm-caret i {
  width: 10px;
}
.header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-dropdown-menu-wrapper {
  top: 145px !important;
}
.header_m1 .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-dropdown-menu-wrapper .gm-dropdown-menu {
  border-top: 3px solid #0A4A4A !important;
  background-color: #ffffff;
  border-radius: 0px 0px 32px 32px;
  padding: 10px 0px !important;
}
.header_m1 .gm-inner .gm-main-menu-wrapper .gm-inner {
  transition: none !important;
}
.header_m1.fixed-header {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  animation: slide-down 1s cubic-bezier(0, 0, 0.58, 1);
}
.header_m1.fixed-header .gm-wrapper {
  background-color: rgba(0, 0, 0, 0.75);
  width: 100%;
  z-index: 99;
  transition: all 0.3s ease-in-out !important;
}
.header_m1.fixed-header .gm-inner {
  min-height: auto !important;
  transition: all 0.3s ease-in-out !important;
}
.header_m1.fixed-header .gm-inner .gm-container {
  transition: all 0.3s ease-in-out !important;
  height: auto !important;
}
.header_m1.fixed-header .gm-inner .gm-container .gm-main-menu-wrapper {
  height: auto !important;
}
.header_m1.fixed-header .gm-inner .gm-container .gm-logo {
  height: 80px;
  transition: all 0.3s ease-in-out !important;
}
.header_m1.fixed-header .gm-inner .gm-container .gm-logo > a {
  align-items: flex-start;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-direction: column;
}
.header_m1.fixed-header .gm-inner .gm-container .gm-logo > a img {
  width: 75px !important;
  transition: all 0.3s ease-in-out !important;
}
.header_m1.fixed-header .gm-inner .gm-main-menu-wrapper #gm-main-menu .gm-navbar-nav .gm-dropdown-menu-wrapper {
  top: 115px !important;
}
.mega_menu .e-con-inner .mega_menu_col.border_right {
  position: relative;
}
.mega_menu .e-con-inner .mega_menu_col.border_right:after {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 1px;
  top: 0%;
  right: -10px;
  background-color: #0A4A4A;
}
.mega_menu .e-con-inner .mega_menu_col .mega_menu_titre a {
  font-size: calc(22px + (25 - 22) * ((100vw - 300px) / (2560 - 300)));
  font-weight: 600;
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.mega_menu .e-con-inner .mega_menu_col .mega_menu_titre a:hover {
  color: #3DAB36;
  transition: all 0.3s ease-in-out !important;
}
.mega_menu .e-con-inner .mega_menu_col .mega_menu_titre2 a {
  font-size: calc(18px + (20 - 18) * ((100vw - 300px) / (2560 - 300))) !important;
  font-weight: 600;
  color: #0A4A4A !important;
  transition: all 0.3s ease-in-out !important;
}
.mega_menu .e-con-inner .mega_menu_col .mega_menu_titre2 a:visited, .mega_menu .e-con-inner .mega_menu_col .mega_menu_titre2 a:focus {
  color: #0A4A4A !important;
}
.mega_menu .e-con-inner .mega_menu_col .mega_menu_titre2 a:hover {
  color: #3DAB36 !important;
  transition: all 0.3s ease-in-out !important;
}
.mega_menu .e-con-inner .mega_menu_col .mega_menu_img_radius img {
  border-radius: 25px 0px 0px 25px;
}
.mega_menu .e-con-inner .mega_menu_col .mega_menu_link p {
  margin-bottom: 0px;
}
.mega_menu .e-con-inner .mega_menu_col .mega_menu_link a {
  display: inline-block;
  color: #0A4A4A !important;
  line-height: 1.2;
  transition: all 0.3s ease-in-out !important;
}
.mega_menu .e-con-inner .mega_menu_col .mega_menu_link a:hover {
  color: #39C749 !important;
  transition: all 0.3s ease-in-out !important;
}
.mega_menu .e-con-inner .mega_menu_col .mega_menu_link strong {
  display: inline-block;
  background-color: #39C749;
  color: #ffffff;
  width: fit-content;
  padding: 3px 9px;
  border-radius: 100px;
  font-weight: 500;
  font-size: 12px;
}
.menu_top .btn_propos .elementor-button-link, .menu_top .btn_contact .elementor-button-link, .menu_top .btn-order .elementor-button-link {
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  padding: 0 20px;
  border: 0px solid transparent;
  border-radius: 48px;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 960px) {
  .menu_top .btn_propos .elementor-button-link, .menu_top .btn_contact .elementor-button-link, .menu_top .btn-order .elementor-button-link {
    padding: 0 10px;
    font-size: 13px;
  }
}
.menu_top .btn_propos .elementor-button-link:before, .menu_top .btn_contact .elementor-button-link:before, .menu_top .btn-order .elementor-button-link:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #39C749;
  z-index: 1;
  transform: scaleX(0);
  transition: transform 0.5s ease-out;
  transform-origin: bottom right;
}
.menu_top .btn_propos .elementor-button-link .elementor-button-content-wrapper, .menu_top .btn_contact .elementor-button-link .elementor-button-content-wrapper, .menu_top .btn-order .elementor-button-link .elementor-button-content-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  z-index: 5;
  position: relative;
}
@media screen and (max-width: 960px) {
  .menu_top .btn_propos .elementor-button-link .elementor-button-content-wrapper, .menu_top .btn_contact .elementor-button-link .elementor-button-content-wrapper, .menu_top .btn-order .elementor-button-link .elementor-button-content-wrapper {
    height: 40px;
  }
}
.menu_top .btn_propos .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon, .menu_top .btn_contact .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon, .menu_top .btn-order .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon {
  margin-right: 10px;
}
.menu_top .btn_propos .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg, .menu_top .btn_contact .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg, .menu_top .btn-order .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
  height: 36px;
  width: 26px;
  transition: all 0.3s ease-in-out !important;
}
@media screen and (max-width: 960px) {
  .menu_top .btn_propos .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon, .menu_top .btn_contact .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon, .menu_top .btn-order .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon {
    margin-right: 0px;
  }
  .menu_top .btn_propos .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg, .menu_top .btn_contact .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg, .menu_top .btn-order .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
    height: 25px;
    width: 20px;
  }
}
.menu_top .btn_propos .elementor-button-link:visited, .menu_top .btn_propos .elementor-button-link:focus, .menu_top .btn_contact .elementor-button-link:visited, .menu_top .btn_contact .elementor-button-link:focus, .menu_top .btn-order .elementor-button-link:visited, .menu_top .btn-order .elementor-button-link:focus {
  color: #ffffff;
}
.menu_top .btn_propos .elementor-button-link:visited svg, .menu_top .btn_propos .elementor-button-link:focus svg, .menu_top .btn_contact .elementor-button-link:visited svg, .menu_top .btn_contact .elementor-button-link:focus svg, .menu_top .btn-order .elementor-button-link:visited svg, .menu_top .btn-order .elementor-button-link:focus svg {
  fill: #39C749;
}
.menu_top .btn_propos .elementor-button-link:hover, .menu_top .btn_contact .elementor-button-link:hover, .menu_top .btn-order .elementor-button-link:hover {
  color: #ffffff;
}
.menu_top .btn_propos .elementor-button-link:hover:before, .menu_top .btn_contact .elementor-button-link:hover:before, .menu_top .btn-order .elementor-button-link:hover:before {
  transform: scaleX(1);
  transform-origin: bottom left;
}
.menu_top .btn_propos .elementor-button-link:hover .elementor-button-icon svg, .menu_top .btn_contact .elementor-button-link:hover .elementor-button-icon svg, .menu_top .btn-order .elementor-button-link:hover .elementor-button-icon svg {
  fill: #ffffff !important;
}
@media (max-width: 1095px) {
  .menu_top .btn_propos .elementor-button-text span, .menu_top .btn_contact .elementor-button-text span, .menu_top .btn-order .elementor-button-text span {
    display: none;
  }
}
@media (max-width: 480px) {
  .menu_top .btn_propos .elementor-button-text, .menu_top .btn_contact .elementor-button-text, .menu_top .btn-order .elementor-button-text {
    display: none;
  }
}
.menu_top .btn_propos .elementor-button-link {
  background-color: #0A4A4A;
}
.menu_top .btn_propos .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
  fill: #39C749;
  transition: all 0.3s ease-in-out !important;
}
.menu_top .btn_propos .elementor-button-link:visited svg, .menu_top .btn_propos .elementor-button-link:focus svg {
  fill: #39C749;
}
.menu_top .btn_propos .elementor-button-link:hover {
  background-color: #0A4A4A;
}
.menu_top .btn_propos .elementor-button-link:hover .elementor-button-icon svg {
  fill: #ffffff !important;
}
.menu_top .btn_contact .elementor-button-link, .menu_top .btn-order .elementor-button-link {
  background: linear-gradient(180deg, #aeff76 0%, #39c749 100%);
  background-size: 200% auto;
  border: 0px solid transparent;
}
.menu_top .btn_contact .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg, .menu_top .btn-order .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
  fill: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.menu_top .btn_contact .elementor-button-link:visited svg, .menu_top .btn_contact .elementor-button-link:focus svg, .menu_top .btn-order .elementor-button-link:visited svg, .menu_top .btn-order .elementor-button-link:focus svg {
  fill: #ffffff;
}
.menu_top .btn_contact .elementor-button-link:hover, .menu_top .btn-order .elementor-button-link:hover {
  background-position: right center;
  border-color: transparent;
}
.menu_top .btn_contact .elementor-button-link:hover .elementor-button-icon svg, .menu_top .btn-order .elementor-button-link:hover .elementor-button-icon svg {
  fill: #ffffff !important;
}
.menu_top .menu_search .elementor-icon {
  background-color: #EDF0F0;
  border-radius: 50%;
  height: 50px;
  aspect-ratio: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease-in-out !important;
}
@media screen and (max-width: 960px) {
  .menu_top .menu_search .elementor-icon {
    height: 40px;
  }
}
.menu_top .menu_search .elementor-icon svg {
  fill: #3DAB36;
  height: 23px;
  width: 23px;
  transition: all 0.3s ease-in-out !important;
}
.menu_top .menu_search .elementor-icon:hover {
  background-color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.menu_top .menu_search .elementor-icon:hover svg {
  fill: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
@media screen and (max-width: 768px) {
  .gm-action__gm_before_mobile_hamburger {
    padding-left: 10px;
    padding-right: 28px;
  }
}
.modal_search {
  padding: 2rem 2rem 3rem !important;
}
.modal_search .modal_titre {
  position: relative;
  font-size: calc(22px + (38 - 22) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 300;
  position: relative;
}
.modal_search .modal_titre .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 960px) {
  .modal_search .modal_titre br {
    display: none;
  }
}
.modal_search .modal_titre strong, .modal_search .modal_titre b {
  font-weight: 600;
}
.modal_search .modal_titre span {
  color: #0A4A4A;
  font-weight: 600;
}
.modal_search .modal_barre .e-search-form .e-search-input {
  box-shadow: 0px 4px 9px 0px rgba(0, 0, 0, 0.15);
  border-radius: 100px 0px 0px 100px;
  border: 0px solid transparent;
}
.modal_search .modal_barre .e-search-form .e-search-submit {
  border-radius: 0px 100px 100px 0px;
  box-shadow: 0px 4px 9px 0px rgba(0, 0, 0, 0.15);
  background: linear-gradient(180deg, #aeff76 0%, #39c749 100%);
  border: 0px solid transparent;
  color: #ffffff;
  margin-left: 0px;
  cursor: pointer;
}
.modal_search .modal_barre .e-search-form .e-search-submit svg {
  transform: scale(1);
  transition: all 0.3s ease-in-out !important;
}
.modal_search .modal_barre .e-search-form .e-search-submit:hover {
  background-color: #3DAB36;
  border: 0px solid transparent;
}
.modal_search .modal_barre .e-search-form .e-search-submit:hover svg {
  transform: scale(1.2);
  transition: all 0.3s ease-in-out !important;
}
.dialog-widget-content {
  border-radius: 25px !important;
}
.e-off-canvas__content:has(.panel_menu) {
  background: linear-gradient(0deg, #39c749 0%, #094646 100%);
  position: relative;
  padding: 1rem !important;
}
.e-off-canvas__content:has(.panel_menu):before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  width: 100%;
  height: 90%;
  z-index: 1;
  opacity: 0.3;
  background: linear-gradient(0deg, #aeff76 0%, #39c749 100%);
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  mask-position: 50% 50%;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: 50% 50%;
}
.e-off-canvas__content:has(.panel_menu) .panel_menu {
  position: relative;
  z-index: 2;
  color: #ffffff;
  height: 100%;
  justify-content: center;
}
.e-off-canvas__content:has(.panel_menu) .panel_menu .panel_menu_titre {
  text-transform: uppercase;
  font-weight: 500;
  font-size: calc(22px + (25 - 22) * ((100vw - 300px) / (2560 - 300)));
}
.e-off-canvas__content:has(.panel_menu) .panel_menu .panel_menu_titre a {
  position: relative;
}
.e-off-canvas__content:has(.panel_menu) .panel_menu .panel_menu_titre a:after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0%;
  left: 0%;
  width: 0%;
  height: 1px;
  background-color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.e-off-canvas__content:has(.panel_menu) .panel_menu .panel_menu_titre a:hover:after {
  width: 100%;
  transition: all 0.3s ease-in-out !important;
}
.e-off-canvas__content:has(.panel_menu) .panel_menu .panel_menu_liste {
  text-transform: uppercase;
  font-weight: 500;
  font-size: 18px;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.e-off-canvas__content:has(.panel_menu) .panel_menu .panel_menu_liste li {
  padding-left: 15px;
  padding-bottom: 10px;
  position: relative;
}
.e-off-canvas__content:has(.panel_menu) .panel_menu .panel_menu_liste li a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
  position: relative;
}
.e-off-canvas__content:has(.panel_menu) .panel_menu .panel_menu_liste li a:after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0%;
  left: 0%;
  width: 0%;
  height: 1px;
  background-color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.e-off-canvas__content:has(.panel_menu) .panel_menu .panel_menu_liste li a:hover:after {
  width: 100%;
  transition: all 0.3s ease-in-out !important;
}
.gm-menu-btn {
  position: absolute;
  top: 20px;
  right: 15px;
  z-index: 999999;
}
@keyframes slide-down {
  0% {
    transform: translateY(-100%);
  }
  100% {
    transform: translateY(0);
  }
}
.ban_pdt {
  position: relative;
  min-height: 300px !important;
}
.ban_pdt:after {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  height: 1080px !important;
  width: 1080px !important;
  top: 0% !important;
  right: 0% !important;
  z-index: 1;
  opacity: 0.5 !important;
  background-color: #EDF0F0;
  mask-image: url("/wp-content/uploads/2025/05/picto-trema-logo.svg");
  mask-size: 100%;
  mask-position: 100% 0%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-trema-logo.svg");
  -webkit-mask-size: 100%;
  -webkit-mask-position: 100% 0%;
  -webkit-mask-repeat: no-repeat;
}
@media screen and (max-width: 960px) {
  .ban_pdt:after {
    height: 100% !important;
    width: 100vw !important;
  }
}
.ban_pdt > .e-con-inner {
  z-index: 3;
}
.ban_pdt .breadcrumbs {
  background-color: #39C749;
  color: #ffffff;
  position: absolute;
  width: 100%;
  top: 0px;
  left: 0px;
  text-transform: uppercase;
}
.ban_pdt .breadcrumbs .woocommerce-breadcrumb {
  color: #ffffff;
  font-size: 0.85em;
  margin: 0px !important;
}
.ban_pdt .breadcrumbs .woocommerce-breadcrumb a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_pdt .breadcrumbs .woocommerce-breadcrumb a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.ban_pdt .pdt_img {
  box-shadow: 0px 3px 8px 0px rgba(0, 0, 0, 0.15);
}
.ban_pdt .pdt_content .pdt_titre {
  position: relative;
  font-size: calc(22px + (25 - 22) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 600;
}
.ban_pdt .pdt_content .pdt_titre .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 960px) {
  .ban_pdt .pdt_content .pdt_titre br {
    display: none;
  }
}
.ban_pdt .pdt_content .pdt_titre strong, .ban_pdt .pdt_content .pdt_titre b {
  font-weight: 600;
}
.ban_pdt .pdt_content .pdt_titre span {
  color: #0A4A4A;
  font-weight: 600;
}
.ban_pdt .pdt_content .pdt_puissance {
  color: #39C749;
}
.e-con-inner {
  z-index: 2;
}
.sup_footer {
  background-color: #EDF0F0;
  color: #0A4A4A;
}
.sup_footer a {
  color: #0A4A4A;
}
.sup_footer a:hover {
  color: #AEFF76;
}
.sup_footer .sup_footer_icon .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title {
  color: #0A4A4A;
  font-size: 15px;
  font-weight: 600 !important;
  text-transform: uppercase;
}
.sup_footer .sup_footer_icon .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-description {
  font-size: 13px;
}
.footer_m1 {
  background-color: #0A4A4A;
  border: 0px;
  overflow: hidden;
  position: relative;
}
.footer_m1:before {
  content: "" !important;
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0.05 !important;
  background-color: #EDF0F0;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 250%;
  mask-position: 50% 14%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 250%;
  -webkit-mask-position: 50% 14%;
  -webkit-mask-repeat: no-repeat;
}
.footer_m1 .e-con-inner {
  z-index: 4;
}
.footer_m1 .newsletter_titre {
  position: relative;
  font-size: calc(20px + (25 - 20) * ((100vw - 300px) / (2560 - 300)));
  color: #ffffff;
  font-weight: 300;
  position: relative;
  padding-top: 60px !important;
}
.footer_m1 .newsletter_titre:before {
  content: "";
  position: absolute;
  display: block;
  height: 50px;
  width: 45px;
  top: 0%;
  left: 50%;
  transform: translateX(-50%);
  mask-position: 50% 50%;
  -webkit-mask-position: 50% 50%;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
}
.footer_m1 .newsletter_titre .elementor-heading-title {
  line-height: 1.2;
}
.footer_m1 .newsletter_titre strong, .footer_m1 .newsletter_titre b {
  font-weight: 600;
}
.footer_m1 .newsletter_titre span {
  color: #ffffff;
  font-weight: 600;
  font-size: calc(22px + (38 - 22) * ((100vw - 300px) / (2560 - 300)));
}
.footer_m1 .footer_logo {
  height: 90px !important;
}
.footer_m1 .footer_logo svg {
  fill: #0A4A4A;
  height: 90px !important;
  width: 100% !important;
}
.footer_m1 .footer_titre {
  color: #ffffff;
  text-transform: uppercase;
  font-size: calc(18px + (22 - 18) * ((100vw - 300px) / (2560 - 300)));
}
.footer_m1 p {
  color: #ffffff;
}
.footer_m1 a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.footer_m1 a:hover {
  color: #AEFF76;
  transition: all 0.3s ease-in-out !important;
}
.footer_m1 .elementor-social-icon {
  background-color: transparent;
  border: 1px solid #ffffff;
  transition: all 0.3s ease-in-out !important;
  font-size: 20px;
  margin: 2px;
}
@media screen and (max-width: 960px) {
  .footer_m1 .elementor-social-icon {
    font-size: 14px;
  }
}
.footer_m1 .elementor-social-icon svg {
  fill: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.footer_m1 .elementor-social-icon:hover {
  border: 1px solid #3DAB36;
  transition: all 0.3s ease-in-out !important;
}
.footer_m1 .elementor-social-icon:hover svg {
  fill: #3DAB36;
  transition: all 0.3s ease-in-out !important;
}
.footer_m1 .footer_liste ul {
  list-style: none;
  margin: 0px;
  padding: 0px;
}
.footer_m1 .footer_liste ul li {
  margin-bottom: 10px;
}
.footer_m1 .footer_liste ul li a {
  color: #ffffff;
}
.footer_m1 .footer_liste ul li a:hover {
  color: #AEFF76;
}
.copyright_m1 {
  text-align: center;
  color: #ffffff;
  font-size: 12px;
  border-top: 1px solid #ffffff;
}
.copyright_m1 p {
  color: #ffffff;
}
.copyright_m1 a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.copyright_m1 a:hover {
  color: #AEFF76;
  transition: all 0.3s ease-in-out !important;
}
.btn_footer .elementor-button-link {
  background-color: transparent;
  border: 0px solid transparent;
  color: #ffffff;
  font-size: 15px;
  padding: 0px;
  transition: all 0.3s ease-in-out !important;
  font-weight: 400;
  text-align: left;
  line-height: 1.2;
}
.btn_footer .elementor-button-link .elementor-button-content-wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: center;
  align-content: stretch;
  height: 36px;
}
.btn_footer .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon {
  margin-right: 10px;
}
.btn_footer .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
  height: 18px;
  width: 40px;
  fill: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.btn_footer .elementor-button-link:visited, .btn_footer .elementor-button-link:focus {
  color: #ffffff;
}
.btn_footer .elementor-button-link:visited svg, .btn_footer .elementor-button-link:focus svg {
  fill: #ffffff;
}
.btn_footer .elementor-button-link:hover {
  transition: all 0.3s ease-in-out !important;
  background-color: transparent;
  border: 0px solid transparent;
  color: #AEFF76;
}
.btn_footer .elementor-button-link:hover .elementor-button-content-wrapper:before {
  height: 5px;
}
.btn_footer .elementor-button-link:hover .elementor-button-content-wrapper .elementor-button-icon svg {
  fill: #AEFF76 !important;
  transition: all 0.3s ease-in-out !important;
}
body {
  font-family: "Poppins", sans-serif, sans-serif;
  font-size: 16px;
  color: #0A4A4A;
  font-weight: 400;
  line-height: 1.4;
}
body main {
  min-height: 69vh;
}
@media screen and (min-width: 960px) {
  body main {
    margin-top: 0rem;
  }
}
@media screen and (min-width: 768px) and (max-width: 960px) {
  body main {
    margin-top: 0rem;
  }
}
.gm-nav-content-wrapper {
  will-change: inherit !important;
}
/******************************
* Titres principaux
******************************/
.titre_1 {
  position: relative;
  font-size: calc(30px + (50 - 30) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 300;
}
.titre_1 .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 960px) {
  .titre_1 br {
    display: none;
  }
}
.titre_1 strong {
  font-weight: 600;
}
.titre_1 span {
  color: #0A4A4A;
  font-weight: 600;
}
.titre_2, .titre_2l, .titre_2r, .titre_2c {
  position: relative;
  font-size: calc(22px + (38 - 22) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 300;
  position: relative;
}
.titre_2 .elementor-heading-title, .titre_2l .elementor-heading-title, .titre_2r .elementor-heading-title, .titre_2c .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 960px) {
  .titre_2 br, .titre_2l br, .titre_2r br, .titre_2c br {
    display: none;
  }
}
.titre_2 strong, .titre_2 b, .titre_2l strong, .titre_2l b, .titre_2r strong, .titre_2r b, .titre_2c strong, .titre_2c b {
  font-weight: 600;
}
.titre_2 span, .titre_2l span, .titre_2r span, .titre_2c span {
  color: #0A4A4A;
  font-weight: 600;
}
.titre_2l, .titre_2r, .titre_2c {
  padding-top: 60px !important;
}
.titre_2l::before, .titre_2r::before, .titre_2c::before {
  content: "";
  position: absolute;
  display: block;
  height: 50px;
  width: 45px;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
}
.titre_2l::before {
  top: 0%;
  left: 0%;
  transform: translateX(0%);
  mask-position: -12px 50%;
  -webkit-mask-position: -12px 50%;
}
.titre_2r::before {
  top: 0%;
  left: 100%;
  transform: translateX(-100%);
  mask-position: 11px 50%;
  -webkit-mask-position: 11px 50%;
}
.titre_2c::before {
  top: 0%;
  left: 50%;
  transform: translateX(-50%);
  mask-position: 50% 50%;
  -webkit-mask-position: 50% 50%;
}
.bg_color1 {
  color: #ffffff;
}
.bg_color1 .titre_2, .bg_color1 .titre_2l, .bg_color1 .titre_2r, .bg_color1 .titre_2c {
  color: #ffffff;
}
.bg_color1 .titre_2 span, .bg_color1 .titre_2l span, .bg_color1 .titre_2r span, .bg_color1 .titre_2c span {
  color: #ffffff;
}
.titre_3 {
  position: relative;
  font-size: calc(22px + (26 - 22) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 600;
}
.titre_3 .elementor-heading-title {
  line-height: 1.4;
}
@media screen and (max-width: 960px) {
  .titre_3 br {
    display: none;
  }
}
.titre_3 strong, .titre_3 b {
  font-weight: 600;
}
.titre_3 span {
  color: #3DAB36;
}
/******************************
* Titres spe
******************************/
.titre_spe_1 {
  position: relative;
  font-size: calc(30px + (40 - 30) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 600;
}
.titre_spe_1 .elementor-heading-title {
  line-height: 1.4;
}
@media screen and (max-width: 960px) {
  .titre_spe_1 br {
    display: none;
  }
}
.titre_spe_1 strong, .titre_spe_1 b {
  font-weight: 600;
}
.titre_spe_1 span {
  color: #3DAB36;
}
.titre_spe_2 {
  position: relative;
  font-size: calc(22px + (26 - 22) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 600;
}
.titre_spe_2 .elementor-heading-title {
  line-height: 1.4;
}
@media screen and (max-width: 960px) {
  .titre_spe_2 br {
    display: none;
  }
}
.titre_spe_2 strong, .titre_spe_2 b {
  font-weight: 600;
}
.titre_spe_2 span {
  color: #39C749;
}
/******************************
* Padding / margin spe
******************************/
.p_margin_0 p {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
}
/******************************
* Couleur
******************************/
.txt_blanc {
  color: #ffffff;
}
/******************************
* link Couleur
******************************/
.link_color1 a {
  transition: all 0.3s ease-in-out !important;
  color: #0A4A4A;
}
.link_color1 a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.link_color2 a {
  transition: all 0.3s ease-in-out !important;
  color: #3DAB36;
}
.link_color2 a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.link_color3 a {
  transition: all 0.3s ease-in-out !important;
  color: #39C749;
}
.link_color3 a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
/******************************
* BG
******************************/
.bg_degrad_1 {
  background: linear-gradient(180deg, #aeff76 0%, #39c749 25%, #114425 100%);
}
.bg_degrad_2 {
  background: linear-gradient(180deg, #aeff76 0%, #39c749 100%);
}
.bg_spe_1 {
  background-color: #0A4A4A;
}
.border_top_gris2 {
  border-top: 3px solid #EDF0F0;
}
/******************************
* images
******************************/
svg {
  min-height: 6px;
  min-width: 6px;
}
.img_rad_droit {
  border-radius: 0vw 2vw 2vw 0vw;
  overflow: hidden;
}
.img_rad_gauche {
  border-radius: 2vw 0vw 0vw 2vw;
  overflow: hidden;
}
.img_rad_haut {
  border-radius: 2vw 2vw 0vw 0vw;
  overflow: hidden;
}
.img_rad_bas {
  border-radius: 0vw 0vw 2vw 2vw;
  overflow: hidden;
}
.img_rad_full {
  border-radius: 2vw 2vw 2vw 2vw;
  overflow: hidden;
}
.bgbig_logo_r {
  position: relative;
}
.bgbig_logo_r:before {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  height: 80% !important;
  width: 400px !important;
  top: 100% !important;
  left: 100% !important;
  transform: translateX(-100%) translateY(-100%);
  z-index: 1;
  opacity: 1 !important;
  background-color: #EDF0F0;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 109%;
  mask-position: 100% 0%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 109%;
  -webkit-mask-position: 100% 0%;
  -webkit-mask-repeat: no-repeat;
}
.bgbig_logo_r > .e-con-inner {
  z-index: 3;
}
.bgbog_points_r {
  position: relative;
}
.bgbog_points_r:after {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  height: 100% !important;
  width: 100% !important;
  top: 0% !important;
  right: 0% !important;
  z-index: 1;
  opacity: 0.5 !important;
  background-color: #EDF0F0;
  mask-image: url("/wp-content/uploads/2025/05/picto-trema-logo.svg");
  mask-size: 50%;
  mask-position: 100% 0%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-trema-logo.svg");
  -webkit-mask-size: 50%;
  -webkit-mask-position: 100% 0%;
  -webkit-mask-repeat: no-repeat;
}
.bgbog_points_r > .e-con-inner {
  z-index: 3;
}
/******************************
* Liste
******************************/
.liste_puce_1 ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.liste_puce_1 ul li {
  padding-left: 15px;
  position: relative;
}
.liste_puce_1 ul li:before {
  content: "";
  position: absolute;
  display: block;
  height: 6px;
  width: 6px;
  border-radius: 50%;
  top: 10px;
  left: 0%;
  background-color: #0A4A4A;
}
.liste_puce_2 ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.liste_puce_2 ul li {
  padding-left: 25px;
  margin-bottom: 6px;
  position: relative;
}
.liste_puce_2 ul li:before {
  content: "";
  position: absolute;
  display: block;
  height: 15px;
  width: 15px;
  top: 2px;
  left: 0%;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-fleche-cta.svg");
  mask-size: 15px;
  mask-position: 0% 0%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-fleche-cta.svg");
  -webkit-mask-size: 15px;
  -webkit-mask-position: 0% 0%;
  -webkit-mask-repeat: no-repeat;
}
.liste_puce_3 ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
.liste_puce_3 ul li {
  padding: 10px 0px 10px 25px;
  margin-bottom: 6px;
  position: relative;
}
.liste_puce_3 ul li:before {
  content: "";
  position: absolute;
  display: block;
  height: 30px;
  width: 15px;
  top: 2px;
  left: 0%;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 15px 100%;
  mask-position: 0% 0%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 15px 100%;
  -webkit-mask-position: 0% 0%;
  -webkit-mask-repeat: no-repeat;
}
.reassurance_icon .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-title {
  color: #0A4A4A;
  font-size: 15px;
  font-weight: 600 !important;
  text-transform: uppercase;
}
.reassurance_icon .elementor-icon-box-wrapper .elementor-icon-box-content .elementor-icon-box-description {
  font-size: 13px;
}
/******************************
* hero / ban home
******************************/
.ban_home {
  position: relative;
  min-height: 300px !important;
  background-color: #0A4A4A;
  color: #ffffff;
  border-radius: 0px 0px 4vw 4vw !important;
  overflow: hidden;
  position: relative;
}
.ban_home:before {
  content: "" !important;
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0.05 !important;
  background-color: #EDF0F0;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 250%;
  mask-position: 50% 14%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 250%;
  -webkit-mask-position: 50% 14%;
  -webkit-mask-repeat: no-repeat;
}
.ban_home > .e-con-inner {
  z-index: 2;
}
.ban_home .ban_img {
  border-radius: 45px 45px 0px 0px;
  overflow: hidden;
}
.ban_home .ban_img img {
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
  width: 100%;
  height: 100%;
  -o-object-position: 50% 50%;
  object-position: 50% 50%;
  font-family: "object-fit: cover; object-position: 50% 50%";
  width: 100%;
  height: 100%;
  display: block;
}
.ban_home .ban_sup_titre {
  font-size: calc(16px + (18 - 16) * ((100vw - 300px) / (2560 - 300)));
  text-transform: uppercase;
  color: #ffffff;
}
.ban_home .ban_titre {
  color: #ffffff;
  font-weight: 300;
  font-size: calc(30px + (50 - 30) * ((100vw - 300px) / (2560 - 300)));
}
.ban_home .ban_titre .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  .ban_home .ban_titre .elementor-heading-title {
    width: auto;
  }
}
.ban_home .ban_titre strong {
  font-weight: 600;
}
.ban_home .ban_titre span {
  color: #ffffff;
  font-weight: 600;
}
.ban_home .breadcrumbs {
  color: #ffffff;
}
.ban_home .breadcrumbs a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_home .breadcrumbs a:hover {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
/************************
* Page divers
*************************/
.ban_inte {
  position: relative;
  min-height: 300px !important;
  position: relative;
}
.ban_inte:after {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  height: 1080px !important;
  width: 1080px !important;
  top: 0% !important;
  right: 0% !important;
  z-index: 1;
  opacity: 0.5 !important;
  background-color: #EDF0F0;
  mask-image: url("/wp-content/uploads/2025/05/picto-trema-logo.svg");
  mask-size: 100%;
  mask-position: 100% 0%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-trema-logo.svg");
  -webkit-mask-size: 100%;
  -webkit-mask-position: 100% 0%;
  -webkit-mask-repeat: no-repeat;
}
@media screen and (max-width: 960px) {
  .ban_inte:after {
    height: 100% !important;
    width: 100vw !important;
  }
}
.ban_inte > .e-con-inner {
  z-index: 3;
}
.ban_inte .ban_titre {
  position: relative;
  font-size: calc(30px + (50 - 30) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 300;
  position: relative;
  padding-top: 60px !important;
}
.ban_inte .ban_titre::before {
  content: "";
  position: absolute;
  display: block;
  height: 50px;
  width: 45px;
  top: 0%;
  left: 50%;
  transform: translateX(-50%);
  mask-position: 50% 50%;
  -webkit-mask-position: 50% 50%;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
}
.ban_inte .ban_titre .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 960px) {
  .ban_inte .ban_titre br {
    display: none;
  }
}
.ban_inte .ban_titre strong, .ban_inte .ban_titre b {
  font-weight: 600;
}
.ban_inte .ban_titre span {
  color: #0A4A4A;
  font-weight: 600;
}
.ban_inte .breadcrumbs {
  background-color: #39C749;
  color: #ffffff;
  position: absolute;
  width: 100%;
  top: 0px;
  left: 0px;
  text-transform: uppercase;
}
.ban_inte .breadcrumbs a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_inte .breadcrumbs a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.ban_inte_2 {
  position: relative;
  min-height: 300px !important;
  position: relative;
}
.ban_inte_2 > .e-con-inner {
  z-index: 3;
}
.ban_inte_2 .ban_titre {
  position: relative;
  font-size: calc(28px + (44 - 28) * ((100vw - 300px) / (2560 - 300)));
  color: #ffffff;
  font-weight: 300;
  position: relative;
  padding-top: 60px !important;
}
.ban_inte_2 .ban_titre::before {
  content: "";
  position: absolute;
  display: block;
  height: 50px;
  width: 45px;
  top: 0%;
  left: 50%;
  transform: translateX(-50%);
  mask-position: 50% 50%;
  -webkit-mask-position: 50% 50%;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
}
.ban_inte_2 .ban_titre .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 960px) {
  .ban_inte_2 .ban_titre br {
    display: none;
  }
}
.ban_inte_2 .ban_titre strong, .ban_inte_2 .ban_titre b {
  font-weight: 600;
}
.ban_inte_2 .ban_titre span {
  color: #ffffff;
  font-weight: 600;
}
.ban_inte_2 .breadcrumbs {
  background-color: #39C749;
  color: #ffffff;
  position: absolute;
  width: 100%;
  top: 0px;
  left: 0px;
  text-transform: uppercase;
}
.ban_inte_2 .breadcrumbs a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_inte_2 .breadcrumbs a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.ban_projet {
  position: relative;
  min-height: 300px !important;
  position: relative;
}
.ban_projet:before {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  height: 85% !important;
  width: 400px !important;
  top: 100% !important;
  left: 100% !important;
  transform: translateX(-100%) translateY(-100%);
  z-index: 1;
  opacity: 1 !important;
  background-color: #EDF0F0;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-position: 100% 0%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-position: 100% 0%;
  -webkit-mask-repeat: no-repeat;
}
.ban_projet > .e-con-inner {
  z-index: 3;
}
.ban_projet .ban_img {
  border-radius: 45px;
  overflow: hidden;
  box-shadow: 0px 0px 10px 0px rgba(53, 48, 45, 0.25) !important;
}
.ban_projet .ban_icon {
  height: 50px;
  width: 50px;
  border-radius: 50%;
  overflow: hidden;
  position: absolute;
  top: 30px;
  left: 30px;
  z-index: 2;
  background-color: #39C749;
  display: flex;
  justify-content: center;
  align-items: center;
}
.ban_projet .ban_icon svg {
  height: 30px;
  width: 30px;
  fill: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_projet .ban_sub_titre {
  font-size: calc(22px + (25 - 22) * ((100vw - 300px) / (2560 - 300)));
}
.ban_projet .ban_accroche {
  font-size: calc(18px + (22 - 18) * ((100vw - 300px) / (2560 - 300)));
}
.ban_projet .ban_titre {
  position: relative;
  font-size: calc(22px + (38 - 22) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 300;
  position: relative;
  padding-top: 60px !important;
}
.ban_projet .ban_titre::before {
  content: "";
  position: absolute;
  display: block;
  height: 50px;
  width: 45px;
  top: 0%;
  left: 0%;
  transform: translateX(0%);
  mask-position: -12px 50%;
  -webkit-mask-position: -12px 50%;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
}
.ban_projet .ban_titre .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 960px) {
  .ban_projet .ban_titre br {
    display: none;
  }
}
.ban_projet .ban_titre strong, .ban_projet .ban_titre b {
  font-weight: 600;
}
.ban_projet .ban_titre span {
  color: #0A4A4A;
  font-weight: 600;
}
.ban_projet .breadcrumbs {
  background-color: #39C749;
  color: #ffffff;
  position: absolute;
  width: 100%;
  top: 0px;
  left: 0px;
  text-transform: uppercase;
}
.ban_projet .breadcrumbs a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_projet .breadcrumbs a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
/************************
* Page projet tableau
*************************/
.project-info-table {
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-family: "Segoe UI", sans-serif;
  font-size: 1rem;
  border-radius: 15px;
  overflow: hidden;
}
.project-info-table .table-row {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
}
.project-info-table .table-row .cell {
  flex: 1 1 45%;
  padding: 15px 10px;
  min-height: 40px;
  background-color: #0A4A4A;
  color: #ffffff;
}
.project-info-table .table-row .cell.light {
  background-color: rgba(57, 199, 73, 0.3);
  color: #0A4A4A;
}
.project-info-table .table-row .cell.label {
  font-weight: bold;
}
@media screen and (max-width: 600px) {
  .project-info-table .table-row {
    flex-direction: column;
  }
  .project-info-table .table-row .cell {
    flex: 1 1 100%;
  }
}
.bloc_cta_1 {
  background-color: #39C749;
  color: #ffffff;
  border-radius: 2vw !important;
}
.bloc_cta_1 .titre {
  font-size: calc(22px + (30 - 22) * ((100vw - 300px) / (2560 - 300)));
  font-weight: 400;
}
.bloc_cta_1 .titre span {
  text-transform: uppercase;
  font-weight: 600;
}
/************************
* * Page subventions tableau
*************************/
.table-scroll-wrapper {
  width: 100%;
}
@media (max-width: 1080px) {
  .table-scroll-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-scroll-wrapper table {
    min-width: 1080px;
  }
}
.prime-renov-table {
  width: 100%;
  border-collapse: collapse;
  font-family: "Arial", sans-serif;
  text-align: center;
}
.prime-renov-table thead {
  background-color: #003d3c;
  color: white;
}
.prime-renov-table thead th {
  padding: 1rem;
  font-size: 0.95rem;
  line-height: 1.4;
}
.prime-renov-table thead th span {
  display: block;
  font-weight: bold;
}
.prime-renov-table thead th .bleu {
  color: #0089c2;
}
.prime-renov-table thead th .jaune {
  color: #ffcc00;
}
.prime-renov-table thead th .violet {
  color: #b13d9f;
}
.prime-renov-table thead th .rose {
  color: #e06c9f;
}
.prime-renov-table tbody tr:nth-child(even) {
  background-color: #f6fef8;
}
.prime-renov-table tbody tr:nth-child(odd) {
  background-color: #ffffff;
}
.prime-renov-table tbody td {
  padding: 0.9rem;
  border: 1px solid #dce4dd;
}
.prime-renov-table tbody .rose-note {
  font-weight: bold;
  color: #003d3c;
  background-color: #eaf5ec;
  font-size: 0.95rem;
  line-height: 1.4;
}
@media (max-width: 768px) {
  .prime-renov-table {
    font-size: 0.8rem;
  }
  .prime-renov-table th, .prime-renov-table td {
    padding: 0.5rem;
  }
}
/************************
* Les box
*************************/
.boxicon_link_1 .elementor-icon-box-title {
  font-weight: 600;
  font-size: 22px;
  line-height: 1.2;
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.boxicon_link_1 .elementor-icon-box-wrapper {
  position: relative;
  padding-right: 40px;
  width: fit-content;
}
.boxicon_link_1 .elementor-icon-box-wrapper:before {
  content: "";
  position: absolute;
  top: 0;
  right: 30px;
  display: block;
  height: 100%;
  width: 2px;
  background-color: #39C749;
}
.boxicon_link_1 .elementor-icon-box-wrapper:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0px;
  display: block;
  height: 20px;
  width: 20px;
  transform: translateY(-50%) rotate(0deg);
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-fleche-cta.svg");
  mask-size: 100%;
  mask-repeat: no-repeat;
  mask-position: 50% 50%;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-fleche-cta.svg");
  -webkit-mask-size: 100%;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: 50% 50%;
  transition: all 0.3s ease-in-out !important;
}
.boxicon_link_1:hover .elementor-icon-box-title {
  color: #3DAB36;
}
.boxicon_link_1:hover .elementor-icon-box-wrapper:after {
  transform: translateY(-50%) rotate(180deg);
}
.box_spe_1 {
  border-radius: 2vw !important;
  overflow: hidden !important;
  z-index: 2;
  box-shadow: 0px 0px 10px 0px rgba(53, 48, 45, 0.25) !important;
  transition: all 0.3s ease-in-out !important;
}
.box_spe_1 .box_img {
  overflow: hidden;
  height: 100%;
}
.box_spe_1 .box_img img {
  transition: all 1s ease-in-out;
  transform: scale(1);
}
.box_spe_1 .box_content {
  background: linear-gradient(0deg, #aeff76 0%, #0A4A4A 100%);
  padding-bottom: 90px !important;
  position: relative;
}
@media screen and (min-width: 768px) {
  .box_spe_1 .box_content {
    height: 100%;
  }
}
.box_spe_1 .box_content .box_titre {
  position: relative;
  font-size: calc(20px + (22 - 20) * ((100vw - 300px) / (2560 - 300)));
  color: #ffffff;
  font-weight: 400;
}
.box_spe_1 .box_content .box_titre .elementor-heading-title {
  line-height: 1.4;
}
.box_spe_1 .box_content .box_titre strong, .box_spe_1 .box_content .box_titre b {
  font-weight: 600;
}
.box_spe_1 .box_content .box_titre span {
  color: #AEFF76;
  font-size: calc(30px + (40 - 30) * ((100vw - 300px) / (2560 - 300)));
  font-weight: 600;
}
.box_spe_1 .box_content .box_desc {
  color: #ffffff;
  font-size: 15px;
}
.box_spe_1 .box_content .box_icon {
  position: absolute;
  bottom: 2rem;
  left: calc(100% - 74px);
  transition: all 0.3s ease-in-out !important;
  transform: rotate(0deg);
}
.box_spe_1 .box_content .box_icon svg {
  height: 50px;
  width: 50px;
  fill: #ffffff !important;
  transition: all 0.3s ease-in-out !important;
}
.box_spe_1:hover .box_img img {
  transition: all 2s ease-in-out;
  transform: scale(1.3);
}
.box_spe_1:hover .box_content .box_icon {
  left: calc(50% - 25px);
  transition: all 0.3s ease-in-out;
  transform: rotate(45deg);
}
.box_spe_1:hover .box_content .box_icon svg {
  fill: #0A4A4A !important;
}
.box_spe_2 {
  border-radius: 2vw !important;
  overflow: hidden !important;
  z-index: 2;
  box-shadow: 0px 0px 10px 0px rgba(53, 48, 45, 0.25) !important;
  background: linear-gradient(0deg, #aeff76 0%, #0A4A4A 100%);
  transition: all 0.3s ease-in-out !important;
}
.box_spe_2 .box_content {
  position: relative;
}
.box_spe_2 .box_content .box_titre {
  position: relative;
  font-size: calc(30px + (40 - 30) * ((100vw - 300px) / (2560 - 300)));
  color: #ffffff;
  font-weight: 600;
}
.box_spe_2 .box_content .box_titre .elementor-heading-title {
  line-height: 1.4;
}
.box_spe_2 .box_content .box_titre span {
  color: #AEFF76;
  font-weight: 600;
}
.box_spe_2 .box_content .box_desc {
  color: #ffffff;
  font-size: 18px;
}
.box_spe_2 .box_content .box_img {
  overflow: hidden;
  height: 200px;
  width: 80%;
}
.box_spe_2 .box_content .box_icon {
  position: absolute;
  bottom: 2rem;
  left: calc(100% - 74px);
  transition: all 0.3s ease-in-out !important;
  transform: rotate(0deg);
}
.box_spe_2 .box_content .box_icon svg {
  height: 50px;
  width: 50px;
  fill: #ffffff !important;
  transition: all 0.3s ease-in-out !important;
}
.box_spe_2:hover .box_img img {
  transition: all 2s ease-in-out;
  transform: scale(1.3);
}
.box_spe_2:hover .box_content .box_icon {
  transition: all 0.3s ease-in-out !important;
  transform: rotate(45deg);
}
.box_spe_2:hover .box_content .box_icon svg {
  fill: #0A4A4A !important;
}
.box_spe_3 {
  border-radius: 2vw !important;
  overflow: hidden !important;
  z-index: 2;
  box-shadow: 0px 0px 10px 0px rgba(53, 48, 45, 0.25) !important;
  background: linear-gradient(0deg, #aeff76 0%, #0A4A4A 100%);
  transition: all 0.3s ease-in-out !important;
}
.box_spe_3 .box_titre {
  position: relative;
  font-size: calc(28px + (36 - 28) * ((100vw - 300px) / (2560 - 300)));
  color: #ffffff;
  font-weight: 600;
}
.box_spe_3 .box_titre .elementor-heading-title {
  line-height: 1.2;
}
.box_spe_3 .box_titre span {
  color: #AEFF76;
  font-weight: 600;
}
.box_spe_3 .box_desc {
  color: #ffffff;
  font-size: 18px;
}
.box_spe_3 .box_prix {
  position: relative;
  font-size: calc(28px + (35 - 28) * ((100vw - 300px) / (2560 - 300)));
  color: #ffffff;
  font-weight: 600;
}
.box_spe_3 .box_info {
  color: #0A4A4A;
  font-size: 14px;
  width: 80%;
}
.box_spe_3 .box_picto svg {
  height: 100px;
  width: 100px;
  fill: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.box_spe_3:hover .box_img img {
  transition: all 2s ease-in-out;
  transform: scale(1.3);
}
.box_spe_3:hover .box_content .box_icon {
  transition: all 0.3s ease-in-out !important;
  transform: rotate(45deg);
}
.box_spe_3:hover .box_content .box_icon svg {
  fill: #0A4A4A !important;
}
.box_pdt_1 {
  border-radius: 2vw !important;
  overflow: hidden !important;
  z-index: 2;
  box-shadow: 0px 0px 10px 0px rgba(53, 48, 45, 0.25) !important;
  background-color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
  height: 100% !important;
  display: block;
}
.box_pdt_1 .box_img {
  display: block;
}
.box_pdt_1 .box_content {
  display: block;
}
@media screen and (min-width: 768px) {
  .box_pdt_1 .box_content {
    height: 100%;
  }
}
.box_pdt_1 .box_titre {
  position: relative;
  font-size: calc(28px + (36 - 28) * ((100vw - 300px) / (2560 - 300)));
  color: #ffffff;
  font-weight: 600;
}
.box_pdt_1 .box_titre .elementor-heading-title {
  line-height: 1.2;
}
.box_pdt_1 .box_titre span {
  color: #AEFF76;
  font-weight: 600;
}
.box_pdt_1 .box_desc {
  color: #ffffff;
  font-size: 18px;
}
.box_pdt_1 .box_prix {
  position: relative;
  font-size: calc(28px + (35 - 28) * ((100vw - 300px) / (2560 - 300)));
  color: #ffffff;
  font-weight: 600;
}
.box_pdt_1 .box_info {
  color: #0A4A4A;
  font-size: 14px;
  width: 80%;
}
.box_pdt_1 .box_picto svg {
  height: 100px;
  width: 100px;
  fill: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.box_pdt_1:hover .box_img img {
  transition: all 2s ease-in-out;
  transform: scale(1.3);
}
.box_pdt_1:hover .box_content .box_icon {
  transition: all 0.3s ease-in-out !important;
  transform: rotate(45deg);
}
.box_pdt_1:hover .box_content .box_icon svg {
  fill: #0A4A4A !important;
}
.box_prime {
  border-radius: 2vw !important;
  overflow: hidden !important;
  box-shadow: 0px 0px 10px 0px rgba(53, 48, 45, 0.25) !important;
}
.box_prime .prime_titre {
  position: relative;
  font-size: calc(22px + (28 - 22) * ((100vw - 300px) / (2560 - 300)));
  font-weight: 600;
  text-transform: uppercase;
}
.box_prime .prime_titre .elementor-heading-title {
  line-height: 1.2 !important;
}
.box_prime .prime_prc {
  position: relative;
  font-size: calc(30px + (40 - 30) * ((100vw - 300px) / (2560 - 300)));
  font-weight: 600;
}
.box_prime .prime_prc .elementor-heading-title {
  line-height: 1.4;
}
.box_prime .prime_prix {
  position: relative;
  font-size: calc(18px + (22 - 18) * ((100vw - 300px) / (2560 - 300)));
  font-weight: 600;
}
.box_prime .prime_prix .elementor-heading-title {
  line-height: 1.4;
}
.box_argu_1 {
  position: relative;
  border-radius: 1.5vw !important;
  padding: 2vw !important;
  overflow: hidden;
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.15) !important;
  background-color: #ffffff;
  margin: 30px !important;
}
.box_argu_1 .box_titre {
  position: relative;
  font-size: calc(26px + (30 - 26) * ((100vw - 300px) / (2560 - 300)));
  color: #39C749;
  font-weight: 600;
}
/************************
* Page contact
*************************/
.ban_contact {
  position: relative;
  min-height: 300px !important;
  position: relative;
  background-color: #F2F2F2;
}
.ban_contact:before {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  height: 85% !important;
  width: 400px !important;
  top: 100% !important;
  left: 100% !important;
  transform: translateX(-100%) translateY(-100%);
  z-index: 1;
  opacity: 1 !important;
  background-color: #EDF0F0;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-position: 100% 0%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-position: 100% 0%;
  -webkit-mask-repeat: no-repeat;
}
.ban_contact > .e-con-inner {
  z-index: 3;
}
.ban_contact .ban_img {
  border-radius: 45px;
  overflow: hidden;
}
.ban_contact .ban_icon {
  height: 50px;
  width: 50px;
  border-radius: 50%;
  overflow: hidden;
  position: absolute;
  top: 30px;
  left: 30px;
  z-index: 2;
  background-color: #39C749;
  display: flex;
  justify-content: center;
  align-items: center;
}
.ban_contact .ban_icon svg {
  height: 30px;
  width: 30px;
  fill: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_contact .ban_sub_titre {
  font-size: calc(22px + (25 - 22) * ((100vw - 300px) / (2560 - 300)));
}
.ban_contact .ban_accroche {
  font-size: calc(18px + (22 - 18) * ((100vw - 300px) / (2560 - 300)));
}
.ban_contact .ban_titre {
  position: relative;
  font-size: calc(22px + (38 - 22) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 300;
  position: relative;
  padding-top: 60px !important;
}
.ban_contact .ban_titre::before {
  content: "";
  position: absolute;
  display: block;
  height: 50px;
  width: 45px;
  top: 0%;
  left: 50%;
  transform: translateX(-50%);
  mask-position: 50% 50%;
  -webkit-mask-position: 50% 50%;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
}
.ban_contact .ban_titre .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 960px) {
  .ban_contact .ban_titre br {
    display: none;
  }
}
.ban_contact .ban_titre strong, .ban_contact .ban_titre b {
  font-weight: 600;
}
.ban_contact .ban_titre span {
  color: #0A4A4A;
  font-weight: 600;
}
.ban_contact .breadcrumbs {
  background-color: #39C749;
  color: #ffffff;
  position: absolute;
  width: 100%;
  top: 0px;
  left: 0px;
  text-transform: uppercase;
}
.ban_contact .breadcrumbs a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_contact .breadcrumbs a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
/************************
* Page de résultat de recherche
*************************/
.search_result_bloc {
  padding: 2rem 0rem;
}
/************************
* Page archive
*************************/
/*****************************************************************************************************************************
  * swiper
******************************************************************************************************************************/
.elementor-swiper-button {
  text-align: center;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease-in-out !important;
  background-color: #ffffff;
  height: 40px;
  width: 40px;
  border-radius: 50%;
  box-shadow: 1px 1px 4px 2px rgba(53, 48, 45, 0.25);
}
.elementor-swiper-button svg {
  fill: #0A4A4A !important;
  width: 40px !important;
  height: 14px !important;
  transition: all 0.3s ease-in-out !important;
}
.elementor-swiper-button:hover {
  transition: all 0.3s ease-in-out !important;
}
.elementor-swiper-button:hover svg {
  fill: #0A4A4A !important;
  transition: all 0.3s ease-in-out !important;
}
.elementor-swiper-button.swiper-button-lock {
  display: none !important;
}
/*****************************************************************************************************************************
  * pagination
******************************************************************************************************************************/
.elementor-post-navigation .elementor-post-navigation__prev a, .elementor-post-navigation .elementor-post-navigation__next a {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.elementor-post-navigation .elementor-post-navigation__prev a:hover, .elementor-post-navigation .elementor-post-navigation__next a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.elementor-post-navigation .post-navigation__arrow-prev i, .elementor-post-navigation .post-navigation__arrow-next i {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.elementor-post-navigation .post-navigation__arrow-prev i:hover, .elementor-post-navigation .post-navigation__arrow-next i:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.elementor-pagination {
  padding: 3rem 1rem;
}
.elementor-pagination .page-numbers {
  background-color: #ffffff;
  color: #0A4A4A;
  width: 36px;
  height: 36px;
  display: inline-block;
  border: 1px solid #EDF0F0;
  border-radius: 25px;
  padding: 5px 10px;
  font-size: 14px;
  line-height: 1.8;
}
.elementor-pagination .prev, .elementor-pagination .next {
  padding: 5px 10px;
  width: auto;
}
.elementor-pagination a.page-numbers {
  transition: all 0.3s ease-in-out !important;
}
.elementor-pagination a.page-numbers:hover {
  background-color: #0A4A4A !important;
  color: #ffffff !important;
  transition: all 0.3s ease-in-out !important;
  border: 1px solid #0A4A4A;
}
.elementor-pagination .current {
  background-color: #0A4A4A !important;
  color: #ffffff !important;
  border: 1px solid #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
/*****************************************************************************************************************************
  * loop
******************************************************************************************************************************/
/************************
  * loop projets
*************************/
.loop_projet {
  position: relative;
  padding: 8px !important;
}
.loop_projet > .e-con-inner {
  border: 1px solid #ffffff;
  background-color: #ffffff;
  border-radius: 2vw;
  overflow: hidden;
  z-index: 2;
  box-shadow: 0px 0px 10px 0px rgba(53, 48, 45, 0.25);
  transition: all 0.3s ease-in-out !important;
}
.loop_projet .loop_img {
  overflow: hidden;
  position: relative;
}
.loop_projet .loop_img img {
  transition: all 1s ease-in-out;
  transform: scale(1);
}
.loop_projet .loop_img .loop_picto {
  position: absolute;
  bottom: 0px;
  left: 50%;
  transform: translateX(-50%);
  background-color: #ffffff;
  border-radius: 50px 50px 0px 0px;
  height: 74px;
  width: 90px;
  padding: 10px 10px 0px 10px;
}
.loop_projet .loop_img .loop_picto svg {
  width: 75%;
  height: auto;
  margin-top: 12px;
}
.loop_projet .loop_content .loop_cat {
  color: #39C749 !important;
  font-size: 15px !important;
  text-transform: uppercase;
  font-weight: 600;
  line-height: 1.2 !important;
  transition: all 0.3s ease-in-out !important;
}
.loop_projet .loop_content .loop_titre a {
  color: #0A4A4A !important;
  font-size: calc(22px + (25 - 22) * ((100vw - 300px) / (2560 - 300))) !important;
  font-weight: 600;
  line-height: 1 !important;
  transition: all 0.3s ease-in-out !important;
}
.loop_projet .loop_content .loop_desc {
  color: #0A4A4A;
  font-size: 14px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.4;
}
.loop_projet .loop_btn {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
}
.loop_projet .loop_btn .elementor-button-link {
  background-color: transparent;
  color: #0A4A4A;
  font-size: 14px;
  padding: 0px 0px;
  font-weight: 600;
  border: 0px solid #0A4A4A;
  transition: all 0.3s ease-in-out !important;
  text-transform: uppercase;
}
.loop_projet .loop_btn .elementor-button-link .elementor-button-content-wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: stretch;
}
.loop_projet .loop_btn .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
  height: 18px;
  width: 40px;
  fill: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.loop_projet .loop_btn .elementor-button-link:visited, .loop_projet .loop_btn .elementor-button-link:focus {
  color: #0A4A4A;
}
.loop_projet .loop_btn .elementor-button-link:visited svg, .loop_projet .loop_btn .elementor-button-link:focus svg {
  fill: #0A4A4A;
}
.loop_projet .loop_btn .elementor-button-link:hover {
  transition: all 0.3s ease-in-out !important;
  color: #39C749;
}
.loop_projet .loop_btn .elementor-button-link:hover .elementor-button-content-wrapper .elementor-button-icon svg {
  fill: #39C749 !important;
  transition: all 0.3s ease-in-out !important;
}
.loop_projet:hover > .e-con-inner {
  transition: all 0.3s ease-in-out !important;
  border: 1px solid #39C749;
}
.loop_projet:hover .loop_img img {
  transition: all 2s ease-in-out;
  transform: scale(1.3);
}
.loop_projet:hover .loop_titre {
  transition: all 0.3s ease-in-out !important;
}
.loop_projet:hover .loop_titre a {
  color: #3DAB36 !important;
  transition: all 0.3s ease-in-out !important;
}
.loop_projet:hover .btn_blog .elementor-button-link {
  background-color: #3DAB36;
  transition: all 0.3s ease-in-out !important;
}
/************************
  * loop actu
*************************/
.loop_actu {
  position: relative;
  padding: 8px !important;
}
.loop_actu > .e-con-inner {
  border: 0px solid transparent;
  background-color: #ffffff;
  z-index: 2;
  box-shadow: 0px 0px 10px 0px rgba(53, 48, 45, 0.25) !important;
  transition: all 0.3s ease-in-out !important;
}
.loop_actu .filtre_articles_name {
  position: absolute;
  top: 15px;
  right: 15px;
  background-color: #3DAB36;
  color: #0A4A4A;
  border-radius: 48px;
  padding: 4px 8px;
  font-weight: 600;
  font-size: 12px;
}
.loop_actu .loop_img {
  overflow: hidden;
}
.loop_actu .loop_img img {
  transition: all 1s ease-in-out;
  transform: scale(1);
}
.loop_actu .loop_content .loop_date {
  font-size: 12px;
  font-weight: 500;
  background-color: #3DAB36;
  color: #0A4A4A;
  border-radius: 48px;
  padding: 4px 8px;
}
.loop_actu .loop_content .loop_titre {
  color: #0A4A4A !important;
  font-size: calc(20px + (22 - 20) * ((100vw - 300px) / (2560 - 300))) !important;
  font-family: "Poppins", sans-serif;
  font-weight: 500;
  line-height: 1 !important;
  transition: all 0.3s ease-in-out !important;
}
.loop_actu .loop_content .loop_desc {
  color: #0A4A4A;
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 1.2;
}
.loop_actu .loop_content .loop_icon {
  position: absolute;
  bottom: 1rem;
  left: calc(100% - 74px);
  transition: all 0.3s ease-in-out !important;
  transform: rotate(0deg);
}
.loop_actu .loop_content .loop_icon svg {
  height: 50px;
  width: 50px;
  transition: all 0.3s ease-in-out !important;
}
.loop_actu:hover > .e-con-inner {
  transition: all 0.3s ease-in-out !important;
}
.loop_actu:hover .loop_img img {
  transition: all 2s ease-in-out;
  transform: scale(1.3);
}
.loop_actu:hover .loop_titre {
  color: #3DAB36 !important;
  transition: all 0.3s ease-in-out !important;
}
.loop_actu:hover .loop_icon {
  transition: all 0.3s ease-in-out !important;
  transform: rotate(45deg);
}
.loop_actu:hover .loop_icon svg {
  fill: #0A4A4A !important;
}
/************************
  * Page archives
*************************/
.ban_archive {
  position: relative;
  min-height: 300px !important;
  position: relative;
}
.ban_archive:after {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  height: 1080px !important;
  width: 1080px !important;
  top: 0% !important;
  right: 0% !important;
  z-index: 1;
  opacity: 0.5 !important;
  background-color: #EDF0F0;
  mask-image: url("/wp-content/uploads/2025/05/picto-trema-logo.svg");
  mask-size: 100%;
  mask-position: 100% 0%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-trema-logo.svg");
  -webkit-mask-size: 100%;
  -webkit-mask-position: 100% 0%;
  -webkit-mask-repeat: no-repeat;
}
@media screen and (max-width: 960px) {
  .ban_archive:after {
    height: 100% !important;
    width: 100vw !important;
  }
}
.ban_archive > .e-con-inner {
  z-index: 3;
}
.ban_archive .ban_titre {
  position: relative;
  font-size: calc(30px + (50 - 30) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 300;
  position: relative;
  padding-top: 60px !important;
}
.ban_archive .ban_titre::before {
  content: "";
  position: absolute;
  display: block;
  height: 50px;
  width: 45px;
  top: 0%;
  left: 50%;
  transform: translateX(-50%);
  mask-position: 50% 50%;
  -webkit-mask-position: 50% 50%;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
}
.ban_archive .ban_titre .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 960px) {
  .ban_archive .ban_titre br {
    display: none;
  }
}
.ban_archive .ban_titre strong, .ban_archive .ban_titre b {
  font-weight: 600;
}
.ban_archive .ban_titre span {
  color: #0A4A4A;
  font-weight: 600;
}
.ban_archive .breadcrumbs {
  background-color: #39C749;
  color: #ffffff;
  position: absolute;
  width: 100%;
  top: 0px;
  left: 0px;
  text-transform: uppercase;
}
.ban_archive .breadcrumbs a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_archive .breadcrumbs a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
/************************
  * Page articles
*************************/
.ban_actu {
  position: relative;
  min-height: 300px !important;
  position: relative;
  position: relative;
}
.ban_actu:after {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  height: 1080px !important;
  width: 1080px !important;
  top: 0% !important;
  right: 0% !important;
  z-index: 1;
  opacity: 0.5 !important;
  background-color: #EDF0F0;
  mask-image: url("/wp-content/uploads/2025/05/picto-trema-logo.svg");
  mask-size: 100%;
  mask-position: 100% 0%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-trema-logo.svg");
  -webkit-mask-size: 100%;
  -webkit-mask-position: 100% 0%;
  -webkit-mask-repeat: no-repeat;
}
@media screen and (max-width: 960px) {
  .ban_actu:after {
    height: 100% !important;
    width: 100vw !important;
  }
}
.ban_actu > .e-con-inner {
  z-index: 3;
}
.ban_actu .ban_img {
  border-radius: 0px 45px 45px 0px;
  overflow: hidden;
  box-shadow: 0px 0px 10px 0px rgba(53, 48, 45, 0.25) !important;
}
.ban_actu .ban_icon {
  height: 50px;
  width: 50px;
  border-radius: 50%;
  overflow: hidden;
  position: absolute;
  top: 30px;
  left: 30px;
  z-index: 2;
  background-color: #39C749;
  display: flex;
  justify-content: center;
  align-items: center;
}
.ban_actu .ban_icon svg {
  height: 30px;
  width: 30px;
  fill: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_actu .ban_sub_titre {
  font-size: calc(22px + (25 - 22) * ((100vw - 300px) / (2560 - 300)));
}
.ban_actu .ban_accroche {
  font-size: calc(18px + (22 - 18) * ((100vw - 300px) / (2560 - 300)));
}
.ban_actu .ban_titre {
  position: relative;
  font-size: calc(22px + (38 - 22) * ((100vw - 300px) / (2560 - 300)));
  color: #0A4A4A;
  font-weight: 300;
  position: relative;
  padding-top: 60px !important;
}
.ban_actu .ban_titre::before {
  content: "";
  position: absolute;
  display: block;
  height: 50px;
  width: 45px;
  top: 0%;
  left: 0%;
  transform: translateX(0%);
  mask-position: -12px 50%;
  -webkit-mask-position: -12px 50%;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
}
.ban_actu .ban_titre .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 960px) {
  .ban_actu .ban_titre br {
    display: none;
  }
}
.ban_actu .ban_titre strong, .ban_actu .ban_titre b {
  font-weight: 600;
}
.ban_actu .ban_titre span {
  color: #0A4A4A;
  font-weight: 600;
}
.ban_actu .breadcrumbs {
  background-color: #39C749;
  color: #ffffff;
  position: absolute;
  width: 100%;
  top: 0px;
  left: 0px;
  text-transform: uppercase;
}
.ban_actu .breadcrumbs a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_actu .breadcrumbs a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
/*****************************************************************************************************************************
  * woocommerce
******************************************************************************************************************************/
.ban_cat {
  position: relative;
  min-height: 300px !important;
  background-color: #0A4A4A;
  color: #ffffff;
  border-radius: 0px 0px 4vw 4vw !important;
  overflow: hidden;
  position: relative;
}
.ban_cat:before {
  content: "" !important;
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0.05 !important;
  background-color: #EDF0F0;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 400%;
  mask-position: 50% 4%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 400%;
  -webkit-mask-position: 50% 4%;
  -webkit-mask-repeat: no-repeat;
}
.ban_cat > .e-con-inner {
  z-index: 2;
}
.ban_cat .ban_titre {
  position: relative;
  font-size: calc(30px + (50 - 30) * ((100vw - 300px) / (2560 - 300)));
  color: #ffffff;
  font-weight: 300;
  position: relative;
  padding-top: 60px !important;
}
.ban_cat .ban_titre:before {
  content: "";
  position: absolute;
  display: block;
  height: 50px;
  width: 45px;
  top: 0%;
  left: 50%;
  transform: translateX(-50%);
  mask-position: 50% 50%;
  -webkit-mask-position: 50% 50%;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-image: url("/wp-content/uploads/2025/05/picto-okofen.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
}
.ban_cat .ban_titre .elementor-heading-title {
  line-height: 1.2;
}
@media screen and (max-width: 960px) {
  .ban_cat .ban_titre br {
    display: none;
  }
}
.ban_cat .ban_titre strong, .ban_cat .ban_titre b {
  font-weight: 600;
}
.ban_cat .ban_titre span {
  color: #ffffff;
  font-weight: 600;
}
.ban_cat .breadcrumbs {
  background-color: #39C749;
  color: #ffffff;
  position: absolute;
  width: 100%;
  top: 0px;
  left: 0px;
  text-transform: uppercase;
}
.ban_cat .breadcrumbs a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.ban_cat .breadcrumbs a:hover {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.box_pdt_1 {
  border-radius: 2vw !important;
  overflow: hidden !important;
  z-index: 2;
  box-shadow: 0px 0px 10px 0px rgba(53, 48, 45, 0.25) !important;
  transition: all 0.3s ease-in-out !important;
}
.box_pdt_1 .box_img {
  overflow: hidden;
}
.box_pdt_1 .box_img img {
  transition: all 1s ease-in-out;
  transform: scale(1);
}
.box_pdt_1 .box_content {
  background-color: #0A4A4A;
  padding-bottom: 90px !important;
  position: relative;
}
.box_pdt_1 .box_content .box_titre {
  position: relative;
  font-size: calc(20px + (22 - 20) * ((100vw - 300px) / (2560 - 300)));
  color: #ffffff;
  font-weight: 400;
}
.box_pdt_1 .box_content .box_titre .elementor-heading-title {
  line-height: 1.4;
}
.box_pdt_1 .box_content .box_titre strong, .box_pdt_1 .box_content .box_titre b {
  font-weight: 600;
}
.box_pdt_1 .box_content .box_titre span {
  color: #AEFF76;
  font-size: calc(24px + (30 - 24) * ((100vw - 300px) / (2560 - 300)));
  font-weight: 600;
  text-transform: uppercase;
}
.box_pdt_1 .box_content .box_puissance {
  color: #AEFF76;
  font-size: 15px;
}
.box_pdt_1 .box_content .box_desc {
  color: #ffffff;
  font-size: 15px;
}
.box_pdt_1 .box_content .box_icon {
  position: absolute;
  bottom: 2rem;
  left: calc(100% - 74px);
  transition: all 0.3s ease-in-out !important;
  transform: rotate(0deg);
}
.box_pdt_1 .box_content .box_icon svg {
  height: 50px;
  width: 50px;
  fill: #ffffff !important;
  transition: all 0.3s ease-in-out !important;
}
.box_pdt_1:hover .box_img img {
  transition: all 2s ease-in-out;
  transform: scale(1.3);
}
.box_pdt_1:hover .box_content .box_icon {
  left: calc(50% - 25px);
  transition: all 0.3s ease-in-out;
  transform: rotate(45deg);
}
#row_totop {
  width: 50px;
  height: 50px;
  z-index: 999;
  position: fixed;
  bottom: 30px;
  right: 30px;
}
#totop {
  position: relative;
  display: block;
  width: 44px;
  height: 44px;
  background-color: #00a29e;
  border-radius: 50%;
  z-index: 999;
  cursor: pointer;
  transform: scale(1);
  transition: all 0.3s ease-in-out !important;
  box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.5);
  opacity: 0.5;
}
@media screen and (max-width: 768px) {
  #totop {
    position: relative !important;
    margin: 0px auto 20px auto;
  }
}
#totop:before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50.8%);
  z-index: 2;
  background-color: #ffffff;
  mask-image: url("../icons/dropdown-up.svg");
  mask-size: 50%;
  mask-repeat: no-repeat;
  mask-position: 50% 50%;
  -webkit-mask-image: url("../icons/dropdown-up.svg");
  -webkit-mask-size: 50%;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: 50% 50%;
}
#totop:hover {
  background-color: #02415d;
  transform: scale(1.2);
  transition: all 0.3s ease-in-out !important;
  opacity: 1;
}
#totop i {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -60%) rotate(180deg);
  opacity: 1;
}
.btn_cta_1 .elementor-button-link {
  background-color: #0A4A4A;
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  padding: 0 20px;
  min-width: 200px;
  border: 0px solid transparent;
  border-radius: 48px;
  position: relative;
  overflow: hidden;
}
.btn_cta_1 .elementor-button-link:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #39C749;
  z-index: 1;
  transform: scaleX(0);
  transition: transform 0.5s ease-out;
  transform-origin: bottom right;
}
.btn_cta_1 .elementor-button-link .elementor-button-content-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  z-index: 5;
  position: relative;
}
.btn_cta_1 .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon {
  margin-right: 10px;
}
.btn_cta_1 .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
  height: 36px;
  width: 26px;
  fill: #39C749;
  transition: all 0.3s ease-in-out !important;
}
.btn_cta_1 .elementor-button-link:visited, .btn_cta_1 .elementor-button-link:focus {
  color: #ffffff;
}
.btn_cta_1 .elementor-button-link:visited svg, .btn_cta_1 .elementor-button-link:focus svg {
  fill: #39C749;
}
.btn_cta_1 .elementor-button-link:hover {
  background-color: #0A4A4A;
  color: #ffffff;
}
.btn_cta_1 .elementor-button-link:hover:before {
  transform: scaleX(1);
  transform-origin: bottom left;
}
.btn_cta_1 .elementor-button-link:hover .elementor-button-icon svg {
  fill: #ffffff !important;
}
.btn_cta_2 .elementor-button-link {
  background: linear-gradient(180deg, #aeff76 0%, #39c749 100%);
  background-size: 200% auto;
  color: #ffffff;
  font-size: 14px;
  font-weight: 500;
  padding: 0 20px;
  min-width: 200px;
  border: 0px solid transparent;
  border-radius: 48px;
  position: relative;
  overflow: hidden;
}
.btn_cta_2 .elementor-button-link:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #39C749;
  z-index: 1;
  transform: scaleX(0);
  transition: transform 0.5s ease-out;
  transform-origin: bottom right;
}
.btn_cta_2 .elementor-button-link .elementor-button-content-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  z-index: 5;
  position: relative;
}
.btn_cta_2 .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon {
  margin-right: 10px;
}
.btn_cta_2 .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
  height: 36px;
  width: 26px;
  fill: #ffffff;
  transition: all 0.3s ease-in-out !important;
}
.btn_cta_2 .elementor-button-link:visited, .btn_cta_2 .elementor-button-link:focus {
  color: #ffffff;
}
.btn_cta_2 .elementor-button-link:visited svg, .btn_cta_2 .elementor-button-link:focus svg {
  fill: #ffffff;
}
.btn_cta_2 .elementor-button-link:hover {
  background-position: right center;
  border-color: transparent;
  color: #ffffff;
}
.btn_cta_2 .elementor-button-link:hover:before {
  transform: scaleX(1);
  transform-origin: bottom left;
}
.btn_cta_2 .elementor-button-link:hover .elementor-button-icon svg {
  fill: #ffffff !important;
}
.btn_cta_3 .elementor-button-link {
  background: #ffffff;
  color: #39C749;
  font-size: 14px;
  font-weight: 500;
  padding: 0 20px;
  min-width: 200px;
  border: 0px solid transparent;
  border-radius: 48px;
  position: relative;
  overflow: hidden;
}
.btn_cta_3 .elementor-button-link:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #0A4A4A;
  z-index: 1;
  transform: scaleX(0);
  transition: transform 0.5s ease-out;
  transform-origin: bottom right;
}
.btn_cta_3 .elementor-button-link .elementor-button-content-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  z-index: 5;
  position: relative;
}
.btn_cta_3 .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon {
  margin-right: 10px;
}
.btn_cta_3 .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
  height: 36px;
  width: 26px;
  fill: #39C749;
  transition: all 0.3s ease-in-out !important;
}
.btn_cta_3 .elementor-button-link:visited, .btn_cta_3 .elementor-button-link:focus {
  color: #39C749;
}
.btn_cta_3 .elementor-button-link:visited svg, .btn_cta_3 .elementor-button-link:focus svg {
  fill: #39C749;
}
.btn_cta_3 .elementor-button-link:hover {
  background-position: right center;
  border-color: transparent;
  color: #ffffff;
}
.btn_cta_3 .elementor-button-link:hover:before {
  transform: scaleX(1);
  transform-origin: bottom left;
}
.btn_cta_3 .elementor-button-link:hover .elementor-button-icon svg {
  fill: #ffffff !important;
}
.btn_link_1 .elementor-button-link {
  background-color: transparent;
  color: #0A4A4A;
  font-size: 14px;
  padding: 0px 10px;
  font-weight: 600;
  border: 1px solid #0A4A4A;
  transition: all 0.3s ease-in-out !important;
  text-transform: uppercase;
}
.btn_link_1 .elementor-button-link .elementor-button-content-wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: stretch;
  height: 44px;
}
.btn_link_1 .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
  height: 18px;
  width: 40px;
  fill: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
}
.btn_link_1 .elementor-button-link:visited, .btn_link_1 .elementor-button-link:focus {
  color: #0A4A4A;
}
.btn_link_1 .elementor-button-link:visited svg, .btn_link_1 .elementor-button-link:focus svg {
  fill: #0A4A4A;
}
.btn_link_1 .elementor-button-link:hover {
  transition: all 0.3s ease-in-out !important;
  background-color: #3DAB36;
  border: 1px solid #3DAB36;
  color: #ffffff;
}
.btn_link_1 .elementor-button-link:hover .elementor-button-content-wrapper .elementor-button-icon svg {
  fill: #ffffff !important;
  transition: all 0.3s ease-in-out !important;
}
.btn_link_2 .elementor-button-link {
  background-color: transparent;
  color: #ffffff;
  font-size: 14px;
  padding: 0px;
  font-weight: 600;
  border: 0px solid transparent;
  transition: all 0.3s ease-in-out !important;
}
.btn_link_2 .elementor-button-link .elementor-button-content-wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: stretch;
}
.btn_link_2 .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
  height: 18px;
  width: 25px;
  fill: #39C749;
  transition: all 0.3s ease-in-out !important;
}
.btn_link_2 .elementor-button-link:visited, .btn_link_2 .elementor-button-link:focus {
  color: #ffffff;
}
.btn_link_2 .elementor-button-link:visited svg, .btn_link_2 .elementor-button-link:focus svg {
  fill: #39C749;
}
.btn_link_2 .elementor-button-link:hover {
  transition: all 0.3s ease-in-out !important;
  color: #39C749;
}
.btn_link_2 .elementor-button-link:hover .elementor-button-content-wrapper .elementor-button-icon svg {
  fill: #39C749 !important;
  transition: all 0.3s ease-in-out !important;
}
.bloc_fix {
  position: fixed !important;
  top: 50%;
  padding: 0px !important;
  margin: 0px !important;
  width: 200px !important;
  z-index: 99999 !important;
  right: 0px !important;
}
@media screen and (max-width: 768px) {
  .bloc_fix {
    top: 80%;
  }
}
.btn_fix {
  right: -153px !important;
  transition-delay: 0s;
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}
.btn_fix:hover {
  right: 0px !important;
  transition-delay: 1s;
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}
.btn_fix .elementor-button-link {
  background-color: #3DAB36;
  color: #ffffff;
  font-size: 14px;
  padding: 0px;
  min-width: 200px;
  transition: all 0.3s ease-in-out !important;
  border-radius: 4px 0px 0px 4px;
  overflow: hidden;
}
.btn_fix .elementor-button-link .elementor-button-content-wrapper {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: center;
  height: 44px;
  gap: 0px;
}
.btn_fix .elementor-button-link .elementor-button-content-wrapper .elementor-button-text {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  text-align: center;
  text-transform: uppercase;
  position: relative;
  overflow: hidden;
  height: 44px;
  width: 100%;
  z-index: 2;
}
.btn_fix .elementor-button-link .elementor-button-content-wrapper .elementor-button-text:before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 0%;
  top: 0%;
  left: 0%;
  transform: translateX(0%) translateY(0%);
  background-color: #0A4A4A;
  z-index: -1;
  transition-delay: 3s;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}
.btn_fix .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  align-content: stretch;
  margin-right: 0px;
  height: 44px;
  width: 54px;
  background-color: #0A4A4A;
  position: relative;
  overflow: hidden;
  z-index: 2;
}
.btn_fix .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon:before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 0%;
  top: 0%;
  left: 0%;
  transform: translateX(0%) translateY(0%);
  background-color: #3DAB36;
  z-index: 1;
  transition-delay: 2s;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}
.btn_fix .elementor-button-link .elementor-button-content-wrapper .elementor-button-icon svg {
  height: 18px;
  width: 20px;
  fill: #ffffff;
  z-index: 2;
}
.btn_fix .elementor-button-link:visited, .btn_fix .elementor-button-link:focus {
  color: #ffffff;
}
.btn_fix .elementor-button-link:visited svg, .btn_fix .elementor-button-link:focus svg {
  fill: #ffffff;
}
.btn_fix .elementor-button-link:hover {
  transition: all 0.3s ease-in-out !important;
  color: #ffffff;
}
.btn_fix .elementor-button-link:hover .elementor-button-content-wrapper .elementor-button-text {
  position: relative;
  overflow: hidden;
}
.btn_fix .elementor-button-link:hover .elementor-button-content-wrapper .elementor-button-text:before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  top: 0%;
  left: 0%;
  transform: translateX(0%) translateY(0%);
  background-color: #0A4A4A;
  transition-delay: 1s;
  -webkit-transition: all 1s ease-in-out;
  -moz-transition: all 1s ease-in-out;
  -o-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
}
.btn_fix .elementor-button-link:hover .elementor-button-content-wrapper .elementor-button-icon svg {
  fill: #ffffff !important;
}
.btn_fix .elementor-button-link:hover .elementor-button-content-wrapper .elementor-button-icon:before {
  content: "";
  position: absolute;
  display: block;
  height: 100%;
  width: 100%;
  top: 0%;
  left: 0%;
  transform: translateX(0%) translateY(0%);
  background-color: #3DAB36;
  transition-delay: 1s;
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}
.form_elementor .form-field-name {
  border: 1px solid #0A4A4A;
  height: 50px;
  border-radius: 0px;
}
.form_elementor .elementor-field-textual {
  border: 0px solid #0A4A4A !important;
  padding: 10px;
  background-color: transparent;
  color: 1px solid #0A4A4A;
  border-radius: 0px !important;
  font-weight: 600;
  box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.15);
}
.form_elementor .elementor-field-textual option {
  font-weight: 500;
}
.form_elementor .elementor-field-label {
  color: #39C749;
  font-size: 16px;
}
.form_elementor .elementor-field-type-acceptance a {
  color: #0A4A4A;
  transition: all 0.3s ease-in-out !important;
  text-decoration: underline;
}
.form_elementor .elementor-field-type-acceptance a:hover {
  color: #F25CDD;
  transition: all 0.3s ease-in-out !important;
}
.form_elementor .elementor-field-option {
  display: flex;
  flex-direction: row;
}
.form_elementor .elementor-field-option input {
  aspect-ratio: 1;
}
.form_elementor .elementor-field-option label {
  font-size: 10px;
  line-height: 1.2;
}
.form_elementor .elementor-field-option label span {
  font-size: 11px;
  font-weight: 600;
  color: #39C749;
}
.form_elementor input[type="radio"] {
  height: 20px !important;
  width: 20px !important;
  border: 1px solid #0A4A4A;
  display: inline-block !important;
  margin-right: 10px;
  border-radius: 50% !important;
}
.form_elementor input[type="radio"]:checked {
  position: relative;
}
.form_elementor input[type="radio"]:checked:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background-color: #39C749;
}
.form_elementor .elementor-button {
  height: 64px !important;
  text-align: center;
  background: linear-gradient(180deg, #aeff76 0%, #39c749 100%);
  border: 0px;
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
  cursor: pointer;
  letter-spacing: 0px;
  border-radius: 50px !important;
}
.form_elementor .elementor-button:hover {
  letter-spacing: 1px;
  transition: all 0.3s ease-in-out !important;
}
.form_elementor .elementor-button .elementor-button-text {
  font-size: 20px;
}
.form_elementor .elementor-button:hover {
  letter-spacing: 1.5px;
}
.form_elementor input[type=radio] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
}
.form_elementor input::-webkit-input-placeholder, .form_elementor textarea::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #0A4A4A !important;
  opacity: 1;
}
.form_elementor input::-moz-placeholder, .form_elementor textarea::-moz-placeholder {
  /* Firefox 19+ */
  color: #0A4A4A !important;
  opacity: 1;
}
.form_elementor input::-ms-input-placeholder, .form_elementor textarea::-ms-input-placeholder {
  /* IE 10+ */
  color: #0A4A4A !important;
  opacity: 1;
}
.form_elementor input::-moz-placeholder, .form_elementor textarea::-moz-placeholder {
  /* Firefox 18- */
  color: #0A4A4A !important;
  opacity: 1;
}
.form_elementor input::placeholder, .form_elementor textarea::placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #0A4A4A !important;
  opacity: 1;
}
select {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  outline: 0px;
}
.input-hidden {
  height: 0;
  width: 0;
  overflow: hidden;
}
/******	 Radio - checkbox
************************************/
input[type="checkbox"] {
  height: 16px !important;
  width: 16px !important;
  border: 1px solid #0A4A4A;
  display: inline-block;
  margin-right: 10px;
  border-radius: 0px !important;
}
input[type="checkbox"]:checked {
  position: relative;
}
input[type="checkbox"]:checked:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  height: 12px;
  width: 12px;
  background-color: #39C749;
}
input[type="checkbox"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
}
/******	 Upload field
************************************/
.elementor-field-type-upload input[type="file"] {
  color: #39C749;
  cursor: pointer;
  position: relative;
  background-color: #3DAB36;
  border-radius: 0px;
  padding: 1rem 1rem 1rem calc(2rem + 35px);
}
.elementor-field-type-upload input[type="file"]:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 2rem;
  transform: translateX(0%) translateY(-50%);
  width: 25px;
  height: 25px;
  background-color: #39C749;
  mask-image: url("/wp-content/uploads/2024/06/download.svg");
  mask-size: 100% 100%;
  mask-repeat: no-repeat;
  mask-position: 50% 0%;
  -webkit-mask-image: url("/wp-content/uploads/2024/06/download.svg");
  -webkit-mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: 50% 0%;
}
.elementor-field-type-upload input[type="file"]::-webkit-file-upload-button {
  background: transparent;
  color: #39C749;
  border: 0px;
  cursor: pointer;
}
/******	 NEWSLETTER
************************************/
.form_newsletter .form-field-name {
  border: 1px solid #0A4A4A;
  height: 50px;
  border-radius: 0px;
}
.form_newsletter .elementor-field-textual {
  border: 1px solid #0A4A4A;
  padding: 10px;
  background-color: transparent;
  color: 1px solid #0A4A4A;
  border-radius: 0px;
}
.form_newsletter .elementor-field-label {
  color: #39C749;
  font-size: 16px;
}
.form_newsletter .elementor-form-fields-wrapper {
  display: flex;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: flex-start;
  align-items: center;
  align-content: center;
  padding-bottom: 4rem !important;
}
@media screen and (max-width: 768px) {
  .form_newsletter .elementor-form-fields-wrapper {
    padding-bottom: 5.5rem !important;
  }
}
.form_newsletter .elementor-field-type-email {
  padding: 0px !important;
  margin: 0px !important;
}
.form_newsletter #form-field-email {
  border-radius: 50px 0px 0px 50px;
  height: 66px !important;
}
.form_newsletter .elementor-field-type-acceptance {
  position: absolute;
  bottom: 0;
  color: #ffffff;
  font-weight: 300;
  font-size: 12px;
}
.form_newsletter .elementor-field-type-acceptance a {
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
  text-decoration: underline;
}
.form_newsletter .elementor-field-type-acceptance a:hover {
  color: #AEFF76;
  transition: all 0.3s ease-in-out !important;
}
.form_newsletter .elementor-field-option {
  display: flex;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: center !important;
  align-content: center !important;
}
@media screen and (max-width: 1024px) {
  .form_newsletter .elementor-field-option {
    display: inline-block;
  }
}
.form_newsletter input[type="checkbox"] {
  height: 20px !important;
  width: 20px !important;
  border: 1px solid #0A4A4A;
  display: inline-block !important;
  margin: 0px;
  margin-right: 10px;
  border-radius: 50% !important;
}
.form_newsletter input[type="checkbox"]:checked {
  position: relative;
}
.form_newsletter input[type="checkbox"]:checked:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  height: 14px;
  width: 14px;
  border-radius: 50%;
  background-color: #39C749;
}
.form_newsletter .elementor-field-type-submit {
  width: 25% !important;
  padding: 0px !important;
  margin: 0px !important;
}
@media screen and (max-width: 768px) {
  .form_newsletter .elementor-field-type-submit {
    width: 30% !important;
  }
}
.form_newsletter .elementor-button {
  width: 100% !important;
  height: 64px !important;
  text-align: center;
  background: linear-gradient(180deg, #aeff76 0%, #39c749 100%);
  border: 0px;
  color: #ffffff;
  transition: all 0.3s ease-in-out !important;
  cursor: pointer;
  letter-spacing: 0px;
  border-radius: 0px 50px 50px 0px !important;
}
.form_newsletter .elementor-button:hover {
  letter-spacing: 1px;
  transition: all 0.3s ease-in-out !important;
}
.form_newsletter .elementor-button .elementor-button-text {
  font-size: 20px;
}
.form_newsletter .elementor-button:hover {
  letter-spacing: 1.5px;
}
.form_newsletter input[type=checkbox] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
}
.form_newsletter input::-webkit-input-placeholder, .form_newsletter textarea::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #0A4A4A !important;
  opacity: 1;
}
.form_newsletter input::-moz-placeholder, .form_newsletter textarea::-moz-placeholder {
  /* Firefox 19+ */
  color: #0A4A4A !important;
  opacity: 1;
}
.form_newsletter input::-ms-input-placeholder, .form_newsletter textarea::-ms-input-placeholder {
  /* IE 10+ */
  color: #0A4A4A !important;
  opacity: 1;
}
.form_newsletter input::-moz-placeholder, .form_newsletter textarea::-moz-placeholder {
  /* Firefox 18- */
  color: #0A4A4A !important;
  opacity: 1;
}
.form_newsletter input::placeholder, .form_newsletter textarea::placeholder {
  /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #0A4A4A !important;
  opacity: 1;
}
/************************
* PLAN DU SITE
*************************/
#plan_du_site {
  margin-bottom: 2rem !important;
}
#plan_du_site .elementor-sitemap-wrap .elementor-sitemap-section {
  padding: 1rem;
}
#plan_du_site .elementor-sitemap-wrap .elementor-sitemap-title {
  border-bottom: 1px solid #3b414c;
  color: #3b414c;
  font-size: 32px;
  text-transform: uppercase;
  padding: 8px;
  margin-bottom: 1rem;
  font-family: "Poppins", sans-serif;
}
#plan_du_site .elementor-sitemap-wrap .elementor-sitemap-list {
  list-style: none;
}
@media screen and (min-width: 1024px) {
  #plan_du_site .elementor-sitemap-wrap .elementor-sitemap-list {
    column-count: 3;
    column-gap: 30px;
  }
}
@media screen and (min-width: 960px) and (max-width: 1024px) {
  #plan_du_site .elementor-sitemap-wrap .elementor-sitemap-list {
    column-count: 2;
    column-gap: 30px;
  }
}
#plan_du_site .elementor-sitemap-wrap .elementor-sitemap-list li {
  padding-left: 15px;
  margin-bottom: 10px;
  position: relative;
}
#plan_du_site .elementor-sitemap-wrap .elementor-sitemap-list li:before {
  content: "";
  position: absolute;
  display: block;
  height: 8px;
  width: 8px;
  top: 11px;
  left: 3px;
  border-radius: 2px 0px 2px 2px;
  transform: translateX(-50%) translateY(-50%);
  background-color: #3b414c;
  transition: all 0.3s ease-in-out !important;
}
#plan_du_site .elementor-sitemap-wrap .elementor-sitemap-list li a {
  transition: all 0.3s ease-in-out !important;
  color: #3b414c;
}
#plan_du_site .elementor-sitemap-wrap .elementor-sitemap-list li:hover a {
  color: #3b414c;
  letter-spacing: 0.4px;
}
#plan_du_site .elementor-sitemap-wrap .elementor-sitemap-list li:hover:before {
  border-radius: 50%;
  background-color: #3b414c;
  transition: all 0.3s ease-in-out !important;
}
.page-id-34 .cat-item-64 {
  display: none;
}
/**Skip link - Lien raPide Accessibilité**/
.SkipLinks-item a {
  height: 1px;
  left: -999px;
  position: absolute;
  width: 1px;
}
.SkipLinks-item a:focus, .SkipLinks-item a:active {
  background: #0A4A4A;
  color: #ffffff;
  display: block;
  font-size: 1.2em;
  font-weight: 500;
  height: auto;
  left: 0;
  padding: 5px;
  position: absolute;
  width: auto;
  z-index: 1111;
}
