/*
 Theme Name: Divi Child
 Description: Thème enfant pour Divi
 Author: Vahatra
 Template: Divi
 Version: 1.0.0
*/


/******** résumer config ***********/
body .et_pb_main_blurb_image{
	margin:0 !important;
}

body #page-container{
	overflow-x:hidden !important;
}
html #page-container{
	overflow-x:hidden !important;
}

/****** config menu header *******/
.et-menu-nav #menu-menu-header li{
	margin-top:0 !important;
}
.et-menu-nav #menu-menu-header li a{
	padding:0 !important;
}
.et-menu-nav #menu-menu-header{
	display:flex;
	align-items:center;
}

/******* résumév header **********/
.display-resume .et_pb_blurb_content {
	display:flex !important;
	align-items:center !important;
	column-gap:10px;
}

/******* bouton header *********/
#menu-item-88 {
    background: #000;
    padding: 17px 60px 17px 17px;
    border: solid;
    border-width: 0px 0px 0px 5px;
    border-color: #7F7F7F;
    text-transform: uppercase;
	margin-left:15px !important;
}
#menu-item-88 a:before{
    content: "" !important;
    display: block !important;
    width: 22px;
    height: 30px;
    position: absolute;
    top: -7px;
    right: -33px;
    background-image: url(/wp-content/uploads/2026/03/Group-12.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
#menu-item-88:hover a:before{
    filter: brightness(0) invert(1) !important;
}
/* hover */
#menu-header #menu-item-88{
    position: relative;
    overflow: hidden;
}

#menu-header #menu-item-88.et_pb_menu_page_id-85::after{
    content: "";
    position: absolute;
    inset: 0;
    background: #7F7F7F;
    z-index: 0;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 400ms ease-in-out;
    pointer-events: none;
}

#menu-header #menu-item-88.et_pb_menu_page_id-85:hover::after,
#menu-header #menu-item-88.et_pb_menu_page_id-85:focus::after,
#menu-header #menu-item-88.et_pb_menu_page_id-85:active::after{
    transform: scaleX(1);
}

#menu-header #menu-item-88.et_pb_menu_page_id-85 > a{
    position: relative;
    z-index: 1;
}

#menu-header #menu-item-88.et_pb_menu_page_id-85:hover > a,
#menu-header #menu-item-88.et_pb_menu_page_id-85:focus > a,
#menu-header #menu-item-88.et_pb_menu_page_id-85:active > a{
    color: #fff !important;
}

/********* logo header ********/
.logo-header span{
	padding: 3px 15px 20px 15px;;
    background-color: #fff;
}

/*********** compteur hero ***********/
.existance .et_pb_blurb{
    width: 12%;
    height: 145px;
    border-radius: 50%;

    display: flex;
    align-items: center;
    justify-content: center;

    position: absolute;
    top: 130px;
    right: -137px;

    /* IMPORTANT : on enlève la bordure ici */
    border: none;
}

/* Bordure animée */
.existance .et_pb_blurb::before{
    content: "";
    position: absolute;
    inset: 0;

    border-radius: 50%;
    border: 3px dashed white;

    animation: rotationBorder 8s linear infinite;
}

/* Animation */
@keyframes rotationBorder {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}
/*********** bedore after h2 ***********/
.section-ba h2{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 35px; 
}
.section-ba h2::before,
.section-ba h2::after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px; 
    background-image: url('https://www.hexagone-caussade.com/wp-content/uploads/2026/03/Frame-9.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}



/********** bouton style **********/
body #page-container .et_pb_section .et_pb_button {
    border: solid !important;
    border-width: 0px 0px 0px 5px !important;
    border-color: #7F7F7F !important;
}
body.et_pb_button_helper_class .et_pb_section a.et_pb_button#bouton {
	position:relative;
	z-index:0 !important;
}
body.et_pb_button_helper_class .et_pb_section a.et_pb_button#bouton:before{
content: "" !important;
    display: block !important;
    width: 25px;
    height: 30px;
    position: absolute;
    top: 10px;
    right: 14px;
    background-image: url(/wp-content/uploads/2026/03/Group-12.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    visibility: visible !important;
    opacity: 1 !important;
	z-index:99;
}
body.et_pb_button_helper_class .et_pb_section a.et_pb_button#bouton:hover:before{
	filter: brightness(0) invert(1);
}
body.et_pb_button_helper_class .et_pb_section a.et_pb_button#bouton-phone:hover:before{
	filter: brightness(0) invert(1);
}

