/*
Theme Name: Epsilon
Template: Divi
*/

/****************************************************/
/***************  GENERAL   *************************/
/****************************************************/
html {
    font-size: 100% !important;
}
body {
    margin: 0;
}
p {
    line-height: 1.7em;
}
.et-db #page-container #et-boc .et-l .et_pb_text .et_pb_text_inner h6:last-child {
  padding-bottom: 1rem;
}

hr {
  margin: 16px 0 32px 0;
  border: none;
  border-top: 1px solid #d9dbe3;
}

sup{
  font-size:0.65rem;
}

/****************************************************/
/**********  GENERAL DIVI   *************************/
/****************************************************/

.et-db #page-container #et-boc .et_pb_section:has(.et_pb_module.full) {
  overflow: hidden;
}
.et-db #page-container #et-boc .et_pb_row.max-820 {
  max-width: 820px !important;
}

/* classes spéciales */
.pad-zero {padding-top:0 !important; padding-bottom:0 !important;}
.pad-top-zero {padding-top:0 !important;}
.pad-bot-zero {padding-bottom:0 !important;}
.marge-zero {margin-top:0 !important; margin-bottom:0 !important;}
.marge-top-zero {margin-top:0 !important;}
.marge-bot-zero {margin-bottom:0 !important;}

/**** section DIVI Center ****/
.et-db #page-container #et-boc .center p,
.et-db #page-container #et-boc .center h2,
.et-db #page-container #et-boc .center h3,
.et-db #page-container #et-boc .center h4,
.et-db #page-container #et-boc .center .et_pb_button_module_wrapper {
  text-align: center!important;
}
.et-db #page-container #et-boc .center .et_pb_button_module_wrapper .et_pb_button{
      margin: 0 auto 1rem;
}
.et-db #page-container #et-boc .right .et_pb_button_module_wrapper{
      display: flex;
      justify-content: end;
}

.et-db #page-container #et-boc .center img {
  margin: 0 auto;
  display: block;
}

/************************************************/
/* TITRES */
/***********************************************/

/* H1 */
.et-db #page-container #et-boc h1 {
    text-transform: uppercase;
    margin: 0 auto;
    line-height: 1.3;
    color: #091b5d;
    font-size: 3.75rem;
    text-align: center;
    font-weight: 900;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 30px;
}

.et-db #page-container #et-boc h1::after {
  height: 3px;
  width: 100px;
  background-color: #ff000c;
  content: "";
  display: block;
  margin-top: 20px;
}
.et-db #page-container #et-boc .bg-bleu h1::after {
    background-color: #009DE0;
}
.et-db #page-container #et-boc h1.vert::after {
    background-color: #CFD428;
}

/* specifique page contact */
.et-db #page-container #et-boc .et_pb_section:has(form) h1{
  font-size: 3rem;
  font-weight: 500;
  font-family: 'brush-up-too';
}

.et-db #page-container #et-boc .et_pb_section:has(form) h1::after{
  display: none;
}

/* titre hero */
.et-db #page-container #et-boc .banner h1 {
    color: #fff;
    font-size: 4.37rem;
    padding-top: 30px;
    text-align: left;
    align-items: flex-start;
}
.et-db #page-container #et-boc .banner h1:after {
  background-color: #fff;
  margin-bottom: 20px;
  width: 120px;
}

/* titre hero home */
.et-db #page-container #et-boc .banner.banner-home h1 {
  font-size: 5rem;
  font-family: "Viga";
  line-height: 1;
  padding-bottom: 0;
  padding-top: 17px;
  font-weight: 400;
  margin: 0;
}
.et-db #page-container #et-boc .banner.banner-home h1::after {
  display: none;
}
/* responsive */
@media (max-width: 1600px) {
  .et-db #page-container #et-boc .banner h1,
  .et-db #page-container #et-boc .banner.banner-home h1,
  .et-db #page-container #et-boc h1 {
      font-size: 3.3vw;
  }
}
@media (max-width: 1500px) {
  .et-db #page-container #et-boc .banner h1,
  .et-db #page-container #et-boc .banner.banner-home h1,
  .et-db #page-container #et-boc h1 {
      font-size: 3.75vw;
  }
}
@media (max-width: 1280px) {
  .et-db #page-container #et-boc .banner h1,
  .et-db #page-container #et-boc .banner.banner-home h1,
  .et-db #page-container #et-boc h1 {
      font-size: 3.9vw;
  }
}
@media (max-width: 1024px) {
  .et-db #page-container #et-boc .banner h1,
  .et-db #page-container #et-boc .banner.banner-home h1,
  .et-db #page-container #et-boc h1 {
      font-size: 4.75vw;
  }
}
@media (max-width: 980px) {
  .et-db #page-container #et-boc .et_pb_section:has(form) h1,
  .et-db #page-container #et-boc .banner h1,
  .et-db #page-container #et-boc .banner.banner-home h1,
  .et-db #page-container #et-boc h1 {
      font-size: 2.5rem;
  }
}
@media (max-width: 768px) {
  .et-db #page-container #et-boc .et_pb_section:has(form) h1,
  .et-db #page-container #et-boc .banner h1,
  .et-db #page-container #et-boc .banner.banner-home h1,
  .et-db #page-container #et-boc h1 {
      font-size: 2.2rem;
  }
}
@media (max-width: 680px) {
  .et-db #page-container #et-boc .et_pb_section:has(form) h1,
  .et-db #page-container #et-boc .banner h1,
  .et-db #page-container #et-boc .banner.banner-home h1,
  .et-db #page-container #et-boc h1 {
    font-size: 2rem;
  }
}
@media (max-width: 500px) {
  .et-db #page-container #et-boc .et_pb_section:has(form) h1,
  .et-db #page-container #et-boc .banner h1,
  .et-db #page-container #et-boc .banner.banner-home h1,
  .et-db #page-container #et-boc h1 {
    font-size: 1.8rem;
  }
  .et-db #page-container #et-boc .banner h1 span,
  .et-db #page-container #et-boc .banner.banner-home h1 span,
  .et-db #page-container #et-boc h1 span {
      font-size: 1.3rem;
  }
}
@media (max-width: 500px) {
  .et-db #page-container #et-boc .et_pb_section:has(form) h1,
  .et-db #page-container #et-boc .banner h1,
  .et-db #page-container #et-boc .banner.banner-home h1,
  .et-db #page-container #et-boc h1 {
    font-size: 1.7rem;
  }
}

