/* ===== Popup Overlay ===== */
.cf7-popup {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.65);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}


/* ===== Popup Box ===== */
.cf7-popup-content {
  font-family: 'Montserrat';
  background: #fff;
  width: 100%;
  max-width: 500px;
  max-height: 85vh;
  overflow-y: auto;
  padding: 25px 22px;
  border-radius: 10px;
  position: relative;
}

/* ===== Scrollbar (optional, modern look) ===== */
.cf7-popup-content::-webkit-scrollbar {
  width: 6px;
}
.cf7-popup-content::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 10px;
}

/* OUTSIDE close button */
.popup-close {
  position: fixed;
  top: 20px;
  right: 25px;
  font-size: 28px;
  color: #aaa;
  cursor: not-allowed;
  pointer-events: none; /* disabled */
  z-index: 10000;
}

/* Enabled state */
.popup-close.enabled {
  pointer-events: auto;
  cursor: pointer;
  color: #fff;
}

/* Hover when enabled */
.popup-close.enabled:hover {
  color: #ff5252;
}


/* ===== CF7 Form Styling ===== */
.cf7-popup-content .wpcf7 {
  margin-top: 10px;
}

.cf7-popup-content label {
  display: block;
  font-weight: 600;
  margin-bottom: 6px;
  font-size: 14px;
}

.cf7-popup-content input[type="text"],
.cf7-popup-content input[type="email"],
.cf7-popup-content input[type="tel"],
.cf7-popup-content textarea,
.cf7-popup-content select {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 14px;
  margin-bottom: 15px;
  outline: none;
}

.cf7-popup-content input:focus,
.cf7-popup-content textarea:focus,
.cf7-popup-content select:focus {
  border-color: #0073aa;
}

/* ===== Submit Button ===== */
.cf7-popup-content input[type="submit"] {
  width: 100%;
  padding: 12px;
  background: #0073aa;
  color: #fff;
  border: none;
  border-radius: 6px;
  font-size: 15px;
  cursor: pointer;
}

.cf7-popup-content input[type="submit"]:hover {
  background: #005f8d;
}

/* ===== CF7 Messages ===== */
.cf7-popup-content .wpcf7-response-output {
  margin: 15px 0 0;
  font-size: 14px;
}

.cf7-popup-content .wpcf7-not-valid-tip {
  font-size: 12px;
}

/* ===== Mobile Adjustments ===== */
@media (max-width: 480px) {
  .cf7-popup-content {
      max-height: 90vh;
      max-width: 80vw;
      padding: 20px 18px;
  }
}


.cf7-name-row {
  display: flex;
  gap: 12px;
  /* margin-bottom: 15px; */
}

.cf7-name-row .cf7-field {
  flex: 1;
}

/* Mobile: stack vertically */
@media (max-width: 480px) {
  .cf7-name-row {
      flex-direction: column;
  }
}

/* Remove CF7 auto <br> spacing */
.cf7-popup .wpcf7 br {
  display: none;
}

/* Remove unwanted margins */
.cf7-popup .wpcf7-form-control-wrap {
  display: block;
  margin-bottom: 0;
}

.cf7-popup .wpcf7-form-control {
  margin-bottom: 0;
}
/* Remove spacing from <p> tags added by CF7 */
.cf7-popup .wpcf7 p {
  margin: 0;
  padding: 0;
}


.cf7-popup-content input[type="email"] {
  margin-top: 15px;
}