/*
Theme Name: Offre numérique
Theme URI: https://offre-numerique.antho-web.com
Author: AnthoWeb
Author URI: https://antho-web.com
Description: Le thème de l'offre numérique
Version: 1.0
Requires at least: 5.0
Tested up to: 5.4
Requires PHP: 7.0
Text Domain: anthoweb
*/

#dashboard-widgets-wrap {
  display: none;
}

/*** COOKIES YES ****/
.cky-btn-revisit-wrapper.cky-revisit-bottom-left {
  bottom: 70px !important;
}

/*** WORDPRESS ****/

/* Banière accueil */
.wp-element-button {
  background: var(--second);
}

.btn-calender-creneau:hover {
  background-color: var(--second);
}

.btn-calender-creneau {
  color: var(--second);
  border: solid 1px var(--second);
}

.aligncenter {
  text-align: center;
}

article .d-block img {
  float: none !important;
}

.ImgBan3 {
  min-width: 100vw;
}
header.th1 > div {
  margin-bottom: 30px;
}

header.th1 {
  padding-top: 30px;
}

.text {
  padding: 0 15px;
  width: 100%;
}

h2.titlePrestation a {
  color: inherit;
  text-decoration: none;
}

.custom-container {
  max-width: 1320px;
  width: 100%;
  margin: 0 auto;
}
section#prestationHome .containerImg,
section#giteHome .containerImg,
.services .imageBloc {
  max-height: 300px;
}

.containerPrestationHomeT3 {
  flex-wrap: wrap;
  justify-content: center;
  gap: 5px;
}

.containerPrestationHomeT3 > div,
.containerPrestationHomeT3 > a {
  flex: 0 1 calc(33.333% - 10px); /* 3 éléments par ligne */
  box-sizing: border-box; /* Évite que le padding casse le calcul */
  text-align: center;
  border-radius: var(--borderRadius);
  overflow: hidden;
  background-color: transparent;
}

.product-home-title {
  text-align: center;
}

li.list-item {
  list-style-type: none;
}
#products-home {
  margin-top: 150px;
}
#CategorieHomeTH4 {
  margin-top: 150px;
}

/* Partenaires */

#partenaires {
  background: var(--second);
  padding: 5px;
}

#partenaires .image {
  max-height: 300px;
  width: fit-content;
}

#partenaires .item {
  width: auto;
}
#partenaires .item h3 {
  font-size: 0.8em;
}
/* Fin Partenaires */
.topbar i.fab {
  font-size: 2em;
}
.wp-block-image.aligncenter {
  display: block;
}
.mr5 {
  margin-right: 5px;
}
.ml5 {
  margin-left: 5px;
}
.mr10 {
  margin-right: 10px;
}
.mr15 {
  margin-right: 15px;
}
.ml15 {
  margin-left: 15px;
}
.mt15 {
  margin-top: 15px;
}
.mt20 {
  margin-top: 20px;
}

.mt50 {
  margin-top: 50px;
}

.color-menu {
  color: var(--colorMenu);
}

.hidden {
  display: none;
}

.success {
  background-color: #58d971;
  color: #fff;
}
.blue {
  background-color: #44aad4;
  color: #fff;
}
.orange {
  background-color: #d48244;
  color: #fff;
}
.purple {
  background-color: #d444c7;
  color: #fff;
}
.danger {
  background-color: #d44444;
  color: #fff;
}
.icone-warning {
  color: #d48244;
}

.grey a,
.grey {
  color: grey !important;
}

.wp-post-image {
  max-width: 100%;
  height: auto;
}

/* Masquer les sous-menus par défaut */
.dropdown-menu .dropdown-menu {
  left: 100%; /* Décale le sous-menu à droite */
  top: 0;
}

.secondChild:hover + .dropdown-menu,
.secondChild + .dropdown-menu:hover {
  display: block;
}

.dropdown-menu.show {
  background: var(--primary);
  color: var(--colorMenu);
  border-radius: 0;
  margin: auto;
  width: 30vw;
}

.dropdown-item {
  text-wrap: wrap;
}

/* Dans votre fichier CSS chargé après Bootstrap */
.navbar-nav .dropdown-menu {
  min-width: 0 !important;
  white-space: nowrap;
  width: max-content;
}

