/*
Theme Name: Hello Elementor Child
Theme URI: https://studionumerik.fr/
Description: Hello Elementor Child Theme
Author: Studio Numerik
Author URL: https://studionumerik.fr/
Template: hello-elementor
Version: 1.0.0
License: GNU General Public License v2 or later
License URL: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: hello-elementorchild
*/

/* Déclaration  Global */
@font-face {
  font-family: 'Google Sans';
  src: url('/wp-content/uploads/2026/07/GoogleSans.ttf') format('woff2-variations');
  font-weight: 100 900;
  font-stretch: 75% 125%;
  font-style: normal;
}
body {
  font-family: "Google Sans", sans-serif;
}
:root {
	--couleur-principale: #047FBB;
}
.e-con>.e-con-inner {
    width: 90% !important;
}

/* Module */
.ancre-module {
	top:-110px !important;
}
.title-module strong {
	color:#000;
}
.rdv-btn-book {
    border-bottom: 1px solid #047FBB;
}
.rdv-btn-book:after {
    content: '';
    position: unset;
    opacity: 1 !important;
    display: inline-block;
    vertical-align: middle;
    margin-left: 6px;
    width: 8px;
    height: 8px;
    background-color: transparent;
    background-image: url(/wp-content/uploads/2026/07/bouton-icon.svg);
    background-size: contain;
    filter: brightness(0) invert(31%) sepia(95%) saturate(2349%) hue-rotate(179deg) brightness(90%) contrast(97%);
}

@media screen and (max-width: 480px) {
	.select-lang .cpel-switcher__list:hover li.cpel-switcher__lang:not(.cpel-switcher__lang--active) {
		top: 20px !important;
        opacity: 1 !important;
		z-index: 0 !important;
	}
	.select-lang li.cpel-switcher__lang:not(.cpel-switcher__lang--active) {
		position: absolute;
		top: 20px;
        opacity: 0;
        z-index: 0 !important;
		transition: all .4s !important;
	}
	.select-lang li.cpel-switcher__lang.cpel-switcher__lang--active {
		margin-right: 0 !important;
        z-index: 1 !important;
	}
}

@media screen and (max-width: 392px) {
		.select-lang .cpel-switcher__list:hover li.cpel-switcher__lang:not(.cpel-switcher__lang--active) {
		top: 20px !important;
        opacity: 1 !important;
		z-index: 0 !important;
	}
	.select-lang li.cpel-switcher__lang:not(.cpel-switcher__lang--active) {
		position: absolute;
		top: 20px;
        opacity: 0;
        z-index: 0 !important;
		transition: all .4s !important;
	}
	.select-lang li.cpel-switcher__lang.cpel-switcher__lang--active {
		margin-right: 0 !important;
        z-index: 1 !important;
	}
	.rdv-btn-book a {
		font-size: 12px !important;
		line-height: 12px !important;
	}
	.logo-header img {
		height: 60px !important;
	}
	.menu-header .elementor-menu-toggle {
		width: 30px;
		height: 30px;
	}
}

/* Bouton module */
.bouton-module .elementor-button-content-wrapper {
	align-items:center;
	gap:10px;
}
.bouton-module .elementor-button-icon {
	font-size:8px;
	padding:11px;
	background-color:#fff;
	overflow:hidden;
	position:relative;
}
.bouton-module .elementor-button-icon svg {
	fill:transparent;
}
.bouton-module .elementor-button-icon:before {
	content:'';
	position:absolute;
	top:0;
	right:0;
	width:200%;
	height:200%;
	background-size:contain;
	background-image:url('/wp-content/uploads/2026/07/bouton-anim.svg');
	
}
.bouton-module .elementor-button-link:hover .elementor-button-icon:before {
	animation:bouton-anim 0.5s;
}
@keyframes bouton-anim {
	0% {
		transform:translate(0,0);
	}
	100% {
		transform:translate(50%,-50%);
	}
}

/* LEAD section */
.lead-section .elementor-icon-box-title strong {
    font-size: 22px;
    font-weight: 400;
    text-transform: uppercase !important;
}
.lead-section .elementor-widget-text-editor strong {
	color:#047FBB;
	font-size:22px;
}
.lead-section .elementor-widget-text-editor ul {
  padding-left: 15px;
  margin-top: 20px;
  color: #000;
}
.lead-section .elementor-widget-text-editor li {
	margin-top:10px;
}

/* Services section */
.service-section .elementor-cta, .service-section .elementor-widget-call-to-action, .service-section .elementor-cta__content {
    position: unset !important;
    overflow: visible;
    z-index: unset !important;
}


.service-section .elementor-cta__content {
    position: relative;
    padding-right: 33% !important;
}
.service-section .elementor-cta__button-wrapper {
    position: absolute;
    left:50px;
    top:57px;
}
.service-section .elementor-cta__description {
    opacity: 0;
    max-height: 0;
    transition: all 0.5s;
}
.service-section .elementor-widget-call-to-action.active .elementor-cta__description {
    opacity: 1;
    max-height: 200px;
}
@media screen and (max-width: 767px) {
    .service-section .elementor-cta__content {
        padding-right: 20px !important;
    }
    .service-section .elementor-widget-call-to-action.active .elementor-cta__description {
        opacity: 1;
        max-height: 500px;
    }
}