/********************/
/****** H2 **********/

/* H2 classique */
.et-db #page-container #et-boc h2,
.et-db #page-container #et-boc p.h2 {
    font-family: 'brush-up-too';
    color: #091b5d;
    text-transform: uppercase;
    font-size: 3rem;
    line-height: 1.2;
    margin-bottom: 1.5rem;
}
.et-db #page-container #et-boc h2 span {
    display: block;
}
.et-db #page-container #et-boc p.h2 {
    font-size: 2rem;
    padding-bottom: 20px !important;
    margin-bottom: 0;
    letter-spacing: 0.05em;
    font-weight: 400;
}
.et-db #page-container #et-boc p.h2 span {
  font-family: "DM Sans";
  font-size: 0.875em;
}

/* after */

.et-db #page-container #et-boc h2.after::after{
    content: " ";
    width: 82px;
    display: block;
    margin-top: 30px;
    border: solid 2px #FF000C;
}
.et-db #page-container #et-boc .bg-bleu h2.after::after {
    border: solid 2px #009DE0;
}

/** responsive **/
@media (max-width: 1024px) {
  .et-db #page-container #et-boc h2,
  .et-db #page-container #et-boc p.h2 {
    font-size: 2.5rem;
  }
}
@media (max-width: 980px) {
  .et-db #page-container #et-boc h2,
  .et-db #page-container #et-boc p.h2 {
    font-size: 2.2rem;
  }
  .et-db #page-container #et-boc h2.after::after{
      margin-top: 20px;
  }
}
@media (max-width: 768px) {
  .et-db #page-container #et-boc h2,
  .et-db #page-container #et-boc p.h2 {
    font-size: 2rem;
  }
}
@media (max-width: 680px) {
  .et-db #page-container #et-boc h2,
  .et-db #page-container #et-boc p.h2 {
    font-size: 1.9rem;
  }
}
@media (max-width: 620px) {
  .et-db #page-container #et-boc h2,
  .et-db #page-container #et-boc p.h2 {
    margin-bottom: 1rem;
  }
}
@media (max-width: 550px) {
  .et-db #page-container #et-boc h2,
  .et-db #page-container #et-boc p.h2 {
    font-size: 1.8rem;
  }
}
@media (max-width: 390px) {
  .et-db #page-container #et-boc h2,
  .et-db #page-container #et-boc p.h2 {
    font-size: 1.6rem;
  }
}


/*******************/
/******* H3 *******/

