.elementor-kit-1402{--e-global-color-primary:#2E2F31;--e-global-color-secondary:#F1F6F7;--e-global-color-text:#515A5D;--e-global-color-accent:#F9B206;--e-global-color-72c0bcc:#1B4DD5;--e-global-color-05f4b41:#C82B2D;--e-global-color-b633eeb:#3498DB;--e-global-color-a9e184f:#27AE60;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-size:48px;--e-global-typography-primary-font-weight:800;--e-global-typography-primary-line-height:1.2em;--e-global-typography-secondary-font-family:"Roboto";--e-global-typography-secondary-font-size:32px;--e-global-typography-secondary-font-weight:800;--e-global-typography-secondary-line-height:1.3em;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-size:18px;--e-global-typography-accent-font-weight:800;--e-global-typography-dda466c-font-family:"Roboto";--e-global-typography-dda466c-font-size:22px;--e-global-typography-dda466c-font-weight:500;--e-global-typography-dda466c-line-height:1.4em;color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), Roboto, Arial, sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-1402 button,.elementor-kit-1402 input[type="button"],.elementor-kit-1402 input[type="submit"],.elementor-kit-1402 .elementor-button{background-color:#1B4DD5;font-size:16px;color:#FFFFFF;}.elementor-kit-1402 button:hover,.elementor-kit-1402 button:focus,.elementor-kit-1402 input[type="button"]:hover,.elementor-kit-1402 input[type="button"]:focus,.elementor-kit-1402 input[type="submit"]:hover,.elementor-kit-1402 input[type="submit"]:focus,.elementor-kit-1402 .elementor-button:hover,.elementor-kit-1402 .elementor-button:focus{background-color:#095DDC;color:#FFFFFF;}.elementor-kit-1402 a{color:var( --e-global-color-72c0bcc );font-family:var( --e-global-typography-text-font-family ), Roboto, Arial, sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-1402 a:hover{color:#095DDC;}.elementor-kit-1402 h1{color:var( --e-global-color-primary );font-family:var( --e-global-typography-primary-font-family ), Roboto, Arial, sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-1402 h2{color:var( --e-global-color-primary );font-family:var( --e-global-typography-secondary-font-family ), Roboto, Arial, sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-1402 h3{color:var( --e-global-color-primary );font-family:var( --e-global-typography-dda466c-font-family ), Roboto, Arial, sans-serif;font-size:var( --e-global-typography-dda466c-font-size );font-weight:var( --e-global-typography-dda466c-font-weight );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h4{color:var( --e-global-color-primary );font-family:var( --e-global-typography-dda466c-font-family ), Roboto, Arial, sans-serif;font-size:var( --e-global-typography-dda466c-font-size );font-weight:var( --e-global-typography-dda466c-font-weight );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h5{color:var( --e-global-color-primary );font-family:var( --e-global-typography-dda466c-font-family ), Roboto, Arial, sans-serif;font-size:var( --e-global-typography-dda466c-font-size );font-weight:var( --e-global-typography-dda466c-font-weight );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h6{color:var( --e-global-color-primary );font-family:var( --e-global-typography-dda466c-font-family ), Roboto, Arial, sans-serif;font-size:var( --e-global-typography-dda466c-font-size );font-weight:var( --e-global-typography-dda466c-font-weight );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1100px;}.e-con{--container-max-width:1100px;}{}h1.entry-title{display:var(--page-title-display);}.e-wc-error-notice .woocommerce-error, .e-wc-error-notice .wc-block-components-notice-banner.is-error{font-size:15px;box-shadow:0px 0px 10px -5px rgba(0,0,0,0.5);--error-box-border-radius:5px 5px 5px 5px;}body.e-wc-error-notice .woocommerce-error a.wc-backward, body.e-wc-error-notice .wc-block-components-notice-banner.is-error a.wc-backward{font-size:15px;}body.e-wc-error-notice .woocommerce-error, body.e-wc-error-notice .wc-block-components-notice-banner.is-error{border-style:solid;border-width:1px 1px 1px 1px;}.e-wc-message-notice .woocommerce-message, .e-wc-message-notice .wc-block-components-notice-banner.is-success{font-size:15px;--message-box-border-radius:5px 5px 5px 5px;--message-border-type:none;}body.e-wc-message-notice .woocommerce-message .restore-item, body.e-wc-message-notice .wc-block-components-notice-banner.is-success .restore-item, body.e-wc-message-notice .woocommerce-message a:not([class]), body.e-wc-message-notice .wc-block-components-notice-banner.is-success a:not([class]){font-size:15px;}body.e-wc-message-notice .woocommerce-message, body.e-wc-message-notice .wc-block-components-notice-banner.is-success{border-style:solid;border-width:1px 1px 1px 1px;}.e-wc-message-notice .woocommerce-message .button, .e-wc-message-notice .wc-block-components-notice-banner.is-success .button{box-shadow:0px 0px 10px -5px rgba(0,0,0,0.5);}.e-wc-info-notice .woocommerce-info, .e-wc-info-notice .wc-block-components-notice-banner.is-info{font-size:15px;--info-box-border-radius:5px 5px 5px 5px;--info-border-type:none;}body.e-wc-info-notice .woocommerce-info, body.e-wc-info-notice .wc-block-components-notice-banner.is-info{border-style:solid;border-width:1px 1px 1px 1px;}body.e-wc-info-notice .woocommerce-info .button, body.e-wc-info-notice .wc-block-components-notice-banner.is-info .button{font-size:15px;}.e-wc-info-notice .woocommerce-info .button, .e-wc-info-notice .wc-block-components-notice-banner.is-info .button{box-shadow:0px 0px 10px -5px rgba(0,0,0,0.5);}@media(max-width:1200px){.elementor-kit-1402{--e-global-typography-primary-font-size:30px;}}@media(max-width:1024px){.elementor-kit-1402{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-1402 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-1402 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-1402 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-1402 h3{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h4{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h5{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h6{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:880px){.elementor-kit-1402{--e-global-typography-primary-font-size:28px;--e-global-typography-text-font-size:16px;--e-global-typography-accent-font-size:16px;--e-global-typography-dda466c-font-size:20px;}}@media(max-width:767px){.elementor-kit-1402{--e-global-typography-secondary-font-size:24px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-1402 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-1402 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-1402 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-1402 h3{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h4{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h5{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h6{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}@media(min-width:2400px){.elementor-kit-1402{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-1402 a{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-1402 h1{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-kit-1402 h2{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-kit-1402 h3{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h4{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h5{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}.elementor-kit-1402 h6{font-size:var( --e-global-typography-dda466c-font-size );line-height:var( --e-global-typography-dda466c-line-height );}}/* Start custom CSS *//* --- Variables --- */
:root {
  --site-maxw: 1140px;
  --accent: var(--e-global-color-accent, #F9B206);
  --accent-rgb: 249, 178, 6;
  --primary: var(--e-global-color-primary, #242527);
  --text: var(--e-global-color-text, #4b4b4b);
  --muted: #6b6c6e;
  --border: #eee;
  --bg-from: #FBFBFC;
  --bg-to: #F2F4F7;
  --border-subtle: #DEDEDE;
}

/* --- Styles de base --- */
*, *::before, *::after { box-sizing: border-box; }
html, body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
a:hover { text-decoration: none !important; }
button, .btn { font-family: inherit; cursor: pointer; -webkit-tap-highlight-color: transparent; }

/* --- Avis WooCommerce --- */
.woocommerce-store-notice, p.demo_store {
  background: var(--accent);
  color: var(--primary);
  font-weight: 700;
  padding: 8px 12px;
  text-align: center;
}

/* --- Badge du menu --- */
span.menuhl {
  display: inline-block;
  margin-left: 10px;
  padding: 1px 6px;
  background: #f8b106;
  color: #242527;
  font-size: 12px;
  font-weight: 600;
  border-radius: 3px;
}

/* --- Tableaux --- */
table { border-collapse: collapse; width: 100%; }
th { text-align: left; }

/* --- En-tête de page (Page Header) --- */
.page-header {
  width: 100%;
  background: linear-gradient(180deg, #FFFFFF 0%, var(--bg-to) 100%);
  padding: 12px 0 60px;
}
.page-header-inner {
  max-width: var(--site-maxw);
  margin: 0 auto;
  padding: 0 16px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.page-header-inner .breadcrumb,
.page-header-inner .breadcrumb * {
  font: 400 13px/1.4 inherit !important;
  color: var(--muted) !important;
  text-decoration: none !important;
}
.page-header-inner .breadcrumb { margin-bottom: 24px; }
.page-header-inner .breadcrumb a:hover {
  color: var(--primary) !important;
  text-decoration: underline !important;
}
.page-header-inner .kick {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color:#6b6c6e;
  margin-bottom: 8px;
}
.page-header-inner h1 {
  margin: 0 0 16px;
  color: var(--primary);
  font-weight: 800;
  line-height: 1.4;
  overflow: visible !important;
}
.page-header-inner h1 .highlight {
  color: inherit;
  background-color: transparent;
  text-shadow: none;
  border: none !important;
  padding: 0;
  position: relative;
  display: inline-block;
}

.page-header-inner h1 .highlight::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 6px !important;
  background-color: var(--accent) !important;
  bottom: -5px;
  left: 0;
  border-radius: 5px !important;
}
@media (min-width: 980px) {
    .page-header-inner h1 {
        max-width: 80%;
    }
}
.page-header-inner .subtitle {
  margin: 0 0 28px;
  max-width: 720px;
  color: var(--text);
  font-weight: 400;
}
.page-header-inner .cta-buttons{
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
  margin: 0;
}
.page-header-inner .btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 14px 26px;
  border-radius: 9999px;
  font-weight: 600;
  font-size: 15px;
  line-height: 1.2;
  text-decoration: none;
  border: 0;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05), 0 8px 16px rgba(0, 0, 0, 0.08);
  transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease, filter .18s ease;
}
.page-header-inner .btn.primary{
  background: var(--accent);
  color: var(--primary);
}
.page-header-inner .btn.primary:hover{
  background: var(--accent);
  filter: brightness(110%);
  color: var(--primary);
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(0,0,0,0.1), 0 10px 20px rgba(0,0,0,0.1);
}
.page-header-inner .btn.outline{
  background: #fff;
  border: 2px solid var(--accent);
  color: var(--primary);
}
.page-header-inner .btn.outline:hover{
  background: var(--accent);
  color: #fff;
  border-color: transparent;
  transform: translateY(-1px);
  box-shadow: 0 4px 10px rgba(0,0,0,0.1), 0 10px 20px rgba(0,0,0,0.1);
}
@media (max-width: 768px) {
  .page-header { padding: 26px 0 44px; }
  .page-header-inner .breadcrumb,
  .page-header-inner .breadcrumb * {
    font-size: 12.5px !important;
    margin-bottom: 16px;
  }
  .page-header-inner .kick {
    margin: 14px 0 4px;
    letter-spacing: .9px;
  }
  .page-header-inner h1,
  .page-header-inner .subtitle { max-width: 100%; }
  .page-header-inner .btn {
    flex: 1 1 100%;
    width: 100%;
    text-align: center;
    padding: 14px 20px;
    min-height: 44px;
  }
}

/* --- Cartes d'appel à l'action (CTA Cards) --- */
.elementor .elementor-element.cta-col a.elementor-cta {
    display: flex !important;
    flex-direction: column !important;
    background: #fff !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
    margin: 10px !important;
    overflow: hidden !important;
    transition: transform .25s ease, box-shadow .25s ease !important;
}
.elementor .elementor-element.cta-col a.elementor-cta:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.08) !important;
    position: relative;
}
.elementor .elementor-element.cta-col .elementor-cta__content {
    display: flex !important;
    flex-direction: column !important;
    flex-grow: 1 !important;
    padding: 25px !important;
    text-align: left !important;
}
.elementor .elementor-element.cta-col .elementor-cta__bg img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover !important;
}
.elementor .elementor-element.cta-col .elementor-cta__button,
.elementor .elementor-element.cta-col .elementor-button {
    align-self: flex-start !important;
    margin-top: 15px !important;
    padding: 16px 25px !important;
    border: 0 !important;
    border-radius: 9999px !important;
    background: var(--e-global-color-links, #1B4DD5) !important;
    color: #fff !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: background-color .2s ease !important;
}
.elementor .elementor-element.cta-col .elementor-cta__button:hover,
.elementor .elementor-element.cta-col .elementor-button:hover {
    background: #0a5be0 !important;
}
.cta-col .elementor-cta__bg-overlay,
.cta-col .elementor-cta__content:before {
    background: transparent !important;
}
.elementor .elementor-element.cta-col.yellow .elementor-cta__button,
.elementor .elementor-element.cta-col.yellow .elementor-button {
    background: var(--accent) !important;
    color: var(--primary) !important;
}
.elementor .elementor-element.cta-col.yellow .elementor-cta__button:hover,
.elementor .elementor-element.cta-col.yellow .elementor-button:hover {
    background: #e0a000 !important;
}
.elementor .elementor-heading-title a,
.elementor .elementor-cta__title a {
    color: inherit !important;
    text-decoration: none !important;
}

/* --- Formulaires WPForms --- */
.wpforms-form input[type="text"],
.wpforms-form input[type="email"],
.wpforms-form input[type="tel"],
.wpforms-form textarea,
.wpforms-form .choices .choices__inner {
  border-radius: 8px;
  border: 1px solid var(--border-subtle);
  background: #fff;
  padding: 12px;
  transition: border-color .2s ease-in-out, box-shadow .2s ease-in-out;
}
.wpforms-form input:focus,
.wpforms-form textarea:focus {
  border-color: var(--accent);
  box-shadow: 0 0 0 2px rgba(var(--accent-rgb), 0.2);
  outline: none;
}
label.wpforms-field-label { margin: 0 0 6px; font-weight: 400; color: var(--primary); }
.wpforms-form label.wpforms-error { padding-top: 3px; color: #c00; }
button.wpforms-page-prev,
button.wpforms-page-next,
button.wpforms-submit {
  color: #fff;
  background: #1B4DD5;
  border-radius: 6px;
  padding: 10px 18px;
  border: 0;
  transition: background .18s ease, transform .12s ease;
}
button.wpforms-page-prev { background: #c3c3c3; color: #2E2F31; }
button.wpforms-submit:hover,
button.wpforms-page-next:hover {
  background: #095DDC;
  transform: translateY(-1px);
}

/* --- Accessibilité --- */
:focus-visible { outline: 3px solid rgba(0, 84, 255, 0.12); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; } }/* End custom CSS */