body, html {
	overflow-x:hidden;
}
.button-icon-left .elementor-button-icon {
  height: auto;
  text-align: center;
}
.button-icon-left .elementor-button-icon svg {
  margin: auto;
}
h1.entry-title {
	margin:4rem 0;
}

h2.wp-block-heading {
	margin:4rem 0 2rem 0;
}
@media (min-width:1366px) {
  .button-icon-left .elementor-button-icon {
    background-color: var(--e-global-color-accent);
    width: 57px;
    padding: 8px;
    border-radius: 30px;
  }
  .button-icon-left .elementor-button-icon svg {
    fill: #fff;
    width: 20px;
    height: 34px;
  }
}
@media (min-width:768px) and (max-width:1365px) {
  .button-icon-left .elementor-button-icon {
    background-color: var(--e-global-color-accent);
    width: 50px;
    padding: 6px;
    border-radius: 30px;
  }
  .button-icon-left .elementor-button-icon svg {
    fill: #fff;
    width: 20px;
    height: 35px;
  }
}

.button-icon-left .elementor-button-wrapper {
	display:contents;
}
@media (max-width:767px) {
  .button-icon-left .elementor-button-icon {
    background-color: var(--e-global-color-accent);
    width: 37px;
    height: 38px;
    padding: 4px 4px;
    border-radius: 0px;
  }
	.button-icon-left .elementor-widget-container {
		display:flex;
	}
  .button-icon-left .elementor-button-icon svg {
    fill: #fff;
    width: 12px;
    height: 30px;
  }
}
.button-icon-left .elemetor-button-text {
  display: grid;
  align-items: center;
}
.button-icon-left .elementor-button-content-wrapper {
  display: flex;
  flex-direction: row;
  gap: 10px;
  justify-content: center;
  align-items: center;
  padding-right: 16px;
}
.background-blur {
  backdrop-filter: blur(7px);
}
.elementor-widget-text-editor ul li, .uc_content ul li {
  padding-bottom: 1rem;
}
.elementor-widget-text-editor ul, .uc_content ul {
  padding-inline-start: 1rem;
}
h1 b, h1 strong, h2 b, h2 strong {
  color: var(--e-global-color-accent);
  font-weight: bold;
}
.spacing-s.elementor-element {
  --widgets-spacing: 2rem 2rem;
  --widgets-spacing-row: 2rem;
  --widgets-spacing-column: 2rem;
}
.elementor-widget-container p:last-child {
  margin-bottom: 0px
}
.pb-0 .e-con-inner, .pb-0 {
  padding-bottom: 0px !important;
}
.pb-s .e-con-inner, .pb-s .elementor-widget-container {
  padding-bottom: 1rem;
}
.pt-s .e-con-inner, .pt-s .elementor-widget-container {
  padding-top: 1rem;
}
@media (min-width:1366px) {
  .p-l {
    padding: 3rem;
  }
}
@media (min-width:992px) and (max-width:1365px) {
  .p-l {
    padding: 2rem;
  }
}
.e-n-accordion-item:not(.accordion-no-radius .e-n-accordion-item) {
  border-radius: 2rem;
  overflow: hidden;
}
.p-0, .p-0 .e-con-inner {
  padding: 0px;
}
.br-l {
  border-radius: 2rem;
  overflow: hidden;
}
.br-md {
  border-radius: 1rem;
  overflow: hidden;
}
.liste-reduite ul li {
	padding-bottom:5px;
}
h3 small {
  font-size: 50%;
  line-height: 50%;
}

.small p {
	font-size:75%;
}

.small {
	margin:0;
	padding:0;
}