.et-db #page-container #et-boc h3,
.et-db #page-container #et-boc h2.h3,
.et-db #page-container #et-boc p.h3 {
  color: #091B5D;
  font-size: 1.875rem;
  font-weight: 700;
  margin: 15px 0;
  letter-spacing: 0.01em;
  line-height: 1.3;
  padding-bottom: 0;
}
  @media (max-width: 1024px) {
    .et-db #page-container #et-boc h3,
    .et-db #page-container #et-boc h2.h3,
    .et-db #page-container #et-boc p.h3 {
        font-size: 1.9rem;
    }
  }
  @media (max-width: 980px) {
    .et-db #page-container #et-boc h3,
    .et-db #page-container #et-boc h2.h3,
    .et-db #page-container #et-boc p.h3 {
          font-size: 1.8rem;
      }
  }
  @media (max-width: 768px) {
    .et-db #page-container #et-boc h3,
    .et-db #page-container #et-boc h2.h3,
    .et-db #page-container #et-boc p.h3 {
          font-size: 1.7rem;
      }
  }
  @media (max-width: 680px) {
    .et-db #page-container #et-boc h3,
    .et-db #page-container #et-boc h2.h3,
    .et-db #page-container #et-boc p.h3 {
          font-size: 1.6rem;
      }
  }
  @media (max-width: 550px) {
    .et-db #page-container #et-boc h3,
    .et-db #page-container #et-boc h2.h3,
    .et-db #page-container #et-boc p.h3 {
          font-size: 1.5rem;
      }
  }
  @media (max-width: 390px) {
    .et-db #page-container #et-boc h3,
    .et-db #page-container #et-boc h2.h3,
    .et-db #page-container #et-boc p.h3 {
          font-size: 1.4rem;
      }
  }
  @media (max-width: 350px) {
    .et-db #page-container #et-boc h3,
    .et-db #page-container #et-boc h2.h3,
    .et-db #page-container #et-boc p.h3 {
          font-size: 1.3rem;
      }
  }
  .et-db #page-container #et-boc h4,
  .et-db #page-container #et-boc p.h4 {
    color: #FF000C;
    font-size: 1.5rem;
    font-weight: 700;
    padding: 15px 0;
    line-height: 1.3;
  }
  .et-db #page-container #et-boc p.h4 {
    padding-bottom: 20px !important;
  }


  .et-db #page-container #et-boc h5,
  .et-db #page-container #et-boc p.h5 {
    color: #091B5D;
    font-size: 1.375rem;
    font-weight: 700;
    margin: 15px 0 0 0;
    line-height: 1.3;
    padding-bottom: 0;
  }
  .et-db #page-container #et-boc p.h5 {
    margin-bottom: 20px !important;
  }

  .et-db #page-container #et-boc h6,
  .et-db #page-container #et-boc p.h6 {
    color: #091B5D;
    font-size: 1.125rem;
    font-weight: 700;
    margin: 15px 0 0 0;
    line-height: 1.3;
    padding-bottom: 0;
  }
  .et-db #page-container #et-boc p.h6 {
    margin-bottom: 20px !important;
  }
  @media (max-width: 980px) {
    .et-db #page-container #et-boc h4,
    .et-db #page-container #et-boc p.h4 {
      font-size: 1.4rem;
    }
    .et-db #page-container #et-boc h5,
    .et-db #page-container #et-boc p.h5 {
      font-size: 1.3rem;
    }
    .et-db #page-container #et-boc h6,
    .et-db #page-container #et-boc p.h6 {
      font-size: 1.125rem;
    }
  }
  @media (max-width: 768px) {
    .et-db #page-container #et-boc h4,
    .et-db #page-container #et-boc p.h4 {
      font-size: 1.35rem;
    }
    .et-db #page-container #et-boc h5,
    .et-db #page-container #et-boc p.h5 {
      font-size: 1.25rem;
    }
    .et-db #page-container #et-boc h6,
    .et-db #page-container #et-boc p.h6 {
      font-size: 1.125rem;
    }
  }
  @media (max-width: 550px) {
    .et-db #page-container #et-boc h4,
    .et-db #page-container #et-boc p.h4 {
      font-size: 1.3rem;
    }
    .et-db #page-container #et-boc h5,
    .et-db #page-container #et-boc p.h5 {
      font-size: 1.2rem;
    }
    .et-db #page-container #et-boc h6,
    .et-db #page-container #et-boc p.h6 {
      font-size: 1.125rem;
    }
  }
  @media (max-width: 390px) {
    .et-db #page-container #et-boc h4,
    .et-db #page-container #et-boc p.h4 {
      font-size: 1.25rem;
    }
    .et-db #page-container #et-boc h5,
    .et-db #page-container #et-boc p.h5 {
      font-size: 1.15rem;
    }
    .et-db #page-container #et-boc h6,
    .et-db #page-container #et-boc p.h6 {
      font-size: 1.1rem;
    }
  }



/******************************/
/* simili titre et sous-titre */

.et-db #page-container #et-boc p.accroche {
  font-size: 1.2rem;
  font-weight: 500;
}

.et-db #page-container #et-boc .titrage p,
.et-db #page-container #et-boc p.soustitre,
.et-db #page-container #et-boc h3.soustitre {
  font-size: 1.6rem;
  text-transform: none;
  letter-spacing: 0;
}
.et-db #page-container #et-boc h2:has(+ .soustitre)  {
    margin-bottom: 15px;
}

