/* Contact Form 7 : même rendu que les formulaires intégrés (isae-front.css). */
.wpcf7 .isae-form .wpcf7-form-control-wrap { display: block; }
.wpcf7 .isae-form input.wpcf7-form-control:not([type="submit"]):not([type="checkbox"]),
.wpcf7 .isae-form select.wpcf7-form-control,
.wpcf7 .isae-form textarea.wpcf7-form-control { width: 100% !important; box-sizing: border-box; }
.wpcf7 .isae-form .wpcf7-not-valid { border-color: var(--isae-error) !important; background-color: #fff6f5 !important; }
.wpcf7 .isae-form .wpcf7-not-valid-tip { margin: 8px 0 0; font-size: 14px; font-weight: 600; color: var(--isae-error); }

/* Consentement : comme .isae-check */
.isae-cf7-consent .wpcf7-list-item { display: block; margin: 0; }
.isae-cf7-consent label { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; color: var(--isae-navy); cursor: pointer; }
.isae-cf7-consent input[type="checkbox"] { width: 22px; height: 22px; margin: 1px 0 0; accent-color: var(--isae-navy); flex: 0 0 auto; }

/* Bouton d'envoi : comme .isae-btn.isae-btn--pink.isae-btn--lg */
.wpcf7 .isae-form__submit { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.wpcf7 .isae-form__submit input.isae-btn { width: 100%; min-height: 58px; padding: 16px 34px; border: 2px solid transparent; border-radius: 14px; background: var(--isae-pink); color: var(--isae-navy) !important; font-family: var(--isae-font-body); font-size: 17px; font-weight: 700; line-height: 1.2; cursor: pointer; box-shadow: 0 10px 24px -12px rgba(247, 106, 152, .8); transition: transform .2s ease, box-shadow .2s ease; -webkit-appearance: none; appearance: none; }
.wpcf7 .isae-form__submit input.isae-btn:hover { transform: translateY(-2px); }
.wpcf7 .isae-form__submit input.isae-btn:focus-visible { outline: 3px solid var(--isae-navy); outline-offset: 3px; }
.wpcf7 .isae-form__submit input.isae-btn:disabled { opacity: .55; cursor: not-allowed; transform: none; }
.wpcf7 .isae-form__submit .wpcf7-spinner { margin: 0 auto; }

/* Message après envoi : comme .isae-form-done / .isae-form-errors */
.wpcf7 form:has(.isae-form) .wpcf7-response-output { margin: 22px 0 0; padding: 18px 22px; border: 1.5px solid var(--isae-sand); border-radius: var(--isae-radius-sm); background: var(--isae-cream); color: var(--isae-navy); font-size: 16px; line-height: 1.6; }
.wpcf7 form.sent:has(.isae-form) .wpcf7-response-output { border-color: var(--isae-sage); background: var(--isae-sage-soft); font-size: 18px; text-align: center; }
.wpcf7 form.invalid:has(.isae-form) .wpcf7-response-output,
.wpcf7 form.unaccepted:has(.isae-form) .wpcf7-response-output,
.wpcf7 form.failed:has(.isae-form) .wpcf7-response-output,
.wpcf7 form.spam:has(.isae-form) .wpcf7-response-output { border-color: var(--isae-error); background: #fff6f5; color: var(--isae-error); }