.uc_content hr {
  margin: 1rem 0;
}
.uc_content ul {
  list-style: none;
  padding-inline-start: 0;
}
.uc_content li {
  position: relative;
  padding-left: 32px;
}
.uc_content li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0; /* Décalage de 3px vers le bas */
  width: 24px;
  height: 24px;
  background-image: url('../images/list-check-red.svg');
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width:1024px) {
  .section-header {
    padding-left: 2rem;
    padding-right: 2rem;
    min-height: 60vh;
  }
  
  .section-basic {
    padding-top: 4rem;
    padding-bottom: 4rem;
  }
}
@media (max-width:1023px) {
  .section-header {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .elementor-element {
    --widgets-spacing: 2rem 2rem;
    --widgets-spacing-row: 2rem;
    --widgets-spacing-column: 2rem;
  }
  .section-basic {
    padding-top: 2rem;
    padding-bottom: 2rem;
  }
}

.ginput_container_consent .gform-field-label--type-inline {
	font-size:12px;
}

.elementor-widget .elementor-icon-list-items.elementor-inline-items {
	gap:1rem;
}


@media (max-width:767px) {
	
	.no-shadow-mobile .elementor-button {
		box-shadow: none;
	}
	
	.img-full-colonne {
		margin-bottom:2rem;
	}
  .elementor-icon-box-title, .elementor-icon-box-content {
    display: flex;
    align-items: center;
  }
  .elementor-element {
    --widgets-spacing: 1rem 1rem;
    --widgets-spacing-row: 1rem;
    --widgets-spacing-column: 1rem;
  }
  #header-infos {
    margin-top: 24vh !important;
  }
  
}
.uc_material_accordion  .uc_ac_box {
  border-radius: 1rem;
}
.uc_material_accordion .uc_container .uc-heading {
  padding: 1rem;
}

.gform-theme.gform-theme--framework.gform_wrapper .button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper .gform-theme-button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper :where(:not(.mce-splitbtn))>button:not([id*=mceu_]):not(.mce-open):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper button.button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper input:is([type=submit],[type=button],[type=reset]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper input:is([type=submit],[type=button],[type=reset]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)), .gform-theme.gform-theme--framework.gform_wrapper input[type=submit].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)) {
	border-radius:100px;
	background:var(--e-global-color-accent);
	font-weight:700;
	text-transform:uppercase;
}

.gform-theme--api, .gform-theme--foundation {
	--gf-form-gap-y:1rem;
}

.gform-theme--foundation .gfield .ginput_password.large, .gform-theme--foundation .gfield input.large, .gform-theme--foundation .gfield select.large {
	border-radius:60px;
}

body .gform_wrapper ::placeholder,
body .gform_wrapper ::-webkit-input-placeholder,
body .gform_wrapper input[placeholder] {
  opacity: 0.8;
}

/* Faux bouton dans les containers avec un lien */

.faux-bouton {
    background:#fff;
    padding:1rem 1.5rem;
    border-radius:100px;
    color:var(--e-global-color-primary);
    font-weight:700;
    text-transform:uppercase;
    text-align: left;
    border:solid 1px #fff;
    transition:all .2s;
}

.faux-bouton.small-bouton {
	padding:8px 1rem;
}

.faux-bouton .elementor-heading-title:after {
	content:url('../images/icon-chevron-boutons.svg');
	transition: all .2s;
}

.faux-bouton .elementor-heading-title {
	display: flex;
    align-items: center;
    gap: 8px;
}

@media (max-width:1366px) {
   .faux-bouton {
        font-size:14px;
    }
}

@media (max-width:991px) {
   .faux-bouton {
        font-size:14px;
        padding:12px;
    }
}

.container-link:hover .faux-bouton{
    background-color: var(--e-global-color-primary);
    color:#fff;
}

.container-link:hover {
	background-size:auto 110%;
}

.container-link{
	transition:all .2s;
	background-size:auto 100%;
}

.container-2x3 {
	aspect-ratio: 2 / 3;
}

.container-link:hover .faux-bouton .elementor-heading-title:after {
filter: brightness(0) saturate(100%) invert(100%) sepia(100%) saturate(0%) hue-rotate(351deg) brightness(103%) contrast(103%);
}
	
.hover-background {
    background-size:auto 100% !important;
    
}

.hover-background:hover {
    background-size:auto 110% !important;
    
}

.ue_title h3 {
	font-size:1.25rem;
	line-height:1.25rem;
}