/********* bouton connexion *********/
body.et_pb_button_helper_class .et_pb_section a.et_pb_button#bouton-connexion:before{
content: "" !important;
    display: block !important;
    width: 23px;
    height: 25px;
    position: absolute;
    top: 13px;
    right: 14px;
    background-image: url(/wp-content/uploads/2026/04/utilisateur.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    visibility: visible !important;
    opacity: 1 !important;
	filter: invert(24%) sepia(94%) saturate(7470%) hue-rotate(356deg) brightness(92%) contrast(106%);
	z-index:99;
}
body.et_pb_button_helper_class .et_pb_section a.et_pb_button#bouton-connexion:hover:before{
	filter: brightness(0) invert(1);
}

/******* footer *********/
.footer-menu .et_pb_menu .et-menu-nav>ul>.menu-item-88{
	display:none !important;
}
.footer-menu .et-menu-nav ul{
	display:flex !important;
	flex-direction:column !important;
	row-gap:10px;
}
.footer-menu .et-menu-nav ul li a:before {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    background-image: url("/wp-content/uploads/2026/03/Group-17.png");
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    left: -27px;
}
.footer-menu .et-menu-nav ul li.current-menu-item a:before,
.footer-menu .et-menu-nav ul li.current_page_item a:before {
    filter: brightness(0) saturate(100%) invert(18%) sepia(95%) saturate(7483%) hue-rotate(1deg) brightness(97%) contrast(119%);
}
.resume-footer .et_pb_blurb_content{
    display: flex;
    flex-direction: row-reverse;
	align-items:center;
	gap:0 important;
	justify-content: flex-end;
	margin:0;
	padding:0;
}

/***** hover imaga anim **********/
.mon-effet-zoom {
    overflow: hidden;
    position: relative;
    background-color: #000; 
}
.mon-effet-zoom img {
    display: block;
    width: 100% !important;
    transition: transform .5s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
    transform: scale(1.15);
}
.mon-effet-zoom:hover img {
    transform: scale(1);
}
.mon-effet-zoom::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.4) 100%);
    z-index: 2;
    opacity: 0;
    transition: opacity 0.4s ease;
    pointer-events: none;
}
.mon-effet-zoom:hover::before {
    opacity: 1;
}
.mon-effet-zoom::after {
    content: '';
    position: absolute;
    top: 15px;
    left: 15px;
    right: 15px;
    bottom: 15px;
    border: 1px solid rgba(255,255,255,0.5);
    z-index: 3;
    opacity: 0;
    transform: scale(0.9);
    transition: all 0.4s ease;
    pointer-events: none;
}

.mon-effet-zoom:hover::after {
    opacity: 1;
    transform: scale(1);
}

/********** bouton hover **********/

body.et_pb_button_helper_class #page-container .et_pb_section a.et_pb_button {
    position: relative;
    z-index: 99;
    overflow: hidden;
}

body.et_pb_button_helper_class #page-container .et_pb_section a.et_pb_button:after {
    content: '' !important;
    display: block !important;
    background: #7F7F7F !important;
    position: absolute;
    top: 0 !important;
    left: 0;
    right: 100%;
    bottom: 0;
    margin: 0 !important;
    transform: none !important;
    transition: all 400ms ease-in-out;
}
body.et_pb_button_helper_class #page-container .et_pb_section a.et_pb_button:hover:after {
    right: 0 !important;
	z-index: -1 !important;
}

/********* rsponsive header ******/
@media (max-width: 980px) {
    .top-bar .et_pb_blurb_content .et_pb_blurb_container{
        display: none !important;
}
	.logo-header span {
    padding-top: 16px !important;
    background-color: #fff;
}
	.mobile-menu .et_pb_menu_inner_container.clearfix {
    position: unset;
}
}
@media (max-width: 980px) {
    .et_pb_menu .et_mobile_menu {
        top: 135% !important;
        padding: 5%;
        margin: 0px 16px;
        width: 92% !important;
    }
	#menu-item-88 a:before {
    content: "";
    display: block;
    width: 22px;
    height: 30px;
    position: absolute;
    top: 9px !important;
    right: 4px !important;
    background-image: url(/wp-content/uploads/2026/03/Group-12.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
	#menu-item-88 a{
		color:#fff !important;
		text-align:center !important;
	}
	#menu-item-88{
		width:90% !important;
	}
	.existance .et_pb_blurb {
    width: 40% !important;
    border-radius: 50%;
    height: 144px !important;
    display: flex;
    align-items: center;
    border: dashed;
    border-width: 3px;
    border-color: white;
    position: absolute;
    top: 195px !important;
    right: 0 !important;
}
	.footer-menu .et_pb_menu__wrap{
		justify-content:flex-start !important;
	}
	.header ul#mobile_menu1>li.current-menu-item>a {
    color: #000 !important;
	}
	.menu-hover a::after {
  	content: "";
  	position: absolute;
  	width: 0;
  	height: 3px;
  	bottom: 0;
  	left: 50%;
  	background-color: #000 !important;
  	transition: all 0.4s;
    top:35px !important;
}
	#page-single .section-ba h1{
	font-size:16px !important;
}
	body #page-contenaire .et_pb_button_module_wrapper #bouton{
		width:100% !important;
	}
	body #page-contenaire .et_pb_button_module_wrapper #bouton-phone{
		width:100% !important;
	}
	br{
		display:none !important;
	}
}