@media (max-width: 430px) {
  .et-db #page-container #et-boc .titrage p,
  .et-db #page-container #et-boc p.soustitre,
  .et-db #page-container #et-boc h3.soustitre {
    font-size: 1.25rem;
  }
}
@media (max-width: 370px) {
  .et-db #page-container #et-boc .titrage p,
  .et-db #page-container #et-boc p.soustitre,
  .et-db #page-container #et-boc h3.soustitre {
    font-size: 1.2rem;
  }
}
.et-db #page-container #et-boc .et_pb_text.surtitre div p,
.et-db #page-container #et-boc p.surtitre {
  color: #ff000c;
  text-transform: uppercase;
  font-size: 1.12rem;
  letter-spacing: 0.25rem;
  font-weight: 500;
  line-height: 1.15;
  padding-bottom: 0 !important;
}
@media (max-width: 450px) {
  .et-db #page-container #et-boc .et_pb_text.surtitre div p,
  .et-db #page-container #et-boc p.surtitre {
    font-size: 1.05rem;
  }
}
.et-db #page-container #et-boc .bg-bleu .et_pb_text.surtitre div p,
.et-db #page-container #et-boc .bg-bleu p.surtitre {
  color: #009de0 !important;
}
.et-db #page-container #et-boc .bg-bleu-fonce .et_pb_text.surtitre div p,
.et-db #page-container #et-boc .bg-bleu-fonce p.surtitre {
  color: #ff000c !important;
}
.et-db #page-container #et-boc .bg-vert .et_pb_text.surtitre div p,
.et-db #page-container #et-boc .bg-vert p.surtitre {
  color: #CFD428 !important;
}
.et-db #page-container #et-boc .et_pb_text.surtitre div p.gris,
.et-db #page-container #et-boc p.surtitre.gris {
  color: #dcdcdc !important;
}
.et-db #page-container #et-boc .et_pb_text.surtitre div p.bleu,
.et-db #page-container #et-boc p.surtitre.bleu {
  color: #091B5D !important;
}


/*** enchainement titre + p *****/


.et-db #page-container #et-boc p + h2 {
  margin-top: 40px;
}
.et-db #page-container #et-boc p + h3 {
  margin-top: 20px;
}

.et-db #page-container #et-boc p.surtitre + h2,
.et-db #page-container #et-boc p.surtitre + h3 {
  margin-top: 20px;
}

.et-db #page-container #et-boc .et_pb_text.surtitre div p:has(+ p),
.et-db #page-container #et-boc p.surtitre:has(+ p) {
  padding-bottom: 20px !important;
}

/*****************************************************************************/
/*************************** BACKGROUND COLOR  *******************************/

.et-db #page-container #et-boc .txt-blanc h2,
.et-db #page-container #et-boc .txt-blanc h3,
.et-db #page-container #et-boc .txt-blanc h4,
.et-db #page-container #et-boc .txt-blanc p:not(p.surtitre),
.et-db #page-container #et-boc .txt-blanc li {
  color: #fff !important;
}


/** section **/
.et-db #page-container #et-boc .et_pb_section{
  padding: 54px 0;
}

.et-db #page-container #et-boc .et_pb_section[class*="bg-"] {
  padding-bottom: 55px;
  padding-top: 55px;
}

.et-db #page-container #et-boc .et_pb_section:has(.et_pb_row[class*="bg-"]:last-child) + .et_pb_section:has(.et_pb_row[class*="bg-"]:first-child) {
  padding-top: 0;
}

.et-db #page-container #et-boc .et_pb_section:has(.et_pb_row[class*="bg-"].doc),
.et-db #page-container #et-boc .et_pb_section:has(.et_pb_row[class*="bg-"]) + .et_pb_section:has(.et_pb_row[class*="bg-"]:first-child),
.et-db #page-container #et-boc .et_pb_section:has(.et_pb_row[class*="bg-"]:last-child):is(:last-child, :has(+ .et_pb_section:has(.et_pb_row[class*="bg-"]:first-child))) {
  padding-bottom: 0;
}
/* row */
.et-db #page-container #et-boc .et_pb_row[class*="bg-"]{
  clip-path: inset(-1px -100vmax);
  padding-bottom: 65px;
  padding-top: 65px;
}

@media (max-width: 980px) {
  .et-db #page-container #et-boc .et_pb_row[class*="bg-"]{
    padding-top: 50px;
  }
}

@media(max-width: 768px){
  .et-db #page-container #et-boc .et_pb_section{
    padding: 25px 0;
  }
}

/* bleu */
.et-db #page-container #et-boc .et_pb_section.bg-bleu,
.et-db #page-container #et-boc .et_pb_module.bg-bleu {
  background-color: #2f3888 !important;
}
.et-db #page-container #et-boc .et_pb_row.bg-bleu {
  background-color: #2f3888;
  box-shadow: 0 0 0 100vmax #2f3888;
}
/* bleu fonce */
.et-db #page-container #et-boc .et_pb_section.bg-bleu-fonce,
.et-db #page-container #et-boc .et_pb_module.bg-bleu-fonce {
  background-color: #091b5d !important;
}
.et-db #page-container #et-boc .et_pb_row.bg-bleu-fonce {
  background-color: #091b5d;
  box-shadow: 0 0 0 100vmax #091b5d;
}
/* vert */
.et-db #page-container #et-boc .et_pb_section.bg-vert,
.et-db #page-container #et-boc .et_pb_module.vert {
    background-color: rgba(207, 212, 40, 0.07);
}
.et-db #page-container #et-boc .et_pb_row.bg-vert{
    background-color: rgba(207, 212, 40, 0.07);
    box-shadow: 0 0 0 100vmax rgba(207, 212, 40, 0.07);
}

