/* CF7 Input Styling for Blue Background */
.wpcf7-input-white,
.wpcf7-textarea-white {
    background:white !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    color: black !important;
    font-size: 1rem !important;
    width: 100% !important;
}


.wpcf7-input-gray,
.wpcf7-textarea-gray {
    background:#E1EBF5 !important;
    border: 1px solid rgba(255, 255, 255, 0.3) !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    color: black !important;
    font-size: 1rem !important;
    width: 100% !important;
}

.wpcf7-input-white::placeholder,
.wpcf7-textarea-white::placeholder {
    color: rgba(255, 255, 255, 0.7) !important;
}

/* Orange Submit Button */
.wpcf7-submit-orange {
    background-color: #FE6E02 !important;
    color: white !important;
    padding: 16px 40px !important;
    border-radius: 9999px !important;
    font-weight: 600 !important;
    font-size: 1.1rem !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.3s !important;
}

.wpcf7-submit-orange:hover {
    background-color: #076BC9 !important;
    transform: translateY(-2px);
    border: 1px solid white !important;
}

.wpcf7-response-output {
    color: black !important;  /* force black text */
    font-size: 1rem;           /* optional: adjust size */
    font-weight: 500;           /* optional: make it a bit bolder */
}


/* CF7 CSS For Contact US page  */
.quote-grid {
  width: 100%;
}

.field-wrapper {
  width: 100%;
  box-sizing: border-box;
}

.wpcf7 p,
.wpcf7 .wpcf7-form-control-wrap {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

.wpcf7 .field-wrapper label {
  margin-bottom: 0rem !important;
  padding-bottom: 0 !important;
}

.wpcf7 .wpcf7-form-control-wrap {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="email"],
.wpcf7 select,
.wpcf7 textarea {
  display: block;
  width: 100% !important;
  padding: 0.75rem 1rem;
  border: 1px solid #d1d5db;
  border-radius: 0.375rem;
  font-size: 1rem;
  box-sizing: border-box;
  margin-top: -15px !important;
}
/* Smaller (≈ 3–4 lines) */
.wpcf7 textarea {
  min-height: 150px !important;
  height: 150px !important;
  resize: vertical !important;
}
.wpcf7-submit-blue {
    background-color: #076BC9 !important;
    color: white !important;
    padding: 16px 40px !important;
    border-radius: 10px !important;
    font-weight: 600 !important;
    font-size: 1.1rem !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.3s !important;
}

.wpcf7-submit-blue:hover {
    background-color: #FE6E02 !important;
    transform: translateY(-2px);
}

.wpcf7 select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 1.25rem;
  padding-right: 2.5rem;
}

.wpcf7 input:focus,
.wpcf7 select:focus,
.wpcf7 textarea:focus {
  outline: none;
  border-color: #3b82f6;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.2);
}

.icon-before {
  display: flex;
  align-items: center;
}

.icon-before::before {
  content: "";
  flex-shrink: 0;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 8px;
  background-color: #6b7280;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center;
}

.user-icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M16 7a4 4 0 11-8 0 4 4 0 018 0zM12 14a7 7 0 00-7 7h14a7 7 0 00-7-7z'/%3E%3C/svg%3E");
}

.phone-icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M3 5a2 2 0 012-2h3.28a1 1 0 01.948.684l1.498 4.493a1 1 0 01-.502 1.21l-2.257 1.13a11.042 11.042 0 005.516 5.516l1.13-2.257a1 1 0 011.21-.502l4.493 1.498a1 1 0 01.684.949V19a2 2 0 01-2 2h-1C9.716 21 3 14.284 3 6V5z'/%3E%3C/svg%3E");
}

.email-icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z'/%3E%3C/svg%3E");
}

.service-icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z'/%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M15 12a3 3 0 11-6 0 3 3 0 016 0z'/%3E%3C/svg%3E");
}

.message-icon::before {
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='currentColor'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M8 12h.01M12 12h.01M16 12h.01M21 12c0 4.418-4.03 8-9 8a9.863 9.863 0 01-4.255-.949L3 20l1.395-3.72C3.512 15.042 3 13.574 3 12c0-4.418 4.03-8 9-8s9 3.582 9 8z'/%3E%3C/svg%3E");
}


/* FAQ Accordion Styles */
  .faq-item {
    background: transparent;
  }
@media (hover: hover) and (pointer: fine) {
  .faq-item:hover {
    background: #ffffff;
    box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1);
  }
}
.faq-item.active {
  background: #ffffff;
  box-shadow: 0 25px 30px -10px rgb(0 0 0 / 0.15);
}


  .faq-answer {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    padding: 0 1.25rem;
    transition: max-height 0.45s ease, opacity 0.35s ease, padding 0.35s ease;
  }

  .faq-item.active .faq-answer {
    max-height: 400px;
    opacity: 1;
    padding: 0 1.25rem 1.5rem;
  }

  @media (min-width: 640px) {
    .faq-answer {
      padding-left: 2rem;
      padding-right: 2rem;
    }
    .faq-item.active .faq-answer {
      padding-left: 2rem;
      padding-right: 2rem;
    }
  }

  .faq-trigger h3 {
    min-width: 0;
  }

/* Hover Button */
  .hover-btn {
  transition: all 0.3s ease;
}

@media (hover: hover) {
  .hover-btn:hover {
    background-color: #076BC9;
    border:1px solid #076BC9;
    color:white;
    transform: translateY(-2px);
  }
}
@media (hover: none) {
  .hover-btn:hover{
    background-color: #076BC9;
    border:1px solid #076BC9;
    color:white;
  }
}
/* .ti-rating-text {
  display: none !important;
} */

.ti-rating-text {
  visibility: hidden !important;
  position: relative !important;
}

.ti-rating-text::after {
  content: "Over 120 5-Star Reviews" !important;
  visibility: visible !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  font-weight: 400 !important;
}

