.elementor-898 .elementor-element.elementor-element-303e5bf{--display:flex;--min-height:0px;}.elementor-898 .elementor-element.elementor-element-303e5bf .trx_addons_bg_text{z-index:0;}.elementor-898 .elementor-element.elementor-element-303e5bf .trx_addons_bg_text.trx_addons_marquee_wrap:not(.trx_addons_marquee_reverse) .trx_addons_marquee_element{padding-right:50px;}.elementor-898 .elementor-element.elementor-element-303e5bf .trx_addons_bg_text.trx_addons_marquee_wrap.trx_addons_marquee_reverse .trx_addons_marquee_element{padding-left:50px;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-898 .elementor-element.elementor-element-22bbb47d > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-field-group.recaptcha_v3-bottomleft, .elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-field-type-html{padding-bottom:0px;}.elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-898 .elementor-element.elementor-element-22bbb47d .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-button[type="submit"]{color:#ffffff;}.elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-898 .elementor-element.elementor-element-22bbb47d .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-898 .elementor-element.elementor-element-22bbb47d .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-898 .elementor-element.elementor-element-22bbb47d .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-898 .elementor-element.elementor-element-22bbb47d .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-898 .elementor-element.elementor-element-22bbb47d{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}/* Start custom CSS for form, class: .elementor-element-22bbb47d *//* ============ STYLES TITRE FORMULAIRE ============ */

.contact-form-block {
    margin-bottom: 30px;
}

.legal-title {
    color: #2c3e50;
    font-size: 28px;
    font-weight: 700;
    margin: 0 0 25px 0;
    padding: 0 0 15px 0;
    border-bottom: 3px solid #f39c12;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    position: relative;
    text-align: left;
    line-height: 1.2;
}

/* ============ COMPORTEMENT STICKY ============ */

/* Solution alternative pour éviter le retour automatique */
.elementor-section {
    overflow: visible !important;
}

/* Sur la colonne parente - uniformisé */
.formulaire-column,
.elementor-column {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
}

/* Empêcher la remontée automatique - Widget shortcode */
.elementor-widget-shortcode.elementor-sticky {
    position: sticky !important;
    top: 20px !important;
    bottom: auto !important;
    align-self: flex-start !important;
    max-height: calc(100vh - 40px) !important;
    overflow-y: auto !important;
    width: 100% !important;
    z-index: 99 !important;
}

/* Conteneur du formulaire - pour le contenu à l'intérieur */
.sticky-form-container {
    position: relative !important;
    will-change: transform !important;
    width: 100% !important;
    background: white !important;
    padding: 20px !important;
    border-radius: 8px !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1) !important;
}

/* Style du titre dans le conteneur */
.legal-block.contact-form-block {
    margin-bottom: 15px !important;
    padding-bottom: 10px !important;
    border-bottom: 1px solid #eee !important;
}

/* Sécurité supplémentaire contre la remontée */
.elementor-widget-shortcode {
    transform: none !important;
    transition: none !important;
}

/* ============ STYLES FORMULAIRE ELEMENTOR CONTACT ============ */

/* Container principal du widget */
.elementor-widget-form {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* Formulaire principal */
.elementor-form {
    background: white;
    padding: 35px;
    box-shadow: 0 5px 20px rgba(0,0,0,0.1);
    border: 1px solid #e9ecef;
    border-left: 5px solid #f39c12;
    border-radius: 12px;
    margin-top: 20px;
}

/* Wrapper des champs */
.elementor-form-fields-wrapper {
    display: grid;
    gap: 25px;
}

/* Groupes de champs */
.elementor-field-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

/* Labels */
.elementor-field-label {
    font-weight: 600;
    color: #2c3e50;
    font-size: 0.95rem;
    margin-bottom: 8px;
    order: -1;
}

/* Champs de saisie */
.elementor-field {
    padding: 15px 20px !important;
    border: 2px solid #e9ecef !important;
    border-radius: 8px !important;
    font-size: 1rem !important;
    font-family: inherit !important;
    background: #fafafa !important;
    box-sizing: border-box !important;
    width: 100% !important;
    outline: none !important;
}

/* Focus des champs */
.elementor-field:focus {
    border-color: #f39c12 !important;
    background: white !important;
    box-shadow: 0 0 0 4px rgba(243, 156, 18, 0.1) !important;
}

/* Champ textarea spécifique */
.elementor-field-textfield[rows] {
    min-height: 120px !important;
    resize: vertical !important;
    font-family: inherit !important;
    line-height: 1.5 !important;
}

/* Bouton de soumission */
.elementor-button {
    background: linear-gradient(135deg, #f39c12, #e67e22) !important;
    color: white !important;
    border: none !important;
    padding: 18px 35px !important;
    font-size: 1.1rem !important;
    font-weight: 600 !important;
    border-radius: 8px !important;
    cursor: pointer !important;
    text-transform: none !important;
    letter-spacing: 0.5px !important;
    box-shadow: 0 4px 15px rgba(243, 156, 18, 0.3) !important;
    font-family: inherit !important;
    margin-top: 10px !important;
}

/* Hover du bouton */
.elementor-button:hover {
    background: linear-gradient(135deg, #e67e22, #d35400) !important;
    box-shadow: 0 6px 20px rgba(243, 156, 18, 0.4) !important;
}

/* Messages de validation */
.elementor-message {
    padding: 15px 20px !important;
    border-radius: 8px !important;
    margin: 15px 0 !important;
    font-weight: 500 !important;
    border: none !important;
}

.elementor-message.elementor-message-success {
    background: linear-gradient(135deg, #27ae60, #2ecc71) !important;
    color: white !important;
    box-shadow: 0 4px 15px rgba(39, 174, 96, 0.3) !important;
}

.elementor-message.elementor-message-error {
    background: linear-gradient(135deg, #e74c3c, #c0392b) !important;
    color: white !important;
    box-shadow: 0 4px 15px rgba(231, 76, 60, 0.3) !important;
}

/* Messages d'erreur par champ */
.elementor-field-group .elementor-field-error {
    color: #e74c3c !important;
    font-size: 0.85rem !important;
    margin-top: 5px !important;
    font-weight: 500 !important;
}

/* Champ en erreur */
.elementor-field-group.error .elementor-field {
    border-color: #e74c3c !important;
    background: #fdf2f2 !important;
}

/* États de chargement */
.elementor-form .elementor-button[disabled] {
    opacity: 0.6 !important;
    cursor: not-allowed !important;
}

.elementor-form .elementor-button .elementor-button-text {
    display: inline-block;
}

/* Focus visible pour l'accessibilité */
.elementor-field:focus-visible {
    outline: 2px solid #f39c12;
    outline-offset: 2px;
}

.elementor-button:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
}

/* ============ RESPONSIVE ============ */

@media (max-width: 768px) {
    /* Désactiver le sticky sur mobile */
    .elementor-widget-shortcode.elementor-sticky {
        position: relative !important;
        top: auto !important;
        max-height: none !important;
        overflow-y: visible !important;
        max-width: none !important;
    }

    .sticky-form-container {
        position: relative !important;
        margin-bottom: 20px !important;
    }

    .legal-title {
        font-size: 24px;
        margin-bottom: 20px;
        padding-bottom: 12px;
    }

    .contact-form-block {
        margin-bottom: 25px;
    }

    .elementor-form {
        padding: 25px;
        margin-top: 15px;
    }

    .elementor-form-fields-wrapper {
        gap: 20px;
    }

    .elementor-field {
        padding: 12px 15px !important;
        font-size: 16px !important;
    }

    .elementor-button {
        padding: 16px 30px !important;
        font-size: 1rem !important;
    }
}

@media (max-width: 480px) {
    .legal-title {
        font-size: 22px;
        margin-bottom: 18px;
        padding-bottom: 10px;
    }

    .contact-form-block {
        margin-bottom: 20px;
    }

    .elementor-form {
        padding: 20px;
        margin-top: 12px;
    }

    .elementor-form-fields-wrapper {
        gap: 15px;
    }

    .elementor-field {
        padding: 12px 15px !important;
    }

    .elementor-button {
        padding: 15px 25px !important;
        font-size: 0.95rem !important;
    }
}/* End custom CSS */