.admin-prestations-bloc {
  border-radius: 15px;
}

.admin-prestations-bloc label {
  font-weight: bold;
  color: #000;
}

.admin-prestations-bloc p {
  font-style: italic;
}

code.start_info {
  position: absolute;
  background: #fff;
  box-shadow: #444 0px 0px 4px;
  padding: 5px;
  border-radius: 10px;
  z-index: 999;
  right: 0;
  /* top: 0; */
  opacity: 0.8;
}

.border-dashed-bottom {
  border-bottom: dashed 1px #000;
}

.blink_me {
  animation: blinker 0.5s linear 3;
}

@keyframes blinker {
  50% {
    opacity: 0;
  }
}

#video-accueil {
  max-width: 100%;
}

.navbar-toggler-icon {
  color: var(--colorMenu);
}

.rotate-icon {
  transform: rotate(90deg); /* Cela fait pivoter l'icône de 90 degrés */
  transition: transform 0.3s; /* Ajoute un effet de transition pour la rotation */
}

.bg-main {
  background-color: var(--primary) !important;
  color: var(--colorMenu) !important;
  /*border : solid 1px var(--colorMenu); */
}

.color-second {
  color: var(--second) !important;
}

.color-main {
  color: var(--primary) !important;
}

.bg-second {
  background-color: var(--second) !important;
}

.bg-header {
  background-color: var(--primary);
}

.bg-header a {
  color: var(--colorMenu);
  /*font-family: var(--fontMenu);*/
}

.bg-header a:hover {
}

h3 {
  color: var(--colorTitle);
  font-family: var(--fontTitle);
}

h2 {
  color: var(--colorTitle);
  font-family: var(--fontTitle);
  z-index: 20;
  position: relative;
}

p {
  font-family: var(--fontParagraph);
}

body {
  background-image: var(--urlBackgroundImage) !important;
  background-size: cover;
  background-color: var(--background) !important;
  color: var(--colorText) !important;
  font-family: var(--fontParagraph) !important;
}

.front-header {
  text-align: center;
  padding: 1em;
  margin-bottom: 50px;
  background-color: #ff8e4cba;
  color: #fff;
}

.home .topbar + header.transparent {
  top: 75px;
}

.home header.transparent {
  position: absolute !important;
  background-color: transparent !important;
}
header.transparent {
  width: 100%;
  padding: 10px 0;
  top: 30px;
  left: 0px;
  z-index: 10;
  box-shadow: none !important;
}

header.transparent .nav-link {
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.7);
}

header.th1 {
  padding-top: 30px;
  padding-bottom: 30px;
}

.th4 {
  height: 70vh;
  position: relative;
  background-size: cover;
}

.content a.btn {
  /*color: var(--colorMenu) !important;*/
  border: solid 1px var(--colorMenu) !important;
}
.th4 .content a {
  margin-top: 25px;
  text-decoration: none;
  color: var(--colorMenu);
}
.th4 .content h1 {
  color: var(--colorMenu);
  margin-bottom: 25px;
}
.th4 .content {
  color: var(--colorMenu);
  padding: 25px;
}

.overlay {
  background: var(--primary-transparent);
  height: 100%;
  width: 50vw;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.admin-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1em;
  background-color: #ff8e4cba;
  color: var(--second);
}

.front-footer {
  text-align: center;
  padding: 1em;
  margin-top: 50px;
  position: absolute;
  bottom: 0px;
  background-color: #0954deba;
  color: #fff;
  width: 100%;
}

footer a {
  text-decoration: none;
}

footer {
  color: var(--colorMenu);
  border-top: solid 2px var(--second);
  z-index: 222;
  position: relative;
}

#menu-main-footer {
  padding-left: 0;
}

.admin-footer {
  text-align: center;
  padding: 1em;
  margin-top: 50px;
  bottom: 0px;
  background-color: #0954deba;
  color: #fff;
  width: 100%;
}

.content-body {
  display: flex;
}

.left_menu a {
  color: var(--colorMenu);
}
#admin .left_menu a {
  color: #fff !important;
}
.left_menu {
  background-color: var(--primary);
  min-height: 100%;
  flex: 2;
  position: relative;
  padding: 10px;
}

.card {
  flex: 8;
  color: #000;
}

