.elementor-kit-6{--e-global-color-primary:#0A1838;--e-global-color-secondary:#2A70C9;--e-global-color-text:#5A6B85;--e-global-color-accent:#2DD4BF;--e-global-color-bwink:#1F63B8;--e-global-color-bwsurf:#F1F6FB;--e-global-color-bwmutd:#93A9C9;--e-global-color-bwtealL:#5EEAD4;--e-global-typography-primary-font-family:"Manrope";--e-global-typography-primary-font-weight:800;--e-global-typography-primary-line-height:1.08em;--e-global-typography-primary-letter-spacing:-0.03em;--e-global-typography-secondary-font-family:"Manrope";--e-global-typography-secondary-font-weight:700;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-secondary-letter-spacing:-0.02em;--e-global-typography-text-font-family:"Manrope";--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:1.65em;--e-global-typography-text-letter-spacing:0em;--e-global-typography-accent-font-family:"JetBrains Mono";--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.4em;--e-global-typography-accent-letter-spacing:0.16em;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{border-radius:8px 8px 8px 8px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.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-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}
/* Start custom CSS *//* ===== Beauweb — utilitaires du design system « Plan d'atelier » ===== */
:root{--bw-navy:#0A1838;--bw-blue:#2A70C9;--bw-blue-ink:#1F63B8;--bw-teal:#2DD4BF;--bw-surface:#F1F6FB;--bw-muted:#5A6B85;--bw-muted-dark:#93A9C9;--bw-line:rgba(10,24,56,.12);--bw-line-dark:rgba(94,234,212,.17)}

/* Quadrillage « plan coté » sur les fonds nuit */
.bw-grid{position:relative}
.bw-grid::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:0;background-image:linear-gradient(rgba(94,234,212,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(94,234,212,.07) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse 90% 70% at 70% 30%,#000 20%,transparent 78%);mask-image:radial-gradient(ellipse 90% 70% at 70% 30%,#000 20%,transparent 78%)}
.bw-grid>.e-con-inner,.bw-grid>.e-child{position:relative;z-index:1}

/* Panneau technique : repères d'angle */
.bw-panel{position:relative}
.bw-panel::before,.bw-panel::after{content:"";position:absolute;width:12px;height:12px;border:1px solid var(--bw-teal);opacity:.5;pointer-events:none}
.bw-panel::before{top:-1px;left:-1px;border-right:0;border-bottom:0}
.bw-panel::after{bottom:-1px;right:-1px;border-left:0;border-top:0}

/* Ligne clé / valeur du panneau technique */
.bw-row{border-bottom:1px dashed rgba(94,234,212,.16)}
.bw-row-last{border-bottom:0}

/* Surtitre monospace précédé d'un carré plein */
.bw-eyebrow .elementor-heading-title::before{content:"";display:inline-block;width:7px;height:7px;background:currentColor;margin-right:10px;vertical-align:middle}

/* Lien de section souligné */
.bw-link a{border-bottom:1px solid rgba(31,99,184,.35);padding-bottom:2px;transition:border-color .2s}
.bw-link a:hover{border-color:var(--bw-blue-ink)}

/* Colonnes séparées par des filets : pas de carte, pas d'ombre */
.bw-split>.e-con-inner>.e-child+.e-child,.bw-split>.e-child+.e-child{border-left:1px solid var(--bw-line)}
@media(max-width:1024px){.bw-split>.e-con-inner>.e-child+.e-child,.bw-split>.e-child+.e-child{border-left:0;border-top:1px solid var(--bw-line)}}

/* Filet supérieur des étapes du processus, animé à l'apparition */
.bw-step{border-top:2px solid var(--bw-line);position:relative}
.bw-step::before{content:"";position:absolute;top:-2px;left:0;width:0;height:2px;background:var(--bw-blue)}
.bw-step.bw-in::before{width:100%;transition:width .7s cubic-bezier(.22,.61,.36,1)}

/* Cartes réalisations : seule élévation autorisée par le design system */

/* Séparateur haut sur fond nuit */
.bw-hr-dark{border-top:1px solid var(--bw-line-dark)}
.bw-hr{border-top:1px solid var(--bw-line)}

/* WPForms aligné sur le design system */
.bw-form .wpforms-field-label{font-family:"JetBrains Mono",monospace!important;font-size:11px!important;letter-spacing:.1em;text-transform:uppercase;color:var(--bw-muted)!important;font-weight:500!important}
.bw-form input[type=text],.bw-form input[type=email],.bw-form input[type=tel],.bw-form select,.bw-form textarea{border:1px solid rgba(10,24,56,.5)!important;border-radius:3px!important;padding:14px 15px!important;font-family:Manrope,sans-serif!important;font-size:16px!important;color:var(--bw-navy)!important;background:#fff!important;box-shadow:none!important}
.bw-form input:focus,.bw-form select:focus,.bw-form textarea:focus{border-color:var(--bw-blue)!important;box-shadow:0 0 0 3px rgba(42,112,201,.15)!important;outline:none}
.bw-form ::placeholder{color:var(--bw-muted);opacity:1}
.bw-form button[type=submit]{background:var(--bw-blue)!important;color:#fff!important;border:0!important;border-radius:8px!important;padding:16px 28px!important;font-family:Manrope,sans-serif!important;font-weight:700!important;font-size:15px!important;width:100%;transition:background .18s,transform .18s}
.bw-form button[type=submit]:hover{background:#1F5AA8!important;transform:translateY(-2px)}
.bw-form .wpforms-required-label{color:#D93025!important}
.bw-form .wpforms-error{color:#D93025!important;font-size:13px}

@media(prefers-reduced-motion:reduce){.bw-card,.bw-step::before,.bw-form button[type=submit]{transition:none}}


.bw-split-dark>.e-con-inner>.e-child+.e-child,.bw-split-dark>.e-child+.e-child{border-left:1px solid rgba(94,234,212,.17)}
@media(max-width:1024px){.bw-split-dark>.e-con-inner>.e-child+.e-child,.bw-split-dark>.e-child+.e-child{border-left:0;border-top:1px solid rgba(94,234,212,.17);padding-top:28px!important;padding-left:0!important}}
@media(max-width:1024px){.bw-split>.e-child+.e-child{padding-top:28px!important;padding-left:0!important}}

.bw-card{overflow:hidden}
.bw-card .bw-card-img img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;transition:transform .5s cubic-bezier(.22,.61,.36,1)}
.bw-card:hover .bw-card-img img{transform:scale(1.04)}
@media(prefers-reduced-motion:reduce){.bw-card .bw-card-img img{transition:none}}

/* Bloc d'informations de contact */
.bw-infos>.e-child{border-bottom:1px solid rgba(10,24,56,.12)}
.bw-infos>.e-child:last-child{border-bottom:0}
.bw-info .elementor-icon-list-item{padding:18px 22px!important}
.bw-info .bw-k{display:block;font-family:'JetBrains Mono',monospace;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#5A6B85;font-weight:500;margin-bottom:3px}
.bw-info .bw-v{display:block;color:#0A1838;font-weight:600}
.bw-info a:hover .bw-v{color:#1F63B8}
.bw-form-popup .wpforms-field-label{color:#93A9C9!important}
.bw-form-popup input[type=email]{background:rgba(255,255,255,.06)!important;border-color:rgba(94,234,212,.28)!important;color:#fff!important}
.bw-form-popup .wpforms-field-checkbox label{color:#93A9C9!important;font-size:13px}

/* ===== Bandeau defilant ===== */
.bw-marquee{overflow:hidden}
.bw-marquee>.e-con-inner{max-width:none!important;padding:0!important}
.bw-marquee .bw-track{flex-wrap:nowrap!important;width:max-content!important;gap:0!important;animation:bw-slide 46s linear infinite;-webkit-mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent);mask-image:linear-gradient(90deg,transparent,#000 4%,#000 96%,transparent)}
.bw-marquee .bw-set{flex-wrap:nowrap!important;width:max-content!important;gap:0!important;padding:0!important}
.bw-marquee .bw-chip{width:auto!important;flex:0 0 auto!important;padding:18px 34px 18px 0!important}
.bw-marquee .bw-chip .elementor-heading-title{white-space:nowrap}
.bw-marquee:hover .bw-track{animation-play-state:paused}
@keyframes bw-slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.bw-marquee .bw-track{animation:none}}

/* =========================================================
   Beauweb - langage de survol (3 niveaux)
   N1 cartes cliquables : elevation
   N2 blocs de contenu   : filet d'accent, sans elevation
   N3 lignes interactives: decalage et repere lateral
   ========================================================= */
:root{--bw-ease:cubic-bezier(.22,.61,.36,1)}

/* ---- N1 : cartes ---- */
.bw-card{transition:transform .28s var(--bw-ease),box-shadow .28s var(--bw-ease),border-color .28s}
.bw-card:hover{transform:translateY(-4px);box-shadow:0 16px 44px rgba(10,24,56,.11);border-color:rgba(10,24,56,.2)}
.elementor-posts .elementor-post{transition:transform .28s var(--bw-ease),box-shadow .28s var(--bw-ease),border-color .28s}
.elementor-posts .elementor-post:hover{transform:translateY(-4px);box-shadow:0 16px 44px rgba(10,24,56,.11);border-color:rgba(10,24,56,.2)}

/* ---- N2 : blocs separes par filets, fond clair ---- */
.bw-split>.e-child,.bw-split>.e-con-inner>.e-child,.bw-block{position:relative;transition:background-color .3s var(--bw-ease)}
.bw-split>.e-child::after,.bw-split>.e-con-inner>.e-child::after,.bw-block::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--bw-blue);transition:width .45s var(--bw-ease);pointer-events:none}
.bw-split>.e-child:hover,.bw-split>.e-con-inner>.e-child:hover,.bw-block:hover{background-color:rgba(42,112,201,.035)}
.bw-split>.e-child:hover::after,.bw-split>.e-con-inner>.e-child:hover::after,.bw-block:hover::after{width:100%}
.bw-block-pad{padding:18px 20px 20px 0!important}

/* ---- N2 bis : memes blocs sur fond nuit ---- */
.bw-split-dark>.e-child,.bw-split-dark>.e-con-inner>.e-child{position:relative;transition:background-color .3s var(--bw-ease)}
.bw-split-dark>.e-child::after,.bw-split-dark>.e-con-inner>.e-child::after{content:"";position:absolute;left:0;bottom:0;height:2px;width:0;background:var(--bw-teal);transition:width .45s var(--bw-ease);pointer-events:none}
.bw-split-dark>.e-child:hover,.bw-split-dark>.e-con-inner>.e-child:hover{background-color:rgba(45,212,191,.045)}
.bw-split-dark>.e-child:hover::after,.bw-split-dark>.e-con-inner>.e-child:hover::after{width:100%}

/* Le bandeau defilant n'herite d'aucun de ces effets */
.bw-marquee .bw-chip::after{display:none}
.bw-marquee .bw-chip:hover{background:none}

/* ---- N3 : accordeon et FAQ ---- */
.elementor-accordion-item .elementor-tab-title,.elementor-toggle-item .elementor-tab-title{position:relative;transition:padding-left .28s var(--bw-ease),background-color .28s}
.elementor-accordion-item .elementor-tab-title::before,.elementor-toggle-item .elementor-tab-title::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:2px;height:0;background:var(--bw-teal);transition:height .32s var(--bw-ease)}
.elementor-toggle-item .elementor-tab-title::before{background:var(--bw-blue)}
.elementor-accordion-item .elementor-tab-title:hover::before,.elementor-toggle-item .elementor-tab-title:hover::before,
.elementor-accordion-item .elementor-active::before,.elementor-toggle-item .elementor-active::before{height:58%}
.elementor-accordion-item .elementor-tab-title:hover{background-color:rgba(45,212,191,.05)}
.elementor-toggle-item .elementor-tab-title:hover{background-color:rgba(42,112,201,.035)}

/* ---- N3 : lignes d'information de contact ---- */
.bw-info .elementor-icon-list-item{transition:background-color .25s var(--bw-ease),padding-left .25s var(--bw-ease)}
.bw-info .elementor-icon-list-item:hover{background-color:rgba(42,112,201,.04);padding-left:28px!important}

/* ---- Images : leger rapprochement ---- */
.bw-zoom .elementor-widget-container{overflow:hidden;border-radius:8px}
.bw-zoom img{transition:transform .6s var(--bw-ease);display:block}
.bw-zoom:hover img{transform:scale(1.045)}

/* ---- Etapes du processus ---- */
.bw-step{transition:border-color .3s var(--bw-ease)}
.bw-step:hover{border-top-color:var(--bw-blue)}

/* ---- Reseaux sociaux et filtres ---- */
.elementor-social-icon{transition:transform .22s var(--bw-ease),background-color .22s,border-color .22s}
.elementor-social-icon:hover{transform:translateY(-2px)}

/* ---- Accessibilite : le clavier obtient le meme repere que la souris ---- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,
.elementor-tab-title:focus-visible,.elementor-social-icon:focus-visible{outline:2px solid var(--bw-blue);outline-offset:3px;border-radius:3px}
.bw-block:focus-within::after,.bw-card:focus-within{outline:none}
.bw-card:focus-within{transform:translateY(-4px);box-shadow:0 16px 44px rgba(10,24,56,.11)}

/* ---- Respect du reglage systeme de reduction d'animation ---- */
@media(prefers-reduced-motion:reduce){
  .bw-card,.elementor-posts .elementor-post,.bw-block,.bw-split>.e-child,.bw-split-dark>.e-child,
  .bw-zoom img,.elementor-tab-title,.bw-info .elementor-icon-list-item,.elementor-social-icon,.bw-step{transition:none!important}
  .bw-card:hover,.elementor-posts .elementor-post:hover,.elementor-social-icon:hover{transform:none}
  .bw-zoom:hover img{transform:none}
  .bw-block::after,.bw-split>.e-child::after,.bw-split-dark>.e-child::after{transition:none!important}
}

/* ---- Appareils tactiles : aucun etat de survol persistant ---- */
@media(hover:none){
  .bw-card:hover,.elementor-posts .elementor-post:hover{transform:none;box-shadow:none}
  .bw-block:hover,.bw-split>.e-child:hover,.bw-split-dark>.e-child:hover{background-color:transparent}
  .bw-block:hover::after,.bw-split>.e-child:hover::after,.bw-split-dark>.e-child:hover::after{width:0}
  .bw-zoom:hover img{transform:none}
  .bw-info .elementor-icon-list-item:hover{padding-left:22px!important}
}/* End custom CSS */