﻿/* FOZY contact form fixes: scoped to exported Contact Form 7 markup only. */
.wpcf7-form {
  width: 100%;
  max-width: 100%;
}

.wpcf7-form p {
  margin: 0 0 1rem;
}

.wpcf7-form .wpcf7-form-control-wrap,
.wpcf7-form input:not([type="hidden"]):not([type="submit"]),
.wpcf7-form textarea {
  display: block;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.wpcf7-form textarea {
  min-height: 130px;
  resize: vertical;
}

.wpcf7-form .submit-contact-form,
.wpcf7-form input[type="submit"] {
  width: auto;
  max-width: 100%;
  white-space: normal;
  cursor: pointer;
  transition: background-color 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease, color 0.35s ease, transform 0.35s ease;
}

.wpcf7-form .submit-contact-form[disabled] {
  cursor: wait;
  opacity: 0.65;
}

.wpcf7-form .submit-contact-form.fozy-submit-sent,
.wpcf7-form input[type="submit"].fozy-submit-sent {
  background-color: #19a64a !important;
  border-color: #19a64a !important;
  color: #fff !important;
  box-shadow: 0 10px 24px rgba(25, 166, 74, 0.28), 0 0 0 4px rgba(25, 166, 74, 0.14);
  transform: translateY(-2px) scale(1.02);
}

.wpcf7-form .submit-contact-form.fozy-submit-returning,
.wpcf7-form input[type="submit"].fozy-submit-returning {
  box-shadow: 0 6px 18px rgba(20, 52, 117, 0.16);
  transform: translateY(0) scale(1);
}

.wpcf7-response-output {
  display: none;
  margin: 1rem 0 0;
  padding: 0.85rem 1rem;
  border-radius: 4px;
  border: 1px solid transparent;
}

.wpcf7-response-output.fozy-visible {
  display: block;
}

.wpcf7-response-output.fozy-success {
  color: #155724;
  background: #d4edda;
  border-color: #c3e6cb;
}

.wpcf7-response-output.fozy-error {
  color: #721c24;
  background: #f8d7da;
  border-color: #f5c6cb;
}

@media (max-width: 781px) {
  .wp-block-columns {
    flex-wrap: wrap !important;
  }

  .wp-block-column {
    flex-basis: 100% !important;
    min-width: 0;
  }

  .wpcf7-form .submit-contact-form,
  .wpcf7-form input[type="submit"] {
    width: 100%;
  }
}