/**** deplie menu footer **********/
.footer-menu .et_pb_menu__menu {
display:flex !important;
}
.footer-menu .et_mobile_nav_menu {
display:none !important;
}


/******** survol menu ***/
.menu-hover a {
  text-decoration: none;
  position: relative;
  transition: 0.4s;
}
.menu-hover a::after {
  content: "";
  position: absolute;
  width: 0;
  height: 3px;
  bottom: 0;
  left: 50%;
  background-color: #fff;
  transition: all 0.4s;
  top:20px;
}
.menu-hover a:hover::after {
  width: 100%;
  left: 0;
}
.menu-hover .current-menu-item > a::after,
.menu-hover .current_page_item > a::after,
.menu-hover .current_page_parent > a::after {
  width: 100%;
  left: 0;
}
.menu-hover a[href="https://www.hexagone-caussade.com/connexion/"]::after {
  display: none !important;
}
.menu-hover a[href="https://www.hexagone-caussade.com/connexion/"] {
  transition: none !important;
}

/********** slick ******/
.slider-images {
  display: flex;
  gap: 10px;
  overflow: hidden;
}

.slider-images .et_pb_image {
  flex: 0 0 auto;
}

.slider-images img {
  width: auto;
  border-radius: 0px;
  display: block;
}

/* Animation */
.slider-images.track {
  animation: scrollAuto 25s linear infinite;
}

/* Pause au hover */
.slider-images:hover {
  animation-play-state: paused;
}

@keyframes scrollAuto {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.partenariat-slider .slick-slide:not(:last-child){
	margin-right:20px !important;
}

/********** page interne config **********/
#page-single .section-ba h1{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 35px;
	font-size:30px;
}
#page-single .section-ba h1::before,
#page-single .section-ba h1::after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px; 
    background-image: url('https://www.hexagone-caussade.com/wp-content/uploads/2026/03/Frame-9.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

.formulaire-1 #menu-item-88 a:before {
    content: "";
    display: block;
    width: 22px;
    height: 30px;
    position: absolute;
    top: 167px !important;
    right: 28px !important;
    background-image: url(/wp-content/uploads/2026/03/Group-12.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}

/*********** page nos prestations ***********/
body.et_pb_button_helper_class .et_pb_section a.et_pb_button#bouton-phone:before{
content: "" !important;
    display: block !important;
    width: 22px;
    height: 30px;
    position: absolute;
    top: 10px;
    right: 14px;
    background-image: url(/wp-content/uploads/2026/03/Group-9.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    visibility: visible !important;
    opacity: 1 !important;
	z-index:99;
}
body.et_pb_button_helper_class .et_pb_section a.et_pb_button#bouton-phone:hover:before{
	filter: brightness(0) invert(1);
}

/* --- Structure & Héritage --- */
/* --- Structure & Héritage --- */
.forminator-ui.forminator-custom-form,
.forminator-ui.forminator-custom-form *,
.forminator-input, 
.forminator-textarea, 
.forminator-button-submit {
    border-radius: 0 !important;
    font-family: inherit !important;
}

/* On ne cible que les champs texte/email/textarea pour le positionnement relatif */
.forminator-ui .forminator-field:not(.forminator-checkbox):not(.forminator-radio) {
    position: relative;
    margin-top: 25px !important; 
}

/* --- Label Flottant (Uniquement pour les champs de saisie) --- */
.forminator-ui .forminator-field:not(.forminator-checkbox__label):not(.forminator-radio) .forminator-label {
    position: absolute !important;
    top: 14px !important;
    left: 16px !important;
    background: transparent !important;
    transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
    pointer-events: none !important;
    color: #999 !important;
    z-index: 10;
}

/* --- État Actif --- */
.forminator-ui .is-active:not(.forminator-checkbox__label):not(.forminator-radio) .forminator-label {
    top: -18px !important;
    left: 0px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #000 !important;
}