.card-body table {
  width: 100%;
}

#admin {
  color: var(--colorText);
}

.content-admin {
  flex: 10;
  background-color: var(--background);
  padding: 10px;
  position: relative;
  min-height: 100%;
}

.nav-link {
  font-family: var(--fontTitle);
  margin: 0 10px;
}

a.nav-link.active,
a.nav-link:hover {
  color: var(--second);
  border-bottom: solid;
  transition: color 0.9s ease-in-out;
}
.dropdown-item:focus,
.dropdown-item:hover {
  color: var(--second) !important;
  background: none !important;
  transition: color 0.9s ease-in-out;
}

footer .nav-link {
  color: var(--colorMenu);
  font-family: var(--fontMenu);
  padding: 0px;
}

/** Fin layout */

/* Formualire de connexion */

.form-connexion .card-title {
  text-align: center;
}
/* Fin formulaire de connexion */

#PrestaHomeTH4 {
  padding: 50px 0;
}

#PrestaHomeTH4 ul {
  list-style-type: none; /* Supprime le style de puce par défaut */
  padding-left: 1em; /* Ajoutez un peu d'espace pour notre puce personnalisée */
}

#PrestaHomeTH4 ul li {
  position: relative; /* Position relative pour positionner notre puce personnalisée */
  margin-bottom: 10px; /* Espace entre les éléments de la liste */
}

#PrestaHomeTH4 ul li::before {
  content: ""; /* Contenu vide pour notre puce personnalisée */
  position: absolute;
  left: -1em; /* Positionne la puce à gauche du texte */
  top: 10px;
  transform: translateY(
    -50%
  ); /* Centre la puce verticalement par rapport au texte */
  width: 6px;
  height: 6px;
  border-radius: 50%; /* Rend la puce parfaitement ronde */
  background-color: var(--second); /* Couleur de la puce */
}

/*** A la ligne quand + de 6 presta ***/

.tworows div {
  flex: 0 0 30% !important;
  margin-bottom: 25px;
}

.tworows {
  flex-wrap: wrap;
}

#PrestaHomeTH4 .title {
  color: var(--colorMenu);
}

.wp-block-details-is-layout-flow p {
  margin-top: 25px;
}

.wp-block-details-is-layout-flow {
  background: linear-gradient(to bottom, var(--primary) 90%, #efefef);
  color: #333;
  padding: 15px;
  border: none;
  border-radius: 10px;
  margin-bottom: 25px;
  /* padding-bottom: 25px; */
}

#PrestaHomeTH4 .content-prestations {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px; /* Espacement entre les blocs */
  width: 80%; /* Vous pouvez ajuster selon vos besoins */
  margin: 50px auto; /* Centrer le conteneur sur la page */
}

#PrestaHomeTH4 .square h4 {
  text-align: center;
  color: var(--second);
}
#PrestaHomeTH4 .square {
  position: relative;
  width: 100%; /* Prend toute la largeur de la colonne de grille */
  padding: 30px 15px 0 5px;
  background-color: var(--background);
  color: var(--colorText);
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  border-radius: 10px;
  font-size: 0.9em;
}

#PrestaHomeTH4 .circle {
  position: absolute;
  top: -25px; /* La moitié de la taille du cercle */
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  height: 50px;
  background-color: var(--background);

  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

#PrestaHomeTH4 .circle img {
  color: var(--primary);
  height: 40px;
  width: 40px;
  border-radius: 40%;
}

.prestations-bloc-acc {
  flex: 9 !important;
}

.prestations-bloc-acc div {
  min-width: 33%;
}

/* Theme 0 */
.bloc-title {
  padding: 35vh 0;
  margin-bottom: 50px;
  background-repeat: no-repeat;
  background-color: #cac1b8;
  background-size: cover;
  background-position: center;
}

.bloc-title h1 {
  color: var(--colorTitle);
  background-color: var(--second);
  width: 50%;
  float: right;
  padding: 15px;
  font-family: var(--fontTitle);
  /* opacity: 0.8; */
}

/*Theme 1 */
.th1.bloc-title div.backSlider {
  background-color: var(--primary);
  width: 30%;
  float: right;
  height: 100%;
  padding: 25vh 0;
  font-family: var(--fontTitle);
  margin-bottom: 0;
  opacity: 0.9;
}

