/* Clever Firms contact form. Scoped to this popup only, not global Fluent Forms. */
.cf-contact-popup-active .dialog-widget-content,
.elementor-popup-modal:has(.cf-contact-popup-inner) .dialog-widget-content {
  width: min(570px, 92vw) !important;
  max-width: 92vw !important;
  max-height: calc(100dvh - 24px) !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  border-radius: 22px !important;
  background: #fff !important;
}
.cf-contact-popup-active .dialog-message,
.elementor-popup-modal:has(.cf-contact-popup-inner) .dialog-message { padding:0!important; }
.cf-contact-popup-inner { box-sizing: border-box; width:100%; min-width:0; max-width:100%; background:#fff; }
.cf-contact-popup-inner * {box-sizing:border-box;}
.cf-contact-popup-inner .cf-contact-heading-row { margin-bottom:25px !important; }
.cf-contact-popup-inner .cf-contact-dynamic-heading .elementor-heading-title {
  font-family:'League Spartan',sans-serif!important;
  color:#1D1C38!important; font-size:24px!important; font-weight:700!important;
  line-height:1.16!important; letter-spacing:-.4px!important;
}
.cf-contact-popup-inner .cf-contact-ff {width:100%;max-width:100%;font-family:'Plus Jakarta Sans',sans-serif;}
.cf-contact-popup-inner .frm-fluent-form {
  display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 16px!important; width:100%!important; margin:0!important;
}
.cf-contact-popup-inner .frm-fluent-form .ff-el-group {min-width:0;margin-bottom:14px!important;grid-column:1/-1;}
.cf-contact-popup-inner .frm-fluent-form .ff-el-group.cf-field-email {grid-column:1/2;}
.cf-contact-popup-inner .frm-fluent-form .ff-el-group.cf-field-phone {grid-column:2/3;}
.cf-contact-popup-inner .frm-fluent-form .ff-el-group.cf-field-name {margin-bottom:18px!important;}
.cf-contact-popup-inner .frm-fluent-form .ff-el-input--label,
.cf-contact-popup-inner .frm-fluent-form label {
  color:#1D1C38!important;font-family:'Plus Jakarta Sans',sans-serif!important;
  font-size:14px!important;font-weight:600!important;line-height:1.4!important;
}
.cf-contact-popup-inner .frm-fluent-form .ff-el-input--label {margin-bottom:9px!important;}
.cf-contact-popup-inner .frm-fluent-form .ff-el-form-control,
.cf-contact-popup-inner .frm-fluent-form input:not([type=hidden]):not([type=checkbox]):not([type=radio]),
.cf-contact-popup-inner .frm-fluent-form select,
.cf-contact-popup-inner .frm-fluent-form textarea {
  font-family:'Plus Jakarta Sans',sans-serif!important; font-size:15px!important;
  color:#1D1C38!important; background:#fff!important; border:1.5px solid #D6CEEC!important;
  border-radius:11px!important;box-shadow:none!important;width:100%!important;
  padding:11px 14px!important;min-height:47px!important;line-height:1.45!important;
}
.cf-contact-popup-inner .frm-fluent-form textarea {height:96px!important;min-height:96px!important;resize:vertical!important;}
.cf-contact-popup-inner .frm-fluent-form .ff-btn-submit,
.cf-contact-popup-inner .frm-fluent-form .ff_submit_btn_wrapper button {
  width:100%!important;min-height:54px!important;background:#6D28D9!important;
  color:#fff!important;border:none!important;border-radius:11px!important;
  font:600 17px/1.3 'Plus Jakarta Sans',sans-serif!important;
  padding:14px 24px!important;box-shadow:0 12px 23px rgba(109,40,217,.16)!important;
}
.cf-contact-popup-inner .frm-fluent-form .ff_submit_btn_wrapper {grid-column:1/-1; margin:3px 0 0!important;width:100%;}
.cf-contact-popup-inner .frm-fluent-form .ff-el-group:has(input[type=hidden]) {display:none;}
.cf-contact-popup-inner .frm-fluent-form .ff-message-success {grid-column:1/-1;}
.cf-contact-popup-inner .ff-el-is-error .error {font-size:12px;}
.cf-contact-setup-note {background:#FFF8DD;border-radius:8px;padding:12px;color:#684A00;font-size:14px;}
@media (max-width:767px) {
  .cf-contact-popup-inner .cf-contact-heading-row {margin-bottom:22px!important;}
  .cf-contact-popup-inner .cf-contact-dynamic-heading .elementor-heading-title {font-size:23px!important;}
  .cf-contact-popup-inner .frm-fluent-form {grid-template-columns:1fr!important;}
  .cf-contact-popup-inner .frm-fluent-form .ff-el-group,
  .cf-contact-popup-inner .frm-fluent-form .ff-el-group.cf-field-email,
  .cf-contact-popup-inner .frm-fluent-form .ff-el-group.cf-field-phone {grid-column:1/-1!important;}
  .cf-contact-popup-inner .frm-fluent-form .ff-el-group {margin-bottom:12px!important;}
  .cf-contact-popup-inner .frm-fluent-form .ff-el-input--label {margin-bottom:7px!important;}
  .cf-contact-popup-inner .frm-fluent-form textarea {min-height:95px!important;height:95px!important;}
  /* Round 2: Subject MUST remain visible on mobile. */
  .cf-contact-popup-inner .cf-field-subject {display:block!important;}
}