/* --- Style spécifique pour le champ Consentement (Fixe) --- */
.forminator-checkbox .forminator-label {
    position: relative !important;
    display: inline-block !important;
    margin-left: 10px !important;
    top: 0 !important;
    left: 0 !important;
    cursor: pointer;
    font-size: 14px !important;
    color: inherit !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

/* --- Champs de saisie --- */
.forminator-ui .forminator-input,
.forminator-ui .forminator-textarea {
    padding: 18px 16px 12px !important;
    border: none !important;
    border-bottom: 2px solid #e0e0e0 !important;
    background-color: #fcfcfc !important;
    transition: all 0.3s ease !important;
}

.forminator-ui .forminator-input:focus,
.forminator-ui .forminator-textarea:focus {
    border-bottom-color: #000 !important;
    background-color: transparent !important;
}

/* --- Bouton --- */
.forminator-button-submit {
    background: #000 !important;
    color: #fff !important;
    padding: 18px 45px !important;
    text-transform: uppercase;
    letter-spacing: 2px;
    border: none !important;
    cursor: pointer;
    outline: none !important;
    position: relative;
    z-index: 1; /* important */
}

.forminator-button-submit:after {
    content: "";
    position: absolute;
    inset: 0;
    background: #7F7F7F;
    z-index: -1; /* passe derrière le texte */
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 400ms ease-in-out;
}

.forminator-button-submit:hover::after {
    transform: scaleX(1);
}

.forminator-button-submit:hover {
    color: #fff;
}

/* --- RESPONSIVE --- */
@media (max-width: 768px) {
    .forminator-button-submit {
        width: 100% !important;
    }
	.responsive-consent .forminator-field {
		padding-top:20px !important;
	}
	.responsive-consent .forminator-field label {
		padding-top:20px !important;
	}
}

.forminator-ui#forminator-module-572.forminator-design--default .forminator-input:focus, .forminator-ui#forminator-module-572.forminator-design--default .forminator-phone .iti__country-container .iti__selected-country:focus {
    outline: none !important;
}
.forminator-ui#forminator-module-572.forminator-design--default .forminator-textarea:focus {
    outline: none !important;
}

/* sitemap configue */
.simple-sitemap-wrap ul {
    list-style: none; /* supprime les bullets par défaut */
    padding-left: 0;  /* supprime l'indentation par défaut */
}
.simple-sitemap-wrap ul .sitemap-item {
    list-style: none;
}

.simple-sitemap-wrap ul .sitemap-item::marker {
    display: none;
}

.simple-sitemap-wrap ul li {
    position: relative;
    padding-left: 35px; /* espace pour l'image */
}

.simple-sitemap-wrap ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 30px;  /* largeur de ton image */
    height: 30px; /* hauteur de ton image */
    background-image: url('/wp-content/uploads/2026/04/poignee-de-main-1.png'); /* lien vers ton image */
    background-size: contain;
    background-repeat: no-repeat;
	filter: invert(13%) sepia(87%) saturate(7000%) hue-rotate(-1deg) brightness(95%) contrast(105%);
}

.simple-sitemap-wrap ul li a {
    color: #000;
}

.simple-sitemap-wrap ul li {
    margin-bottom:7px !important;
}

.simple-sitemap-wrap .post-type{
	opacity:0 !important;
}

.sitemap-item-hover .attachment-full.size-full {
    filter: sepia(100%) saturate(180%) hue-rotate(330deg) brightness(90%);
}
.sitemap-item:hover {
    transform: translateX(10px);
}
.sitemap-item{
    transition: transform 0.4s cubic-bezier(.4,0,.2,1);
}

/********** ajustement pôstition consentement ***********/
#consent-1 .forminator-field .forminator-label{
	margin-top: -40px !important;
	margin-left: 14px !important;
}

#consent-1 .forminator-field .forminator-checkbox__wrapper .forminator-checkbox-box{
    margin-top: -32px !important;
}

/*** cookies ***/
.cky-btn-revisit-wrapper {
width: 30px !important;
height: 30px !important;
background-color: #E02B20 !important;
}
.cky-btn-revisit-wrapper .cky-btn-revisit img {
height: 20px !important;
width: 20px !important;
}
.cky-btn-accept {
background: #E02B20 !important;
color: #FFFFFF;
border: 2px solid #E02B20 !important;
}
.cky-btn-reject {
color: #E02B20 !important;
background: transparent !important;
border: 2px solid #E02B20 !important;
}
.cky-btn-customize {
color: #E02B20 !important;
background: transparent !important;
border: 2px solid #E02B20 !important;
}
.cky-btn-preferences {
color: #E02B20 !important;
background: transparent !important;
border: 2px solid #E02B20 !important;
}