.service-section .elementor-icon-wrapper {
    position: absolute;
    right: 90px;
    display: none !important;
}

.service-section .elementor-cta__content {
    background-color: #fff;
}
.service-section .elementor-widget-call-to-action.active .elementor-cta__content {
    background-color: #F6F6F6;
}

.service-section .elementor-cta__title:before {
    color: #000;
    font-size: 16px;
    position: absolute;
    left: -40px;
    top:5px;
}

.service-section:after, .service-section:before {
    content:'';
    position: absolute !important;
    top: 0;
    left: auto;
    right: 0;
    width: 50% !important;
    height: auto;
    aspect-ratio: 1/1;
    background-size:contain;
    background-repeat: no-repeat;
}
.service-section:before {
    background-image: url('/wp-content/uploads/2026/07/cercle-1.webp');
    z-index: 10;
}
.service-section:after {
    background-image: url('/wp-content/uploads/2026/07/cercle-animation.webp');
    z-index: 11;
}
.service-section .elementor-cta__bg-wrapper {
    position: absolute;
    top:0;
    right: 0;
    width: 50%;
    height: auto;
    aspect-ratio: 1/1;
    padding: 6.5%;
    z-index: 12;
    border-radius: 50% ;
    opacity: 0;
    transition: all 0.5s;
	pointer-events:none !important;
}
.service-section .elementor-widget-call-to-action.active .elementor-cta__bg-wrapper {
    opacity: 1;
}
@media screen and (max-width: 767px) {
    .service-section:after, .service-section:before {
        width:288px !important;
        left: 0;
        right: auto;
        top:auto;
        bottom: 0;
    }
    .service-section .elementor-cta__bg-wrapper {
        width:288px;
        top:auto;
        bottom: 0;
        left:0;
        right: auto;
        min-width: 288px;
    }
}

.service-section .elementor-cta__bg {
    position: relative;
    width: 100%;
    height: 100%;
    border-radius: 50%;
}

.service-section .elementor-cta__icon {
    position: absolute;
  right: 18.5%;
  top: 0;
  transform: translatey(143%);
  background-color: #fff;
  border-radius: 50%;
  width: 13%;
  height: auto;
  aspect-ratio: 1/1;
  z-index: 20;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: all 0.5s;
}
.service-section .elementor-icon {
    width: 65%;
    height: auto;
    aspect-ratio: 1/1;
}
.service-section .elementor-icon svg {
    width: 100%;
    height: 100%;
}
.service-section .elementor-widget-call-to-action.active .elementor-cta__icon {
    opacity: 1;
}
@media screen and (max-width: 767px) {
    .service-section .elementor-cta__icon {
        top: auto;
        bottom: 0;
      transform: translatey(-110px);
      left: 106px;
      right: auto;
      width:70px;
    }
}

