/* =========================
   Dots (style "dash")
   ========================= */

  .et-db #page-container #et-boc .et-l .et_pb_row.demi{
  margin: auto;
  }

.et-db #page-container #et-boc .et-l .et_pb_row.demi.carousel{
  --dots-w: 21px;        /* largeur dot inactif */
  --dot-active-w: 84px;  /* largeur dot actif */
  --dots-h: 7px;         /* hauteur */
  --dots-gap: 12px;      /* espacement */
  --dot-color: #363636;  /* couleur */
  --dot-o-inactive: .3;  /* opacité inactif */
  --dot-o-active: 1;     /* opacité actif */
}

.et-db #page-container #et-boc .et-l .et_pb_row.demi.carousel .fd-dots{
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 10%;
  display: flex;
  gap: var(--dots-gap);
  align-items: center;
  z-index: 3;
  pointer-events: auto;
}

.et-db #page-container #et-boc .et-l .et_pb_row.demi.carousel .fd-dot{
  width: var(--dots-w);
  height: var(--dots-h);
  border-radius: 999px;
  background: var(--dot-color);
  opacity: var(--dot-o-inactive);
  border: 0;
  padding: 0;
  cursor: pointer;
  position: relative;
  -webkit-tap-highlight-color: transparent;
  transition: width .3s ease, opacity .3s ease;
}

.et-db #page-container #et-boc .et-l .et_pb_row.demi.carousel .fd-dot.is-active{
  width: var(--dot-active-w);
  opacity: var(--dot-o-active);
}


.et-db #page-container #et-boc .et-l .et_pb_row.demi.carousel .carousel-dots{
  left: 50%;
  transform: translateX(-50%);
}


.et-db #et-boc .et-l .carousel.demi .carousel-dots{
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  top: -4rem;
  left: 70%;
  gap: 0.5rem;
}

.et-db #et-boc .et-l .carousel.demi .carousel-dots .carousel-dot{
  width: 31px;
  height: 7px;
  border-radius: 50px;
  background-color: var(--light-grey);
  border: inherit;
  cursor: pointer;
}

.et-db #et-boc .et-l .carousel.demi .carousel-dots .carousel-dot.is-active{
  width: 84px;
  background-color: var(--dark-grey);
}


.et-db #et-boc .et-l .carousel.demi .carousel-dots {
  top: inherit;
  bottom: 2rem;
  left: 25%;
  z-index: 2;
}


/* dot version sans demi */
.et-db #et-boc .et-l .carousel .carousel-dots{
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  top: -4rem;
  left: 70%;
  gap: 0.5rem;
}

.et-db #et-boc .et-l .carousel .carousel-dots .carousel-dot{
  width: 31px;
  height: 7px;
  border-radius: 50px;
  background-color: var(--light-grey);
  border: inherit;
  cursor: pointer;
}

.et-db #et-boc .et-l .carousel .carousel-dots .carousel-dot.is-active{
  width: 84px;
  background-color: var(--dark-grey);
}

.et-db #et-boc .et-l .et_pb_section.bg-gris-fonce:has(.carousel) .carousel-dots .carousel-dot.is-active{
  background-color: #fff;
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .carousel .carousel-dots{
    top: -2rem;
    left: inherit;
    right: 0;
}

@media(max-width: 1083px){
  .et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .carousel:not(.specifique) .carousel-dots{
      top: -1rem !important;
  }

  .single-post.et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .carousel:not(.specifique) .carousel-dots{
    top: inherit !important;
  }
}

@media(max-width: 520px){
  .et-db #et-boc .et-l .et_pb_section:has(.carousel:not(.demi)) .carousel:not(.specifique) .carousel-dots{
    top: 0 !important;
    left: 50% !important;
    transform: translateX(-50%);
    right: inherit;
  }

  .et-db #et-boc .et-l .et_pb_section:has(.carousel.liste-actualite:not(.demi)) .carousel:not(.specifique) .carousel-dots{
    top: inherit !important;
    bottom: 0;
  }
}



/**********************************************************************************************************************************/
/*********** le style des dots en gauche droite (prev - next) a besoin de l'option two_dots="yes" positionner sur le shortcode ****/
/**********************************************************************************************************************************/

.et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dots{
    position: static;
}

.et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-prev{
    position: absolute;
    top: 50%;
    left: -5rem;
    transform: translateY(-50%);
    background-color: #fff;
    width: 5rem;
    height: 5rem;
    border: 1px solid #f2f2f2;
    display: flex;
    justify-content: center;
    align-items: center;
}

.et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-prev:after{
    font-family: "ETmodules" !important;
    content: "\23";
    font-size: 2em;
    font-weight: bold;
    color: var(--black-color);
}

.et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-next{
    position: absolute;
    top: 50%;
    right: -5rem;
    transform: translateY(-50%);
    background-color: #fff;
    width: 5rem;
    height: 5rem;
    border: 1px solid #f2f2f2;
}

.et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-next:after{
    font-family: "ETmodules" !important;
    content: "\24";
    font-size: 2em;
    font-weight: bold;
}

.et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-next,
.et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-prev{
    background-color: var(--secteur-color);
    border: 1px solid var(--secteur-color);
}

.et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-next:disabled,
.et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-prev:disabled{
    background-color: #fff;
    border: 1px solid #f2f2f2;
}

@media(max-width: 1606px){
  .et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-prev{
    left: -4rem;
  }
 .et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-next{
    right: -4rem;
 }
}

@media(max-width: 1606px){
  .et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-prev{
    left: -3rem;
  }
 .et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-next{
    right: -3rem;
 }
}

@media(max-width: 980px){
  .et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-prev{
    left: -1rem;
    z-index: 9;
    width: 3rem;
    height: 3rem;
  }
 .et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-next{
    right: -1rem;
    z-index: 9;
    width: 3rem;
    height: 3rem;
 }
}

@media(max-width: 530px){
    .et-db #et-boc .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots:not(.demi)) .carousel .carousel-dots{
      transform: inherit;
    }
    .et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-prev{
      width: 2rem;
      height: 3rem;
    }
    .et-db #et-boc #et-main-area .et-l .et_pb_section:has(.carousel-secteur.carousel-two-dots) .carousel-dot-next{
      width: 2rem;
      height: 3rem;
    }
}


/**********************************************************************/
/*********** Section content list (specifique REALISATION) ************/
/**********************************************************************/
.et-db #et-boc .et-l .et_pb_section:has(.carousel.liste-realisation:not(.demi)) .carousel .carousel-dots {
  top: inherit !important;
  bottom: -3rem;
  left: 50%;
  transform: translateX(-50%);
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel.liste-realisation:not(.demi)) .carousel .carousel-dots .carousel-dot{
  background: #000;
  opacity: 0.3;
}

.et-db #et-boc .et-l .et_pb_section:has(.carousel.liste-realisation:not(.demi)) .carousel .carousel-dots .carousel-dot.is-active{
  opacity: 1;
}

@media(max-width: 980px){
  .et-db #et-boc .et-l .et_pb_section:has(.carousel.liste-realisation:not(.demi)) .carousel .carousel-dots {
    bottom: 0;
  }
}