/* bg-bleu-gris */

.et-db #page-container #et-boc .et_pb_section.bg-bleu-gris {
    background-color: rgba(9, 27, 93, 0.1);
}
.et-db #page-container #et-boc .et_pb_row.bg-bleu-gris {
    background-color: rgba(9, 27, 93, 0.1);
    box-shadow: 0 0 0 100vmax rgba(9, 27, 93, 0.1);
}
.et-db #page-container #et-boc .et_pb_module:has(> .et_pb_module.full.bg-bleu-gris) {
    padding-bottom: 10px;
}
@media(min-width: 981px) {
  .et-db #page-container #et-boc .et_pb_module:has(+ .et_pb_module.full.bg-bleu-gris) {
      padding-bottom: 10px;
  }
  .et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris + .et_pb_module{
      padding-top: 10px;
  }
}
.et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris::before {
    content: "";
    position: absolute;
    top: -25px;
    bottom: -15px;
    left: -100%;
    width: 120vw;
    background-color: rgba(9, 27, 93, 0.1);
    z-index: -1;
}

.et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris p{
    font-size: 1.25rem;
}

@media(max-width: 980px){
  .et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris::before {
    display: none;
  }
  .et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris {
    background-color: rgba(9, 27, 93, 0.1);
    padding: 1rem;
  }
  .et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris .et_pb_text_inner{
    width: 80%;
    margin: auto;
  }
  .et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris p{
      font-size: 1.2rem;
  }
}
@media(max-width: 550px){
  .et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris p{
      font-size: 1.15rem;
  }
}
@media(max-width: 450px){
  .et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris p{
      font-size: 1.1rem;
  }
}

@media(max-width: 375px){
  .et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris {
    background-color: inherit;
    padding: 0;
  }
  .et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris .et_pb_text_inner{
    width: 100%;
    margin: auto;
  }
  .et-db #page-container #et-boc .et_pb_module.full.bg-bleu-gris p{
      font-size: 1.05rem;
  }
}

/* bg-gris */

.et-db #page-container #et-boc .et_pb_section.bg-gris {
    background-color: rgba(9, 27, 93, 0.05);
}
.et-db #page-container #et-boc .et_pb_row.bg-gris {
    background-color: rgba(9, 27, 93, 0.05);
    box-shadow: 0 0 0 100vmax rgba(9, 27, 93, 0.05);
}
.et-db #page-container #et-boc .et_pb_module.full.bg-gris::before {
    content: "";
    position: absolute;
    top: -25px;
    bottom: -10px;
    left: -100%;
    width: 120vw;
    background-color: rgba(9, 27, 93, 0.05);
    z-index: -1;
}

/* contenu */
.et-db #page-container #et-boc .bg-transparent h2,
.et-db #page-container #et-boc .bg-transparent h3,
.et-db #page-container #et-boc .bg-transparent h4,
.et-db #page-container #et-boc .bg-transparent p,
.et-db #page-container #et-boc .bg-transparent li,
.et-db #page-container #et-boc .bg-transparent a:not(a.et_pb_button, a.btn),
.et-db #page-container #et-boc .bg-bleu h2,
.et-db #page-container #et-boc .bg-bleu h3,
.et-db #page-container #et-boc .bg-bleu h4,
.et-db #page-container #et-boc .bg-bleu p,
.et-db #page-container #et-boc .bg-bleu li,
.et-db #page-container #et-boc .bg-bleu-fonce h2,
.et-db #page-container #et-boc .bg-bleu-fonce h3,
.et-db #page-container #et-boc .bg-bleu-fonce h4,
.et-db #page-container #et-boc .bg-bleu-fonce p,
.et-db #page-container #et-boc .bg-bleu-fonce li,
.et-db #page-container #et-boc .bg-bleu-fonce a:not(a.et_pb_button, a.btn) {
  color: #fff;
}

.et-db #page-container #et-boc .bg-bleu-gris h2,
.et-db #page-container #et-boc .bg-bleu-gris h3,
.et-db #page-container #et-boc .bg-bleu-gris h4,
.et-db #page-container #et-boc .bg-bleu-gris p,
.et-db #page-container #et-boc .bg-bleu-gris li,
.et-db #page-container #et-boc .bg-bleu-gris a:not(a.et_pb_button, a.btn) {
  color: #091b5d;
}



.et-db #page-container #et-boc .bg-vert p.surtitre,
.et-db #page-container #et-boc .bg-vert li::marker{
    color:#CFD428 !important;
}

.et-db #page-container #et-boc .et_pb_row.eco p.surtitre{
    color: #fff!important;
}
.et-db #page-container #et-boc .et_pb_row.eco h2 {
    color: #CFD428!important;
}
.et-db #page-container #et-boc .et_pb_row.eco h2.after::after,
.et-db #page-container #et-boc .et_pb_row.bg-bleu.eco h2.after::after{
    border: solid 2px #CFD428;
}


