.elementor-kit-5{--e-global-color-primary:#4F6930;--e-global-color-secondary:#292623;--e-global-color-text:#292623;--e-global-color-accent:#764930;--e-global-color-lightbg:#F5F3EA;--e-global-color-borderl:#D8D2C0;--e-global-color-mutedtx:#6F7669;--e-global-color-whitecl:#FFFFFF;--e-global-typography-primary-font-family:"DM Sans";--e-global-typography-primary-font-size:38px;--e-global-typography-primary-font-weight:800;--e-global-typography-primary-line-height:1.18em;--e-global-typography-primary-letter-spacing:-0.4px;--e-global-typography-secondary-font-family:"DM Sans";--e-global-typography-secondary-font-size:22px;--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.3em;--e-global-typography-text-font-family:"DM Sans";--e-global-typography-text-font-size:17px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.75em;--e-global-typography-accent-font-family:"DM Sans";--e-global-typography-accent-font-size:15px;--e-global-typography-accent-font-weight:700;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.3em;--e-global-typography-accent-letter-spacing:1.2px;color:#292623;font-family:"DM Sans", Sans-serif;font-size:17px;font-weight:400;line-height:1.75em;}.elementor-kit-5 button,.elementor-kit-5 input[type="button"],.elementor-kit-5 input[type="submit"],.elementor-kit-5 .elementor-button{background-color:#4F6930;font-family:"DM Sans", Sans-serif;font-size:15px;font-weight:700;text-transform:uppercase;color:#FFFFFF;border-style:none;border-radius:12px 12px 12px 12px;padding:14px 22px 14px 22px;}.elementor-kit-5 button:hover,.elementor-kit-5 button:focus,.elementor-kit-5 input[type="button"]:hover,.elementor-kit-5 input[type="button"]:focus,.elementor-kit-5 input[type="submit"]:hover,.elementor-kit-5 input[type="submit"]:focus,.elementor-kit-5 .elementor-button:hover,.elementor-kit-5 .elementor-button:focus{background-color:#292623;color:#FFFFFF;border-style:none;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-kit-5 a{color:#4F6930;font-family:"DM Sans", Sans-serif;text-decoration:none;}.elementor-kit-5 a:hover{color:#292623;text-decoration:none;}.elementor-kit-5 h1{color:#292623;font-family:"DM Sans", Sans-serif;font-size:52px;font-weight:800;line-height:1.1em;letter-spacing:-1px;}.elementor-kit-5 h2{color:#292623;font-family:"DM Sans", Sans-serif;font-size:38px;font-weight:800;line-height:1.18em;letter-spacing:-0.6px;}.elementor-kit-5 h3{color:#292623;font-family:"DM Sans", Sans-serif;font-size:30px;font-weight:800;line-height:1.2em;letter-spacing:-0.4px;}.elementor-kit-5 h4{color:#292623;font-family:"DM Sans", Sans-serif;font-size:22px;font-weight:700;line-height:1.25em;letter-spacing:-0.2px;}.elementor-kit-5 h5{color:#292623;font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:700;line-height:1.3em;}.elementor-kit-5 h6{color:#292623;font-family:"DM Sans", Sans-serif;font-size:16px;font-weight:700;line-height:1.35em;}.elementor-kit-5 img{border-style:none;border-radius:16px 16px 16px 16px;}.elementor-kit-5 label{color:#292623;font-family:"Arial", Sans-serif;font-size:14px;font-weight:700;}.elementor-kit-5 input:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea,.elementor-kit-5 .elementor-field-textual{font-family:"Arial", Sans-serif;font-size:16px;font-weight:400;color:#292623;background-color:#FFFFFF;border-style:solid;border-width:1px 1px 1px 1px;border-color:#D8D2C0;border-radius:10px 10px 10px 10px;transition:0.2ms;padding:13px 16px 13px 16px;}.elementor-kit-5 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-5 textarea:focus,.elementor-kit-5 .elementor-field-textual:focus{border-style:solid;border-width:1px 1px 1px 1px;border-color:#4F6930;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1240px;}.e-con{--container-max-width:1240px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-kit-5{--e-global-typography-primary-font-size:34px;--e-global-typography-secondary-font-size:21px;--e-global-typography-text-font-size:16px;font-size:16px;}.elementor-kit-5 h1{font-size:44px;}.elementor-kit-5 h2{font-size:34px;}.elementor-kit-5 h3{font-size:27px;}.elementor-kit-5 h4{font-size:21px;}.elementor-kit-5 h5{font-size:17px;}.elementor-kit-5 h6{font-size:16px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-5{--e-global-typography-primary-font-size:30px;--e-global-typography-secondary-font-size:20px;--e-global-typography-text-font-size:16px;font-size:16px;}.elementor-kit-5 h1{font-size:38px;}.elementor-kit-5 h2{font-size:30px;}.elementor-kit-5 h3{font-size:24px;}.elementor-kit-5 h4{font-size:20px;}.elementor-kit-5 h5{font-size:17px;}.elementor-kit-5 h6{font-size:15px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* Sélecteur de langue flottant (TranslatePress) : ancrage propre en bas à droite, sans masquer le contenu */
.trp-floating-switcher.trp-switcher-position-bottom{right:16px !important;bottom:16px !important;z-index:999 !important;}
@media (max-width:767px){.trp-floating-switcher.trp-switcher-position-bottom{right:10px !important;bottom:10px !important;}}

/* ===== ANIMATION SYSTEM (PH1) - couche comportementale globale =====
   Aucune valeur de design validee n est modifiee (radius, couleurs, typo, dimensions).
   Reference : entree 600ms / hover 250-350ms / easing ease-out / stagger 80-120ms. */
/* 1 - Recalibrage des animations d entree Elementor natives.
   Les keyframes natives utilisent translate3d(+/-100%) ou scale(0.3) sans garde
   overflow (risque de scroll horizontal) et une duree fixe de 1.25s.
   Les classes utilisees sont remappees vers des keyframes sobres de 20-24px. */
body .animated{animation-duration:.6s;animation-fill-mode:both;animation-timing-function:cubic-bezier(.22,.61,.36,1)}
.animated.fadeIn{animation-name:ph1-fade}
.animated.fadeInUp{animation-name:ph1-fade-up}
.animated.fadeInDown{animation-name:ph1-fade-down}
.animated.fadeInLeft{animation-name:ph1-fade-left}
.animated.fadeInRight{animation-name:ph1-fade-right}
.animated.slideInLeft{animation-name:ph1-fade-left}
.animated.slideInRight{animation-name:ph1-fade-right}
.animated.zoomIn{animation-name:ph1-zoom}
@keyframes ph1-fade{from{opacity:0}to{opacity:1}}
@keyframes ph1-fade-up{from{opacity:0;transform:translate3d(0,20px,0)}to{opacity:1;transform:none}}
@keyframes ph1-fade-down{from{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:none}}
@keyframes ph1-fade-left{from{opacity:0;transform:translate3d(-24px,0,0)}to{opacity:1;transform:none}}
@keyframes ph1-fade-right{from{opacity:0;transform:translate3d(24px,0,0)}to{opacity:1;transform:none}}
@keyframes ph1-zoom{from{opacity:0;transform:scale3d(.98,.98,.98)}to{opacity:1;transform:none}}
/* 2 - FILET DE SECURITE VISIBILITE (entree sequencee Unlimited Elements).
   UC masque les cartes par une regle #ID .ue-item{opacity:0} et ne les revele qu au
   scroll, sans IntersectionObserver ni repli : si le script ne s execute pas, les
   cartes restent invisibles definitivement. L animation retardee ci-dessous restaure
   la visibilite. Elle passe par l origine 'animation' de la cascade (donc sans
   !important) et elle est annulee automatiquement des que UC pose la classe
   .uc-entrance-animate, dont la regle plus specifique remplace toute la propriete
   animation. Delai 3.5s calibre sur la mesure du site : DOMContentLoaded 2.33s,
   load 2.53s. Fill 'forwards' : aucun effet pendant le delai, donc pas de flash. */
@keyframes ph1-safety-reveal{to{opacity:1}}
.uc_post_grid_style_one_item.ue-item{animation:ph1-safety-reveal .6s cubic-bezier(.22,.61,.36,1) 3.5s forwards}
/*   Meme risque cote Elementor : .elementor-invisible pose visibility:hidden et
   seul le JS de l editeur frontal la retire. Meme repli, exclu des que la classe
   .animated est posee pour ne jamais interferer avec l animation d entree. */
@keyframes ph1-safety-visible{to{visibility:visible}}
.elementor-invisible:not(.animated){animation:ph1-safety-visible .01s linear 3.5s forwards}
/* 3 - Hover des cartes produits. La transition reste celle du widget
   (transition_duration) pour ne pas casser les transitions natives de bordure/fond.
   !important uniquement sur transform : l entree UC est une CSS animation fill:both
   qui verrouille transform ; seule l origine !important peut la depasser.
   Le border-radius n est pas touche. */
/*   La carte n a AUCUNE transition native (le widget n en pose que sur
   .uc_post_grid_style_one et .uc_content), il faut donc la declarer ici. */
.uc_post_grid_style_one_item{transition:transform .3s ease-out,box-shadow .3s ease-out,border-color .3s ease-out}
.uc_post_grid_style_one_item:hover{transform:translateY(-4px);box-shadow:0 8px 20px rgba(23,41,130,.08)}
/*   !important limite aux seules cartes portant reellement l animation d entree :
   celle-ci est une CSS animation fill:both qui verrouille transform et qu une
   declaration normale ne peut pas depasser. */
.uc_post_grid_style_one_item.uc-entrance-animate:hover{transform:translateY(-4px) !important}
/* 4 - Micro-interaction boutons */
body .elementor-button,body .uc_more_btn{transition:transform .25s ease-out,background-color .25s ease-out,color .25s ease-out,border-color .25s ease-out}
body .elementor-button:hover,body .uc_more_btn:hover{transform:translateY(-2px)}
/* 5 - Accessibilite : prefers-reduced-motion = etat final immediat, aucune animation */
/* 2b - Distance et easing des entrees Unlimited Elements normalises.
   UC genere translateY(50px) + easing ease-in ; on ramene a 24px et ease-out
   pour rester coherent avec les animations Elementor (20-24px).
   Le !important est strictement limite aux cartes portant reellement la classe
   d entree UC, car la regle native UC est portee par un selecteur d ID.
   Ni le hover, ni le radius, ni le stagger (pilote en JS) ne sont touches. */
@keyframes ph1-uc-enter{from{opacity:0;transform:translate3d(0,24px,0)}to{opacity:1;transform:none}}
.uc_post_grid_style_one_item.ue-item.uc-entrance-animate{animation-name:ph1-uc-enter !important;animation-timing-function:cubic-bezier(.22,.61,.36,1) !important}

/* 5 - Mega-menu (menu imbrique Elementor). A l ouverture, Elementor ajoute
   .e-active sur le panneau : declencheur deterministe, sans IntersectionObserver
   et sans risque d invisibilite (le panneau est en display:none quand il est ferme).
   Ouverture sobre : fondu + 8px, 250 ms. Aucun grand slide, aucune rotation.
   Le panneau porte deja la classe .animated : il est donc couvert par le bloc
   prefers-reduced-motion existant. */
@keyframes ph1-menu-open{from{opacity:0;transform:translate3d(0,-8px,0)}to{opacity:1;transform:none}}
/* Elementor pose .elementor-widget-n-menu .e-n-menu-content>.e-con{animation-duration:var(--n-menu-open-animation-duration)}
   a specificite egale et plus tard dans la cascade : on monte la specificite d un cran
   et on pilote sa propre variable, plutot que d ajouter un !important. */
.elementor-widget-n-menu .e-n-menu-content>.e-con.e-active{--n-menu-open-animation-duration:.25s;animation:ph1-menu-open .25s cubic-bezier(.22,.61,.36,1) both}

@media (prefers-reduced-motion:reduce){
.e-n-menu-content>.e-con.e-active,.elementor-widget-n-menu .e-n-menu-content>.e-con.e-active{animation:none !important;opacity:1 !important;transform:none !important}
*,*::before,*::after{animation-duration:.01ms !important;animation-delay:0ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;transition-delay:0ms !important;scroll-behavior:auto !important}
body .animated{animation:none !important;opacity:1 !important;transform:none !important}
.elementor-invisible{visibility:visible !important}
.uc_post_grid_style_one_item.ue-item,.uc_post_grid_style_one_item.uc-entrance-animate{animation:none !important;opacity:1 !important;transform:none !important;filter:none !important}
body .elementor-button:hover,body .uc_more_btn:hover,.uc_post_grid_style_one_item:hover,.uc_post_grid_style_one_item.uc-entrance-animate:hover{transform:none !important;box-shadow:none !important}
}
/* 6 - Impression : etat final immediat */
@media print{
.elementor-invisible{visibility:visible !important}
.uc_post_grid_style_one_item.ue-item,.uc_post_grid_style_one_item.uc-entrance-animate{animation:none !important;opacity:1 !important;transform:none !important;filter:none !important}
}
/* ===== fin ANIMATION SYSTEM ===== */

/* === PH1 BOTTOM NAV (mobile app-like) - START === */
:root{--ph1-bnav-h:62px;--ph1-bnav-safe:env(safe-area-inset-bottom,0px);--ph1-bnav-total:calc(var(--ph1-bnav-h) + var(--ph1-bnav-safe));--ph1-bnav-ink:#5F6D91}
#ph1-bnav{display:none}
#ph1-gammes-sheet,#ph1-sheet-backdrop{display:none}
@media (max-width:1023.98px){
 #ph1-bnav{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:1000;align-items:stretch;justify-content:center;
  width:100%;height:var(--ph1-bnav-total);padding:0 0 var(--ph1-bnav-safe);margin:0;gap:0;--gap:0px;--grid-gap:0px;
  background:var(--e-global-color-whitecl,#fff);border-top:1px solid var(--e-global-color-borderl,#E6EAF3);
  box-shadow:0 -2px 12px rgba(23,41,130,.06);animation:ph1-bnav-in .22s cubic-bezier(.22,.61,.36,1) both}
 #ph1-bnav>.elementor-element{flex:1 1 0;min-width:0;max-width:112px;display:flex}
 #ph1-bnav>.elementor-element>.elementor-widget-container{width:100%;height:100%;display:flex}
 #ph1-bnav .ph1-bnav-item .elementor-button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;
  height:100%;width:100%;min-height:0;padding:6px 2px;margin:0;border:0;border-radius:0;box-shadow:none;
  background-color:transparent;background-image:none;text-decoration:none;
  color:var(--ph1-bnav-ink);-webkit-tap-highlight-color:transparent;transition:color .18s ease-out}
 #ph1-bnav .ph1-bnav-item .elementor-button:hover,#ph1-bnav .ph1-bnav-item .elementor-button:focus,
 #ph1-bnav .ph1-bnav-item .elementor-button:visited{background-color:transparent;color:var(--ph1-bnav-ink);transform:none;box-shadow:none}
 body.home #ph1-bnav .ph1-bnav-home .elementor-button,body.post-type-archive-produit #ph1-bnav .ph1-bnav-cat .elementor-button,body.single-produit #ph1-bnav .ph1-bnav-cat .elementor-button,body.tax-gamme #ph1-bnav .ph1-bnav-gammes .elementor-button,body.page-id-97 #ph1-bnav .ph1-bnav-devis .elementor-button,#ph1-bnav .ph1-bnav-item.ph1-is-active .elementor-button,body.home #ph1-bnav .ph1-bnav-home .elementor-button:hover,body.post-type-archive-produit #ph1-bnav .ph1-bnav-cat .elementor-button:hover,body.single-produit #ph1-bnav .ph1-bnav-cat .elementor-button:hover,body.tax-gamme #ph1-bnav .ph1-bnav-gammes .elementor-button:hover,body.page-id-97 #ph1-bnav .ph1-bnav-devis .elementor-button:hover,#ph1-bnav .ph1-bnav-item.ph1-is-active .elementor-button:hover{color:var(--e-global-color-primary,#172982)}
 #ph1-bnav .ph1-bnav-item .elementor-button::before{content:"";position:absolute;z-index:-1;top:7px;left:50%;margin-left:-22px;
  width:44px;height:28px;border-radius:999px;background-color:transparent;transition:background-color .18s ease-out}
 body.home #ph1-bnav .ph1-bnav-home .elementor-button::before,body.post-type-archive-produit #ph1-bnav .ph1-bnav-cat .elementor-button::before,body.single-produit #ph1-bnav .ph1-bnav-cat .elementor-button::before,body.tax-gamme #ph1-bnav .ph1-bnav-gammes .elementor-button::before,body.page-id-97 #ph1-bnav .ph1-bnav-devis .elementor-button::before,#ph1-bnav .ph1-bnav-item.ph1-is-active .elementor-button::before{background-color:var(--e-global-color-lightbg,#F4F6FB)}
 #ph1-bnav .ph1-bnav-item .elementor-button-content-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;width:100%}
 #ph1-bnav .ph1-bnav-item .elementor-button-content-wrapper::before{content:"";display:block;width:24px;height:24px;flex:0 0 24px;
  background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;
  -webkit-mask-size:24px 24px;mask-size:24px 24px;transition:transform .18s ease-out}
 #ph1-bnav .ph1-bnav-item .elementor-button-text{font-family:Heebo,sans-serif;font-size:11px;font-weight:500;line-height:1.15;
  text-transform:none;letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;display:block}
 body.home #ph1-bnav .ph1-bnav-home .elementor-button-text,body.post-type-archive-produit #ph1-bnav .ph1-bnav-cat .elementor-button-text,body.single-produit #ph1-bnav .ph1-bnav-cat .elementor-button-text,body.tax-gamme #ph1-bnav .ph1-bnav-gammes .elementor-button-text,body.page-id-97 #ph1-bnav .ph1-bnav-devis .elementor-button-text,#ph1-bnav .ph1-bnav-item.ph1-is-active .elementor-button-text{font-weight:600}
 #ph1-bnav .ph1-bnav-home .elementor-button-content-wrapper::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3.5%2010.6%2012%203.6l8.5%207%22%2F%3E%3Cpath%20d%3D%22M5.6%209.6V19a1.4%201.4%200%200%200%201.4%201.4h3.1v-5.1h3.8v5.1H17A1.4%201.4%200%200%200%2018.4%2019V9.6%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M3.5%2010.6%2012%203.6l8.5%207%22%2F%3E%3Cpath%20d%3D%22M5.6%209.6V19a1.4%201.4%200%200%200%201.4%201.4h3.1v-5.1h3.8v5.1H17A1.4%201.4%200%200%200%2018.4%2019V9.6%22%2F%3E%3C%2Fsvg%3E")}
 #ph1-bnav .ph1-bnav-cat .elementor-button-content-wrapper::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223.6%22%20y%3D%223.6%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221.6%22%2F%3E%3Crect%20x%3D%2213.4%22%20y%3D%223.6%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221.6%22%2F%3E%3Crect%20x%3D%223.6%22%20y%3D%2213.4%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221.6%22%2F%3E%3Crect%20x%3D%2213.4%22%20y%3D%2213.4%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221.6%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223.6%22%20y%3D%223.6%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221.6%22%2F%3E%3Crect%20x%3D%2213.4%22%20y%3D%223.6%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221.6%22%2F%3E%3Crect%20x%3D%223.6%22%20y%3D%2213.4%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221.6%22%2F%3E%3Crect%20x%3D%2213.4%22%20y%3D%2213.4%22%20width%3D%227%22%20height%3D%227%22%20rx%3D%221.6%22%2F%3E%3C%2Fsvg%3E")}
 #ph1-bnav .ph1-bnav-gammes .elementor-button-content-wrapper::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203.2%203.4%207.8%2012%2012.4l8.6-4.6L12%203.2Z%22%2F%3E%3Cpath%20d%3D%22M3.4%2012.2%2012%2016.8l8.6-4.6%22%2F%3E%3Cpath%20d%3D%22M3.4%2016.4%2012%2021l8.6-4.6%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%203.2%203.4%207.8%2012%2012.4l8.6-4.6L12%203.2Z%22%2F%3E%3Cpath%20d%3D%22M3.4%2012.2%2012%2016.8l8.6-4.6%22%2F%3E%3Cpath%20d%3D%22M3.4%2016.4%2012%2021l8.6-4.6%22%2F%3E%3C%2Fsvg%3E")}
 #ph1-bnav .ph1-bnav-devis .elementor-button-content-wrapper::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%203.4H7.4A2%202%200%200%200%205.4%205.4v13.2a2%202%200%200%200%202%202h9.2a2%202%200%200%200%202-2V8.2L14%203.4Z%22%2F%3E%3Cpath%20d%3D%22M13.8%203.6v4.8h4.8%22%2F%3E%3Cpath%20d%3D%22M8.8%2013.2h6.4%22%2F%3E%3Cpath%20d%3D%22M8.8%2016.8h4.2%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%203.4H7.4A2%202%200%200%200%205.4%205.4v13.2a2%202%200%200%200%202%202h9.2a2%202%200%200%200%202-2V8.2L14%203.4Z%22%2F%3E%3Cpath%20d%3D%22M13.8%203.6v4.8h4.8%22%2F%3E%3Cpath%20d%3D%22M8.8%2013.2h6.4%22%2F%3E%3Cpath%20d%3D%22M8.8%2016.8h4.2%22%2F%3E%3C%2Fsvg%3E")}
 #ph1-bnav .ph1-bnav-menu .elementor-button-content-wrapper::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%207.2h16%22%2F%3E%3Cpath%20d%3D%22M4%2012h16%22%2F%3E%3Cpath%20d%3D%22M4%2016.8h16%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M4%207.2h16%22%2F%3E%3Cpath%20d%3D%22M4%2012h16%22%2F%3E%3Cpath%20d%3D%22M4%2016.8h16%22%2F%3E%3C%2Fsvg%3E")}
 #ph1-bnav .ph1-bnav-menu[data-ph1-open="true"] .elementor-button-content-wrapper::before{-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6.4%206.4%2017.6%2017.6%22%2F%3E%3Cpath%20d%3D%22M17.6%206.4%206.4%2017.6%22%2F%3E%3C%2Fsvg%3E");mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22%23000%22%20stroke-width%3D%221.75%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M6.4%206.4%2017.6%2017.6%22%2F%3E%3Cpath%20d%3D%22M17.6%206.4%206.4%2017.6%22%2F%3E%3C%2Fsvg%3E")}
 #ph1-bnav .ph1-bnav-item .elementor-button:active .elementor-button-content-wrapper::before{transform:scale(.92)}
 #ph1-bnav .ph1-bnav-item .elementor-button:focus-visible{outline:2px solid var(--e-global-color-primary,#172982);outline-offset:-3px;border-radius:10px}
 @media (orientation:landscape) and (max-height:450px){
  :root{--ph1-bnav-h:52px}
  #ph1-bnav .ph1-bnav-item .elementor-button-content-wrapper::before{width:20px;height:20px;flex-basis:20px;-webkit-mask-size:20px 20px;mask-size:20px 20px}
  #ph1-bnav .ph1-bnav-item .elementor-button::before{top:5px;height:24px}
  #ph1-bnav .ph1-bnav-item .elementor-button-text{font-size:10px}}
 html.ph1-bnav-ready .elementor-83 .e-n-menu-toggle{display:none!important}
 .elementor-83 .e-n-menu-wrapper{--n-menu-dropdown-content-box-height:calc(100vh - var(--ph1-bnav-total) - 92px)!important;
  overflow-y:auto!important;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
 .elementor-location-footer>.e-con{padding-bottom:calc(var(--ph1-bnav-total) + 8px)!important}
 body .trp-floating-switcher.trp-switcher-position-bottom{bottom:calc(var(--ph1-bnav-total) + 10px)!important}
 body .cookieadmin_law_container.cookieadmin_bottom{bottom:calc(var(--ph1-bnav-total) + 10px)!important}
 html{scroll-padding-top:80px;scroll-padding-bottom:calc(var(--ph1-bnav-total) + 8px)}
 #ph1-sheet-backdrop{display:block;position:fixed;inset:0;z-index:1001;background:rgba(21,36,81,.42);
  opacity:0;pointer-events:none;transition:opacity .22s ease-out}
 #ph1-sheet-backdrop[data-open="true"]{opacity:1;pointer-events:auto}
 #ph1-gammes-sheet{display:block;position:fixed;left:0;right:0;bottom:0;z-index:1002;
  background:var(--e-global-color-whitecl,#fff);border-radius:18px 18px 0 0;
  padding:10px 16px calc(var(--ph1-bnav-total) + 12px);box-shadow:0 -6px 24px rgba(23,41,130,.14);
  transform:translate3d(0,100%,0);visibility:hidden;max-height:80vh;overflow-y:auto;overscroll-behavior:contain;
  transition:transform .26s cubic-bezier(.22,.61,.36,1),visibility 0s linear .26s}
 #ph1-gammes-sheet[data-open="true"]{transform:none;visibility:visible;
  transition:transform .26s cubic-bezier(.22,.61,.36,1),visibility 0s}
 #ph1-gammes-sheet .ph1-sheet-grip{width:38px;height:4px;border-radius:999px;background:var(--e-global-color-borderl,#E6EAF3);margin:2px auto 12px}
 #ph1-gammes-sheet .ph1-sheet-title{font-family:Raleway,sans-serif;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--e-global-color-mutedtx,#7A85A3);margin:0 0 10px}
 #ph1-gammes-sheet a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;margin-bottom:6px;
  border:1px solid var(--e-global-color-borderl,#E6EAF3);border-radius:12px;font-family:Heebo,sans-serif;font-size:15px;
  font-weight:500;line-height:1.3;color:var(--e-global-color-secondary,#203667);text-decoration:none;text-transform:none;
  transition:border-color .18s ease-out,background-color .18s ease-out}
 #ph1-gammes-sheet a::after{content:"";width:8px;height:8px;flex:0 0 8px;
  border-right:1.75px solid currentColor;border-top:1.75px solid currentColor;transform:rotate(45deg);opacity:.5}
 #ph1-gammes-sheet a:active{background:var(--e-global-color-lightbg,#F4F6FB);border-color:var(--e-global-color-primary,#172982)}
 #ph1-gammes-sheet a:focus-visible{outline:2px solid var(--e-global-color-primary,#172982);outline-offset:2px}
 #ph1-gammes-sheet a.ph1-sheet-all{border-style:dashed;color:var(--e-global-color-primary,#172982);font-weight:600}
}
@keyframes ph1-bnav-in{from{transform:translate3d(0,8px,0)}to{transform:none}}
@media (prefers-reduced-motion:reduce){
 #ph1-bnav{animation:none!important;transform:none!important}
 #ph1-bnav *,#ph1-gammes-sheet,#ph1-gammes-sheet *,#ph1-sheet-backdrop{transition:none!important;animation:none!important}
 #ph1-bnav .ph1-bnav-item .elementor-button:active .elementor-button-content-wrapper::before{transform:none!important}
 #ph1-gammes-sheet[data-open="true"]{transform:none!important}
}
/* === PH1 BOTTOM NAV - END === */

/* QA finale : uniformiser le radius du bouton Fluent Forms sur la charte (10px) */
.ff-btn-submit{ border-radius:10px !important; }


/* Audit mobile ciblé : zone tactile confortable radios/checkbox Fluent Forms (label entier cliquable, ~44px min) */
.ff-el-form-check-label{
  display:flex;
  align-items:center;
  min-height:44px;
  cursor:pointer;
}

/* Audit mobile ciblé : correctif menu mobile non cliquable.
   Le widget mega-menu (#anyin-mega-menu) possede une boite propre (position:relative)
   qui intercepte les clics destines a la barre de navigation basse (.ph1-bnav) meme
   lorsque le menu deroulant est ouvert et que la zone visuelle du menu ne couvre pas
   cet endroit. Fix : rendre la boite du widget transparente aux clics, en reactivant
   explicitement pointer-events sur ses propres elements interactifs (liens, boutons). */
#anyin-mega-menu{
  pointer-events:none;
}
#anyin-mega-menu a,
#anyin-mega-menu button,
#anyin-mega-menu input,
#anyin-mega-menu [role="button"]{
  pointer-events:auto;
}/* End custom CSS */