/*
Contact Form 7 Styles
Matched to screenshot: Single column layout, gradient background, specific styling
*/

.get-in-touch-form {
  background: linear-gradient(
    180deg,
    #ff8333 0%,
    #ff8333 0%,
    #fe5722 100%,
    #fe5722 100%
  ) !important;
  padding: 30px 50px !important;
  color: white !important;
  border-radius: 5px !important;
  width: 100% !important;
  margin: 0 !important;
}

/* Remove extra padding from nested elements */
.get-in-touch-form p,
.get-in-touch-form span {
  padding: 0 !important;
}

/* Heading styling */
.get-in-touch-form h2 {
  color: white !important;
  font-size: 28px !important;
  font-weight: bold !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
}

/* Introduction paragraph */
.get-in-touch-form > p:first-of-type {
  color: white !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  margin: 0 0 25px 0 !important;
  padding: 0 !important;
}

/* Form paragraphs - reduced spacing between fields */
.get-in-touch-form p {
  margin: 0 0 10px 0 !important;
  color: white !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

/* First paragraph after intro has more space */
.get-in-touch-form > h2 + p + p {
  margin-top: 0 !important;
}

/* Heading and intro paragraph specific */
.get-in-touch-form > h2 + p {
  margin: 0 0 20px 0 !important;
}

/* Labels - white text, bold, reduced spacing */
.get-in-touch-form label {
  color: white !important;
  font-weight: 500 !important;
  font-size: 14px !important;
  margin-bottom: 5px !important;
  margin-top: 0 !important;
  display: block !important;
  cursor: pointer !important;
}

/* Input fields - 100% width, white background */
.get-in-touch-form input[type="text"],
.get-in-touch-form input[type="email"],
.get-in-touch-form input[type="tel"],
.get-in-touch-form textarea,
.get-in-touch-form input.wpcf7-text,
.get-in-touch-form input.wpcf7-email,
.get-in-touch-form input.wpcf7-tel,
.get-in-touch-form textarea.wpcf7-textarea {
  width: 100% !important;
  padding: 10px 12px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 4px !important;
  font-size: 14px !important;
  background-color: white !important;
  color: #323640 !important;
  box-sizing: border-box !important;
  font-family: inherit !important;
  margin-bottom: 0 !important;
  display: block !important;
}

/* Focus state */
.get-in-touch-form input:focus,
.get-in-touch-form textarea:focus {
  outline: none !important;
  border-color: #999 !important;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.1) !important;
}

/* Placeholder text */
.get-in-touch-form input::placeholder,
.get-in-touch-form textarea::placeholder {
  color: #999 !important;
}

/* Textarea specific */
.get-in-touch-form textarea {
  min-height: 100px !important;
  resize: vertical !important;
}

/* Submit button wrapper paragraph - center the button */
.get-in-touch-form > p:last-of-type:not(.privacy-notice) {
  margin: 20px 0 0 0 !important;
}

/* Submit button - white background, box shadow */
.get-in-touch-form .wpcf7-submit {
  background-color: white !important;
  color: #323640 !important;
  border: none !important;
  padding: 5px 30px !important;
  font-size: 14px !important;
  font-weight: bold !important;
  text-transform: uppercase !important;
  border-radius: 4px !important;
  cursor: pointer !important;
  box-shadow: 0px 0px 15px rgb(0, 0, 0) !important;
  transition: all 0.3s ease !important;
  display: inline-block !important;
  margin: 0 !important;
  min-width: 120px !important;
}

.get-in-touch-form .wpcf7-submit:hover {
  background-color: #f8f9fa !important;
  transform: translateY(-2px) !important;
}

/* Privacy notice text */
.get-in-touch-form .privacy-notice {
  color: white !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  margin: 20px 0 0 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

.get-in-touch-form .privacy-notice a {
  color: white !important;
  text-decoration: underline !important;
}

.get-in-touch-form .privacy-notice a:hover {
  text-decoration: none !important;
}

/* Error and success messages */
.wpcf7-mail-sent-ok,
.wpcf7-mail-sent-ng,
.wpcf7-validation-errors,
.wpcf7-spam-blocked,
.wpcf7-acceptance-missing {
  background-color: transparent !important;
  border: none !important;
  padding: 10px 0 !important;
  margin: 10px 0 !important;
  color: white !important;
  font-size: 14px !important;
}

/* Mobile Responsive */
@media only screen and (max-width: 768px) {
  .embed-form,
  .get-in-touch-form {
    padding: 25px 30px !important;
  }

  .get-in-touch-form input[type="text"],
  .get-in-touch-form input[type="email"],
  .get-in-touch-form input[type="tel"],
  .get-in-touch-form textarea {
    font-size: 16px !important; /* Prevents zoom on mobile */
  }

  .get-in-touch-form .wpcf7-submit {
    width: 100% !important;
    padding: 5px 20px !important;
  }
}
