.elementor-117 .elementor-element.elementor-element-81f5b6b{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:0px;--padding-left:100px;--padding-right:100px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-117 .elementor-element.elementor-element-d131f0c{width:var( --container-widget-width, 38.803% );max-width:38.803%;--container-widget-width:38.803%;--container-widget-flex-grow:0;}.elementor-117 .elementor-element.elementor-element-d131f0c.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-117 .elementor-element.elementor-element-d131f0c .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:100px;font-weight:500;color:#000000;}.elementor-117 .elementor-element.elementor-element-5e81ed0{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:100px 50px 0px 300px;}.elementor-117 .elementor-element.elementor-element-5e81ed0 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:18px;font-weight:400;line-height:27px;color:#555555;}.elementor-117 .elementor-element.elementor-element-da94f22{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:0px;--padding-left:100px;--padding-right:100px;}.elementor-117 .elementor-element.elementor-element-65779de{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:40px;}.elementor-117 .elementor-element.elementor-element-e09b0d0 .elementor-heading-title{font-family:"Kanit", Sans-serif;font-size:26px;font-weight:500;}.elementor-117 .elementor-element.elementor-element-4a72d91 .elementor-heading-title{font-family:"Kanit", Sans-serif;font-size:18px;font-weight:300;}.elementor-117 .elementor-element.elementor-element-ec86079 .elementor-heading-title{font-family:"Kanit", Sans-serif;font-size:18px;font-weight:300;}.elementor-117 .elementor-element.elementor-element-cf4c900 .elementor-heading-title{font-family:"Kanit", Sans-serif;font-size:18px;font-weight:300;}.elementor-117 .elementor-element.elementor-element-9735dbb{--display:flex;}.elementor-117 .elementor-element.elementor-element-9735dbb.e-con{--flex-grow:0;--flex-shrink:0;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-117 .elementor-element.elementor-element-9735dbb{--width:53.926%;}}@media(max-width:767px){.elementor-117 .elementor-element.elementor-element-81f5b6b{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-117 .elementor-element.elementor-element-d131f0c{width:var( --container-widget-width, 295.253px );max-width:295.253px;--container-widget-width:295.253px;--container-widget-flex-grow:0;}.elementor-117 .elementor-element.elementor-element-d131f0c .elementor-heading-title{font-size:40px;}.elementor-117 .elementor-element.elementor-element-5e81ed0{padding:0px 0px 0px 0px;text-align:justify;}.elementor-117 .elementor-element.elementor-element-5e81ed0 .elementor-heading-title{line-height:1.4em;}.elementor-117 .elementor-element.elementor-element-da94f22{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:40px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}}/* Start custom CSS for wpforms, class: .elementor-element-ca3038a *//* ==========================================================================
   1. LAYOUT : FORCER 2 COLONNES POUR WPFORMS
   ========================================================================== */
.wpforms-form .wpforms-field-container {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
}

/* Les 4 premiers champs (Name, Email, Phone, Subject) à 48% de largeur */
.wpforms-form .wpforms-field:not(:last-child) {
    width: 48% !important;
    flex: 0 0 48% !important;
    margin-bottom: 10px !important;
}

/* Le dernier champ (Message) prend 100% de la largeur */
.wpforms-form .wpforms-field:last-child {
    width: 100% !important;
    flex: 0 0 100% !important;
    margin-bottom: 20px !important;
}

/* ==========================================================================
   2. STYLE MINIMALISTE DES CHAMPS (LIGNES GRISES)
   ========================================================================== */
.wpforms-form input[type="text"],
.wpforms-form input[type="email"],
.wpforms-form input[type="tel"],
.wpforms-form input[type="number"],
.wpforms-form textarea {
    background-color: transparent !important;
    border: none !important;
    border-bottom: 1px solid #d1d5db !important; /* Ligne grise fine */
    border-radius: 0 !important;
    padding: 12px 0 !important;
    box-shadow: none !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 15px !important;
    color: #111111 !important;
}

/* Ligne devient noire quand on tape dedans */
.wpforms-form input:focus,
.wpforms-form textarea:focus {
    border-bottom: 2px solid #111111 !important;
    outline: none !important;
}

/* Retirer le resize moche sur le champ message */
.wpforms-form textarea {
    resize: none !important;
    min-height: 50px !important;
}

/* Style des Labels (Noms des champs) */
.wpforms-form .wpforms-field-label {
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    color: #111111 !important;
    font-size: 14px !important;
    margin-bottom: 8px !important;
    display: block !important;
}

/* ==========================================================================
   3. TRANSFORMATION DU BOUTON EN CERCLE AVEC EFFET VAGUE
   ========================================================================== */
.wpforms-form .wpforms-submit-container {
    margin-top: 20px !important;
}

.wpforms-form button[type="submit"] {
    position: relative !important;
    width: 140px !important;
    height: 140px !important;
    border-radius: 50% !important;
    background-color: #1d4ed8 !important; /* Bleu McKallen */
    color: #ffffff !important;
    border: 1px solid #1d4ed8 !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    overflow: hidden !important;
    transition: transform 0.4s ease, box-shadow 0.4s ease !important;
    cursor: pointer !important;
    z-index: 1 !important;
    white-space: normal !important;
    line-height: 1.3 !important;
}

/* Astuce : WPForms ne permet pas d'ajouter une icône SVG facilement au bouton. 
   On ajoute la flèche avec du CSS pur. */
.wpforms-form button[type="submit"]::after {
    content: ' ↗' !important;
    font-size: 18px !important;
    margin-left: 5px !important;
    transition: transform 0.3s ease !important;
}

/* Le fond blanc caché en bas */
.wpforms-form button[type="submit"]::before {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important; left: 0 !important; right: 0 !important;
    height: 100% !important;
    background-color: #ffffff !important;
    transform: scaleY(0) !important;
    transform-origin: bottom center !important;
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important;
    z-index: -1 !important;
}

/* Interactions au survol */
.wpforms-form button[type="submit"]:hover {
    transform: scale(1.05) !important;
    color: #1d4ed8 !important; /* Texte devient bleu */
    box-shadow: 0 15px 30px rgba(29, 78, 216, 0.2) !important;
}

.wpforms-form button[type="submit"]:hover::before {
    transform: scaleY(1) !important; /* Vague monte */
}

.wpforms-form button[type="submit"]:hover::after {
    transform: translate(3px, -3px) !important; /* Flèche monte */
}

/* ==========================================================================
   4. RESPONSIVE MOBILE
   ========================================================================== */
@media (max-width: 768px) {
    /* Sur mobile, tous les champs repassent sur 1 seule colonne */
    .wpforms-form .wpforms-field:not(:last-child) {
        width: 100% !important;
        flex: 0 0 100% !important;
    }
}/* End custom CSS */