.elementor-kit-18{--e-global-color-primary:#1A1A1A;--e-global-color-secondary:#777777;--e-global-color-text:#333333;--e-global-color-accent:#B05830;--e-global-color-602184d:#FFFEFB;--e-global-typography-primary-font-family:"Raleway";--e-global-typography-primary-font-size:22px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-text-transform:none;--e-global-typography-primary-line-height:37px;--e-global-typography-secondary-font-family:"Raleway";--e-global-typography-secondary-font-size:18px;--e-global-typography-secondary-font-weight:400;--e-global-typography-secondary-line-height:28px;--e-global-typography-text-font-family:"Raleway";--e-global-typography-text-font-size:18px;--e-global-typography-text-font-weight:400;--e-global-typography-text-line-height:28px;--e-global-typography-accent-font-family:"Raleway";--e-global-typography-accent-font-size:22px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-font-style:normal;--e-global-typography-accent-text-decoration:none;--e-global-typography-accent-line-height:37px;background-color:var( --e-global-color-602184d );color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), 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-18 button,.elementor-kit-18 input[type="button"],.elementor-kit-18 input[type="submit"],.elementor-kit-18 .elementor-button{background-color:var( --e-global-color-602184d );font-family:var( --e-global-typography-text-font-family ), 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 );color:var( --e-global-color-accent );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );border-radius:7px 7px 7px 7px;padding:015px 25px 015px 025px;}.elementor-kit-18 button:hover,.elementor-kit-18 button:focus,.elementor-kit-18 input[type="button"]:hover,.elementor-kit-18 input[type="button"]:focus,.elementor-kit-18 input[type="submit"]:hover,.elementor-kit-18 input[type="submit"]:focus,.elementor-kit-18 .elementor-button:hover,.elementor-kit-18 .elementor-button:focus{background-color:#C46A2D;color:var( --e-global-color-602184d );border-style:none;border-radius:10px 10px 10px 10px;}.elementor-kit-18 e-page-transition{background-color:var( --e-global-color-accent );}.elementor-kit-18 p{margin-block-end:22px;}.elementor-kit-18 a{color:var( --e-global-color-accent );font-family:"Raleway", Sans-serif;font-size:18px;font-weight:400;font-style:normal;text-decoration:none;line-height:28px;}.elementor-kit-18 a:hover{color:#C46A2D;font-family:"Raleway", Sans-serif;font-size:18px;font-weight:400;text-decoration:none;line-height:28px;}.elementor-kit-18 h1{color:var( --e-global-color-primary );font-family:"Raleway", Sans-serif;font-size:45px;font-weight:300;text-transform:uppercase;font-style:normal;text-decoration:none;line-height:53px;letter-spacing:2px;}.elementor-kit-18 h2{color:var( --e-global-color-primary );font-family:"Raleway", Sans-serif;font-size:26px;font-weight:500;text-transform:uppercase;font-style:normal;text-decoration:none;line-height:38px;letter-spacing:1px;}.elementor-kit-18 h3{color:var( --e-global-color-primary );font-family:"Raleway", Sans-serif;font-size:22px;font-weight:600;text-transform:none;line-height:30px;}.elementor-kit-18 h4{color:var( --e-global-color-text );font-family:"Raleway", Sans-serif;font-size:20px;font-weight:500;font-style:normal;text-decoration:none;line-height:28px;}.elementor-kit-18 h5{color:var( --e-global-color-text );font-family:"Raleway", Sans-serif;font-size:18px;font-weight:500;font-style:normal;text-decoration:none;line-height:24px;}.elementor-kit-18 h6{color:var( --e-global-color-text );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );font-style:var( --e-global-typography-accent-font-style );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-18 label{color:var( --e-global-color-primary );font-family:var( --e-global-typography-text-font-family ), 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-18 input:not([type="button"]):not([type="submit"]),.elementor-kit-18 textarea,.elementor-kit-18 .elementor-field-textual{font-family:var( --e-global-typography-secondary-font-family ), 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 );color:var( --e-global-color-text );accent-color:var( --e-global-color-accent );background-color:var( --e-global-color-602184d );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-secondary );border-radius:7px 7px 7px 7px;padding:10px 15px 10px 15px;}.elementor-kit-18 input:focus:not([type="button"]):not([type="submit"]),.elementor-kit-18 textarea:focus,.elementor-kit-18 .elementor-field-textual:focus{color:var( --e-global-color-text );accent-color:var( --e-global-color-accent );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );border-radius:7px 7px 7px 7px;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;--container-default-padding-top:60px;--container-default-padding-right:040px;--container-default-padding-bottom:60px;--container-default-padding-left:040px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .copyright p{color:var( --e-global-color-secondary );font-family:"Raleway", Sans-serif;font-size:14px;font-weight:400;line-height:1.7px;}@media(max-width:1024px){.elementor-kit-18{--e-global-typography-primary-font-size:20px;--e-global-typography-primary-line-height:34px;--e-global-typography-secondary-font-size:17px;--e-global-typography-secondary-line-height:26px;--e-global-typography-text-font-size:17px;--e-global-typography-text-line-height:26px;--e-global-typography-accent-font-size:20px;--e-global-typography-accent-line-height:34px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-18 p{margin-block-end:18px;}.elementor-kit-18 a{font-size:17px;line-height:26px;}.elementor-kit-18 a:hover{font-size:17px;line-height:26px;}.elementor-kit-18 h1{font-size:38px;line-height:49px;letter-spacing:2px;}.elementor-kit-18 h2{font-size:25px;line-height:34px;letter-spacing:1px;}.elementor-kit-18 h6{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-18 button,.elementor-kit-18 input[type="button"],.elementor-kit-18 input[type="submit"],.elementor-kit-18 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-18 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-18 input:not([type="button"]):not([type="submit"]),.elementor-kit-18 textarea,.elementor-kit-18 .elementor-field-textual{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-18{--e-global-typography-primary-font-size:18px;--e-global-typography-primary-line-height:31px;--e-global-typography-secondary-font-size:16px;--e-global-typography-secondary-line-height:24px;--e-global-typography-text-font-size:16px;--e-global-typography-text-line-height:24px;--e-global-typography-accent-font-size:18px;--e-global-typography-accent-line-height:31px;font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-18 p{margin-block-end:16px;}.elementor-kit-18 a{font-size:16px;line-height:24px;}.elementor-kit-18 a:hover{font-size:16px;line-height:24px;}.elementor-kit-18 h1{font-size:35px;line-height:47px;letter-spacing:3px;}.elementor-kit-18 h2{font-size:24px;line-height:34px;letter-spacing:1px;}.elementor-kit-18 h3{font-size:20px;}.elementor-kit-18 h4{font-size:18px;}.elementor-kit-18 h5{font-size:16px;line-height:20em;}.elementor-kit-18 h6{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-kit-18 button,.elementor-kit-18 input[type="button"],.elementor-kit-18 input[type="submit"],.elementor-kit-18 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-18 label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-kit-18 input:not([type="button"]):not([type="submit"]),.elementor-kit-18 textarea,.elementor-kit-18 .elementor-field-textual{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* 1. Body en colonne flex */
body {
  display: flex;
  flex-direction: column;
  min-height: 100vh; /* toute la hauteur de l’écran */
  margin: 0;
}

/* 2. Contenu principal Elementor prend tout l’espace restant */
.elementor {
  flex: 1 0 auto;
}

/* 3. Footer ne se rétrécit pas et reste au bas */
footer, .footer-paper {
  flex-shrink: 0;
  position: relative; /* pour overlay / taches */
}

/* 4. Overlay / tache à l’intérieur du footer */
.footer-paper .overlay, 
.footer-paper .tache {
  position: absolute; /* positionnées par rapport au footer */
  pointer-events: none;
  z-index: 1;
}

/* 5. Responsive : rien ne déborde */
@media (max-width: 768px) {
  .footer-paper {
    min-height: auto;
  }
  .footer-paper .overlay, 
  .footer-paper .tache {
    max-width: 80%;
    top: auto; bottom: 0; /* ajuste selon besoin */
  }
}

html, body {
  height: auto !important;
  min-height: auto !important;
}

body {
  display: flex;
  flex-direction: column;
  min-height: calc(var(--vh, 1vh)*100);
}

.elementor {
  flex: 1 0 auto;
}

footer, .footer-paper {
  flex-shrink: 0;
}

<script>
function fixFooterHeight() {
  var vh = window.innerHeight * 0.01;
  document.documentElement.style.setProperty('--vh', vh + 'px');
}

window.addEventListener('resize', fixFooterHeight);
window.addEventListener('load', fixFooterHeight);
</script>

header.elementor-location-header,
footer,
.footer-paper {
  background: transparent !important;
}

/* Enlève TOUS les fonds dans le header */
header.elementor-location-header,
header.elementor-location-header .elementor-section,
header.elementor-location-header .elementor-container,
header.elementor-location-header .elementor-widget-wrap {
  background: transparent !important;
}

/* Pareil pour le footer */
footer,
footer .elementor-section,
footer .elementor-container,
footer .elementor-widget-wrap {
  background: transparent !important;
}


/* reglage menu taille /*
:root {
  --menu-height: 80px; /* valeur par défaut PC */
}