.th1.bloc-title h1 {
  color: var(--colorMenu);
  margin-left: -15vw;
  background: var(--primary);
  padding: 30px 0;
  border-top: solid 1px white;
  border-bottom: solid 1px white;
  width: 90%;
 /* margin-top: 45%;
  margin-bottom: 45%;*/
  float: none;
  /* opacity: 1 !important; */
}

h1.th3-title {
  color: var(--colorTitle);
  font-family: var(--fontTitle);
  text-align: center;
  margin-top: 50px;
  margin-bottom: 0px;
}

.th1.bloc-title {
  padding: 0;
  margin-bottom: 50px;
  background-repeat: no-repeat;
  background-color: #cac1b8;
  background-size: cover;
  background-position: center;
}

.title {
  text-align: center;
  color: #fff;
}

.image {
  max-width: 100%;
}

article {
  padding: 15px;
  margin: 0px 0;
}

/*article:last-child
 	{
 		margin-bottom : 0px;
 	}*/

strong {
  color: var(--second);
}

.eq div {
  flex: 1;
}

/*	ul
 	{
 		
 		margin-left:  0;
 		padding-left:  0;
 	}*/
footer ul {
  list-style-type: none;
}

footer a {
  color: #fff;
}

h2.title-item {
  text-align: center;
  font-size: 2em;
}

.containerImgBan3 {
  background-size: cover;
  background-position: center;
  background-attachment: fixed; /* effet parallax */
  height: 90vh;
  width: 100%;
}

.bandeau-title h1 {
  color: var(--second);
  font-family: var(--fontTitle);
  font-size: 2em;
  margin: 25px 0;
}

.bandeau-title {
  border-bottom: solid 2px var(--second);
  margin-bottom: 0px;
}

.titlePrestation {
  margin-bottom: 20px;
}

.card-tarif {
  max-width: 250px;
  margin: 0 30px;
}

.card-tarif .card-title {
  font-weight: bold;
}

.card-tarif-footer {
  color: var(--second);
  font-weight: bold;
  font-size: 2em;
}

.bloc-image {
  position: relative;
  overflow: hidden;
  padding: 0;
}

.legend-realisation {
  position: absolute;
  background: #000000c7;
  color: #fff;
  padding: 10px;
  bottom: 0;
  z-index: 2;
  width: 100%;
}

.imgSingleRea img {
  max-height: 50vh;
}

article.entrepriseBloc {
  background-color: var(--second);
  color: var(--primary);
}

.entrepriseBloc h2 {
  color: var(--primary);
}

.entrepriseBloc b,
.entrepriseBloc strong {
  color: var(--background) !important;
}
.entrepriseBloc .separation {
  background-color: var(--background);
}

.bloc-image img {
  position: relative;
  z-index: 3;
}

.bloc-image img:hover {
  z-index: 1;
}

.legend-realisation:hover {
  z-index: 4;
}

footer div:nth-child(3) {
  text-align: right;
}

article.service-bloc:nth-child(odd) h2 {
  color: var(--colorMenu);
}

article.service-bloc:nth-child(odd) img {
  /*float: right;*/
}

article {
  padding: 50px;
}

article.service-bloc:nth-child(odd) {
  background-color: var(--primary);
  color: var(--colorMenu);
}

.service-bloc .services-content {
  margin: 0 auto;
}

.services-content .img {
  overflow: hidden;
}

.services-content .img img,
.page-template-template-entreprise-php img {
  border-radius: var(--borderRadius);
  /* height:  100%;*/
}

.prestationBloc2:hover {
  cursor: pointer;
}

.prestationBloc2 p,
.prestationBloc2 h4,
.giteBloc2 p,
.giteBloc2 h4 {
  color: var(--colorMenu);
}

.prestationBloc2 h2 {
  color: var(--colorMenu);
}

.prestationBloc2,
.giteBloc2 {
  background-color: var(--primary);
  opacity: 0.8;
  height: 100%;
  position: relative;
  transform-style: flat;
  transition: transform 0.5s ease-in-out, opacity 0.6s ease-in-out;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 25vh;
  padding: 10px;
  text-wrap-mode: wrap;
}