.carrousel-logo .swiper, .carrousel-logo .swiper, .carrousel-avis .swiper, .carrousel-services .swiper  {
    width: calc(100% - 96px)!important;
}

.carrousel-nuisibles-courants .swiper-slide img, .carrousel-nuisibles-courants .swiper-slide svg {
	transform:scale(1);
	transition: all .2s;
}

.carrousel-nuisibles-courants .swiper-slide:hover img, .carrousel-nuisibles-courants .swiper-slide:hover svg {
	transform:scale(1.2);
	
}
@media (min-width:1024px) {
	.home-partenaires img {
		max-height:100px;
		max-width:150px;
	}
}

@media (max-width:1023px) {
	.home-partenaires img {
		max-height:80px;
		max-width:120px;
	}
	
	
}

.elementor-button-icon .e-font-icon-svg {
		width:25px !important;
		height:25px !important;
	}

.tarifs-table table td, .tarifs-table  table th {
        border:none;
    }
  .tarifs-table {
    --radius: 12px;
    --border: none;
    --bg: var(--e-global-color-b910617);
    --zebra:#fff;
    --text: var(--e-global-color-primary);
    --muted: #fff;
   
    color: var(--text);
  }

  .tarifs-table table {
    width: 100%;
    border-collapse: collapse;
    background: var(--bg);
    border: var(--border);
    border-radius: var(--radius);
    overflow: hidden; /* garde les coins arrondis */
  }

  .tarifs-table caption {
    text-align: left;
    padding: 14px 16px;
    font-weight: 600;
    font-size: 1.05rem;
    color: var(--text);
    background: #f8fafc;
    border-bottom: var(--border);
  }

  .tarifs-table th,
  .tarifs-table td {
    padding: 6px 12px;
    text-align: left;
    vertical-align: middle;
  }

  .tarifs-table thead th {
    font-size: 0.9rem;
    color: var(--text);
    letter-spacing: 0.02em;
    background: var(--zebra);
    border-bottom: var(--border);
  }

  .tarifs-table tbody tr:nth-child(even) td {
    background: var(--zebra);
  }

 

  .tarifs-table .note {
    margin: 6px 2px 0;
    font-size: 0.85rem;
    color: #fff;
  }

.gform-theme--api, .gform-theme--framework {
	--gf-field-pg-prog-bar-bg-color-blue : var(--e-global-color-primary);
}

#rdv-form .gform-field-label:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))  {
	color:var(--e-global-color-primary);
}
#rdv-form .gfield-choice-image-wrapper {
    justify-content:center;
    display:flex;
}

#rdv-form img {
    max-width:60%;
    object-fit:contain;
}

#rdv-form .gfield--type-image_choice.gfield--image-choice-appearance-card .gchoice {
    border:none;
    box-shadow:none;
    border-radius:16px;
}

#rdv-form .gform-theme--framework .gfield--type-image_choice .gfield_radio {
    gap:16px;
}

#rdv-form .gchoice:where(:has(input:checked))::after {
	background-color:var( --e-global-color-accent );
}

#rdv-form .gchoice:focus-within {
	--gf-local-border-color: var( --e-global-color-accent );
    --gf-local-outline-color: var( --e-global-color-accent );
}
#rdv-form input[type=radio]:where(:not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *))::before {
	background-color: var( --e-global-color-accent );
}

#rdv-form .gfield--type-choice .gfield_radio {
	flex-direction:row;
	gap:32px;
}

#rdv-form .gform-field-label--type-inline {
	--gf-local-margin-x : 5px;
}

#rdv-form .gfield_label {
	font-size:1.25rem;
}

@media (max-width:767px) {
	#rdv-form .ginput_container_image_choice .gform-field-label {
		font-size:12px;
	}
	#rdv-form .gfield-choice-input {
		--gf-local-height:15px;
		--gf-local-width:15px;
		aspect-ratio: 1 / 1;
	}
	#rdv-form img {
		max-width:80%;
	}
}

#rdv-form .gform_fields  {
	row-gap:32px;
}
#rdv-form h3.gsection_title  {
	color:var(--e-global-color-primary);
}



