.elementor-kit-9{--e-global-color-primary:#6EC1E4;--e-global-color-secondary:#54595F;--e-global-color-text:#7A7A7A;--e-global-color-accent:#61CE70;--e-global-typography-primary-font-family:"Space Grotesk";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Space Grotesk";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Inter";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Inter";--e-global-typography-accent-font-weight:500;}.elementor-kit-9 e-page-transition{background-color:#FFBC7D;}.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;}}:root { --defi-primary:#0F172A; --defi-primary-deep:#0B1120; --defi-accent:#E4002B; --defi-accent-hover:#C40025; --defi-surface:#F8FAFC; --defi-surface-muted:#F1F5F9; --defi-border:#E2E8F0; --defi-text:#0F172A; --defi-text-muted:#64748B; --defi-text-subtle:#94A3B8; --defi-white:#FFFFFF; --defi-cyan:#00C2FF; --defi-magenta:#FF1FB4; --defi-yellow:#FFD400; --defi-font-display:Space Grotesk; --defi-font-body:Inter; --defi-container-max:1280px; --defi-radius-card:16px; --defi-radius-xl:24px; }
/* Start custom CSS *//* Formulaires Contact Form 7 (DEFI) : styles communs à tous les formulaires (Contact, Demande de devis), identiques à la maquette. */
.defi-cf7 { display: flex; flex-direction: column; gap: 16px; }
.defi-cf7 br { display: none; }
/* Contact Form 7 ajoute des <p> autour des champs : on les neutralise pour que la grille 2 colonnes fonctionne. */
.defi-cf7 p { display: contents; }
.defi-cf7-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 639px) { .defi-cf7-row { grid-template-columns: 1fr; } }
.defi-cf7 label { display: flex; flex-direction: column; gap: 6px; margin: 0; font-family: var(--defi-font-body), sans-serif; font-size: 14px; line-height: 20px; font-weight: 500; color: #334155; }
.defi-cf7 .wpcf7-form-control-wrap { display: block; }
.defi-cf7 input:not([type=submit]):not([type=checkbox]), .defi-cf7 textarea { display: block; width: 100%; box-sizing: border-box; margin: 0; background: #FFFFFF; border: 1px solid #E2E8F0; border-radius: 8px; padding: 12px 16px; font-family: var(--defi-font-body), sans-serif; font-size: 14px; line-height: 20px; font-weight: 400; color: #1E293B; box-shadow: none; transition: border-color .2s, box-shadow .2s; }
.defi-cf7 input::placeholder, .defi-cf7 textarea::placeholder { color: #94A3B8; opacity: 1; }
.defi-cf7 input:not([type=submit]):not([type=checkbox]):focus, .defi-cf7 textarea:focus { outline: none; border-color: var(--defi-accent); box-shadow: 0 0 0 2px rgba(228,0,43,0.1); }
.defi-cf7 textarea { height: 126px; resize: none; }
/* Bouton d'envoi : rouge, arrondi, icône « envoyer » à droite (comme la maquette). */
.defi-cf7 .defi-cf7-submit { align-self: flex-start; margin: 8px 0 0; display: inline-block; width: auto; background-color: var(--defi-accent); background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='17' viewBox='0 0 24 24' fill='none' stroke='%23FFFFFF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z'/%3E%3Cpath d='m21.854 2.147-10.94 10.939'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 28px center; background-size: 17px 17px; color: #FFFFFF; border: 0; border-radius: 9999px; padding: 14px 53px 14px 28px; font-family: var(--defi-font-body), sans-serif; font-size: 16px; line-height: 24px; font-weight: 600; cursor: pointer; transition: background-color .3s, opacity .3s; }
.defi-cf7 .defi-cf7-submit:hover { background-color: var(--defi-accent-hover); }
.defi-cf7 .defi-cf7-submit:disabled { opacity: .7; }
/* Pendant l'envoi : bouton atténué au lieu de l'icône de chargement (qui créait un espace sous le bouton). */
.defi-cf7 .wpcf7-spinner { display: none; }
.wpcf7 form.submitting .defi-cf7-submit { opacity: .7; cursor: wait; }
/* Messages après envoi */
.wpcf7 form .wpcf7-response-output { margin: 20px 0 0; padding: 12px 16px; border-radius: 8px; font-family: var(--defi-font-body), sans-serif; font-size: 14px; line-height: 20px; }
.wpcf7 form.sent .wpcf7-response-output { border: 1px solid #D1FAE5; background: #ECFDF5 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23059669' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E") no-repeat 16px center / 18px 18px; padding-left: 42px; color: #059669; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output { border: 1px solid #FECACA; background: #FEF2F2; color: #DC2626; }
.wpcf7-not-valid-tip { font-size: 12px; font-weight: 400; color: var(--defi-accent); margin-top: 4px; }

/* Case de consentement RGPD */
.defi-cf7-consent { font-size: 13px; line-height: 1.5; color: #64748B; }
.defi-cf7-consent .wpcf7-list-item { margin: 0; }
.defi-cf7-consent label { flex-direction: row !important; align-items: flex-start; gap: 10px; font-weight: 400 !important; font-size: 13px !important; color: #64748B !important; cursor: pointer; }
.defi-cf7-consent input[type=checkbox] { width: 16px !important; height: 16px; min-width: 16px; margin: 2px 0 0; padding: 0 !important; accent-color: var(--defi-accent); }/* End custom CSS */