/* ═══════════════════════════════════════════════
   CONTACT FORM 7 — fit the prototype's .contact-form styling
═══════════════════════════════════════════════ */

/* CF7 wraps each control in a span; make it fill the field so inputs are full-width. */
.contact-form .wpcf7-form-control-wrap { display: block; width: 100%; }

/* Submit sits left, not stretched full width. */
.contact-form .wpcf7-submit { align-self: flex-start; }

/* Validation state on individual fields. */
.contact-form .wpcf7-not-valid { border-color: #c0392b !important; }
.contact-form .wpcf7-not-valid-tip {
  display: block;
  color: #c0392b;
  font-family: var(--ff-ui);
  font-size: 0.75rem;
  letter-spacing: 0.02em;
  margin-top: 0.4rem;
}

.contact-form .wpcf7-spinner { margin: 0.2rem 0 0 0.75rem; }

/* Response message (success / error) below the form. */
.wpcf7 .wpcf7-response-output {
  margin: 1.25rem 0 0;
  padding: 0.9rem 1.15rem;
  border: 1.5px solid var(--hairline);
  font-family: var(--ff-ui);
  font-size: 0.88rem;
  line-height: 1.55;
  letter-spacing: 0.01em;
  color: var(--body);
}
.wpcf7 form.sent .wpcf7-response-output {
  border-color: var(--navy);
  background: var(--cream-light);
  color: var(--navy);
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output {
  border-color: #c0392b;
  color: #c0392b;
}