.giteBloc2:hover,
.giteBloc2:hover a.btn-learn,
.prestationBloc2:hover,
.prestationBloc2:hover a.btn-learn {
  opacity: 1;
  transform: perspective(100px) rotateY(0deg);
}

a.btn-learn:hover {
  color: var(--second);
}
a.btn-learn {
  position: absolute;
  bottom: 20px;
  left: 0;
  width: 100%;
  text-align: center;
  opacity: 0;
  text-decoration: none;
  color: var(--colorMenu);
  transition: color 0.9s ease-in-out;
}

.imageBloc {
  position: relative;
}
section.services .prestationBloc:hover,
section.services .giteBloc:hover {
  cursor: pointer;
}
section.services .prestationBloc:hover h4,
section.services .giteBloc:hover {
  color: var(--second);
}
section.services .prestationBloc:hover .imageBloc:before,
section.services .giteBloc:hover .imageBloc:before {
  opacity: 0.3;
  transform: perspective(100px) rotateY(0deg);
}
section.services .imageBloc:before {
  content: "";
  display: block;
  position: absolute;
  pointer-events: none;
  top: 0;
  right: 0;
  height: 100%;
  left: 0;
  background-color: var(--primary);
  opacity: 0;
  transform-origin: right center 0;
  transform: perspective(100px) rotateY(-120deg);
  transform-style: flat;
  transition: transform 0.5s ease-in-out, opacity 0.2s ease-in-out;
}

.rounded-img {
  border-radius: 100px;
  width: 100px;
  background-color: #efefef;
}

.testi-content {
  min-height: 300px;
}

#testimonial .points i.text-white:before {
  border: solid 2px var(--second);
  border-radius: 100%;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.25),
    0 0 0 2px rgba(255, 255, 255, 0.2) inset;
}

#testimonial .points i.text-dark:before {
  border: solid 1px #efefef;
  border-radius: 100%;
}

.btn-style-square:hover {
  background-color: var(--second) !important;
  color: var(--colorMenu) !important;
}

a.btn-style-square {
  background-color: transparent !important;
  border: solid 2px var(--second) !important;
  color: var(--second) !important;
  padding: 50px 20px;
}

.arrow-testimonial:hover {
  cursor: pointer;
}

.tada:hover {
  -webkit-animation-name: tada;
  animation-name: tada;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes tada {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}
@keyframes tada {
  0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
  10%,
  20% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
  }
  30%,
  50%,
  70%,
  90% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
  }
  40%,
  60%,
  80% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
    transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
  }
  100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeOutRight {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
× .fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeOutLeft {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
× .fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
@-webkit-keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  100% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

/*** Partenaires ****/
.partenaires-section-title {
  margin-top: 50px;
  margin-bottom: 1.5rem;
  text-align: center;
}

/*** Temoignages ***/
.testimonial-section-title {
  margin-top: 0px;
  margin-bottom: 1.5rem;
  text-align: center;
}
#testimonial label {
  font-weight: bold;
  font-size: 1em;
}

#testimonial {
  background-color: var(--primary);
  padding-bottom: 100px;
  margin-top: 100px;
  verflow: hidden;
  position: relative;
  color: var(--colorMenu);
  padding-top: 3vh;
  clip-path: ellipse(76% 90% at 50% 0%);
}

svg path {
  fill: var(--background) !important;
}
#testimonial svg {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  transform: translate(-50%) scale(1.5, 1.4);
  overflow: hidden;
  pointer-events: none;
  max-width: 85% !important;
}

#testimonial .message {
  width: 50%;
  margin: 0 auto;
}

.services .d-md-flex div,
.services .d-lg-flex div {
  flex: 1;
}

.banniere_cookie_express {
  position: fixed;
  top: 10vh;
  left: 10vw;
  z-index: 99;
  background: #000000d4;
  max-width: 80vw;
  border: solid 1px #fff;
}

#modalRgpdTestimonials {
  position: fixed;
  top: 10vh;
  left: 10vw;
  z-index: 99;
  background: var(--background);
  color: var(--colorText);
  max-width: 80vw;
  border: solid 1px var(--primary);
  padding: 15px;
}

.service-bloc .d-md-flex div.img {
  flex: 1;
}

.copyright {
  background-color: #000;
  text-align: center;
  padding: 5px;
}