/* 1) Mettre les choix en grille = hauteurs égales par ligne */
#rdv-form .ginput_container_image_choice .gfield_radio {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important; /* étire les items à la hauteur de la ligne */
}

@media (max-width:767px) {
	#rdv-form .ginput_container_image_choice .gfield_radio {
	 
	  grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)) !important;
	}

}

/* 2) Chaque carte (gchoice) doit pouvoir s'étirer */
#rdv-form .gfield_radio .gchoice {
  height: 100% !important;
}

/* 3) Étendre ton wrapper sur toute la hauteur de la carte */
#rdv-form .gfield_radio .gchoice > .gfield-image-choice-wrapper-outer {
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
}

/* 4) La zone image en haut ; on centre proprement */
#rdv-form .gfield-choice-image-wrapper {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0px !important;
}

/* 5) La zone input + label prend le reste et colle en bas si besoin */
#rdv-form .gfield-image-choice-wrapper-inner {
  margin-top: auto !important; /* pousse vers le bas */
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  padding: 0px !important;
}

/* 6) Sécuriser l’image */
#rdv-form .gfield-choice-image {
  max-width: 60% !important;
  height: auto !important;
  display: block !important;
}

#rdv-form .gform-theme--framework .gfield--type-image_choice .gchoice {
	inline-size: 100%;
    max-inline-size: 100%;
    min-inline-size: 100%;
    position: relative;
}

/*** Page article : Tags et categories ***/
.categories_article{
	margin-bottom:15px !important;
}
.categories_article a{
	font-size: 0.8rem !important;
	padding: 5px 24px 5px 24px;
	border:2px solid #FFFFFF;
	color:#FFFFFF !important;
	background-color:#1F2364 !important;
	border-radius:50px;
	margin-right:10px;
	transition:all .3s;
	text-transform:uppercase;
}

.categories_article a:hover,.categories_article a:focus,.categories_article a:active{
	background-color:#FFFFFF !important;
	color:#1F2364 !important;
	transition:all .3s;
}
.tags_article a{
	text-decoration:underline;
}
.tags_article a:hover,.tags_article a:focus,.tags_article a:active{
	text-decoration:none;
}

/*** Blog ***/
.liste_categories_blog h5{
	display:none;
}
.liste_categories_blog ul{
	list-style:none;
	margin:0;
	padding:0;
	display:flex;
	justify-content:center;
	align-items:center;
  flex-wrap: wrap;
	width:100%;
	position:relative;
	gap:15px;
}
.liste_categories_blog ul a{
	display:block;
	font-size: 0.8rem !important;
	padding: 5px 24px 5px 24px;
	border:2px solid #FFFFFF;
	color:#FFFFFF !important;
	background-color:#1F2364 !important;
	border-radius:50px;
	margin-right:10px;
	transition:all .3s;
	text-transform:uppercase;	
}

.liste_categories_blog ul a:hover,.liste_categories_blog ul a:focus,.liste_categories_blog ul a:active{
	background-color:#FFFFFF !important;
	color:#1F2364 !important;
	transition:all .3s;	
}

.single-post .elementor-widget-theme-post-content h2{
	color:rgb(47, 50, 111);	
}

/*** Cookies ***/
.cmplz-show-banner, .cmplz-show-banner a{
	cursor:pointer;
}

#cmplz-manage-consent{
	display:none !important;
}

/*** Header ***/
@media screen and (min-width: 1025px) {
	.hide-desktop{
		display:none !important;
	}
}
@media screen and (min-width: 1366px) and (max-width: 1660px) {
	header .menu_principal ul.elementor-nav-menu .menu-item a.elementor-item{

		padding-left:10px !important;
		padding-right:10px !important;
	}
	header .btn_rdv_header a{
		font-size:15px !important;
		padding: 20px !important;
	}
	header .zone_menu {
		gap:10px !important;
	}
}

/*** Home ***/
@media screen and (max-width: 768px) {
	.chez_vous .elementor-widget-button{
		margin:auto;
		display:inline-block;
	}
	.zone_entete{
		min-height:479px;
	}
}
