#contactForm .form-control {
  width: 100%;
}

/*-------------------------------------------menu haut--------------------*/
.topWrap {
  background-color: rgba(255, 255, 255, 0.7) !important;
}

.topWrap .topMenuStyleLine > ul > li > a {
  color: #151515;
  display: block;
  font-size: 20px;
  font-weight: 400;
  height: 27px;
  line-height: 29px;
  padding: 0 10px !important;
  position: relative;
  text-transform: none !important;
  text-decoration: none;
  z-index: 88;
  font-family: var(--font-base) !important;
}

.openResponsiveMenu {
  border-top: 1px solid rgba(255, 255, 255, 0);
  clear: both;
  color: #0d0d0d;
  display: none;
  font-size: 20px;
  font-weight: 700;
  height: 35px;
  line-height: 35px;
  margin: 0;
  position: relative;
  text-transform: none !important;
  text-align: center;
  width: 100%;
  font-family: var(--font-base) !important;
}
/* Désactiver l'icône hamburger auto du thème */
.openResponsiveMenu:after {
  content: none !important;
}

/* Optionnel : sur mobile, ne montrer que l'icône */
@media (max-width: 768px) {
  .openResponsiveMenu .label {
    display: none;
  }
}
@media (max-width: 980px) {
  .responsive_menu .menuTopWrap > ul > li > a {
    border-bottom: 1px solid #1b682e;
  }
  .topWrap .topMenuStyleLine > ul > li > a {
    color: #151515;
    padding-left: 0 !important;
  }
  .moboff {
    display: none !important;
  }
  .mobon {
    display: block !important;
  }

  /* Nouveau rendu : "Menu" petit + ≡ plus grand et coloré */
  .openResponsiveMenu {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    text-decoration: none;
  }
  .openResponsiveMenu .label {
    font-size: 16px;
    font-weight: 600;
    color: #1b682e;
  }
  .openResponsiveMenu .icon {
    font-size: 26px;
    line-height: 1;
    color: #1b682e;
  }
  .openResponsiveMenu:hover .icon {
    color: #1b682e;
  }
}
@media (min-width: 981px) {
  .moboff {
    display: block !important;
  }
  .mobon {
    display: none !important;
  }
}
/*-------------------------------------------slider--------------------*/
.h650 {
  height: 650px !important;
}
#rev_slider_1_wrapper,
#rev_slider_1 {
  height: 650px !important;
}

#rev_slider_1 ul li,
#rev_slider_1 ul li img {
  height: 650px !important;
  max-height: 650px !important;
  object-fit: cover; /* garde le ratio sans déformation */
}
/*-------------------------------------------logo--------------------*/
.logo img {
  display: inline-block;
  width: 150px !important;
  max-width: 150px !important;
  height: 110px !important;
  max-height: 120px !important;
  box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px !important;
}

/* transition douce */
.mainmenu_area .logo img {
  transition: width 0.2s ease, height 0.2s ease, box-shadow 0.2s ease;
}

/* état sticky : logo réduit */
.mainmenu_area.is-sticky .logo img {
  width: 110px !important;
  max-width: 110px !important;
  height: 88px !important;
  max-height: 88px !important;
  box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px !important;
}
/* hauteur normale */
.mainmenu_area {
  transition: height 0.2s ease, padding 0.2s ease;
}

/* état sticky : hauteur réduite */
.mainmenu_area.is-sticky {
  height: 90px;
  padding: 10px 0; /* réduire aussi le padding si besoin */
  overflow: hidden; /* évite les débordements éventuels */
}
/*------------------------------------div-----------------------------------------*/
.nocap200 {
  text-transform: none !important;
  font-weight: 200 !important;
  font-family: var(--font-base) !important;
}
.nocap400 {
  text-transform: none !important;
  font-weight: 400 !important;
  font-family: var(--font-base) !important;
}
.nocap600 {
  text-transform: none !important;
  font-weight: 600 !important;
  font-family: var(--font-base) !important;
}
.tm {
  text-transform: none !important;
  font-weight: 600 !important;
  color: #1b682e !important;
  font-size: 2em;
}
.nocap600t1 {
  text-transform: none !important;
  font-weight: 600 !important;
  font-size: 2.5em;
  color: #fff;
}
.nocap400t2 {
  text-transform: none !important;
  font-weight: 400 !important;
  font-size: 1.5em;
  line-height: 2em;
  color: #fff;
}
.bl {
  color: #333 !important;
}
.wh {
  color: #fff !important;
}
.tal {
  text-align: left;
}
.ob {
  text-shadow: 0 0 2px rgba(255, 255, 255, 0.8);
}
.on {
  text-shadow: 0 0 4px rgba(0, 0, 0, 0.5);
}
.ct {
  text-align: center;
}
.pa20 {
  padding: 20px !important;
}
.pa10 {
  padding: 10px !important;
}
/*-----------------------------------font chocolate box------------------------------------------*/