/** specifique demi **/
.et-db #page-container #et-boc .et_pb_row.demi  {
  padding-top: 65px;
  padding-bottom: 65px;
}
.et-db #page-container #et-boc .et_pb_row.demi:not([class*="bg-"]):has(+ .et_pb_row.demi:not([class*="bg-"])){
  padding-bottom: 30px;
}
@media (max-width: 980px) {
  .et-db #page-container #et-boc .et_pb_row.demi.full {
    padding-bottom: 0;
  }
}
@media (max-width: 768px) {
  .et-db #page-container #et-boc .et_pb_row.demi  {
    padding-top: 35px;
    padding-bottom: 35px;
  }
  .et-db #page-container #et-boc .et_pb_row.demi.full  {
    padding-top: 35px;
  }
}
@media (max-width: 550px) {
  .et-db #page-container #et-boc .et_pb_row.demi  {
    padding-top: 35px;
    padding-bottom: 20px;
  }
}
.et-db #page-container #et-boc .et_pb_row.demi.full[class*="bg-"]  {
  padding-bottom: 0;
}
@media (max-width: 768px) {
  .et-db #page-container #et-boc .et_pb_row.demi.full[class*="bg-"]  {
    margin: 35px 0 35px 0;
  }
}
@media (max-width: 550px) {
  .et-db #page-container #et-boc .et_pb_row.demi.full[class*="bg-"]  {
    margin: 20px 0 20px 0;
  }
}
@media (max-width: 425px) {
  .et-db #page-container #et-boc .et_pb_row.demi.full[class*="bg-"]  {
    margin: 0 0 20px 0;
  }
}
@media (min-width: 981px) {
  .et-db #page-container #et-boc .et_pb_row.demi.full[class*="bg-"]  {
    padding-top: 0;
  }
  .et-db #page-container #et-boc .et_pb_section > .et_pb_row.demi:first-child:not([class*="bg-"])  {
    padding-top: 30px;
  }
  .et-db #page-container #et-boc .et_pb_section:has(+ .et_pb_section) > .et_pb_row.demi:last-child:not([class*="bg-"])  {
    padding-bottom: 30px;
  }
}

/* marge : enchainement de deux section avec bg */
/* =======================================================
   SUPPRESSION DES MARGES ENTRE ZONES COLORÉES (BG-)
   ======================================================= */

/* --- 1. SUPPRESSION DE LA MARGE BAS (Section du Haut) --- */
.et-db #page-container #et-boc .et_pb_section[class*="bg-"]:has(+ .et_pb_section[class*="bg-"]) {
    margin-bottom: 0;
    padding-bottom: 0;
}
.et-db #page-container #et-boc .et_pb_section[class*="bg-"]:has(+ .et_pb_section:has(> .et_pb_row:first-of-type[class*="bg-"])) {
    margin-bottom: 0;
    padding-bottom: 0;
}
.et-db #page-container #et-boc .et_pb_section:has(> .et_pb_row:last-of-type[class*="bg-"]):has(+ .et_pb_section:has(> .et_pb_row:first-of-type[class*="bg-"])) {
    margin-bottom: 0;
    padding-bottom: 0;
}
.et-db #page-container #et-boc .et_pb_section:has(> .et_pb_row:last-of-type[class*="bg-"]):has(+ .et_pb_section[class*="bg-"]) {
    margin-bottom:0;
    padding-bottom: 0;
}

/* --- 2. SUPPRESSION DE LA MARGE HAUT (Section du Bas) --- */
.et-db #page-container #et-boc .et_pb_section[class*="bg-"] + .et_pb_section[class*="bg-"],
.et-db #page-container #et-boc .et_pb_section[class*="bg-"] + .et_pb_section:has(> .et_pb_row:first-of-type[class*="bg-"]),
.et-db #page-container #et-boc .et_pb_section:has(> .et_pb_row:last-of-type[class*="bg-"]) + .et_pb_section[class*="bg-"],
.et-db #page-container #et-boc .et_pb_section:has(> .et_pb_row:last-of-type[class*="bg-"]) + .et_pb_section:has(> .et_pb_row:first-of-type[class*="bg-"]) {
    margin-top: 0 !important;
}
.et-db #page-container #et-boc .et_pb_section[class*="bg-"] + .et_pb_section[class*="bg-"] {
    padding-top: 0 !important;
}


