/* 
Theme Name: Hello Elementor Child
Theme URI: https://github.com/elementor/hello-theme-child/
Description: Hello Elementor Child is a child theme of Hello Elementor, created by Elementor team
Author: Elementor Team
Author URI: https://elementor.com/
Template: hello-elementor
Version: 2.0.0
Text Domain: hello-elementor-child
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/
/* Add your custom styles here */
.open {cursor: pointer;user-select: none; display: flex; align-items: center; justify-content: space-between; border-bottom: solid 1px #ccc; margin-top: 1vw; padding: 1vw 0; width: 100%}
.open.active {color: #e31e24;}
.open::after {content: '';display: block;/* Dimensions à ajuster selon ton design */width: 1.5vw;height: 1.5vw;/* Appel du SVG (chemin relatif au fichier CSS) */background-image: url('arrow-right.svg');background-repeat: no-repeat;background-position: center;background-size: contain;/* Transition fluide pour la rotation */transition: transform 0.3s ease;/* Sécurité : empêche la flèche de s'écraser si le titre est long sur mobile */flex-shrink: 0; margin-left: 15px; /* Espace minimum entre texte et flèche */}
.open.active::after {/* Rotation vers le bas */transform: rotate(90deg);}
.deploie{padding: 1vw}
br.mobile {display: none;}
.glass-effect { --blur-intensity: 0.5vw; --brightness-level: 97%;backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));-webkit-backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1), inset 1px 1px 1px rgba(255, 255, 255, 0.5), inset -1px -1px 1px rgba(0, 0, 0, 0.15); border-radius: 1.5vw;}
.full svg,.full .elementor-icon{width: 100% !important}
.elementor-icon .st0{fill: unset;}
ul, li{list-style: none; margin: 0; padding: 0}
.elementor-button{transition: width 0s;}
.scroll #header{--blur-intensity: 0.5vw; --brightness-level: 97%;backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));-webkit-backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1), inset 1px 1px 1px rgba(255, 255, 255, 0.5), inset -1px -1px 1px rgba(0, 0, 0, 0.15); border-radius: 1.5vw; width:98% !important; margin:0.5vw 1vw !important }
.scroll #header>div{padding: 0.5vw 0;}
#header{z-index: 10}
#header svg {fill: #ffffff; /* Force le noir */transition: fill 0.3s ease;}
#header .elementor-icon-list-icon i {color: #ffffff !important;transition: color 0.3s ease;}
/* QUAND SUR FOND FONCÉ (.skin-light ajouté par le JS) -> BLANC */
/* 1. Transition fluide pour tous les acteurs */
.optima-reverse,.optima-reverse i,.optima-reverse svg,.optima-reverse path,.optima-reverse a,.optima-reverse span {transition: all 0.3s ease-in-out !important;}
/* 2. L'État "Inversé" (Quand on est sur du noir) */
/* On force le BLANC sur tout ce qui se trouve dans l'élément */
.optima-reverse.is-inverted,.optima-reverse.is-inverted h1,.optima-reverse.is-inverted h2,.optima-reverse.is-inverted h3,.optima-reverse.is-inverted p,.optima-reverse.is-inverted a,.optima-reverse.is-inverted i,.optima-reverse.is-inverted span {color: #000000 !important;}
/* Gestion spécifique des SVG (Icônes) */
.optima-reverse.is-inverted svg,.optima-reverse.is-inverted svg path {fill: #000000 !important;stroke: #000000 !important;}
/* Gestion des bordures (ex: Boutons Ghost) */
.optima-reverse.is-inverted {border-color: #000000 !important;}
#lienClientMobile.is-inverted svg{fill: #000000 !important;stroke: #000000 !important;}
#lienClientMobile #rendezVous .optima-stack-icon svg{fill: #fff; height: 9vw; width: 9vw}
#lienClientMobile #rendezVous .optima-stack-icon{height: 9vw; width: 9vw}
.elementor-popup-modal.dialog-type-lightbox{backdrop-filter: blur(10px);-webkit-backdrop-filter: blur(10px); background-color:rgba(0, 0, 0, 0.5); }
.elementor-location-popup{--blur-intensity: 0vw; --brightness-level: 100%;backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));-webkit-backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1), inset 1px 1px 1px rgba(255, 255, 255, 0.5), inset -1px -1px 1px rgba(0, 0, 0, 0.15); background-color: rgba(255, 255, 255, 0.1) !important; border-radius: 1vw}
.elementor-location-popup *,.elementor-popup-modal .dialog-widget-content{background-color: transparent !important}
.elementor-popup-modal legend,.elementor-popup-modal label{color: #fff !important}
.elementor-popup-modal input:not([type="radio"]):not([type="checkbox"]),.elementor-popup-modal select,.elementor-popup-modal textarea{color: #000 !important; --blur-intensity: 0.5vw; --brightness-level: 97%;backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));-webkit-backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));box-shadow: 0 0 20px rgba(0, 0, 0, 0.1), inset 1px 1px 1px rgba(255, 255, 255, 0.5), inset -1px -1px 1px rgba(0, 0, 0, 0.15) !important; background-color: #efefef !important; border-radius: 1vw !important; border: none !important;}
.elementor-popup-modal input:not([type="radio"]):not([type="checkbox"]),.elementor-popup-modal select,.elementor-popup-modal textarea{height: auto !important; padding: 1vw !important}
::placeholder{opacity: 1 !important}
#boxContact{max-height: 90vh; overflow-y: auto;}
.elementor-popup-modal button{background-color: var(--e-global-color-primary) !important;font-size: 0.9vw !important;border-radius: 50px 50px 50px 50px !important;font-family: "Inter Tight", Sans-serif !important;font-size: 1vw !important;font-weight: 800 !important;text-transform: uppercase !important;letter-spacing: 1.2px !important;padding: 1vw 2vw 1vw 2vw !important; height: auto !important;}
.wpforms-submit-container{justify-content: center; display: flex;}
.optima-stack-container>button{position: absolute; background-color: transparent !important; z-index: 10}
.wpforms-field-label{font-size: 1.5vw !important; justify-self: center; width: 100% !important; text-align: center;}
div.wpforms-container-full .wpforms-field.wpforms-field-checkbox ul, div.wpforms-container-full .wpforms-field.wpforms-field-radio ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-checkbox ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-multiple ul, div.wpforms-container-full .wpforms-field.wpforms-field-gdpr-checkbox ul{justify-content: center; align-items: center; width: 100%; font-size: 1vw}
.wpforms-field-label-inline{font-size: 1vw !important}
div.wpforms-container-full input[type=checkbox], div.wpforms-container-full input[type=radio],div.wpforms-container-full input[type=checkbox]:before, div.wpforms-container-full input[type=checkbox]:after, div.wpforms-container-full input[type=radio]:before, div.wpforms-container-full input[type=radio]:after{height: 1vw !important; width: 1vw !important}
div.wpforms-container-full input[type=checkbox], div.wpforms-container-full input[type=radio]{margin-top: 0.2vw !important}
.elementor-popup-modal input:not([type="radio"]):not([type="checkbox"]), .elementor-popup-modal select, .elementor-popup-modal textarea{font-size: 1vw !important; padding: 1vw 1.5vw !important; border-radius: 2vw !important}
.elementor-popup-modal textarea{min-height: 10vw !important}
/* --- SCROLLBAR iOS 26 POUR #boxContact --- */
#boxContact {overflow-y: auto;overscroll-behavior: contain; scroll-behavior: smooth; scrollbar-width: thin; scrollbar-color: rgba(0, 0, 0, 0.2) transparent;}
#boxContact::-webkit-scrollbar {width: 6px;}
#boxContact::-webkit-scrollbar-track {background: transparent; margin-block: 4px;}
/* L'ascenseur (Le "pouce") */
#boxContact::-webkit-scrollbar-thumb { background-color: rgba(0, 0, 0, 0.15); border-radius: 100vw; border: 1px solid transparent; background-clip: content-box; transition: background-color 0.3s ease;}
/* Interaction : On fonce un peu au survol */
#boxContact::-webkit-scrollbar-thumb:hover { background-color: rgba(0, 0, 0, 0.35);}
.titreWP{ text-align:center; line-height:1; font-size:1.5vw !important;; display:block; color:#fff !important; width:100% !important }
p{margin-bottom: 0}
div.wpforms-container-full .wpforms-confirmation-container-full, div[submit-success]>.wpforms-confirmation-container-full:not(.wpforms-redirection-message){border: none !important;}
div.wpforms-container-full .wpforms-confirmation-container-full p{color: #fff !important; font-size: 1vw;}
.wpforms-error{font-size: 1vw !important; text-align: center; color:#ff6667 }
div.wpforms-container-full .wpforms-form label.wpforms-error:before, div.wpforms-container-full .wpforms-form em.wpforms-error:before{ background-color:#ff6667 !important }
.grecaptcha-badge{display: none !important;}
#cookiesPage #cmplz-document{max-width: 100% !important; font-family: "Inter Tight", Sans-serif; }
#cookiesPage #cmplz-document p,#cmplz-document, .editor-styles-wrapper .cmplz-unlinked-mode,#cmplz-document p, #cmplz-document li, #cmplz-document td, .editor-styles-wrapper .cmplz-unlinked-mode p, .editor-styles-wrapper .cmplz-unlinked-mode li, .editor-styles-wrapper .cmplz-unlinked-mode td{font-size: 1vw !important}
#cookiesPage #cmplz-document h2{font-size: 2vw !important; font-weight: 800; letter-spacing: -0.05vw}
.soon:after{content: "Bientot dispo."; font-family: "Inter Tight", Sans-serif; font-weight:800; color:#fff; opacity:1 !important; z-index:0; rotate:40deg; position:absolute; right:-2vw; top:1.3vw; background-color:#1976d0; padding:0.3vw 2vw; font-size:0.8vw; }
.soon{overflow: hidden;}
#callMe{width: max-content;}
#callMe .elementor-icon-box-wrapper {display: inline-flex;align-items: center;overflow: hidden;padding: 0.5vw;cursor: pointer; gap: 0}
#callMe .elementor-icon {font-size: 1.3vw;display: flex;align-items: center;justify-content: center;width: 1em;height: 1em;margin-right: -0vw !important;margin-bottom: -0vw !important;transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);z-index: 2;}
#callMe .elementor-icon svg {width: 1em;height: 1em;}
#callMe .elementor-icon-box-content {font-size: 1vw;line-height: 1.2;max-width: 0;opacity: 0;white-space: nowrap;transform: translateX(-1.5vw);transition: all 0.4s cubic-bezier(0.25, 1, 0.5, 1);}
#callMe .elementor-icon-box-title a {    color: inherit; text-decoration: none; padding-top: 0.3vw; display: block; padding-right: 0vw;}
#callMe:hover .elementor-icon {transform: translateX(-0.2vw);}
#callMe:hover .elementor-icon-box-content {max-width: 12vw; opacity: 1;transform: translateX(0);padding-left: 0.5vw; }
.elementor-headline-dynamic-wrapper{width: max-content !important;}

@media screen and (max-width: 767px) {#cookiesPage #cmplz-document p,#cmplz-document, .editor-styles-wrapper .cmplz-unlinked-mode,#cmplz-document p, #cmplz-document li, #cmplz-document td, .editor-styles-wrapper .cmplz-unlinked-mode p, .editor-styles-wrapper .cmplz-unlinked-mode li, .editor-styles-wrapper .cmplz-unlinked-mode td{font-size: 5vw !important}
    .soon:after{content: "Bientot dispo."; font-family: "Inter Tight", Sans-serif; font-weight:800; color:#fff; opacity:1 !important; z-index:0; rotate:40deg; position:absolute; right:-8vw; top:6vw; background-color:#1976d0; padding:0.3vw 8vw; font-size:3vw }
    #cookiesPage #cmplz-document h2{font-size: 5vw !important; font-weight: 800; letter-spacing: -0.05vw; text-align: center;}
	br.mobile {display: block;}
    .scroll #header{left: 0 !important}
    .scroll #header,#lienClientMobile{--blur-intensity: 4vw; --brightness-level: 97%;backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));-webkit-backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1), inset 1px 1px 1px rgba(255, 255, 255, 0.5), inset -1px -1px 1px rgba(0, 0, 0, 0.15); border-radius: 8vw; width:96% !important; margin:2vw 2% !important }
    .scroll #header>div{padding: 0.5vw 0;}
    #lienClientMobile{position: fixed; width: 96% !important; left: 0 !important; padding: 4vw 2vw 2vw 2vw; justify-content: center !important; align-items: center !important; border-radius: 8vw 8vw 0 0; margin-bottom: 0 !important; gap: 10vw}
    #lienClientMobile .elementor-widget-icon{align-self: center;}
    #rendezVous{margin-top: -2vw}
    .elementor-location-popup{--blur-intensity: 0vw; --brightness-level: 100%;backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));-webkit-backdrop-filter: blur(var(--blur-intensity)) brightness(var(--brightness-level));box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1), inset 1px 1px 1px rgba(255, 255, 255, 0.5), inset -1px -1px 1px rgba(0, 0, 0, 0.15); background-color: rgba(255, 255, 255, 0.2) !important; border-radius: 5vw}
    .elementor-popup-modal .dialog-close-button svg{fill: #fff !important}
    .elementor-popup-modal *{color: #fff !important}
    .elementor-popup-modal .elementor-widget-text-editor{font-size: 4vw !important}
    .elementor-popup-modal legend,.elementor-popup-modal label{color: #fff !important; display: block !important;}
    .elementor-popup-modal legend{ padding-top: 5vw !important }
    .wpforms-field-label{font-size: 6vw !important; justify-self: left; width: 100% !important; text-align: center; margin-bottom: 1vw !important; line-height: 1 !important; margin-top: 5vw !important}
    .wpforms-container .wpforms-field, .wp-core-ui div.wpforms-container .wpforms-field{padding: 1vw 0 !important}
    div.wpforms-container-full input[type=checkbox], div.wpforms-container-full input[type=radio],div.wpforms-container-full input[type=checkbox]:before, div.wpforms-container-full input[type=checkbox]:after, div.wpforms-container-full input[type=radio]:before, div.wpforms-container-full input[type=radio]:after{height: 4vw !important; width: 4vw !important}
    div.wpforms-container-full .wpforms-field.wpforms-field-checkbox ul, div.wpforms-container-full .wpforms-field.wpforms-field-radio ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-checkbox ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-multiple ul, div.wpforms-container-full .wpforms-field.wpforms-field-gdpr-checkbox ul{justify-content: center; align-items: center; width: 100%; font-size: 4vw !important; margin-left: -4vw}
    .wpforms-field-label-inline{font-size: 4vw !important}
    div.wpforms-container-full .wpforms-field.wpforms-field-checkbox.wpforms-list-inline ul, div.wpforms-container-full .wpforms-field.wpforms-field-radio.wpforms-list-inline ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-checkbox.wpforms-list-inline ul, div.wpforms-container-full .wpforms-field.wpforms-field-payment-multiple.wpforms-list-inline ul, div.wpforms-container-full .wpforms-field.wpforms-field-gdpr-checkbox.wpforms-list-inline ul{flex-direction: column; !important; justify-content: left !important; align-items: center;}
    #boxContact{flex-direction: row !important; justify-content: center; max-height: 80vh; margin-top: 0vw}
    .elementor-popup-modal input:not([type="radio"]):not([type="checkbox"]), .elementor-popup-modal select, .elementor-popup-modal textarea{font-size: 4vw !important; padding: 4vw !important; border-radius: 5vw !important; text-align: center; width: 100% !important}
    .wpforms-container .wpforms-field .wpforms-field-row .wpforms-one-half, .wpforms-container .wpforms-field .wpforms-field-row .wpforms-three-sixths, .wpforms-container .wpforms-field .wpforms-field-row .wpforms-two-fourths{width: 100% !important; padding: 0 !important; margin: 3vw 0}
    .elementor-popup-modal textarea{min-height: 40vw !important; text-align: left;}
    .elementor-popup-modal fieldset{display: block !important;}
     .elementor-popup-modal button.wpforms-submit{font-size: 4vw !important; width: 100%; padding: 5vw !important}
     div.wpforms-container-full:not(:empty){margin-top: 0 !important}
     .titreWP{ text-align:center; line-height:1; font-size:6vw !important; padding-top:10vw !important; display:block; margin-top:10vw !important }
     .wpforms-container .wpforms-field-label{padding-top: 10vw !important}
     .titreWP p{margin-bottom: 0 !important}
     .wpforms-error{font-size: 4vw !important; text-align: center; color:#ff6667 !important }

}