@font-face {
  font-family: "chocolateboxregular";
  src: url("fonts/c_box-webfont.woff2") format("woff2"), url("fonts/c_box-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal;
}

.lsn {
  letter-spacing: normal !important;
}
/*---------------------------------vignettes home lien--------------------------------------------*/
.masonry article .thumb .link-wrapper a {
  background-color: #fff;
  color: #000;
}
.masonry article .thumb .link-wrapper {
  background-color: rgba(255, 255, 255, 0.4);
}
/*----------------------------borders-------------------------------------------------*/
.b1 {
  box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
}
.b1r {
  box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
  border-radius: 15px;
}
.b2 {
  box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
}
.b3 {
  box-shadow: rgba(0, 0, 0, 0.25) 0px 54px 55px, rgba(0, 0, 0, 0.12) 0px -12px 30px, rgba(0, 0, 0, 0.12) 0px 4px 6px,
    rgba(0, 0, 0, 0.17) 0px 12px 13px, rgba(0, 0, 0, 0.09) 0px -3px 5px;
}
.b4 {
  box-shadow: rgba(50, 50, 93, 0.25) 0px 50px 100px -20px, rgba(0, 0, 0, 0.3) 0px 30px 60px -30px;
}
/*-----------------------------------------------------------------------------*/
/* Bandeau standard – hauteur fixe et cohérente */
.topTabsWrap.hero-std {
  height: 360px; /* hauteur identique partout */
  padding-top: 140px; /* place pour le header fixe */
  padding-bottom: 40px;
  box-sizing: border-box; /* la hauteur inclut les paddings */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  align-items: flex-end; /* contenu plaqué en bas */
}
.topTabsWrap.hero-std .speedBar,
.topTabsWrap.hero-std .pageTitle {
  margin: 0;
}

/* Mobile */
@media (max-width: 1024px) {
  .topTabsWrap.hero-std {
    height: 300px;
    padding-top: 110px;
  }
}

/*-------------------------------form ctc---------------------------------------------*/
/* Formulaire contact – hauteurs et états */
#contactForm .form-control {
  height: 48px;
  padding: 10px 14px;
  border-radius: 6px;
}
#contactForm textarea.form-control {
  height: auto; /* pas de hauteur fixe pour le textarea */
  min-height: 160px;
  padding: 12px 14px;
}
#contactForm .form-control:focus {
  border-color: #1b682e;
  box-shadow: 0 0 0 0.2rem rgba(12, 155, 76, 0.25);
  outline: 0;
}
#contactForm ::placeholder {
  color: #6c757d;
  opacity: 1;
}

/* Bouton personnalisé */
.btn-bamboo {
  background-color: #1b682e;
  border-color: #1b682e;
  color: #fff;
}
.btn-bamboo:hover,
.btn-bamboo:focus {
  background-color: #1b682e; /* nuance plus sombre */
  border-color: #1b682e;
  color: #fff;
}
.btn-bamboo:disabled {
  opacity: 0.65;
}
/* Bouton plus large + texte plus grand */
.btn-bamboo.btn-bamboo--xl {
  font-size: 2rem !important; /* ~18px */
  line-height: 1.25;
  padding: 14px 25px; /* largeur visuelle */
  border-radius: 15px;
  min-width: 240px; /* largeur mini confortable */
}
@media (min-width: 992px) {
  .btn-bamboo.btn-bamboo--xl {
    padding-left: 40px;
    padding-right: 40px;
  }
}
/* Option : plein écran sur très petit viewport si w-100 n'est pas utilisé */
@media (max-width: 576px) {
  #submitButton.btn-bamboo.btn-bamboo--xl {
    width: 100%;
  }
}
/*--------------------------vid foot---------------------------------------------------*/
/* Footer vidéo + overlay */
.footerWrap.footerStyleDark {
  position: relative;
  overflow: hidden;
  color: #fff; /* texte par défaut en blanc */
  background: #111; /* fallback si vidéo absente */
}

