/**
 * Constre — Contact Form 7 visual skin only.
 * Submission, validation, and spam handling remain in the CF7 plugin.
 * Scoped to forms tagged with class `constre-cf7` (see functions.php).
 */

div.wpcf7 form.constre-cf7 {
  max-width: 720px;
  margin: 0 auto;
  padding: 0;
}

div.wpcf7 form.constre-cf7 > p {
  margin: 0 0 1.35rem;
  padding: 0;
}

div.wpcf7 form.constre-cf7 .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

div.wpcf7 form.constre-cf7 label {
  display: block;
  margin: 0 0 0.5rem;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: #ffffff;
}

div.wpcf7 form.constre-cf7 input[type="text"],
div.wpcf7 form.constre-cf7 input[type="email"],
div.wpcf7 form.constre-cf7 input[type="tel"],
div.wpcf7 form.constre-cf7 input[type="url"],
div.wpcf7 form.constre-cf7 input[type="number"],
div.wpcf7 form.constre-cf7 select,
div.wpcf7 form.constre-cf7 textarea {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
  display: block;
  padding: 0.875rem 1rem;
  font-size: 1rem;
  line-height: 1.4;
  color: #111111;
  background: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 8px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

div.wpcf7 form.constre-cf7 textarea {
  min-height: 11rem;
  resize: vertical;
}

div.wpcf7 form.constre-cf7 input:focus,
div.wpcf7 form.constre-cf7 select:focus,
div.wpcf7 form.constre-cf7 textarea:focus {
  outline: none;
  border-color: #ff5e14;
  box-shadow: 0 0 0 3px rgba(255, 94, 20, 0.28);
}

div.wpcf7 form.constre-cf7 input[type="submit"],
div.wpcf7 form.constre-cf7 button[type="submit"] {
  display: inline-block;
  margin-top: 0.25rem;
  padding: 0.9rem 2rem;
  font-family: "Archivo", sans-serif;
  font-size: 0.9375rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #ffff;
  background: #FEC010;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background 0.2s ease, color 0.2s ease;
}

/*div.wpcf7 form.constre-cf7 input[type="submit"]:hover,*/
/*div.wpcf7 form.constre-cf7 button[type="submit"]:hover {*/
/*  background: #e55512;*/
/*  color: #ffffff;*/

div.wpcf7 form.constre-cf7 .wpcf7-spinner {
  margin-left: 0.75rem;
}

div.wpcf7 form.constre-cf7 .wpcf7-not-valid-tip {
  margin-top: 0.35rem;
  font-size: 0.8125rem;
  color: #ffb4b4;
}

div.wpcf7 form.constre-cf7 .wpcf7-response-output {
  margin: 1.25rem 0 0;
  padding: 0.85rem 1rem;
  border-radius: 8px;
  font-size: 1.0625rem;
  line-height: 1.5;
  font-weight: 800;
  color: #ffffff;
}

div.wpcf7 form.constre-cf7 .wpcf7-acceptance label {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  font-weight: 500;
}

/* Elementor: remove saved left margin on this widget (backup; primary override in functions.php) */
.elementor-1041 .elementor-element.elementor-element-946060f {
  margin: 0 !important;
}

div.wpcf7 form.constre-cf7 .wpcf7-acceptance input {
  margin-top: 0.2rem;
}

@media (max-width: 767px) {
  div.wpcf7 form.constre-cf7 {
    max-width: 100%;
  }
}









  /* Equal label ↔ field gap and equal space between each field group */
  div.wpcf7 form.constre-cf7 > p {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin: 0 0 1.25rem !important;
    padding: 0 !important;
  }

  div.wpcf7 form.constre-cf7 > p:last-child {
    margin-bottom: 0 !important;
  }

  div.wpcf7 form.constre-cf7 > p br {
    display: none;
  }

  div.wpcf7 form.constre-cf7 label {
    margin: 0 !important;
  }

  div.wpcf7 form.constre-cf7 .wpcf7-form-control-wrap {
    margin: 0 !important;
  }

  div.wpcf7 form.constre-cf7 input[type="text"],
  div.wpcf7 form.constre-cf7 input[type="email"],
  div.wpcf7 form.constre-cf7 input[type="tel"],
  div.wpcf7 form.constre-cf7 input[type="url"],
  div.wpcf7 form.constre-cf7 input[type="number"],
  div.wpcf7 form.constre-cf7 select,
  div.wpcf7 form.constre-cf7 textarea {
    margin: 0 !important;
  }


  /* CF7 default is blue (#00a0d2); override base border for skinned forms */



/* Missing CAPTCHA: CF7 maps custom status to class `custom-constre-captcha-required` */
/* Missing CAPTCHA: CF7 maps custom status to class `custom-constre-captcha-required` */
div.wpcf7 form.constre-cf7.custom-constre-captcha-required .wpcf7-response-output,
div.wpcf7 form.constre-cf7[data-status="custom-constre-captcha-required"] .wpcf7-response-output {
  border-color: #dc3232 !important;
}