/* PC large */
@media (min-width: 1025px) {
  :root {
    --menu-height: 80px; /* ajuste si nécessaire */
  }
}

/* Tablette (menu sur 2 lignes donc plus haut) */
@media (max-width: 1024px) {
  :root {
    --menu-height: 120px; /* ajuste selon ta taille réelle du menu */
  }
}

/* Mobile */
@media (max-width: 768px) {
    #header2-wrapper {
        height: auto !important;
        min-height: unset !important;
    }
}

/* Paragraphes */
p {
  margin-bottom: 20px; /* desktop */
}

/* Tablette */
@media (max-width: 1024px) {
  p {
    margin-bottom: 15px;
  }
}

/* Mobile */
@media (max-width: 768px) {
  p {
    margin-bottom: 12px;
  }
}


/* Boutons unifiés */
/* Style global boutons Elementor normalisés */
.elementor-button {
    background-color: #fffefb !important;
    color: #B05830 !important;
    border: 1px solid #B05830 !important;
    border-radius: 7px !important;
    padding: 12px 24px !important;
    text-transform: uppercase !important;
    font-weight: 500 !important;
    text-align: center !important;
    display: inline-block !important;
    width: auto !important;
    max-width: none !important;
    text-decoration: none !important;
    transition: transform 0.1s ease, background-color 0.3s ease, color 0.3s ease, border 0.3s ease !important;
}