article.intro-acc-t1 h2 {
  color: var(--colorMenu);
  margin-bottom: 15px;
}

article.intro-acc-t1 {
  color: var(--colorMenu);
}

article.intro-acc-t1 {
  background-color: var(--primary);
  padding: 0;
  margin: 50px;
  border-radius: var(--borderRadius);
}



.separation {
  background-color: var(--second);
  height: 5px;
  width: 100px;
  margin-bottom: 15px;
}

.separation-center {
  background-color: var(--second);
  height: 5px;
  width: 100px;
  margin: 10px auto;
}

.crop-box {
  position: relative;
  height: 800px;
  width: 100%;
  background: #fff;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: center;
  cursor: move;
}

.crop-box .thumb-box {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 200px;
  height: 200px;
  margin-top: -100px;
  margin-left: -100px;
  box-sizing: border-box;
  box-shadow: 0 0 0 1000px rgba(0, 0, 0, 0.5);
  background: none repeat scroll 0% 0% transparent;
}

.taxonomy-description {
    margin: 50px;
    /* text-align: center; */
}

#realisations .bloc-image img {
  max-height: 400px;
}

#realisations .bloc-image {
  border-radius: 15px;
}

#realisations .bloc-image h3 {
  position: absolute;
  bottom: 0;
  text-align: center;
  width: 100%;
  background: #00000085;
  padding-top: 110%;
  height: 100%;
  margin-bottom: 0;
  z-index: 9;
  color: var(--colorTitle);
}

.contact-bloc {
  position: relative;
}
.contact-bloc:before {
  content: "";
  position: absolute;
  top: -10%;
  background: var(--second);
  width: 3000px;
  height: 120%;
  left: 35%;
  z-index: 1;
}

#contactModule {
  margin-bottom: 0px;
  overflow: hidden;
}

iframe,
form {
  z-index: 999;
  position: relative;
}

.bg-header a .image,
footer .image {
  max-height: 80px;
  width: auto;
}

.img img {
  max-width: 100%;
}

article.entrepriseBloc .text-content {
  margin-left: 15px;
}

.topbarFooter {
  display: none;
}

.wp-block-buttons > .wp-block-button {
  /* display: contents !important;*/
  margin: 0;
}

.wp-block-button__link {
  /*  display: inline;*/
}

.topbar a {
  color: #fff;
  text-decoration: none;
}

.topbar a:hover {
  color: #fff !important;
}

.topbar {
  background-color: var(--second);
  color: white;
  padding: 5px;
}

.topbar-container {
  position: relative;
  min-height: 30px;
}

.start-topbar {
  position: absolute;
  left: 0;
}

.end-topbar {
  position: absolute;
  right: 0;
}

.prestationTitleHome,
.giteTitleHome {
  margin-bottom: 1.5rem;
}

/*** Prestation condensed ***/

.PrestationCondensedTitle {
  flex: 6;
}

.containerTarifsPrestationCondensed {
  flex: 2;
  display: flex;
  width: 100%;
  justify-content: end;
}

.tarifPrestationCondensed {
  display: flex;
}

#prestation_condense li {
  padding: 15px;
  border-bottom: solid 1px var(--second);
}

#contactButton {
  color: var(--colorMenu);
}

section#prestationHome .containerImg,
.services .imageBloc {
  height: 250px;
  overflow: hidden;
  display: flex;
  align-items: center;
  background: #fff;
}

#t1-prestaHome .imageBloc img {
  min-width: 100%;
  min-height: 100%;
  position: absolute;
}

.services .imageBloc .wp-post-image {
  min-height: 250px;
}

.services .th0 h4 {
  min-height: 65px;
}

.services {
  /* margin-bottom: 150px;*/
}
#prestationHome .th0 > div {
  border-color: var(--colorText) !important;
  border-radius: 20px;
  color: var(--colorMenu);
}

.prestationContainer:hover {
  cursor: pointer;
}

/* BLOG **/
.single-post .content .image {
  min-height: 15vh;
  max-height: 25vh;
  width: auto;
  overflow: hidden;
  text-align: center;
  background: #efefef;
}

.single-post h2 a {
  color: var(--colorTitle);
  text-decoration: none;
  font-size: 0.8em;
  font-family: var(--fontTitle);
}
.single-post h2 a:hover {
  color: var(--second);
}