/*****/
/* enchainement de deux row qui on un bg-  */
.et-db #page-container #et-boc .et_pb_row[class*="bg-"]:has(+ .et_pb_row[class*="bg-"]) {
  padding-bottom: 0;
}
/****/
/* enchainement d'une row qui à qu'un seul titre */
.et-db #page-container #et-boc .et_pb_section > .et_pb_row:has(+ .et_pb_row):not(:has(.et_pb_image, p, .et_pb_blurb, .et_pb_video, a)) {
  padding-bottom: 0;
}
.et-db #page-container #et-boc .et_pb_section > .et_pb_row[class*="bg-"]:has(+ .et_pb_row[class*="bg-"]):not(:has(.et_pb_image, p, .et_pb_blurb, .et_pb_video, a)) h2,
.et-db #page-container #et-boc .et_pb_section[class*="bg-"] > .et_pb_row:has(+ .et_pb_row):not(:has(.et_pb_image, p, .et_pb_blurb, .et_pb_video, a)) h2,
.et-db #page-container #et-boc .et_pb_section > .et_pb_row[class*="bg-"]:has(+ .et_pb_row[class*="bg-"]):not(:has(.et_pb_image, p, .et_pb_blurb, .et_pb_video, a)) h3,
.et-db #page-container #et-boc .et_pb_section[class*="bg-"] > .et_pb_row:has(+ .et_pb_row):not(:has(.et_pb_image, p, .et_pb_blurb, .et_pb_video, a)) h3 {
  margin-bottom: 0;
}
@media (max-width: 980px) {
  .et-db #page-container #et-boc .et_pb_section > .et_pb_row:has(+ .et_pb_row):not(:has(.et_pb_image, p, .et_pb_blurb, .et_pb_video, a)) + .et_pb_row {
    padding-top: 20px;
  }
}

/*****/
/* enchainement banner hero puis section bg gris */
.et-db #page-container #et-boc .et_pb_section.ep_banner-hero + .et_pb_section[class*="bg-"],
.et-db #page-container #et-boc .et_pb_section.ep_banner-hero + .et_pb_section:has(> .et_pb_row:first-of-type[class*="bg-gris"]) {
  margin-top: 0;
}

/*********************************************/
/*********** Boutons Global ******************/

.et-db #page-container #et-boc input[type="submit"],
.et-db #page-container #et-boc .btn,
.et-db #page-container #et-boc .et_pb_button,
.et-db #page-container #et-boc .btn.bleu,
.et-db #page-container #et-boc .et_pb_button.bleu {
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  font-size: 1rem;
  letter-spacing: 0.055em;
  padding: 0.9rem 2.2rem 0.8rem 2.2rem !important;
  background-color: #091b5d;
  color: #fff;
  border: solid 2px #091b5d;
  border-radius: 40px;
  font-weight: 900;
  line-height: 1.4 !important;
  margin-bottom: 2rem;
  display: block;
  width: max-content;
}
.et-db #page-container #et-boc .btn:hover,
.et-db #page-container #et-boc .et_pb_button:hover,
.et-db #page-container #et-boc .btn.bleu:hover,
.et-db #page-container #et-boc .et_pb_button.bleu:hover {
  color: #091b5d;
  background-color: transparent;
}

.et-db #page-container #et-boc .et-l .et_pb_section:not(.banner) .et_pb_column > .et_pb_button_module_wrapper:last-child {
  padding-bottom: 20px;
}

/* bg-bleu et btn blanc */
.et-db #page-container #et-boc .bg-bleu .btn,
.et-db #page-container #et-boc .bg-bleu .et_pb_button,
.et-db #page-container #et-boc .btn.blanc,
.et-db #page-container #et-boc .et_pb_button.blanc {
  background-color: #fff;
  color: #2f3888;
  border: solid 2px #fff;
}
.et-db #page-container #et-boc .bg-bleu-fonce .btn,
.et-db #page-container #et-boc .bg-bleu-fonce .et_pb_button {
  background-color: #fff;
  color: #091b5d;
  border: solid 2px #fff;
}
.et-db #page-container #et-boc .bg-bleu .btn:hover,
.et-db #page-container #et-boc .bg-bleu .et_pb_button:hover,
.et-db #page-container #et-boc .bg-bleu-fonce .btn:hover,
.et-db #page-container #et-boc .bg-bleu-fonce .et_pb_button:hover,
.et-db #page-container #et-boc .btn.blanc:hover,
.et-db #page-container #et-boc .et_pb_button.blanc:hover {
  color: #fff;
  background-color: transparent;
}

/* btn rouge */
.et-db #page-container #et-boc .btn.rouge,
.et-db #page-container #et-boc .et_pb_button.rouge {
  background-color: #ff000c;
  color: #fff;
  border: solid 2px #ff000c;
}

.et-db #page-container #et-boc  .btn.rouge:hover,
.et-db #page-container #et-boc  .et_pb_button.rouge:hover {
  background-color: transparent;
}

.et-db #page-container #et-boc .et_pb_section:not(.banner-home):not(.bg-bleu-fonce) .btn.rouge:hover,
.et-db #page-container #et-boc .et_pb_section:not(.banner-home):not(.bg-bleu-fonce) .et_pb_button.rouge:hover {
  background-color: transparent;
  color: #ff000c;
}

/* bouton vert */
.et-db #page-container #et-boc .et_pb_button.vert{
    background-color: #CFD428;
    color: #091B5D;
    border: solid 2px #CFD428;
}
.et-db #page-container #et-boc .et_pb_button.vert:hover{
    background-color: transparent;
    color: #CFD428;
}