/* A propos section */
@media screen and (max-width: 767px) {
    .about-section {
        background-size: auto 500px !important;
    }
    .about-section:after {
        content:'';
        position: absolute;
        top:150px;
        left: 0;
        width: 100%;
        height: 350px;
        content: '';
        position: absolute;
        top: 100px;
        left: 0;
        width: 100%;
        height: 400px;
        background-image: linear-gradient(0deg, #000c,transparent);
    }
}

/* Carossel equipes */
.equipe-carousel-module .elementor-widget-image-box {
    background-color: #F6F6F6;
    height: 100%;
}
.equipe-carousel-module .swiper-slide-active .elementor-widget-image-box {
    background-color: #D0F0FF;
}

.equipe-carousel-module .elementor-image-box-img {
    position: relative;
}
.equipe-carousel-module .elementor-image-box-img:before, .equipe-carousel-module .elementor-image-box-img:after {
    content:'';
    position: absolute;
    left:0;
    top:0;
    width: 100%;
    height: 100%;
    background-size: contain;
}
.equipe-carousel-module .elementor-image-box-img:before {
    background-image: url('/wp-content/uploads/2026/07/cadre.png');
}
.equipe-carousel-module .elementor-image-box-img:after {
    background-image: url('/wp-content/uploads/2026/07/cadre-animation.png');
}
.equipe-carousel-module .elementor-widget-image-box:hover .elementor-image-box-img:after {
    animation: profil-animation 2s;
}
@keyframes profil-animation {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
.equipe-carousel-module .elementor-image-box-img img {
    aspect-ratio: 1/1;
    position: relative;
    z-index: 1;
}
.equipe-carousel-module .elementor-image-box-title {
    margin-top: 20px;
}
.equipe-carousel-module .elementor-swiper-button-prev .xcls-1 {
    fill: #D0F0FF;
}
.equipe-carousel-module .elementor-swiper-button-prev .xcls-2 {
    fill: #000;
}
.equipe-carousel-module .elementor-swiper-button-next .xcls-1 {
    fill: #047FBB;
}
.equipe-carousel-module .elementor-swiper-button-next .xcls-2 {
    fill: #fff;
}

/* CTA section */
.cta-background-section {
	background-image:url('/wp-content/uploads/2026/07/prisme-left.png'), url('/wp-content/uploads/2026/07/prisme-right.png');
	background-position:left bottom, right bottom;
	background-size:190px auto, 250px auto;
	background-repeat:no-repeat;
}
@media screen and (max-width: 767px) {
	.cta-background-section {
		background-size:40% auto, 40% auto;
	}
}

/* forminator */
.forminator-module .forminator-button {
	max-width: fit-content !important;
	padding:15px 75px 15px 20px !important;
	font-size:16px;
	text-transform:uppercase;
	font-weight:400 !important;
	border-radius: 0 !important;
}
.forminator-module .forminator-button:before {
	content:'';
	position:absolute;
	top: 10px;
  	right: 15px;
	width:30px;
	height:30px;
	background-color:#fff;
	background-image:url('/wp-content/uploads/2026/07/bouton-anim.svg');
	background-size:200% 200%;
	background-repeat:no-repeat;
	background-position: top right;
}
.forminator-module .forminator-button:hover:before {
	animation:bouton-envoie-anim 0.5s;
}
@keyframes bouton-envoie-anim {
	0% {
		background-position: top right;
	}
	100% {
		background-position: left bottom;
	}
}
.forminator-module .forminator-button:hover {
	box-shadow:none !important;
}
.forminator-module .forminator-row-last {
	margin-bottom:0 !important;
}
.forminator-module .forminator-consent__label a {
	color:#047FBB;
}

/* cookies */
.cky-btn-revisit-wrapper {
background-color: #047FBB !important;
}
.cky-btn-accept {
background: #047FBB !important;
color: #FFFFFF;
border: 2px solid #047FBB !important;
}
.cky-btn-reject {
color: #047FBB !important;
background: transparent !important;
border: 2px solid #047FBB !important;
}
.cky-btn-customize {
color: #047FBB !important;
background: transparent !important;
border: 2px solid #047FBB !important;
}
.cky-btn-preferences {
color: #004E9C !important;
background: transparent !important;
border: 2px solid #047FBB !important;
}

@media screen and (max-width: 767px) {
	.lead-section .elementor-widget-text-editor p {
		text-align: center !important;
	}
	.service-section .elementor-cta__bg-wrapper {
		margin-left: auto !important;
        margin-right: auto !important;
        right: 0 !important;
	}
	.service-section:after, .service-section:before {
		margin-left: auto !important;
		margin-right: auto !important;
        right: 0 !important;
	}
	.desc-item {
		margin-left: auto !important;
        margin-right: auto !important;
	}
    .menu-footer .menu-item {
    	width: 50%;
	}
}


@media screen and (max-width: 480px) {
	.coordonnee-footer {
		width: 100% !important;
	}
	.coordonnee-footer ul.elementor-icon-list-items {
		display: flex;
        justify-content: space-between !important;
		align-items: center;
		width: 100%;
	}
	.coordonnee-footer .elementor-icon-list-icon {
		width: 30px !important;
		height: 30px !important;
        padding: 0 !important;
		margin: 0 !important;
	}
	.coordonnee-footer svg {
		width: 12px !important;
    	height: 12px !important;
	}
	body .coordonnee-footer .elementor-icon-list-item {
		padding: 0 !important;
        margin: 0 !important;
	}
	.menu-footer .elementor-nav-menu.sm-vertical {
		display: flex;
		flex-wrap: wrap;
	}
} 

@media screen and (min-width: 400px) and (max-width: 500px) {
	    .social-reseau .elementor-social-icons-wrapper.elementor-grid {
        position: absolute;
        top: -106px;
        left: auto;
        right: -80px;
        width: max-content;
    }
}
@media screen and (max-width: 390px) {
   .social-reseau a.elementor-icon.elementor-social-icon {
		width: 35px;
		height: 35px;
		font-size: 12px;
	}
	.social-reseau .elementor-social-icons-wrapper.elementor-grid {
        position: absolute;
        top: -106px;
        left: auto;
        right: -54px;
        width: max-content;
    }
}
@media screen and (max-width: 375px) {
	.social-reseau .elementor-social-icons-wrapper.elementor-grid {
        position: absolute;
        top: -102px;
        left: auto;
        right: -44px;
        width: max-content;
    }
	.coordonnee-footer .elementor-icon-list-text {
		font-size: 15px !important;
	}
    .coordonnee-footer .elementor-icon-list-icon {
        width: 25px !important;
        height: 25px !important;
        padding: 0px !important;
        margin: 0px !important;
    }
    .coordonnee-footer svg {
        width: 12px !important;
        height: 12px !important;
    }
}
@media screen and (max-width: 360px ) {
	.social-reseau .elementor-social-icons-wrapper.elementor-grid {
        position: absolute;
        top: -106px;
        left: auto;
        right: -40px;
        width: max-content;
    }
}