.footerVideoWrap {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  pointer-events: none;
}
.footerVideo {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.footerOverlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: rgba(0, 0, 0, 0.6); /* noir transparent (ajuste l’opacité ici) */
  pointer-events: none;
}

/* Contenu au-dessus de la vidéo et de l’overlay */
.footerWrap .footerWidget,
.footerWrap .footerWidget * {
  position: relative;
  z-index: 2;
  color: #fff;
}
.footerWrap .footerWidget a {
  color: #fff;
}
.footerWrap .title {
  color: #fff;
  text-transform: none !important;
}

/* Masquer la vidéo sous 1000px de large (demande précédente) */
@media (max-width: 999px) {
  .footerVideoWrap {
    display: none;
  }
  .footerOverlay {
    background: rgba(0, 0, 0, 0.8);
  } /* un peu plus sombre en mobile */
}

/*--------------------------footer---------------------------------------------------*/
.footerContentWrap::before {
  content: "";
  display: block;
  height: 50px;
  background: #fff; /* bande blanche garantie, quel que soit le fond de page */
}
/*------------------------------anim images home bas-----------------------------------------------*/
/* Partenaires : assombrir par défaut, couleurs normales au hover + mini zoom */
.partner_section .sc_image img {
  display: block;
  transform-origin: center center;
  transition: transform 0.45s ease, filter 0.45s ease, box-shadow 0.45s ease;
  filter: brightness(0.85) saturate(0.9); /* léger assombrissement */
  will-change: transform, filter;
}

/* Survol / focus clavier : couleurs normales + mini zoom + léger soulèvement */
.partner_section .sc_image:hover img,
.partner_section .sc_image:focus-within img {
  filter: none; /* revient à la couleur normale */
  transform: scale(1.03) translateY(-2px);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
}

/* Supprimer le border-radius uniquement sur ces vignettes */
.partner_section .b1r {
  border-radius: 0 !important;
}

/* Accessibilité : réduire les animations si demandé */
@media (prefers-reduced-motion: reduce) {
  .partner_section .sc_image img {
    transition: none;
  }
  .partner_section .sc_image:hover img,
  .partner_section .sc_image:focus-within img {
    transform: none;
    box-shadow: none;
    filter: none;
  }
}

/*-----------------------------------------------------------------------------*/
.tn {
  text-transform: none !important;
  font-weight: 600 !important;
  color: #1b682e !important;
  font-size: 1.4em;
}
/*-----------------------------------------------------------------------------*/
.bff {
  box-shadow: rgba(0, 0, 0, 0.4) 0px 2px 4px, rgba(0, 0, 0, 0.3) 0px 7px 13px -3px,
    rgba(0, 0, 0, 0.2) 0px -3px 0px inset;
  border-radius: 8px;
}
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------*/
/*------------------------------------------laisser à la fin-----------------------------------*/
/* Police de base cohérente */
:root {
  --font-base: "Nunito", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

html,
body {
  font-family: var(--font-base);
}

/* Titres et classes qui surchargent la police */
h1,
h2,
h3,
h4,
.sc_title,
.sc_undertitle {
  font-family: var(--font-base) !important;
  /* si tu veux l’effet “espacé” */
  letter-spacing: 0.35em;
  text-transform: uppercase;
}
body,
h1,
h2,
h3,
h4,
h5,
h6,
.sc_title,
.sc_undertitle {
  letter-spacing: normal !important;
}
.trade {
  font-family: "chocolateboxregular", serif !important;
  text-transform: none !important;
}

.topWrap .topMenuStyleLine > ul > li > a:hover {
  color: #1b682e !important;
  font-weight: 600;
}