/* bouton fixe */
.et-db #page-container #et-boc .et_pb_section:not(.banner-home) .et_pb_button.fixed-btn {
  position: fixed;
  bottom: 15%;
  right: 19%;
  z-index: 20;
  opacity: 0;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.3s ease;
}

.et-db #page-container #et-boc .et_pb_section:not(.banner-home) .et_pb_button.fixed-btn.visible {
  opacity: 1;
  pointer-events: auto;
}

.et-db #page-container #et-boc .et_pb_section:not(.banner-home) .et_pb_button.fixed-btn:hover{
  background-color: #fff;
}

.et-db #page-container #et-boc .btn.petit,
.et-db #page-container #et-boc .et_pb_button.petit {
  padding: 0.6rem 2.6rem 0.5rem 2.6rem !important;
}

@media (max-width: 1023px) {
  .et-db #page-container #et-boc .et_pb_section:not(.banner-home) .et_pb_button.fixed-btn {
    bottom: 2rem;
    left: 50%;
    right: auto;
    width: auto;
    transform: translateX(-50%);
  }
}

@media (max-width:980px) {
  .et-db #page-container #et-boc .demi .btn,
  .et-db #page-container #et-boc .demi .et_pb_button {
      margin-bottom: 30px;
  }
}

@media (max-width: 767px) {
  .et-db #page-container #et-boc .et_pb_section:not(.banner-home) .et_pb_button.fixed-btn {
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    transform: none;
    border-radius: 0 0 0 0;
    margin-bottom: 0;
  }
}

@media (max-width:450px) {
  .et-db #page-container #et-boc .btn,
  .et-db #page-container #et-boc .et_pb_button,
  .et-db #page-container #et-boc .et_pb_button.bleu {
    font-size: 0.95rem;
  }
}
@media (max-width:375px) {
  .et-db #page-container #et-boc .btn,
  .et-db #page-container #et-boc .et_pb_button,
  .et-db #page-container #et-boc .et_pb_button.bleu {
    font-size: 0.9rem;
    width: auto;
    padding :0.9rem 2rem 0.8rem 2rem !important;
  }
  .et-db #page-container #et-boc .right .et_pb_button_module_wrapper {
    justify-content: flex-start !important;
  }
}

/*********************************************/
/******************* Tag *********************/

.et-db #page-container #et-boc p.tag {
  background-color: #009DE0;
  border-radius: 50px;
  padding: 7px 32px !important;
  text-align: center;
  width: fit-content;
  font-size: 1.12rem;
  font-weight: 800;
  margin-bottom: 30px;
}
.et-db #page-container #et-boc .bg-bleu p.tag {
  color: #2F3888 !important;
}
.et-db #page-container #et-boc .bg-bleu p.tag {
  color: #091b5d !important;
}
.et-db #page-container #et-boc h2:has(+ p.tag) {
  margin-bottom: 0;
}

.et-db #page-container #et-boc p.highlight {
  display: inline-block;
  margin: 0 0.6rem 1.5rem 0;
  padding: 0.5rem 2rem !important;
  background-color: rgba(9, 27, 93, 0.1);
  font-weight: 400;
  text-align: center;
  border-radius: 6px;
}
.et-db #page-container #et-boc h5 + p.highlight,
.et-db #page-container #et-boc h6 + p.highlight  {
  display: inline-block;
  margin: 1.5rem 0 ;
}
.et-db #page-container #et-boc p.highlight.bleu-fonce {
  background-color: rgba(9, 27, 93, 1) ;
  color: #fff !important;
}
.et-db #page-container #et-boc p.highlight.bleu-gris{
    background-color: rgba(9, 27, 93, 0.4);
    color: #fff;
}

/*********************************************/
/******************* ul *********************/

.et-db #page-container #et-boc #et-main-area ul.big li {
  font-size: 1.125rem;
  line-height: 1.7;
  font-weight: 600;
  padding-bottom: 20px;
}
.et-db #page-container #et-boc #et-main-area ul.big li p {
  font-weight: 400;
}

.et-db #page-container #et-boc #et-main-area ul.xbig {
  padding-left: 0;
  margin-left: 0;
}
.et-db #page-container #et-boc #et-main-area ul.xbig li {
  font-size: 1.5rem;
  list-style: none;
  padding-left: 0;
  margin-left: 0;
  line-height: 1.9;
  font-weight: 700;
}

@media(max-width: 550px){
  .et-db #page-container #et-boc #et-main-area ul.xbig li{
    font-size: 1.3rem;
  }
}

@media(max-width: 425px){
  .et-db #page-container #et-boc #et-main-area ul.xbig li{
    font-size: 1.2rem;
  }
}

@media(max-width: 375px){
  .et-db #page-container #et-boc #et-main-area ul.xbig li{
    font-size: 1rem;
  }
}

/**************   Videos YT  ***********************************************/
a.ytp-impression-link {
  display: none !important;
}

/***** recapcha ****/
.grecaptcha-badge { visibility: hidden !important; }