/* Hover */
.elementor-button:hover {
    background-color: #C46A2D !important;
    color: #fffefb !important;
    border: none !important;
}

/* === 3. Centrage des boutons dans les formulaires === */
.elementor-form .elementor-field-type-submit {
    display: block !important;
    margin: 20px auto 0 auto !important;  /* centre horizontalement avec marge */
    width: auto !important;
    max-width: 300px;                      /* limite maximale */
}

/* === 4. Boutons formulaire spécifiques === */
.elementor-form .elementor-field-type-submit .elementor-button {
    border-radius: 7px !important;
    transform: scale(1) !important;
}

/* === 5. Responsive : boutons plein écran sur mobile === */
@media (max-width: 767px) {
    .elementor-button,
    .elementor-form .elementor-field-type-submit .elementor-button {
        width: 90% !important;          /* occupe presque toute la largeur sur mobile */
        max-width: none !important;
        padding: 14px 0 !important;
        font-size: 16px !important;
    }
}

@media (max-width: 768px) {
    /* Padding horizontal menu déroulant */
    .elementor-nav-menu .sub-menu .menu-item a {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    /* Padding horizontal pied de page */
    .elementor-footer {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}

@media (max-width: 768px) {
    .elementor-element-50e05ae {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }
    
    .elementor-nav-menu--main {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
}

@media (max-width: 768px) {
    .elementor-element-467e2f9.elementor-sticky--active ~ * {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
    
    html {
        scroll-padding-top: 0 !important;
    }
}

@media (max-width: 768px) {
    .elementor-nav-menu--dropdown.elementor-nav-menu__container {
        display: none !important;
        height: 0 !important;
        overflow: hidden !important;
    }
    
    .elementor-nav-menu--dropdown.elementor-nav-menu__container[aria-hidden="false"] {
        display: block !important;
        height: auto !important;
    }
}

.elementor-location-footer .elementor-widget-text-editor,
.elementor-location-footer .elementor-widget-text-editor p {
    font-size: 0.9em !important;
}

.elementor-location-footer .elementor-widget-text-editor a {
    font-size: inherit !important;
}

h1 {
    margin-top: 55px !important;
    margin-bottom: 28px !important;
     font-weight: 400 !important
}

@media (max-width: 1024px) {
    h1 {
        margin-top: 48px !important;
        margin-bottom: 24px !important;
         font-weight: 300 !important;
    }
}

@media (max-width: 768px) {
    h1 {
        margin-top: 22px !important;
        margin-bottom: 18px !important;
        font-size: 2.3rem !important;
        font-weight: 300 !important;
    }
}

.elementor-nav-menu--main .elementor-item-active,
.elementor-nav-menu--main .elementor-item-active:focus,
.elementor-nav-menu--main .elementor-item-active:hover {
    color: #B05830 !important;
}

.elementor-nav-menu--main li.current-menu-item > a,
.elementor-nav-menu--main li.current_page_item > a {
    color: #B05830 !important;
}/* End custom CSS */