/** Pagination **/
.page-link {
  background: var(--primary);
  border-radius: 10px;
  border: none;
  margin: 0 5px;
}
a.page-numbers {
  text-decoration: none;
  color: var(--colorMenu) !important;
}

.page-link span.current {
  color: var(--second) !important ;
}

/* single post */
.post .featured-image img {
  max-width: 100%;
  max-height: 65vh;
  /* overflow: hidden; */
}

.scroll-to-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  display: none; /* caché par défaut */
  padding: 12px 17px;
  background-color: var(--primary);
  color: var(--colorMenu);
  border: solid 1px var(--colorMenu);
  border-radius: 50px;
  height: 50px;
  width: 50px;
  cursor: pointer;
  z-index: 1000; /* pour s'assurer qu'il apparaît au-dessus d'autres éléments */
}

#t1-prestaHome .post-title {
  padding: 2em;
}

.topbarFooter a {
  text-decoration: none;
}

/* Animation */

.fade-in {
  opacity: 0;
  animation: fadeIn 2s ease-in forwards;
}

/* Animation de fade-in */
/* Animation de fade-in */
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Style de base des blocs */
.prestaHomeAnimation {
  opacity: 0; /* Initialement caché */
  transform: translateY(20px);
  transition: opacity 0.5s, transform 0.5s;
}

/* Classe ajoutée par le JS lorsqu'un élément est visible */
.prestaHomeAnimation.visible {
  animation: fadeIn 1s ease-out forwards;
}

/* Délais pour chaque élément */
.prestaHomeAnimation:nth-child(1) {
  animation-delay: 0s;
}
.prestaHomeAnimation:nth-child(2) {
  animation-delay: 0.5s;
}
.prestaHomeAnimation:nth-child(3) {
  animation-delay: 1s;
}
.prestaHomeAnimation:nth-child(4) {
  animation-delay: 1.5s;
}

.prestaHomeAnimation:nth-child(5) {
  animation-delay: 2s;
}

/* Désactiver le hover sur les écrans tactiles */
@media (hover: none) {
  .element:hover {
    background-color: inherit; /* Ou supprimer tout effet hover */
    transform: none;
  }
}

/* 1. Conteneur général du formulaire */
.wpcf7-form {
  max-width: 600px; /* largeur max pour une meilleure lisibilité */
  margin: 0 auto; /* centrer horizontalement */
  background: #f9f9f9; /* fond très clair */
  padding: 20px; /* espace intérieur */
  border-radius: 8px; /* coins arrondis */
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* 2. Structure des paragraphes et labels */
.wpcf7-form p {
  margin-bottom: 16px !important; /* espacement entre les champs */
}
.wpcf7-form label {
  display: block;
  font-weight: 600;
  margin-bottom: 6px;
  color: #333;
}

/* 3. Styles pour les champs de saisie et textarea */
input.wpcf7-form-control {
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.wpcf7-form-control {
  width: 100%;
  padding: 10px 12px;
  font-size: 1rem;
  line-height: 1.4;
  color: #333;
}

.wpcf7-form-control:focus {
  outline: none;
  border-color: #0073e6;
  box-shadow: 0 0 0 3px rgba(0, 115, 230, 0.2);
}

/* 4. Textarea : possibilité de redimensionner verticalement */
.wpcf7-textarea {
  resize: vertical;
  min-height: 120px;
}

/* 5. Bouton d’envoi */
.wpcf7-submit {
  display: inline-block;
  background-color: var(--primary) !important;
  color: #fff;
  font-weight: 600;
  padding: 12px 24px;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: background-color 0.3s ease, transform 0.1s ease;
}

.wpcf7-submit:active {
  transform: translateY(1px);
}

/* 6. Message de retour (succès / erreur) */
.wpcf7-response-output {
  color: #000;
  margin-top: 16px;
  padding: 12px;
  border-radius: 4px;
  font-size: 0.95rem;
}

.wpcf7-mail-sent-ok {
  background-color: #e6ffed;
  border: 1px solid #34a853;
  color: #0f5132;
}

.wpcf7-validation-errors {
  background-color: #ffe6e6;
  border: 1px solid #d32f2f;
  color: #842029;
}
