/* Web Application enquiry — match mobile application form look */
#webAppEnquiryModal .modal-content.trans-bg {
  background: transparent;
  border: 0;
  box-shadow: none;
}

#webAppEnquiryModal .close-div {
  position: absolute;
  right: 22px;
  z-index: 9;
  text-align: right;
  margin-bottom: 0.5rem;
}

/* One step at a time (force hide — page CSS uses .stepSty as well) */
#webAppEnquiryModal .webapp-step,
#webAppEnquiryModal .stepSty {
  display: none !important;
}

#webAppEnquiryModal .webapp-step.active,
#webAppEnquiryModal .stepSty.active {
  display: block !important;
}

#webAppEnquiryModal .websoft-contact-form-box {
  padding: 1.5rem 1.25rem 1.75rem;
}

#webAppEnquiryModal .form-label {
  font-weight: 600;
  color: #1a1a2e;
}

#webAppEnquiryModal .form-control,
#webAppEnquiryModal .form-select {
  border-color: #ced4da;
  min-height: 42px;
}

#webAppEnquiryModal .webapp-feature-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.5rem 1rem;
}

#webAppEnquiryModal .webapp-feature-grid .form-check {
  margin: 0;
  padding: 0.65rem 0.75rem 0.65rem 2rem;
  border: 1px solid #dee2e6;
  border-radius: 0.5rem;
  background: #fff;
}

#webAppEnquiryModal .controls {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
  text-align: center;
  width: 100%;
}

#webAppEnquiryModal .controls .web-enq-btn {
  margin-left: 0;
  margin-right: 0;
}

#webAppEnquiryModal .controls .web-enq-btn.prev,
#webAppEnquiryModal .controls .webapp-btn-prev {
  margin-right: 0;
}

#webAppEnquiryModal .field-invalid {
  border-color: #dc3545 !important;
}

#webAppEnquiryModal #webAppCoreFeatures.field-invalid {
  border: 1px solid #dc3545;
  border-radius: 0.5rem;
  padding: 0.5rem;
}

#webAppEnquiryModal .webapp-field-error {
  color: #dc3545;
  font-size: 12.5px;
  margin-top: -0.75rem;
  margin-bottom: 0.85rem;
  display: none;
}

#webAppEnquiryModal .webapp-field-error.show {
  display: block;
}

#webAppEnquiryModal .webapp-review-box {
  background: #f8f9fa;
  border: 1px solid #e9ecef;
  border-radius: 0.75rem;
  padding: 1rem 1.25rem;
}

#webAppEnquiryModal .webapp-review-row {
  display: flex;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.45rem 0;
  border-bottom: 1px dashed #dee2e6;
  font-size: 0.925rem;
}

#webAppEnquiryModal .webapp-review-row:last-child {
  border-bottom: 0;
}

#webAppEnquiryModal .webapp-review-row span:first-child {
  color: #6c757d;
  font-weight: 600;
}

#webAppEnquiryModal #webAppProgress {
  background: #fff;
  border-radius: 12px;
  padding: 18px 12px 10px;
  margin-bottom: 8px;
}

/* Hide step progress when thank-you panel is visible */
#webAppEnquiryModal.is-thankyou #webAppProgressRow,
#webAppEnquiryModal.is-thankyou #webAppProgress,
#webAppEnquiryModal.is-thankyou .multisteps-form__progress {
  display: none !important;
}

#webAppEnquiryModal #webAppSuccessPanel {
  display: none !important;
}

#webAppEnquiryModal #webAppSuccessPanel.is-visible,
#webAppEnquiryModal.is-thankyou #webAppSuccessPanel {
  display: block !important;
  opacity: 1;
}

@media (max-width: 767px) {
  #webAppEnquiryModal .webapp-feature-grid {
    grid-template-columns: 1fr;
  }
}

/* Banner Contact Us OTP row (matches wordpress / section-banner-contact layout) */
.section-banner-contact .webapp-otp-banner {
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.section-banner-contact .webapp-otp-banner > [class*="col-"] {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.section-banner-contact .webapp-otp-banner .otp-destination-message {
  width: 100%;
  text-align: center;
  line-height: 1.45;
  padding: 0 0.5rem;
}

.section-banner-contact .webapp-otp-banner .input-group {
  width: 100%;
}

.section-banner-contact .webapp-otp-banner .verifyOtpBtn,
.section-banner-contact .webapp-otp-banner .resendOtpBtn {
  white-space: nowrap;
}

.section-banner-contact .webapp-otp-banner .otpTimer {
  text-align: center;
  font-size: 0.9rem;
}

.section-banner-contact .webapp-phone-group-banner {
  flex-wrap: nowrap;
}

.section-banner-contact .webapp-phone-group-banner .country_std_code_select {
  max-width: 70px;
  padding-left: 0.35rem;
  padding-right: 0.35rem;
  font-size: 0.85rem;
}

.section-banner-contact .webapp-phone-group-banner input[name="mobile_no"] {
  min-width: 0;
}

@media (max-width: 991px) {
  .section-banner-contact .webapp-otp-banner .otp-destination-message {
    margin-bottom: 0.75rem;
  }

  .section-banner-contact .webapp-otp-banner .verifyOtpBtn {
    margin-top: 0.5rem;
  }
}

