.elementor-2 .elementor-element.elementor-element-5482edfd{--display:flex;}.elementor-2 .elementor-element.elementor-element-6e7aa5d{--display:flex;}.elementor-2 .elementor-element.elementor-element-5a74b5e{--display:flex;}.elementor-2 .elementor-element.elementor-element-5b2b7c2{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 60px) 0px;}.elementor-2 .elementor-element.elementor-element-50da484{--display:flex;}.elementor-2 .elementor-element.elementor-element-9801f19{--display:flex;}/* Start custom CSS for container, class: .elementor-element-5a74b5e */{"type":"elementor","siteurl":"https://www.costsegregation.com/wp-json/","elements":[{"id":"1b54566","elType":"widget","isInner":false,"isLocked":false,"settings":{"html":"<!--\r\n  KBKG Tax Savings Estimator — Redesigned Layout\r\n  ================================================\r\n  Drop this into a single Elementor \"Custom HTML\" widget,\r\n  replacing the entire current estimator section.\r\n  Calls the API directly — no dependency on KbkgBasicEstimator library.\r\n-->\r\n\r\n<!-- ===================== CSS ===================== -->\r\n<style>\r\n/* ---------- Container ---------- */\r\n.kbkg-estimator-wrapper {\r\n  max-width: 100% !important;\r\n  margin: 0 auto !important;\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06) !important;\r\n  padding: 48px 48px 40px !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper *,\r\n.kbkg-estimator-wrapper *::before,\r\n.kbkg-estimator-wrapper *::after {\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper h2.kbkg-estimator-title {\r\n  text-align: center !important;\r\n  font-size: 24px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 28px !important;\r\n  padding: 0 !important;\r\n  line-height: 1.3 !important;\r\n  letter-spacing: -0.01em !important;\r\n}\r\n\r\n.kbkg-estimator-body {\r\n  display: flex !important;\r\n  gap: 40px !important;\r\n  align-items: flex-start !important;\r\n  border: none !important;\r\n}\r\n\r\n/* (vertical divider merged into main .kbkg-estimator-results rule below) */\r\n\r\n/* ---------- Force ALL SVGs inside our wrapper to respect size ---------- */\r\n.kbkg-estimator-wrapper svg {\r\n  max-width: 100% !important;\r\n  height: auto !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper svg.kbkg-icon {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  min-height: 18px !important;\r\n  max-width: 18px !important;\r\n  max-height: 18px !important;\r\n  flex-shrink: 0 !important;\r\n  color: #475569 !important;\r\n  display: inline-block !important;\r\n  vertical-align: middle !important;\r\n}\r\n\r\n/* ---------- Left Column (Form) ---------- */\r\n.kbkg-estimator-form {\r\n  flex: 1 !important;\r\n  min-width: 0 !important;\r\n}\r\n\r\n.kbkg-field-group {\r\n  margin-bottom: 16px !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-label {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 6px !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n  line-height: 1.4 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input,\r\n.kbkg-estimator-wrapper .kbkg-field-select {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n  line-height: 1.4 !important;\r\n  height: auto !important;\r\n  margin: 0 !important;\r\n  -webkit-appearance: none !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input:focus,\r\n.kbkg-estimator-wrapper .kbkg-field-select:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n/* Dollar prefix input */\r\n.kbkg-input-with-prefix {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-input-prefix {\r\n  position: absolute !important;\r\n  left: 14px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  font-size: 15px !important;\r\n  color: #94a3b8 !important;\r\n  pointer-events: none !important;\r\n  z-index: 1 !important;\r\n}\r\n\r\n.kbkg-input-with-prefix .kbkg-field-input {\r\n  padding-left: 30px !important;\r\n}\r\n\r\n/* Date input wrapper */\r\n.kbkg-input-with-icon {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper svg.kbkg-input-icon {\r\n  position: absolute !important;\r\n  left: 14px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  width: 16px !important;\r\n  height: 16px !important;\r\n  min-width: 16px !important;\r\n  max-width: 16px !important;\r\n  color: #94a3b8 !important;\r\n  pointer-events: none !important;\r\n  z-index: 1 !important;\r\n}\r\n\r\n.kbkg-input-with-icon .kbkg-field-input {\r\n  padding-left: 38px !important;\r\n}\r\n\r\n/* Date input wrapper with calendar button */\r\n.kbkg-date-wrapper {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper input[type=\"text\"].kbkg-date-input {\r\n  cursor: text !important;\r\n  padding-right: 40px !important;\r\n}\r\n\r\n.kbkg-date-cal-btn {\r\n  position: absolute !important;\r\n  right: 8px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  cursor: pointer !important;\r\n  padding: 4px !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-date-cal-btn svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n  color: #94a3b8 !important;\r\n  stroke: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-date-cal-btn:hover svg {\r\n  color: #475569 !important;\r\n  stroke: #475569 !important;\r\n}\r\n\r\n.kbkg-field-error {\r\n  font-size: 11px !important;\r\n  color: #dc2626 !important;\r\n  margin-top: 4px !important;\r\n  display: none !important;\r\n}\r\n\r\n.kbkg-field-error.kbkg-visible {\r\n  display: block !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input.kbkg-input-error,\r\n.kbkg-estimator-wrapper .kbkg-field-select.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n/* ---------- Toggle row ---------- */\r\n.kbkg-toggle-row {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: space-between !important;\r\n  margin-bottom: 24px !important;\r\n  flex-wrap: nowrap !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-toggle-label {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 6px !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  line-height: 1.4 !important;\r\n  flex-shrink: 1 !important;\r\n  min-width: 0 !important;\r\n}\r\n\r\n.kbkg-toggle-control {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 8px !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.kbkg-toggle {\r\n  position: relative !important;\r\n  width: 44px !important;\r\n  min-width: 44px !important;\r\n  height: 24px !important;\r\n  cursor: pointer !important;\r\n  display: inline-block !important;\r\n}\r\n\r\n.kbkg-toggle input {\r\n  opacity: 0 !important;\r\n  width: 0 !important;\r\n  height: 0 !important;\r\n  position: absolute !important;\r\n}\r\n\r\n.kbkg-toggle-slider {\r\n  position: absolute !important;\r\n  inset: 0 !important;\r\n  background: #cbd5e1 !important;\r\n  border-radius: 12px !important;\r\n  transition: background 0.2s !important;\r\n}\r\n\r\n.kbkg-toggle-slider::before {\r\n  content: '' !important;\r\n  position: absolute !important;\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  left: 3px !important;\r\n  top: 3px !important;\r\n  background: #ffffff !important;\r\n  border-radius: 50% !important;\r\n  transition: transform 0.2s !important;\r\n}\r\n\r\n.kbkg-toggle input:checked + .kbkg-toggle-slider {\r\n  background: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-toggle input:checked + .kbkg-toggle-slider::before {\r\n  transform: translateX(20px) !important;\r\n}\r\n\r\n.kbkg-toggle-text {\r\n  font-size: 14px !important;\r\n  color: #64748b !important;\r\n  min-width: 28px !important;\r\n}\r\n\r\n/* ---------- Submit button ---------- */\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s !important;\r\n  line-height: 1.4 !important;\r\n  text-transform: none !important;\r\n  letter-spacing: normal !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:active {\r\n  background: #0f2035 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n/* ---------- Right Column (Results) ---------- */\r\n.kbkg-estimator-wrapper .kbkg-estimator-results {\r\n  flex: 1 !important;\r\n  min-width: 0 !important;\r\n  display: flex !important;\r\n  flex-direction: column !important;\r\n  gap: 20px !important;\r\n  padding-top: 8px !important;\r\n  border-left: 1px solid #e2e8f0 !important;\r\n  padding-left: 40px !important;\r\n}\r\n\r\n.kbkg-result-card {\r\n  border: 2px solid #16a34a !important;\r\n  border-radius: 12px !important;\r\n  padding: 20px 24px !important;\r\n  background: #f0fdf4 !important;\r\n}\r\n\r\n.kbkg-result-header {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 4px !important;\r\n}\r\n\r\n.kbkg-result-icon {\r\n  width: 36px !important;\r\n  min-width: 36px !important;\r\n  height: 36px !important;\r\n  min-height: 36px !important;\r\n  border-radius: 50% !important;\r\n  background: #d1e7dd !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.kbkg-result-icon svg {\r\n  width: 16px !important;\r\n  height: 16px !important;\r\n  min-width: 16px !important;\r\n  max-width: 16px !important;\r\n  color: #16a34a !important;\r\n  stroke: #16a34a !important;\r\n}\r\n\r\n.kbkg-result-label {\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #16a34a !important;\r\n  line-height: 1.3 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-result-value {\r\n  font-size: 24px !important;\r\n  font-weight: 800 !important;\r\n  color: #16a34a !important;\r\n  margin: 6px 0 4px !important;\r\n  line-height: 1.2 !important;\r\n  padding: 0 !important;\r\n}\r\n\r\n.kbkg-result-description {\r\n  font-size: 11px !important;\r\n  color: #64748b !important;\r\n  line-height: 1.5 !important;\r\n}\r\n\r\n.kbkg-result-assumption {\r\n  font-size: 12px !important;\r\n  color: #94a3b8 !important;\r\n  font-style: italic !important;\r\n  margin-top: 2px !important;\r\n}\r\n\r\n.kbkg-results-helper {\r\n  text-align: center !important;\r\n  font-size: 14px !important;\r\n  color: #94a3b8 !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n/* ---------- Error ---------- */\r\n.kbkg-disclaimer {\r\n  font-size: 12px !important;\r\n  color: #94a3b8 !important;\r\n  line-height: 1.5 !important;\r\n  margin-top: 0 !important;\r\n  display: none;\r\n}\r\n\r\n/* ---------- Email My Estimate Button ---------- */\r\n.kbkg-email-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e293b !important;\r\n  background: #ffffff !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s, border-color 0.2s !important;\r\n  display: none;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 8px !important;\r\n}\r\n\r\n.kbkg-email-btn:hover {\r\n  background: #f8fafc !important;\r\n  border-color: #cbd5e1 !important;\r\n}\r\n\r\n.kbkg-email-btn svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n}\r\n\r\n/* ---------- Email Modal ---------- */\r\n.kbkg-modal-overlay {\r\n  display: none;\r\n  position: fixed !important;\r\n  inset: 0 !important;\r\n  background: rgba(0, 0, 0, 0.5) !important;\r\n  z-index: 99999 !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-modal-overlay.kbkg-modal-open {\r\n  display: flex !important;\r\n}\r\n\r\n.kbkg-modal {\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  padding: 28px !important;\r\n  max-width: 480px !important;\r\n  width: 90% !important;\r\n  max-height: none !important;\r\n  overflow-y: visible !important;\r\n  position: relative !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n}\r\n\r\n.kbkg-modal-close {\r\n  position: absolute !important;\r\n  top: 16px !important;\r\n  right: 16px !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  font-size: 24px !important;\r\n  color: #94a3b8 !important;\r\n  cursor: pointer !important;\r\n  line-height: 1 !important;\r\n  padding: 4px !important;\r\n}\r\n\r\n.kbkg-modal-close:hover {\r\n  color: #475569 !important;\r\n}\r\n\r\n.kbkg-modal-title {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 10px !important;\r\n  font-size: 18px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 6px !important;\r\n}\r\n\r\n.kbkg-modal-title svg {\r\n  width: 24px !important;\r\n  height: 24px !important;\r\n  min-width: 24px !important;\r\n  max-width: 24px !important;\r\n  color: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-modal-subtitle {\r\n  font-size: 13px !important;\r\n  color: #64748b !important;\r\n  margin: 0 0 16px !important;\r\n  line-height: 1.5 !important;\r\n}\r\n\r\n.kbkg-modal-summary {\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 10px !important;\r\n  padding: 16px 20px !important;\r\n  margin-bottom: 20px !important;\r\n}\r\n\r\n.kbkg-modal-summary-title {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 8px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e3a5f !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-modal-summary-title svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n  color: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-modal-summary-row {\r\n  display: flex !important;\r\n  justify-content: space-between !important;\r\n  padding: 4px 0 !important;\r\n  font-size: 13px !important;\r\n}\r\n\r\n.kbkg-modal-summary-label {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-modal-summary-value {\r\n  color: #1e293b !important;\r\n  font-weight: 500 !important;\r\n}\r\n\r\n.kbkg-modal-summary-value.kbkg-green {\r\n  color: #16a34a !important;\r\n  font-weight: 600 !important;\r\n}\r\n\r\n.kbkg-modal-summary-divider {\r\n  border: none !important;\r\n  border-top: 1px solid #e2e8f0 !important;\r\n  margin: 10px 0 !important;\r\n}\r\n\r\n.kbkg-modal-form-row {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-modal-form-group {\r\n  flex: 1 !important;\r\n}\r\n\r\n.kbkg-modal-form-group label {\r\n  display: block !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n}\r\n\r\n.kbkg-modal-form-group input {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-modal-form-group input:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-modal-form-group input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-modal-form-group input.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n.kbkg-modal-buttons {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-top: 16px !important;\r\n}\r\n\r\n.kbkg-modal-cancel-btn {\r\n  flex: 1 !important;\r\n  padding: 12px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e293b !important;\r\n  background: #ffffff !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 6px !important;\r\n}\r\n\r\n.kbkg-modal-cancel-btn:hover {\r\n  background: #f8fafc !important;\r\n}\r\n\r\n.kbkg-modal-send-btn {\r\n  flex: 1 !important;\r\n  padding: 12px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 6px !important;\r\n}\r\n\r\n.kbkg-modal-send-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-modal-send-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n.kbkg-modal-disclaimer {\r\n  font-size: 10px !important;\r\n  color: #94a3b8 !important;\r\n  line-height: 1.5 !important;\r\n  margin-top: 12px !important;\r\n  text-align: center !important;\r\n}\r\n\r\n.kbkg-modal-error {\r\n  font-size: 13px !important;\r\n  color: #dc2626 !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n.kbkg-modal-success {\r\n  font-size: 14px !important;\r\n  color: #16a34a !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n.kbkg-error-msg {\r\n  text-align: center !important;\r\n  font-size: 14px !important;\r\n  color: #dc2626 !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n/* ---------- Contact Modal (pre-results) ---------- */\r\n.kbkg-contact-modal-overlay {\r\n  display: none;\r\n  position: fixed !important;\r\n  inset: 0 !important;\r\n  background: rgba(0, 0, 0, 0.5) !important;\r\n  z-index: 99998 !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-contact-modal-overlay.kbkg-modal-open {\r\n  display: flex !important;\r\n}\r\n\r\n.kbkg-contact-modal {\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  padding: 28px !important;\r\n  max-width: 480px !important;\r\n  width: 90% !important;\r\n  position: relative !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n}\r\n\r\n.kbkg-contact-modal-close {\r\n  position: absolute !important;\r\n  top: 16px !important;\r\n  right: 16px !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  font-size: 24px !important;\r\n  color: #94a3b8 !important;\r\n  cursor: pointer !important;\r\n  line-height: 1 !important;\r\n  padding: 4px !important;\r\n}\r\n\r\n.kbkg-contact-modal-close:hover {\r\n  color: #475569 !important;\r\n}\r\n\r\n.kbkg-contact-modal-title {\r\n  font-size: 20px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 16px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info {\r\n  background: #f8fafc !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 10px !important;\r\n  padding: 16px 20px !important;\r\n  margin-bottom: 20px !important;\r\n  display: flex !important;\r\n  align-items: flex-start !important;\r\n  gap: 12px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info svg {\r\n  width: 20px !important;\r\n  height: 20px !important;\r\n  min-width: 20px !important;\r\n  max-width: 20px !important;\r\n  color: #1e3a5f !important;\r\n  margin-top: 2px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info p {\r\n  font-size: 13px !important;\r\n  color: #475569 !important;\r\n  line-height: 1.5 !important;\r\n  margin: 0 !important;\r\n}\r\n\r\n.kbkg-contact-form-row {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-contact-form-group {\r\n  flex: 1 !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-contact-form-group label {\r\n  display: block !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n}\r\n\r\n.kbkg-contact-form-group input,\r\n.kbkg-contact-form-group select {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-contact-form-group input:focus,\r\n.kbkg-contact-form-group select:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-contact-form-group input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-contact-form-group input.kbkg-input-error,\r\n.kbkg-contact-form-group select.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n.kbkg-contact-error {\r\n  font-size: 13px !important;\r\n  color: #dc2626 !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n/* ---------- Responsive ---------- */\r\n@media (max-width: 768px) {\r\n  .kbkg-estimator-wrapper {\r\n    padding: 28px 20px 24px !important;\r\n  }\r\n\r\n  .kbkg-estimator-wrapper h2.kbkg-estimator-title {\r\n    font-size: 24px !important;\r\n  }\r\n\r\n  .kbkg-estimator-body {\r\n    flex-direction: column !important;\r\n    gap: 32px !important;\r\n  }\r\n\r\n  .kbkg-estimator-wrapper .kbkg-result-value {\r\n    font-size: 20px !important;\r\n  }\r\n}\r\n</style>\r\n\r\n<!-- ===================== HTML ===================== -->\r\n<div class=\"kbkg-estimator-wrapper\">\r\n  <h2 class=\"kbkg-estimator-title\">Estimate Your First Year Tax Savings</h2>\r\n\r\n  <div class=\"kbkg-estimator-body\">\r\n    <!-- LEFT: Form -->\r\n    <div class=\"kbkg-estimator-form\">\r\n\r\n      <!-- Property Address -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z\"/><circle cx=\"12\" cy=\"10\" r=\"3\"/></svg>\r\n          Property Address\r\n        </label>\r\n        <input type=\"text\" class=\"kbkg-field-input\" id=\"kbkg-address\" placeholder=\"123 Main Street, City, State\" autocomplete=\"street-address\">\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-address-error\">Please enter a property address.</div>\r\n      </div>\r\n\r\n      <!-- Purchase Price -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"12\" y1=\"1\" x2=\"12\" y2=\"23\"/><path d=\"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6\"/></svg>\r\n          Purchase Price (Less Land)\r\n        </label>\r\n        <div class=\"kbkg-input-with-prefix\">\r\n          <span class=\"kbkg-input-prefix\">$</span>\r\n          <input type=\"text\" class=\"kbkg-field-input\" id=\"kbkg-price\" placeholder=\"1,500,000\" inputmode=\"numeric\">\r\n        </div>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-price-error\">Please enter a valid purchase price.</div>\r\n      </div>\r\n\r\n      <!-- Date of Purchase -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"/><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"/><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"/><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"/></svg>\r\n          Date of Purchase\r\n        </label>\r\n        <div class=\"kbkg-date-wrapper\">\r\n          <input type=\"text\" class=\"kbkg-field-input kbkg-date-input\" id=\"kbkg-date\" placeholder=\"MM/DD/YYYY\" maxlength=\"10\" autocomplete=\"off\" data-lpignore=\"true\" data-form-type=\"other\">\r\n          <button type=\"button\" class=\"kbkg-date-cal-btn\" id=\"kbkg-date-cal-btn\" title=\"Open calendar\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"/><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"/><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"/><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"/></svg>\r\n          </button>\r\n          <input type=\"date\" id=\"kbkg-date-hidden\" style=\"position:absolute;opacity:0;width:0;height:0;overflow:hidden;pointer-events:none;\" tabindex=\"-1\" aria-hidden=\"true\">\r\n        </div>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-date-error\">Please enter a valid date (MM/DD/YYYY).</div>\r\n      </div>\r\n\r\n      <!-- Property Type -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"4\" y=\"2\" width=\"16\" height=\"20\" rx=\"2\" ry=\"2\"/><line x1=\"9\" y1=\"6\" x2=\"9\" y2=\"6.01\"/><line x1=\"15\" y1=\"6\" x2=\"15\" y2=\"6.01\"/><line x1=\"9\" y1=\"10\" x2=\"9\" y2=\"10.01\"/><line x1=\"15\" y1=\"10\" x2=\"15\" y2=\"10.01\"/><line x1=\"9\" y1=\"14\" x2=\"9\" y2=\"14.01\"/><line x1=\"15\" y1=\"14\" x2=\"15\" y2=\"14.01\"/><line x1=\"9\" y1=\"18\" x2=\"15\" y2=\"18\"/></svg>\r\n          Property Type\r\n        </label>\r\n        <select class=\"kbkg-field-select\" id=\"kbkg-property-type\">\r\n          <option value=\"\" disabled selected>Select property type...</option>\r\n          <option value=\"Single Family Home\">Single Family Home</option>\r\n          <option value=\"Townhouse\">Townhouse</option>\r\n          <option value=\"Condo - High Rise\">Condo - High Rise</option>\r\n          <option value=\"Condo - SFH\">Condo - SFH</option>\r\n          <option value=\"ADU - Freestanding\">ADU - Freestanding</option>\r\n          <option value=\"ADU - Interior Conversion\">ADU - Interior Conversion</option>\r\n          <option value=\"Duplex\">Duplex</option>\r\n          <option value=\"Triplex\">Triplex</option>\r\n          <option value=\"Fourplex\">Fourplex</option>\r\n          <option value=\"Apartment\">Apartment</option>\r\n          <option value=\"Assisted Living\">Assisted Living</option>\r\n          <option value=\"Auto Dealership\">Auto Dealership</option>\r\n          <option value=\"Bank, Branch Office\">Bank, Branch Office</option>\r\n          <option value=\"Car / Truck Repair\">Car / Truck Repair</option>\r\n          <option value=\"Car Wash\">Car Wash</option>\r\n          <option value=\"Casino\">Casino</option>\r\n          <option value=\"Cold Storage\">Cold Storage</option>\r\n          <option value=\"Distribution Center\">Distribution Center</option>\r\n          <option value=\"Food Processing Facility\">Food Processing Facility</option>\r\n          <option value=\"Golf Course/Country Club\">Golf Course/Country Club</option>\r\n          <option value=\"Hospital / Medical Center\">Hospital / Medical Center</option>\r\n          <option value=\"Hotel - Extended Stay\">Hotel - Extended Stay</option>\r\n          <option value=\"Hotel - Full Service\">Hotel - Full Service</option>\r\n          <option value=\"Hotel - Limited Service\">Hotel - Limited Service</option>\r\n          <option value=\"Motel - Exterior Access Units\">Motel - Exterior Access Units</option>\r\n          <option value=\"Motel - Interior Access Units\">Motel - Interior Access Units</option>\r\n          <option value=\"Industrial\">Industrial</option>\r\n          <option value=\"Industrial/Flex - Mixed Use\">Industrial/Flex - Mixed Use</option>\r\n          <option value=\"Lube/Oil Change Facility\">Lube/Oil Change Facility</option>\r\n          <option value=\"Manufacturing - Heavy\">Manufacturing - Heavy</option>\r\n          <option value=\"Manufacturing - Light\">Manufacturing - Light</option>\r\n          <option value=\"Manufacturing - Medium\">Manufacturing - Medium</option>\r\n          <option value=\"Mixed Use (Apt & Other)\">Mixed Use (Apt &amp; Other)</option>\r\n          <option value=\"Nursing Home\">Nursing Home</option>\r\n          <option value=\"Office - General\">Office - General</option>\r\n          <option value=\"Office - Medical\">Office - Medical</option>\r\n          <option value=\"Office Condo\">Office Condo</option>\r\n          <option value=\"R & D Facility\">R &amp; D Facility</option>\r\n          <option value=\"Restaurant - Average\">Restaurant - Average</option>\r\n          <option value=\"Restaurant - Fast Food\">Restaurant - Fast Food</option>\r\n          <option value=\"Restaurant - Upscale\">Restaurant - Upscale</option>\r\n          <option value=\"Retail - Department Store\">Retail - Department Store</option>\r\n          <option value=\"Retail - General\">Retail - General</option>\r\n          <option value=\"Retail - Regional Mall\">Retail - Regional Mall</option>\r\n          <option value=\"Retail - Shopping Center\">Retail - Shopping Center</option>\r\n          <option value=\"Self Storage Facility - Drive Up Access\">Self Storage Facility - Drive Up Access</option>\r\n          <option value=\"Self Storage Facility - Interior Access\">Self Storage Facility - Interior Access</option>\r\n          <option value=\"Service (Gas) Stations\">Service (Gas) Stations</option>\r\n          <option value=\"Supermarket\">Supermarket</option>\r\n          <option value=\"Theater / Cinema\">Theater / Cinema</option>\r\n          <option value=\"Veterinary Facility\">Veterinary Facility</option>\r\n          <option value=\"Warehouse\">Warehouse</option>\r\n        </select>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-type-error\">Please select a property type.</div>\r\n      </div>\r\n\r\n      <!-- Short-Term Rental Toggle -->\r\n      <div class=\"kbkg-toggle-row\">\r\n        <span class=\"kbkg-toggle-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z\"/><polyline points=\"9 22 9 12 15 12 15 22\"/></svg>\r\n          Is this a Short-Term or Vacation Rental?\r\n        </span>\r\n        <div class=\"kbkg-toggle-control\">\r\n          <label class=\"kbkg-toggle\">\r\n            <input type=\"checkbox\" id=\"kbkg-short-term\">\r\n            <span class=\"kbkg-toggle-slider\"></span>\r\n          </label>\r\n          <span class=\"kbkg-toggle-text\" id=\"kbkg-toggle-label\">No</span>\r\n        </div>\r\n      </div>\r\n\r\n      <!-- Submit -->\r\n      <button class=\"kbkg-submit-btn\" id=\"kbkg-estimate-btn\">Estimate Savings</button>\r\n    </div>\r\n\r\n    <!-- RIGHT: Result Cards -->\r\n    <div class=\"kbkg-estimator-results\">\r\n\r\n      <!-- Card 1: Total Year 1 Deductions -->\r\n      <div class=\"kbkg-result-card\">\r\n        <div class=\"kbkg-result-header\">\r\n          <div class=\"kbkg-result-icon\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"23 6 13.5 15.5 8.5 10.5 1 18\"/><polyline points=\"17 6 23 6 23 12\"/></svg>\r\n          </div>\r\n          <span class=\"kbkg-result-label\">Total Year 1 Deductions</span>\r\n        </div>\r\n        <div class=\"kbkg-result-value\" id=\"kbkg-deductions-value\">$0</div>\r\n        <div class=\"kbkg-result-description\">Deductions offset taxable income and reduce tax liability.</div>\r\n      </div>\r\n\r\n      <!-- Card 2: Tax Savings -->\r\n      <div class=\"kbkg-result-card\">\r\n        <div class=\"kbkg-result-header\">\r\n          <div class=\"kbkg-result-icon\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M19 5c-1.5 0-2.8 1.4-3 2-3.5-1.5-11-.3-11 5 0 1.8 0 3 2 4.5V20h4v-2h3v2h4v-4c1-.5 1.7-1 2-2h2v-4h-2c0-1-.5-1.5-1-2\"/><circle cx=\"9\" cy=\"12\" r=\"1\"/></svg>\r\n          </div>\r\n          <span class=\"kbkg-result-label\">Year 1 Tax Savings From Depreciation</span>\r\n        </div>\r\n        <div class=\"kbkg-result-value\" id=\"kbkg-savings-value\">$0</div>\r\n        <div class=\"kbkg-result-assumption\" id=\"kbkg-savings-assumption\"></div>\r\n      </div>\r\n\r\n      <!-- Email My Estimate Button -->\r\n      <button class=\"kbkg-email-btn\" id=\"kbkg-email-btn\" style=\"display:none;\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n        Email My Estimate\r\n      </button>\r\n\r\n      <div class=\"kbkg-results-helper\" id=\"kbkg-results-helper\">\r\n        Enter your property details and click Estimate Savings.\r\n      </div>\r\n\r\n      <div class=\"kbkg-disclaimer\" id=\"kbkg-disclaimer\">\r\n        This high-level estimate is intended for informational purposes only and should not be used for filing tax returns. It assumes bonus depreciation applies and a tax rate of 35%. Actual results will depend on your specific property facts and circumstances. State income tax benefits may be higher. Please consult with a qualified tax professional for advice tailored to your situation.\r\n      </div>\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<!-- ===================== Email Modal ===================== -->\r\n<div class=\"kbkg-modal-overlay\" id=\"kbkg-email-modal\">\r\n  <div class=\"kbkg-modal\">\r\n    <button class=\"kbkg-modal-close\" id=\"kbkg-modal-close\">&times;</button>\r\n\r\n    <div class=\"kbkg-modal-title\">\r\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n      Email Your Results\r\n    </div>\r\n    <p class=\"kbkg-modal-subtitle\">You'll receive a professionally formatted email from CostSegregation.com with your complete estimate.</p>\r\n\r\n    <div class=\"kbkg-modal-summary\">\r\n      <div class=\"kbkg-modal-summary-title\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M22 11.08V12a10 10 0 1 1-5.93-9.14\"/><polyline points=\"22 4 12 14.01 9 11.01\"/></svg>\r\n        Your email will include:\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Property Address:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-address\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Purchase Price:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-price\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Property Type:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-type\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Purchase Date:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-date\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\" id=\"kbkg-modal-str-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Short-Term Rental:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-str\"></span>\r\n      </div>\r\n      <hr class=\"kbkg-modal-summary-divider\">\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Year 1 Deductions:</span>\r\n        <span class=\"kbkg-modal-summary-value kbkg-green\" id=\"kbkg-modal-deductions\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Year 1 Tax Savings:</span>\r\n        <span class=\"kbkg-modal-summary-value kbkg-green\" id=\"kbkg-modal-savings\"></span>\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-form-row\">\r\n      <div class=\"kbkg-modal-form-group\">\r\n        <label>First Name</label>\r\n        <input type=\"text\" id=\"kbkg-modal-fname\" placeholder=\"John\">\r\n      </div>\r\n      <div class=\"kbkg-modal-form-group\">\r\n        <label>Last Name</label>\r\n        <input type=\"text\" id=\"kbkg-modal-lname\" placeholder=\"Smith\">\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-form-group\" style=\"margin-bottom:0;\">\r\n      <label>Email Address</label>\r\n      <input type=\"email\" id=\"kbkg-modal-email\" placeholder=\"john@example.com\">\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-buttons\">\r\n      <button class=\"kbkg-modal-cancel-btn\" id=\"kbkg-modal-cancel-btn\">&times; Cancel</button>\r\n      <button class=\"kbkg-modal-send-btn\" id=\"kbkg-modal-send-btn\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg>\r\n        Send Results\r\n      </button>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-error\" id=\"kbkg-modal-error\"></div>\r\n    <div class=\"kbkg-modal-success\" id=\"kbkg-modal-success\"></div>\r\n\r\n    <div class=\"kbkg-modal-disclaimer\">\r\n      This high-level estimate is intended for informational purposes only and should not be used for filing tax returns. It assumes bonus depreciation applies and a tax rate of 35%. Actual results will depend on your specific property facts and circumstances. State income tax benefits may be higher. Please consult with a qualified tax professional for advice tailored to your situation.\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<!-- ===================== Contact Modal (pre-results) ===================== -->\r\n<div class=\"kbkg-contact-modal-overlay\" id=\"kbkg-contact-modal\">\r\n  <div class=\"kbkg-contact-modal\">\r\n    <button class=\"kbkg-contact-modal-close\" id=\"kbkg-contact-close\">&times;</button>\r\n\r\n    <div class=\"kbkg-contact-modal-title\">Get Your Estimate</div>\r\n\r\n    <div class=\"kbkg-contact-modal-info\">\r\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n      <p>Enter your info to instantly view your results! We'll also email you a detailed summary of tax benefits for your records.</p>\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-row\">\r\n      <div class=\"kbkg-contact-form-group\" style=\"margin-bottom:0;\">\r\n        <label>First Name *</label>\r\n        <input type=\"text\" id=\"kbkg-contact-fname\" placeholder=\"John\">\r\n      </div>\r\n      <div class=\"kbkg-contact-form-group\" style=\"margin-bottom:0;\">\r\n        <label>Last Name *</label>\r\n        <input type=\"text\" id=\"kbkg-contact-lname\" placeholder=\"Smith\">\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-group\">\r\n      <label>Email *</label>\r\n      <input type=\"email\" id=\"kbkg-contact-email\" placeholder=\"john@example.com\">\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-group\">\r\n      <label>How did you first hear about CostSegregation.com?</label>\r\n      <select id=\"kbkg-contact-source\">\r\n        <option value=\"\" disabled selected>Please Select</option>\r\n        <option value=\"ChatGPT/AI\">ChatGPT/AI</option>\r\n        <option value=\"Conference/Event\">Conference/Event</option>\r\n        <option value=\"Postcard/Mail\">Postcard/Mail</option>\r\n        <option value=\"Marketing Email\">Marketing Email</option>\r\n        <option value=\"Online Advertising\">Online Advertising</option>\r\n        <option value=\"Organic Search\">Organic Search</option>\r\n        <option value=\"Other\">Other</option>\r\n        <option value=\"Publication / PR\">Publication / PR</option>\r\n        <option value=\"Referral - Client\">Referral - Client</option>\r\n        <option value=\"Referral - CPA\">Referral - CPA</option>\r\n        <option value=\"Referral - Internal\">Referral - Internal</option>\r\n        <option value=\"Referral - Partner\">Referral - Partner</option>\r\n        <option value=\"Sales Email / Outreach\">Sales Email / Outreach</option>\r\n        <option value=\"Social Media\">Social Media</option>\r\n        <option value=\"Webinar\">Webinar</option>\r\n        <option value=\"Influencer\">Influencer</option>\r\n        <option value=\"Podcast/Radio\">Podcast/Radio</option>\r\n      </select>\r\n    </div>\r\n\r\n    <button class=\"kbkg-contact-submit-btn\" id=\"kbkg-contact-submit\">View My Estimate</button>\r\n    <div class=\"kbkg-contact-error\" id=\"kbkg-contact-error\"></div>\r\n  </div>\r\n</div>\r\n<!-- ===================== JS ===================== -->\r\n<script>\r\n(function () {\r\n  \"use strict\";\r\n\r\n  var API_URL = \"https://app.costsegregation.com/api/project/v1/rcs-quick-estimator\";\r\n  var TAX_RATE = 0.35;\r\n\r\n  /* ---------- Helpers ---------- */\r\n  var UTM_TO_HS_FIELD_MAP = {\r\n    utm_campaign: \"sfdc_utm_campaign\",\r\n    utm_source: \"sfdc_utm_source\",\r\n    utm_medium: \"sfdc_utm_medium\",\r\n    utm_content: \"sfdc_utm_content\"\r\n  };\r\n  \r\n  var GOOGLE_CLICK_TO_HS_FIELD_MAP = {\r\n  gclid: \"google_gclid\",\r\n  gbraid: \"google_gbraid\",\r\n  wbraid: \"google_wbraid\"\r\n};\r\n\r\n  function getCookie(name) {\r\n    var match = document.cookie.match(new RegExp(\"(^|;\\\\s*)\" + name + \"=([^;]*)\"));\r\n    return match ? decodeURIComponent(match[2]) : \"\";\r\n  }\r\n\r\n  function parseQueryUtms() {\r\n    var utms = {};\r\n    try {\r\n      var params = new URLSearchParams(window.location.search || \"\");\r\n      if (params.get(\"utm_campaign\")) utms.utm_campaign = params.get(\"utm_campaign\");\r\n      if (params.get(\"utm_source\")) utms.utm_source = params.get(\"utm_source\");\r\n      if (params.get(\"utm_medium\")) utms.utm_medium = params.get(\"utm_medium\");\r\n      if (params.get(\"utm_content\")) utms.utm_content = params.get(\"utm_content\");\r\n    } catch (e) {}\r\n    return utms;\r\n  }\r\n\r\nfunction parseAffiliateId() {\r\n  try {\r\n    var params = new URLSearchParams(window.location.search || \"\");\r\n    return params.get(\"awinaffid\") || params.get(\"sv_campaign_id\") || \"\";\r\n  } catch (e) {\r\n    return \"\";\r\n  }\r\n}\r\n\r\nfunction parseGoogleClickParams() {\r\n  var values = {};\r\n\r\n  try {\r\n    var params = new URLSearchParams(window.location.search || \"\");\r\n\r\n    Object.keys(GOOGLE_CLICK_TO_HS_FIELD_MAP).forEach(function (key) {\r\n      var value = params.get(key);\r\n      if (value) {\r\n        values[key] = value;\r\n      }\r\n    });\r\n  } catch (e) {\r\n    /* ignore */\r\n  }\r\n\r\n  return values;\r\n}\r\n\r\nfunction getPersistedAffiliateId() {\r\n  var affiliateId = parseAffiliateId();\r\n\r\n  try {\r\n    if (affiliateId) {\r\n      sessionStorage.setItem(\"kbkg_affiliate_id\", affiliateId);\r\n      return affiliateId;\r\n    }\r\n\r\n    return sessionStorage.getItem(\"kbkg_affiliate_id\") || \"\";\r\n  } catch (e) {\r\n    return affiliateId || \"\";\r\n  }\r\n}\r\n\r\nfunction getPersistedGoogleClickParams() {\r\n  var values = parseGoogleClickParams();\r\n\r\n  try {\r\n    Object.keys(GOOGLE_CLICK_TO_HS_FIELD_MAP).forEach(function (key) {\r\n      if (values[key]) {\r\n        sessionStorage.setItem(\"kbkg_\" + key, values[key]);\r\n      } else {\r\n        var storedValue = sessionStorage.getItem(\"kbkg_\" + key) || \"\";\r\n        if (storedValue) {\r\n          values[key] = storedValue;\r\n        }\r\n      }\r\n    });\r\n  } catch (e) {\r\n    /* ignore */\r\n  }\r\n\r\n  return values || {};\r\n}\r\n\r\n/* Store affiliate ID when the page loads */\r\ngetPersistedAffiliateId();\r\n\r\n/* Store Google click parameters when the page loads */\r\ngetPersistedGoogleClickParams();\r\n\r\n  function readKbkgVisitUtms() {\r\n    try {\r\n      var raw = getCookie(\"kbkgvisit\");\r\n      if (!raw) return {};\r\n      var parsed = JSON.parse(raw);\r\n      return (parsed && parsed.kbkgUtm) ? parsed.kbkgUtm : {};\r\n    } catch (e) {\r\n      return {};\r\n    }\r\n  }\r\n\r\n  function hasTrackedUtms(utms) {\r\n    return !!(\r\n      utms &&\r\n      (utms.utm_campaign || utms.utm_source || utms.utm_medium || utms.utm_content)\r\n    );\r\n  }\r\n\r\n  function getPersistedUtmParams() {\r\n    var utms = {};\r\n\r\n    try {\r\n      if (window.kbkgConsentManager && typeof window.kbkgConsentManager.getUtmParams === \"function\") {\r\n        utms = window.kbkgConsentManager.getUtmParams() || {};\r\n      }\r\n    } catch (e) {\r\n      console.warn(\"kbkgConsentManager.getUtmParams failed:\", e);\r\n    }\r\n\r\n    if (!hasTrackedUtms(utms)) {\r\n      utms = readKbkgVisitUtms();\r\n    }\r\n\r\n    if (!hasTrackedUtms(utms)) {\r\n      utms = parseQueryUtms();\r\n    }\r\n\r\n    return utms || {};\r\n  }\r\n\r\n  function formatMoney(value) {\r\n    if (value == null || isNaN(value)) return \"$0\";\r\n    return \"$\" + Math.round(value).toLocaleString(\"en-US\");\r\n  }\r\n\r\n  function formatPriceInput(input) {\r\n    var raw = input.value.replace(/[^0-9]/g, \"\");\r\n    if (raw === \"\") { input.value = \"\"; return; }\r\n    input.value = parseInt(raw, 10).toLocaleString(\"en-US\");\r\n  }\r\n\r\n  function formatDateForApi(dateStr) {\r\n    return dateStr || \"\";\r\n  }\r\n\r\n  function getYearFromDate(dateStr) {\r\n    if (!dateStr) return new Date().getFullYear();\r\n    var parts = dateStr.split(\"/\");\r\n    if (parts.length === 3) return parseInt(parts[2], 10) || new Date().getFullYear();\r\n    return new Date().getFullYear();\r\n  }\r\n\r\n  /* ---------- Toggle label ---------- */\r\n  var toggleCheckbox = document.getElementById(\"kbkg-short-term\");\r\n  var toggleLabel = document.getElementById(\"kbkg-toggle-label\");\r\n  if (toggleCheckbox && toggleLabel) {\r\n    toggleCheckbox.addEventListener(\"change\", function () {\r\n      toggleLabel.textContent = this.checked ? \"Yes\" : \"No\";\r\n    });\r\n  }\r\n\r\n  /* ---------- Price formatting ---------- */\r\n  var priceInput = document.getElementById(\"kbkg-price\");\r\n  if (priceInput) {\r\n    priceInput.addEventListener(\"input\", function () { formatPriceInput(this); });\r\n  }\r\n\r\n  /* ---------- Date input: type + calendar ---------- */\r\n  var dateInput = document.getElementById(\"kbkg-date\");\r\n  var dateHidden = document.getElementById(\"kbkg-date-hidden\");\r\n  var dateCalBtn = document.getElementById(\"kbkg-date-cal-btn\");\r\n\r\n  /* ---------- Inline field error helpers ---------- */\r\n  function isValidDate(m, d, y) {\r\n    if (y < 1900 || y > 2100 || m < 1 || m > 12 || d < 1) return false;\r\n    var date = new Date(y, m - 1, d);\r\n    return date.getFullYear() === y && date.getMonth() === m - 1 && date.getDate() === d;\r\n  }\r\n\r\n  function setFieldError(inputEl, errorId, show) {\r\n    var errEl = document.getElementById(errorId);\r\n    if (errEl) errEl.className = show ? \"kbkg-field-error kbkg-visible\" : \"kbkg-field-error\";\r\n    if (inputEl) {\r\n      if (show) inputEl.classList.add(\"kbkg-input-error\");\r\n      else inputEl.classList.remove(\"kbkg-input-error\");\r\n    }\r\n  }\r\n\r\n  /* Clear errors on input */\r\n  var addressInput = document.getElementById(\"kbkg-address\");\r\n  var priceEl = document.getElementById(\"kbkg-price\");\r\n  var typeEl = document.getElementById(\"kbkg-property-type\");\r\n\r\n  if (addressInput) addressInput.addEventListener(\"input\", function () { setFieldError(this, \"kbkg-address-error\", false); resetResults(); });\r\n  if (priceEl) priceEl.addEventListener(\"input\", function () { setFieldError(this, \"kbkg-price-error\", false); resetResults(); });\r\n  if (typeEl) typeEl.addEventListener(\"change\", function () {\r\n    setFieldError(this, \"kbkg-type-error\", false);\r\n    updateStrVisibility(this.value);\r\n    resetResults();\r\n  });\r\n  if (toggleCheckbox) toggleCheckbox.addEventListener(\"change\", function () { resetResults(); });\r\n\r\n  /* ---------- Show/hide short-term rental based on property type ---------- */\r\n  var strTypes = [\"Single Family Home\",\"Townhouse\",\"Condo - High Rise\",\"Condo - SFH\",\"ADU - Freestanding\",\"ADU - Interior Conversion\",\"Duplex\",\"Triplex\",\"Fourplex\",\"Apartment\"];\r\n  var toggleRow = document.querySelector(\".kbkg-toggle-row\");\r\n\r\n  function updateStrVisibility(val) {\r\n    if (strTypes.indexOf(val) !== -1) {\r\n      toggleRow.style.cssText = \"display:flex!important;\";\r\n    } else {\r\n      toggleRow.style.cssText = \"display:none!important;\";\r\n      toggleCheckbox.checked = false;\r\n      toggleLabel.textContent = \"No\";\r\n    }\r\n  }\r\n\r\n  if (dateInput) {\r\n    dateInput.addEventListener(\"input\", function () {\r\n      var raw = this.value.replace(/[^0-9]/g, \"\");\r\n      var formatted = \"\";\r\n      if (raw.length > 0) formatted = raw.substring(0, 2);\r\n      if (raw.length >= 3) formatted += \"/\" + raw.substring(2, 4);\r\n      if (raw.length >= 5) formatted += \"/\" + raw.substring(4, 8);\r\n      this.value = formatted;\r\n      setFieldError(this, \"kbkg-date-error\", false);\r\n      resetResults();\r\n    });\r\n\r\n    dateInput.addEventListener(\"blur\", function () {\r\n      var val = this.value.trim();\r\n      if (!val) { setFieldError(this, \"kbkg-date-error\", false); return; }\r\n      var parts = val.split(\"/\");\r\n      if (parts.length !== 3 || parts[2].length !== 4) {\r\n        setFieldError(this, \"kbkg-date-error\", true);\r\n        return;\r\n      }\r\n      var m = parseInt(parts[0], 10);\r\n      var d = parseInt(parts[1], 10);\r\n      var y = parseInt(parts[2], 10);\r\n      setFieldError(this, \"kbkg-date-error\", !isValidDate(m, d, y));\r\n    });\r\n  }\r\n\r\n  if (dateCalBtn && dateHidden) {\r\n    dateCalBtn.addEventListener(\"click\", function (e) {\r\n      e.preventDefault();\r\n      if (dateHidden.showPicker) {\r\n        dateHidden.showPicker();\r\n      } else {\r\n        dateHidden.click();\r\n      }\r\n    });\r\n\r\n    dateHidden.addEventListener(\"change\", function () {\r\n      var val = this.value;\r\n      if (!val) return;\r\n      var parts = val.split(\"-\");\r\n      if (parts.length === 3) {\r\n        dateInput.value = parts[1] + \"/\" + parts[2] + \"/\" + parts[0];\r\n        setFieldError(dateInput, \"kbkg-date-error\", false);\r\n      }\r\n    });\r\n  }\r\n\r\n  /* ---------- Display results ---------- */\r\n  function showResults(low, high) {\r\n    var deductionsEl = document.getElementById(\"kbkg-deductions-value\");\r\n    var savingsEl = document.getElementById(\"kbkg-savings-value\");\r\n    var assumptionEl = document.getElementById(\"kbkg-savings-assumption\");\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n\r\n    deductionsEl.textContent = formatMoney(low) + \" to \" + formatMoney(high);\r\n\r\n    var savingsLow = low * TAX_RATE;\r\n    var savingsHigh = high * TAX_RATE;\r\n    savingsEl.textContent = formatMoney(savingsLow) + \" to \" + formatMoney(savingsHigh);\r\n    assumptionEl.textContent = \"Potential cash savings in your first year. State income tax benefits may be higher.\";\r\n\r\n    helperEl.textContent = \"\";\r\n    helperEl.style.display = \"none\";\r\n\r\n    var disclaimerEl = document.getElementById(\"kbkg-disclaimer\");\r\n    disclaimerEl.style.display = \"block\";\r\n\r\n    var emailBtn = document.getElementById(\"kbkg-email-btn\");\r\n    emailBtn.style.display = \"flex\";\r\n  }\r\n\r\n  function showError(msg) {\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-error-msg\";\r\n    helperEl.textContent = msg;\r\n  }\r\n\r\n  function resetResults() {\r\n    document.getElementById(\"kbkg-deductions-value\").textContent = \"$0\";\r\n    document.getElementById(\"kbkg-savings-value\").textContent = \"$0\";\r\n    document.getElementById(\"kbkg-savings-assumption\").textContent = \"\";\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-results-helper\";\r\n    helperEl.textContent = \"Enter your property details and click Estimate Savings.\";\r\n    helperEl.style.display = \"\";\r\n    document.getElementById(\"kbkg-disclaimer\").style.display = \"none\";\r\n    document.getElementById(\"kbkg-email-btn\").style.display = \"none\";\r\n  }\r\n\r\n  function resetHelper() {\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-results-helper\";\r\n  }\r\n\r\n  /* ---------- API call ---------- */\r\n  function callEstimatorApi() {\r\n    var btn = document.getElementById(\"kbkg-estimate-btn\");\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var propertyType = document.getElementById(\"kbkg-property-type\").value;\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n\r\n    var hasError = false;\r\n\r\n    if (!address) {\r\n      setFieldError(document.getElementById(\"kbkg-address\"), \"kbkg-address-error\", true);\r\n      hasError = true;\r\n    }\r\n    if (!price || price <= 0) {\r\n      setFieldError(document.getElementById(\"kbkg-price\"), \"kbkg-price-error\", true);\r\n      hasError = true;\r\n    }\r\n    if (!dateVal) {\r\n      setFieldError(document.getElementById(\"kbkg-date\"), \"kbkg-date-error\", true);\r\n      hasError = true;\r\n    } else {\r\n      var dateParts = dateVal.split(\"/\");\r\n      if (dateParts.length !== 3 || dateParts[2].length !== 4 ||\r\n          !isValidDate(parseInt(dateParts[0],10), parseInt(dateParts[1],10), parseInt(dateParts[2],10))) {\r\n        setFieldError(document.getElementById(\"kbkg-date\"), \"kbkg-date-error\", true);\r\n        hasError = true;\r\n      }\r\n    }\r\n    if (!propertyType) {\r\n      setFieldError(document.getElementById(\"kbkg-property-type\"), \"kbkg-type-error\", true);\r\n      hasError = true;\r\n    }\r\n\r\n    if (hasError) return;\r\n\r\n    resetHelper();\r\n\r\n    var payload = {\r\n      address: address,\r\n      transactionType: \"Acquired Property\",\r\n      propertyType: propertyType,\r\n      buildingType: \"Freestanding/Detached\",\r\n      pisDate: formatDateForApi(dateVal),\r\n      currentTaxYear: getYearFromDate(dateVal),\r\n      purchasePrice: price,\r\n      estimatedLandValue: 0,\r\n      shortTermRental: shortTerm,\r\n      source: \"Website\"\r\n    };\r\n\r\n    btn.disabled = true;\r\n    btn.textContent = \"Calculating...\";\r\n\r\n    fetch(API_URL, {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/json\" },\r\n      body: JSON.stringify(payload)\r\n    })\r\n    .then(function (response) {\r\n      if (!response.ok) throw new Error(\"API request failed (status \" + response.status + \")\");\r\n      return response.json();\r\n    })\r\n    .then(function (data) {\r\n      if (\r\n        data.result &&\r\n        data.result.estimatedAdditionalTaxDeductionsYear1Low != null &&\r\n        data.result.estimatedAdditionalTaxDeductionsYear1High != null\r\n      ) {\r\n        pendingResultLow = data.result.estimatedAdditionalTaxDeductionsYear1Low;\r\n        pendingResultHigh = data.result.estimatedAdditionalTaxDeductionsYear1High;\r\n        openContactModal();\r\n      } else {\r\n        showError(\"Could not calculate estimate. Please check your inputs.\");\r\n      }\r\n    })\r\n    .catch(function (err) {\r\n      console.error(\"Estimator API error:\", err);\r\n      showError(\"Something went wrong. Please try again.\");\r\n    })\r\n    .finally(function () {\r\n      btn.disabled = false;\r\n      btn.textContent = \"Estimate Savings\";\r\n    });\r\n  }\r\n\r\n  var pendingResultLow = 0;\r\n  var pendingResultHigh = 0;\r\n\r\n  var btn = document.getElementById(\"kbkg-estimate-btn\");\r\n  if (btn) {\r\n    btn.addEventListener(\"click\", callEstimatorApi);\r\n  }\r\n\r\n  /* ---------- Contact Modal (pre-results) ---------- */\r\n  var contactOverlay = document.getElementById(\"kbkg-contact-modal\");\r\n  var contactCloseBtn = document.getElementById(\"kbkg-contact-close\");\r\n  var contactSubmitBtn = document.getElementById(\"kbkg-contact-submit\");\r\n\r\n  function openContactModal() {\r\n    document.getElementById(\"kbkg-contact-error\").style.display = \"none\";\r\n    contactSubmitBtn.disabled = false;\r\n    contactSubmitBtn.textContent = \"View My Estimate\";\r\n    contactOverlay.classList.add(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function closeContactModal() {\r\n    contactOverlay.classList.remove(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function submitContact() {\r\n    console.log(\"submitContact fired\");\r\n\r\n    var fname = document.getElementById(\"kbkg-contact-fname\").value.trim();\r\n    var lname = document.getElementById(\"kbkg-contact-lname\").value.trim();\r\n    var email = document.getElementById(\"kbkg-contact-email\").value.trim();\r\n    var source = document.getElementById(\"kbkg-contact-source\").value;\r\n    var errorEl = document.getElementById(\"kbkg-contact-error\");\r\n\r\n    errorEl.style.display = \"none\";\r\n    document.getElementById(\"kbkg-contact-fname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-contact-lname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-contact-email\").classList.remove(\"kbkg-input-error\");\r\n\r\n    var hasErr = false;\r\n    if (!fname) { document.getElementById(\"kbkg-contact-fname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!lname) { document.getElementById(\"kbkg-contact-lname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!email || !/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(email)) { document.getElementById(\"kbkg-contact-email\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (hasErr) {\r\n      errorEl.textContent = \"Please fill in all required fields.\";\r\n      errorEl.style.display = \"block\";\r\n      return;\r\n    }\r\n\r\n    showResults(pendingResultLow, pendingResultHigh);\r\n    closeContactModal();\r\n\r\n    document.getElementById(\"kbkg-modal-fname\").value = fname;\r\n    document.getElementById(\"kbkg-modal-lname\").value = lname;\r\n    document.getElementById(\"kbkg-modal-email\").value = email;\r\n\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var propertyType = document.getElementById(\"kbkg-property-type\").value;\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n    var savingsLow = pendingResultLow * TAX_RATE;\r\n    var savingsHigh = pendingResultHigh * TAX_RATE;\r\n\r\n    var hsFields = [\r\n      { name: \"firstname\", value: fname },\r\n      { name: \"lastname\", value: lname },\r\n      { name: \"email\", value: email },\r\n      { name: \"how_did_you_first_hear_about_kbkg_\", value: source },\r\n      { name: \"full_property_address\", value: address },\r\n      { name: \"building_basis\", value: String(price) },\r\n      { name: \"date_of_purchase\", value: dateVal },\r\n      { name: \"property_type_dropdown\", value: propertyType },\r\n      { name: \"shortterm_or_vacation_rental\", value: shortTerm ? \"true\" : \"false\" },\r\n      { name: \"cost_segregation_calculator_low_tax_deductions_year_1\", value: String(Math.round(pendingResultLow)) },\r\n      { name: \"cost_segregation_calculator_high_tax_deductions_year_1\", value: String(Math.round(pendingResultHigh)) },\r\n      { name: \"year_1_tax_savings_low_end\", value: String(Math.round(savingsLow)) },\r\n      { name: \"year_1_tax_savings_high_end\", value: String(Math.round(savingsHigh)) }\r\n    ];\r\n\r\n    var storedUtms = {};\r\n    try {\r\n      storedUtms = getPersistedUtmParams();\r\n    } catch (e) {\r\n      console.error(\"UTM retrieval error:\", e);\r\n      storedUtms = {};\r\n    }\r\n\r\n    for (var utmKey in UTM_TO_HS_FIELD_MAP) {\r\n      if (Object.prototype.hasOwnProperty.call(UTM_TO_HS_FIELD_MAP, utmKey) && storedUtms[utmKey]) {\r\n        hsFields.push({\r\n          name: UTM_TO_HS_FIELD_MAP[utmKey],\r\n          value: storedUtms[utmKey]\r\n        });\r\n      }\r\n    }\r\n\r\nvar affiliateId = getPersistedAffiliateId();\r\nif (affiliateId) {\r\n  hsFields.push({\r\n    name: \"affiliate_id\",\r\n    value: affiliateId\r\n  });\r\n}\r\n\r\nvar googleClickParams = getPersistedGoogleClickParams();\r\n\r\nfor (var googleClickKey in GOOGLE_CLICK_TO_HS_FIELD_MAP) {\r\n  if (\r\n    Object.prototype.hasOwnProperty.call(GOOGLE_CLICK_TO_HS_FIELD_MAP, googleClickKey) &&\r\n    googleClickParams[googleClickKey]\r\n  ) {\r\n    hsFields.push({\r\n      name: GOOGLE_CLICK_TO_HS_FIELD_MAP[googleClickKey],\r\n      value: googleClickParams[googleClickKey]\r\n    });\r\n  }\r\n}\r\n    var hsContext = {\r\n  pageUri: window.location.href,\r\n  pageName: document.title\r\n};\r\n\r\nvar hutk = getCookie(\"hubspotutk\");\r\nif (hutk) {\r\n  hsContext.hutk = hutk;\r\n}\r\n\r\nvar hsPayload = {\r\n  fields: hsFields,\r\n  context: hsContext\r\n};\r\n\r\n    console.log(\"About to send to HubSpot\", hsPayload);\r\n\r\n    fetch(\"https://api.hsforms.com/submissions/v3/integration/submit/3615782/1883c298-1b07-4401-98fc-cd428ae7b37d\", {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/json\" },\r\n      body: JSON.stringify(hsPayload)\r\n    })\r\n    .then(function (response) {\r\n      if (!response.ok) {\r\n        return response.text().then(function (text) {\r\n          throw new Error(\"HubSpot submission failed (\" + response.status + \"): \" + text);\r\n        });\r\n      }\r\n      return response.text();\r\n    })\r\n    .then(function (text) {\r\n      console.log(\"HubSpot submission succeeded:\", text);\r\n    })\r\n    .catch(function (err) {\r\n      console.error(\"HubSpot submission error:\", err);\r\n    });\r\n  }\r\n\r\n  if (contactCloseBtn) contactCloseBtn.addEventListener(\"click\", closeContactModal);\r\n  if (contactSubmitBtn) contactSubmitBtn.addEventListener(\"click\", submitContact);\r\n  if (contactOverlay) contactOverlay.addEventListener(\"click\", function (e) {\r\n    if (e.target === contactOverlay) closeContactModal();\r\n  });\r\n\r\n  /* ---------- Email Modal ---------- */\r\n  var emailBtn = document.getElementById(\"kbkg-email-btn\");\r\n  var modalOverlay = document.getElementById(\"kbkg-email-modal\");\r\n  var modalCloseBtn = document.getElementById(\"kbkg-modal-close\");\r\n  var modalCancelBtn = document.getElementById(\"kbkg-modal-cancel-btn\");\r\n  var modalSendBtn = document.getElementById(\"kbkg-modal-send-btn\");\r\n\r\n  function getPropertyTypeDisplay() {\r\n    var sel = document.getElementById(\"kbkg-property-type\");\r\n    return sel.options[sel.selectedIndex].text;\r\n  }\r\n\r\n  function formatDateDisplay(dateStr) {\r\n    if (!dateStr) return \"\";\r\n    var parts = dateStr.split(\"/\");\r\n    if (parts.length !== 3) return dateStr;\r\n    var months = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"];\r\n    var m = parseInt(parts[0], 10);\r\n    var d = parseInt(parts[1], 10);\r\n    var y = parts[2];\r\n    var suffix = \"th\";\r\n    if (d === 1 || d === 21 || d === 31) suffix = \"st\";\r\n    else if (d === 2 || d === 22) suffix = \"nd\";\r\n    else if (d === 3 || d === 23) suffix = \"rd\";\r\n    return months[m - 1] + \" \" + d + suffix + \", \" + y;\r\n  }\r\n\r\n  function openEmailModal() {\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n\r\n    document.getElementById(\"kbkg-modal-address\").textContent = address;\r\n    document.getElementById(\"kbkg-modal-price\").textContent = formatMoney(price);\r\n    document.getElementById(\"kbkg-modal-type\").textContent = getPropertyTypeDisplay();\r\n    document.getElementById(\"kbkg-modal-date\").textContent = formatDateDisplay(dateVal);\r\n    var propertyVal = document.getElementById(\"kbkg-property-type\").value;\r\n    var strRow = document.getElementById(\"kbkg-modal-str-row\");\r\n    if (strTypes.indexOf(propertyVal) !== -1) {\r\n      strRow.style.display = \"flex\";\r\n      document.getElementById(\"kbkg-modal-str\").textContent = shortTerm ? \"Yes\" : \"No\";\r\n    } else {\r\n      strRow.style.display = \"none\";\r\n    }\r\n    document.getElementById(\"kbkg-modal-deductions\").textContent = document.getElementById(\"kbkg-deductions-value\").textContent;\r\n    document.getElementById(\"kbkg-modal-savings\").textContent = document.getElementById(\"kbkg-savings-value\").textContent;\r\n\r\n    document.getElementById(\"kbkg-modal-error\").style.display = \"none\";\r\n    document.getElementById(\"kbkg-modal-success\").style.display = \"none\";\r\n    modalSendBtn.disabled = false;\r\n    modalSendBtn.innerHTML = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg> Send Results';\r\n\r\n    modalOverlay.classList.add(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function closeEmailModal() {\r\n    modalOverlay.classList.remove(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function sendEmail() {\r\n    var fname = document.getElementById(\"kbkg-modal-fname\").value.trim();\r\n    var lname = document.getElementById(\"kbkg-modal-lname\").value.trim();\r\n    var email = document.getElementById(\"kbkg-modal-email\").value.trim();\r\n    var errorEl = document.getElementById(\"kbkg-modal-error\");\r\n    var successEl = document.getElementById(\"kbkg-modal-success\");\r\n\r\n    errorEl.style.display = \"none\";\r\n    successEl.style.display = \"none\";\r\n    document.getElementById(\"kbkg-modal-fname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-modal-lname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-modal-email\").classList.remove(\"kbkg-input-error\");\r\n\r\n    var hasErr = false;\r\n    if (!fname) { document.getElementById(\"kbkg-modal-fname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!lname) { document.getElementById(\"kbkg-modal-lname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!email || !/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(email)) { document.getElementById(\"kbkg-modal-email\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (hasErr) {\r\n      errorEl.textContent = \"Please fill in all fields with a valid email.\";\r\n      errorEl.style.display = \"block\";\r\n      return;\r\n    }\r\n\r\n    modalSendBtn.disabled = true;\r\n    modalSendBtn.textContent = \"Sending...\";\r\n\r\n    var payload = {\r\n      firstName: fname,\r\n      lastName: lname,\r\n      email: email,\r\n      address: document.getElementById(\"kbkg-modal-address\").textContent,\r\n      purchasePrice: document.getElementById(\"kbkg-modal-price\").textContent,\r\n      propertyType: document.getElementById(\"kbkg-modal-type\").textContent,\r\n      purchaseDate: document.getElementById(\"kbkg-modal-date\").textContent,\r\n      shortTermRental: document.getElementById(\"kbkg-modal-str\").textContent,\r\n      deductions: document.getElementById(\"kbkg-modal-deductions\").textContent,\r\n      savings: document.getElementById(\"kbkg-modal-savings\").textContent\r\n    };\r\n\r\n    var ajaxUrl = (typeof kbkg_estimator_ajax !== \"undefined\") ? kbkg_estimator_ajax.ajax_url : \"/wp-admin/admin-ajax.php\";\r\n\r\n    fetch(ajaxUrl, {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/x-www-form-urlencoded\" },\r\n      body: \"action=kbkg_send_estimate_email&\" + Object.keys(payload).map(function(k) {\r\n        return encodeURIComponent(k) + \"=\" + encodeURIComponent(payload[k]);\r\n      }).join(\"&\")\r\n    })\r\n    .then(function (response) { return response.json(); })\r\n    .then(function (data) {\r\n      if (data.success) {\r\n        successEl.textContent = \"Email sent successfully! Check your inbox.\";\r\n        successEl.style.display = \"block\";\r\n        modalSendBtn.textContent = \"Sent!\";\r\n      } else {\r\n        throw new Error(data.data || \"Failed to send email.\");\r\n      }\r\n    })\r\n    .catch(function (err) {\r\n      errorEl.textContent = err.message || \"Something went wrong. Please try again.\";\r\n      errorEl.style.display = \"block\";\r\n      modalSendBtn.disabled = false;\r\n      modalSendBtn.innerHTML = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg> Send Results';\r\n    });\r\n  }\r\n\r\n  if (emailBtn) emailBtn.addEventListener(\"click\", openEmailModal);\r\n  if (modalCloseBtn) modalCloseBtn.addEventListener(\"click\", closeEmailModal);\r\n  if (modalCancelBtn) modalCancelBtn.addEventListener(\"click\", closeEmailModal);\r\n  if (modalSendBtn) modalSendBtn.addEventListener(\"click\", sendEmail);\r\n  if (modalOverlay) modalOverlay.addEventListener(\"click\", function (e) {\r\n    if (e.target === modalOverlay) closeEmailModal();\r\n  });\r\n\r\n})();\r\n</script>\r\n\r\n","_margin":{"unit":"px","top":"0","right":"0","bottom":"60","left":"0","isLinked":false},"_title":"","_margin_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_margin_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_margin_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_margin_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_padding":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_padding_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_padding_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_padding_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_padding_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_element_width":"","_element_width_laptop":"","_element_width_tablet_extra":"","_element_width_tablet":"","_element_width_mobile":"","_element_custom_width":{"unit":"%","size":"","sizes":[]},"_element_custom_width_laptop":{"unit":"px","size":"","sizes":[]},"_element_custom_width_tablet_extra":{"unit":"px","size":"","sizes":[]},"_element_custom_width_tablet":{"unit":"px","size":"","sizes":[]},"_element_custom_width_mobile":{"unit":"px","size":"","sizes":[]},"_grid_column":"","_grid_column_laptop":"","_grid_column_tablet_extra":"","_grid_column_tablet":"","_grid_column_mobile":"","_grid_column_custom":"","_grid_column_custom_laptop":"","_grid_column_custom_tablet_extra":"","_grid_column_custom_tablet":"","_grid_column_custom_mobile":"","_grid_row":"","_grid_row_laptop":"","_grid_row_tablet_extra":"","_grid_row_tablet":"","_grid_row_mobile":"","_grid_row_custom":"","_grid_row_custom_laptop":"","_grid_row_custom_tablet_extra":"","_grid_row_custom_tablet":"","_grid_row_custom_mobile":"","_flex_align_self":"","_flex_align_self_laptop":"","_flex_align_self_tablet_extra":"","_flex_align_self_tablet":"","_flex_align_self_mobile":"","_flex_order":"","_flex_order_laptop":"","_flex_order_tablet_extra":"","_flex_order_tablet":"","_flex_order_mobile":"","_flex_order_custom":"","_flex_order_custom_laptop":"","_flex_order_custom_tablet_extra":"","_flex_order_custom_tablet":"","_flex_order_custom_mobile":"","_flex_size":"","_flex_size_laptop":"","_flex_size_tablet_extra":"","_flex_size_tablet":"","_flex_size_mobile":"","_flex_grow":1,"_flex_grow_laptop":"","_flex_grow_tablet_extra":"","_flex_grow_tablet":"","_flex_grow_mobile":"","_flex_shrink":1,"_flex_shrink_laptop":"","_flex_shrink_tablet_extra":"","_flex_shrink_tablet":"","_flex_shrink_mobile":"","_element_vertical_align":"","_element_vertical_align_laptop":"","_element_vertical_align_tablet_extra":"","_element_vertical_align_tablet":"","_element_vertical_align_mobile":"","_position":"","_offset_orientation_h":"start","_offset_x":{"unit":"px","size":0,"sizes":[]},"_offset_x_laptop":{"unit":"px","size":"","sizes":[]},"_offset_x_tablet_extra":{"unit":"px","size":"","sizes":[]},"_offset_x_tablet":{"unit":"px","size":"","sizes":[]},"_offset_x_mobile":{"unit":"px","size":"","sizes":[]},"_offset_x_end":{"unit":"px","size":0,"sizes":[]},"_offset_x_end_laptop":{"unit":"px","size":"","sizes":[]},"_offset_x_end_tablet_extra":{"unit":"px","size":"","sizes":[]},"_offset_x_end_tablet":{"unit":"px","size":"","sizes":[]},"_offset_x_end_mobile":{"unit":"px","size":"","sizes":[]},"_offset_orientation_v":"start","_offset_y":{"unit":"px","size":0,"sizes":[]},"_offset_y_laptop":{"unit":"px","size":"","sizes":[]},"_offset_y_tablet_extra":{"unit":"px","size":"","sizes":[]},"_offset_y_tablet":{"unit":"px","size":"","sizes":[]},"_offset_y_mobile":{"unit":"px","size":"","sizes":[]},"_offset_y_end":{"unit":"px","size":0,"sizes":[]},"_offset_y_end_laptop":{"unit":"px","size":"","sizes":[]},"_offset_y_end_tablet_extra":{"unit":"px","size":"","sizes":[]},"_offset_y_end_tablet":{"unit":"px","size":"","sizes":[]},"_offset_y_end_mobile":{"unit":"px","size":"","sizes":[]},"_z_index":"","_z_index_laptop":"","_z_index_tablet_extra":"","_z_index_tablet":"","_z_index_mobile":"","_element_id":"","_css_classes":"","e_display_conditions":"","_element_cache":"","motion_fx_motion_fx_scrolling":"","motion_fx_translateY_effect":"","motion_fx_translateY_direction":"","motion_fx_translateY_speed":{"unit":"px","size":4,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"motion_fx_translateX_effect":"","motion_fx_translateX_direction":"","motion_fx_translateX_speed":{"unit":"px","size":4,"sizes":[]},"motion_fx_translateX_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"motion_fx_opacity_effect":"","motion_fx_opacity_direction":"out-in","motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]},"motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":20,"end":80}},"motion_fx_blur_effect":"","motion_fx_blur_direction":"out-in","motion_fx_blur_level":{"unit":"px","size":7,"sizes":[]},"motion_fx_blur_range":{"unit":"%","size":"","sizes":{"start":20,"end":80}},"motion_fx_rotateZ_effect":"","motion_fx_rotateZ_direction":"","motion_fx_rotateZ_speed":{"unit":"px","size":1,"sizes":[]},"motion_fx_rotateZ_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"motion_fx_scale_effect":"","motion_fx_scale_direction":"out-in","motion_fx_scale_speed":{"unit":"px","size":4,"sizes":[]},"motion_fx_scale_range":{"unit":"%","size":"","sizes":{"start":20,"end":80}},"motion_fx_transform_origin_x":"center","motion_fx_transform_origin_y":"center","motion_fx_devices":["desktop","laptop","tablet_extra","tablet","mobile"],"motion_fx_range":"","motion_fx_motion_fx_mouse":"","motion_fx_mouseTrack_effect":"","motion_fx_mouseTrack_direction":"","motion_fx_mouseTrack_speed":{"unit":"px","size":1,"sizes":[]},"motion_fx_tilt_effect":"","motion_fx_tilt_direction":"","motion_fx_tilt_speed":{"unit":"px","size":4,"sizes":[]},"handle_motion_fx_asset_loading":"","sticky":"","sticky_on":["desktop","laptop","tablet_extra","tablet","mobile"],"sticky_offset":0,"sticky_offset_laptop":"","sticky_offset_tablet_extra":"","sticky_offset_tablet":"","sticky_offset_mobile":"","sticky_effects_offset":0,"sticky_effects_offset_laptop":"","sticky_effects_offset_tablet_extra":"","sticky_effects_offset_tablet":"","sticky_effects_offset_mobile":"","sticky_anchor_link_offset":0,"sticky_anchor_link_offset_laptop":"","sticky_anchor_link_offset_tablet_extra":"","sticky_anchor_link_offset_tablet":"","sticky_anchor_link_offset_mobile":"","sticky_parent":"","_animation":"","_animation_laptop":"","_animation_tablet_extra":"","_animation_tablet":"","_animation_mobile":"","animation_duration":"","_animation_delay":"","_transform_rotate_popover":"","_transform_rotateZ_effect":{"unit":"px","size":"","sizes":[]},"_transform_rotateZ_effect_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_rotate_3d":"","_transform_rotateX_effect":{"unit":"px","size":"","sizes":[]},"_transform_rotateX_effect_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect":{"unit":"px","size":"","sizes":[]},"_transform_rotateY_effect_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_perspective_effect":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_translate_popover":"","_transform_translateX_effect":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scale_popover":"","_transform_keep_proportions":"yes","_transform_scale_effect":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_skew_popover":"","_transform_skewX_effect":{"unit":"px","size":"","sizes":[]},"_transform_skewX_effect_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect":{"unit":"px","size":"","sizes":[]},"_transform_skewY_effect_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_flipX_effect":"","_transform_flipY_effect":"","_transform_rotate_popover_hover":"","_transform_rotateZ_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_rotateZ_effect_hover_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_hover_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_hover_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_hover_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_rotate_3d_hover":"","_transform_rotateX_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_rotateX_effect_hover_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_hover_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_hover_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_hover_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_rotateY_effect_hover_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_hover_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_hover_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_hover_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_perspective_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_translate_popover_hover":"","_transform_translateX_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scale_popover_hover":"","_transform_keep_proportions_hover":"yes","_transform_scale_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_skew_popover_hover":"","_transform_skewX_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_skewX_effect_hover_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_hover_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_hover_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_hover_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_skewY_effect_hover_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_hover_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_hover_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_hover_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_flipX_effect_hover":"","_transform_flipY_effect_hover":"","_transform_transition_hover":{"unit":"px","size":"","sizes":[]},"motion_fx_transform_x_anchor_point":"","motion_fx_transform_x_anchor_point_laptop":"","motion_fx_transform_x_anchor_point_tablet_extra":"","motion_fx_transform_x_anchor_point_tablet":"","motion_fx_transform_x_anchor_point_mobile":"","motion_fx_transform_y_anchor_point":"","motion_fx_transform_y_anchor_point_laptop":"","motion_fx_transform_y_anchor_point_tablet_extra":"","motion_fx_transform_y_anchor_point_tablet":"","motion_fx_transform_y_anchor_point_mobile":"","_background_background":"","_background_color":"","_background_color_stop":{"unit":"%","size":0,"sizes":[]},"_background_color_stop_laptop":{"unit":"%","size":"","sizes":[]},"_background_color_stop_tablet_extra":{"unit":"%","size":"","sizes":[]},"_background_color_stop_tablet":{"unit":"%","size":"","sizes":[]},"_background_color_stop_mobile":{"unit":"%","size":"","sizes":[]},"_background_color_b":"#f2295b","_background_color_b_stop":{"unit":"%","size":100,"sizes":[]},"_background_color_b_stop_laptop":{"unit":"%","size":"","sizes":[]},"_background_color_b_stop_tablet_extra":{"unit":"%","size":"","sizes":[]},"_background_color_b_stop_tablet":{"unit":"%","size":"","sizes":[]},"_background_color_b_stop_mobile":{"unit":"%","size":"","sizes":[]},"_background_gradient_type":"linear","_background_gradient_angle":{"unit":"deg","size":180,"sizes":[]},"_background_gradient_angle_laptop":{"unit":"deg","size":"","sizes":[]},"_background_gradient_angle_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_background_gradient_angle_tablet":{"unit":"deg","size":"","sizes":[]},"_background_gradient_angle_mobile":{"unit":"deg","size":"","sizes":[]},"_background_gradient_position":"center center","_background_gradient_position_laptop":"","_background_gradient_position_tablet_extra":"","_background_gradient_position_tablet":"","_background_gradient_position_mobile":"","_background_image":{"url":"","id":"","size":""},"_background_image_laptop":{"url":"","id":"","size":""},"_background_image_tablet_extra":{"url":"","id":"","size":""},"_background_image_tablet":{"url":"","id":"","size":""},"_background_image_mobile":{"url":"","id":"","size":""},"_background_position":"","_background_position_laptop":"","_background_position_tablet_extra":"","_background_position_tablet":"","_background_position_mobile":"","_background_xpos":{"unit":"px","size":0,"sizes":[]},"_background_xpos_laptop":{"unit":"px","size":"","sizes":[]},"_background_xpos_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_xpos_tablet":{"unit":"px","size":0,"sizes":[]},"_background_xpos_mobile":{"unit":"px","size":0,"sizes":[]},"_background_ypos":{"unit":"px","size":0,"sizes":[]},"_background_ypos_laptop":{"unit":"px","size":"","sizes":[]},"_background_ypos_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_ypos_tablet":{"unit":"px","size":0,"sizes":[]},"_background_ypos_mobile":{"unit":"px","size":0,"sizes":[]},"_background_attachment":"","_background_repeat":"","_background_repeat_laptop":"","_background_repeat_tablet_extra":"","_background_repeat_tablet":"","_background_repeat_mobile":"","_background_size":"","_background_size_laptop":"","_background_size_tablet_extra":"","_background_size_tablet":"","_background_size_mobile":"","_background_bg_width":{"unit":"%","size":100,"sizes":[]},"_background_bg_width_laptop":{"unit":"px","size":"","sizes":[]},"_background_bg_width_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_bg_width_tablet":{"unit":"px","size":"","sizes":[]},"_background_bg_width_mobile":{"unit":"px","size":"","sizes":[]},"_background_video_link":"","_background_video_start":"","_background_video_end":"","_background_play_once":"","_background_play_on_mobile":"","_background_privacy_mode":"","_background_video_fallback":{"url":"","id":"","size":""},"_background_slideshow_gallery":[],"_background_slideshow_loop":"yes","_background_slideshow_slide_duration":5000,"_background_slideshow_slide_transition":"fade","_background_slideshow_transition_duration":500,"_background_slideshow_background_size":"","_background_slideshow_background_size_laptop":"","_background_slideshow_background_size_tablet_extra":"","_background_slideshow_background_size_tablet":"","_background_slideshow_background_size_mobile":"","_background_slideshow_background_position":"","_background_slideshow_background_position_laptop":"","_background_slideshow_background_position_tablet_extra":"","_background_slideshow_background_position_tablet":"","_background_slideshow_background_position_mobile":"","_background_slideshow_lazyload":"","_background_slideshow_ken_burns":"","_background_slideshow_ken_burns_zoom_direction":"in","_background_hover_background":"","_background_hover_color":"","_background_hover_color_stop":{"unit":"%","size":0,"sizes":[]},"_background_hover_color_stop_laptop":{"unit":"%","size":"","sizes":[]},"_background_hover_color_stop_tablet_extra":{"unit":"%","size":"","sizes":[]},"_background_hover_color_stop_tablet":{"unit":"%","size":"","sizes":[]},"_background_hover_color_stop_mobile":{"unit":"%","size":"","sizes":[]},"_background_hover_color_b":"#f2295b","_background_hover_color_b_stop":{"unit":"%","size":100,"sizes":[]},"_background_hover_color_b_stop_laptop":{"unit":"%","size":"","sizes":[]},"_background_hover_color_b_stop_tablet_extra":{"unit":"%","size":"","sizes":[]},"_background_hover_color_b_stop_tablet":{"unit":"%","size":"","sizes":[]},"_background_hover_color_b_stop_mobile":{"unit":"%","size":"","sizes":[]},"_background_hover_gradient_type":"linear","_background_hover_gradient_angle":{"unit":"deg","size":180,"sizes":[]},"_background_hover_gradient_angle_laptop":{"unit":"deg","size":"","sizes":[]},"_background_hover_gradient_angle_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_background_hover_gradient_angle_tablet":{"unit":"deg","size":"","sizes":[]},"_background_hover_gradient_angle_mobile":{"unit":"deg","size":"","sizes":[]},"_background_hover_gradient_position":"center center","_background_hover_gradient_position_laptop":"","_background_hover_gradient_position_tablet_extra":"","_background_hover_gradient_position_tablet":"","_background_hover_gradient_position_mobile":"","_background_hover_image":{"url":"","id":"","size":""},"_background_hover_image_laptop":{"url":"","id":"","size":""},"_background_hover_image_tablet_extra":{"url":"","id":"","size":""},"_background_hover_image_tablet":{"url":"","id":"","size":""},"_background_hover_image_mobile":{"url":"","id":"","size":""},"_background_hover_position":"","_background_hover_position_laptop":"","_background_hover_position_tablet_extra":"","_background_hover_position_tablet":"","_background_hover_position_mobile":"","_background_hover_xpos":{"unit":"px","size":0,"sizes":[]},"_background_hover_xpos_laptop":{"unit":"px","size":"","sizes":[]},"_background_hover_xpos_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_hover_xpos_tablet":{"unit":"px","size":0,"sizes":[]},"_background_hover_xpos_mobile":{"unit":"px","size":0,"sizes":[]},"_background_hover_ypos":{"unit":"px","size":0,"sizes":[]},"_background_hover_ypos_laptop":{"unit":"px","size":"","sizes":[]},"_background_hover_ypos_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_hover_ypos_tablet":{"unit":"px","size":0,"sizes":[]},"_background_hover_ypos_mobile":{"unit":"px","size":0,"sizes":[]},"_background_hover_attachment":"","_background_hover_repeat":"","_background_hover_repeat_laptop":"","_background_hover_repeat_tablet_extra":"","_background_hover_repeat_tablet":"","_background_hover_repeat_mobile":"","_background_hover_size":"","_background_hover_size_laptop":"","_background_hover_size_tablet_extra":"","_background_hover_size_tablet":"","_background_hover_size_mobile":"","_background_hover_bg_width":{"unit":"%","size":100,"sizes":[]},"_background_hover_bg_width_laptop":{"unit":"px","size":"","sizes":[]},"_background_hover_bg_width_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_hover_bg_width_tablet":{"unit":"px","size":"","sizes":[]},"_background_hover_bg_width_mobile":{"unit":"px","size":"","sizes":[]},"_background_hover_video_link":"","_background_hover_video_start":"","_background_hover_video_end":"","_background_hover_play_once":"","_background_hover_play_on_mobile":"","_background_hover_privacy_mode":"","_background_hover_video_fallback":{"url":"","id":"","size":""},"_background_hover_slideshow_gallery":[],"_background_hover_slideshow_loop":"yes","_background_hover_slideshow_slide_duration":5000,"_background_hover_slideshow_slide_transition":"fade","_background_hover_slideshow_transition_duration":500,"_background_hover_slideshow_background_size":"","_background_hover_slideshow_background_size_laptop":"","_background_hover_slideshow_background_size_tablet_extra":"","_background_hover_slideshow_background_size_tablet":"","_background_hover_slideshow_background_size_mobile":"","_background_hover_slideshow_background_position":"","_background_hover_slideshow_background_position_laptop":"","_background_hover_slideshow_background_position_tablet_extra":"","_background_hover_slideshow_background_position_tablet":"","_background_hover_slideshow_background_position_mobile":"","_background_hover_slideshow_lazyload":"","_background_hover_slideshow_ken_burns":"","_background_hover_slideshow_ken_burns_zoom_direction":"in","_background_hover_transition":{"unit":"px","size":"","sizes":[]},"_border_border":"","_border_width":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_width_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_width_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_width_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_width_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_color":"","_border_radius":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_box_shadow_box_shadow_type":"","_box_shadow_box_shadow":{"horizontal":0,"vertical":0,"blur":10,"spread":0,"color":"rgba(0,0,0,0.5)"},"_box_shadow_box_shadow_position":" ","_border_hover_border":"","_border_hover_width":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_hover_width_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_hover_width_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_hover_width_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_hover_width_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_hover_color":"","_border_radius_hover":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_hover_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_hover_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_hover_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_hover_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_box_shadow_hover_box_shadow_type":"","_box_shadow_hover_box_shadow":{"horizontal":0,"vertical":0,"blur":10,"spread":0,"color":"rgba(0,0,0,0.5)"},"_box_shadow_hover_box_shadow_position":" ","_border_hover_transition":{"unit":"px","size":"","sizes":[]},"_mask_switch":"","_mask_shape":"circle","_mask_image":{"url":"","id":"","size":""},"_mask_image_laptop":{"url":"","id":"","size":""},"_mask_image_tablet_extra":{"url":"","id":"","size":""},"_mask_image_tablet":{"url":"","id":"","size":""},"_mask_image_mobile":{"url":"","id":"","size":""},"_mask_size":"contain","_mask_size_laptop":"","_mask_size_tablet_extra":"","_mask_size_tablet":"","_mask_size_mobile":"","_mask_size_scale":{"unit":"%","size":100,"sizes":[]},"_mask_size_scale_laptop":{"unit":"px","size":"","sizes":[]},"_mask_size_scale_tablet_extra":{"unit":"px","size":"","sizes":[]},"_mask_size_scale_tablet":{"unit":"px","size":"","sizes":[]},"_mask_size_scale_mobile":{"unit":"px","size":"","sizes":[]},"_mask_position":"center center","_mask_position_laptop":"","_mask_position_tablet_extra":"","_mask_position_tablet":"","_mask_position_mobile":"","_mask_position_x":{"unit":"%","size":0,"sizes":[]},"_mask_position_x_laptop":{"unit":"px","size":"","sizes":[]},"_mask_position_x_tablet_extra":{"unit":"px","size":"","sizes":[]},"_mask_position_x_tablet":{"unit":"px","size":"","sizes":[]},"_mask_position_x_mobile":{"unit":"px","size":"","sizes":[]},"_mask_position_y":{"unit":"%","size":0,"sizes":[]},"_mask_position_y_laptop":{"unit":"px","size":"","sizes":[]},"_mask_position_y_tablet_extra":{"unit":"px","size":"","sizes":[]},"_mask_position_y_tablet":{"unit":"px","size":"","sizes":[]},"_mask_position_y_mobile":{"unit":"px","size":"","sizes":[]},"_mask_repeat":"no-repeat","_mask_repeat_laptop":"","_mask_repeat_tablet_extra":"","_mask_repeat_tablet":"","_mask_repeat_mobile":"","hide_desktop":"","hide_laptop":"","hide_tablet_extra":"","hide_tablet":"","hide_mobile":"","_attributes":"","custom_css":""},"defaultEditSettings":{"defaultEditRoute":"content"},"interactions":{},"elements":[],"widgetType":"html","htmlCache":"\t\t\t<!--\r\n  KBKG Tax Savings Estimator — Redesigned Layout\r\n  ================================================\r\n  Drop this into a single Elementor \"Custom HTML\" widget,\r\n  replacing the entire current estimator section.\r\n  Calls the API directly — no dependency on KbkgBasicEstimator library.\r\n-->\r\n\r\n<!-- ===================== CSS ===================== -->\r\n<style>\r\n/* ---------- Container ---------- */\r\n.kbkg-estimator-wrapper {\r\n  max-width: 100% !important;\r\n  margin: 0 auto !important;\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06) !important;\r\n  padding: 48px 48px 40px !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper *,\r\n.kbkg-estimator-wrapper *::before,\r\n.kbkg-estimator-wrapper *::after {\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper h2.kbkg-estimator-title {\r\n  text-align: center !important;\r\n  font-size: 24px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 28px !important;\r\n  padding: 0 !important;\r\n  line-height: 1.3 !important;\r\n  letter-spacing: -0.01em !important;\r\n}\r\n\r\n.kbkg-estimator-body {\r\n  display: flex !important;\r\n  gap: 40px !important;\r\n  align-items: flex-start !important;\r\n  border: none !important;\r\n}\r\n\r\n/* (vertical divider merged into main .kbkg-estimator-results rule below) */\r\n\r\n/* ---------- Force ALL SVGs inside our wrapper to respect size ---------- */\r\n.kbkg-estimator-wrapper svg {\r\n  max-width: 100% !important;\r\n  height: auto !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper svg.kbkg-icon {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  min-height: 18px !important;\r\n  max-width: 18px !important;\r\n  max-height: 18px !important;\r\n  flex-shrink: 0 !important;\r\n  color: #475569 !important;\r\n  display: inline-block !important;\r\n  vertical-align: middle !important;\r\n}\r\n\r\n/* ---------- Left Column (Form) ---------- */\r\n.kbkg-estimator-form {\r\n  flex: 1 !important;\r\n  min-width: 0 !important;\r\n}\r\n\r\n.kbkg-field-group {\r\n  margin-bottom: 16px !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-label {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 6px !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n  line-height: 1.4 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input,\r\n.kbkg-estimator-wrapper .kbkg-field-select {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n  line-height: 1.4 !important;\r\n  height: auto !important;\r\n  margin: 0 !important;\r\n  -webkit-appearance: none !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input:focus,\r\n.kbkg-estimator-wrapper .kbkg-field-select:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n/* Dollar prefix input */\r\n.kbkg-input-with-prefix {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-input-prefix {\r\n  position: absolute !important;\r\n  left: 14px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  font-size: 15px !important;\r\n  color: #94a3b8 !important;\r\n  pointer-events: none !important;\r\n  z-index: 1 !important;\r\n}\r\n\r\n.kbkg-input-with-prefix .kbkg-field-input {\r\n  padding-left: 30px !important;\r\n}\r\n\r\n/* Date input wrapper */\r\n.kbkg-input-with-icon {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper svg.kbkg-input-icon {\r\n  position: absolute !important;\r\n  left: 14px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  width: 16px !important;\r\n  height: 16px !important;\r\n  min-width: 16px !important;\r\n  max-width: 16px !important;\r\n  color: #94a3b8 !important;\r\n  pointer-events: none !important;\r\n  z-index: 1 !important;\r\n}\r\n\r\n.kbkg-input-with-icon .kbkg-field-input {\r\n  padding-left: 38px !important;\r\n}\r\n\r\n/* Date input wrapper with calendar button */\r\n.kbkg-date-wrapper {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper input[type=\"text\"].kbkg-date-input {\r\n  cursor: text !important;\r\n  padding-right: 40px !important;\r\n}\r\n\r\n.kbkg-date-cal-btn {\r\n  position: absolute !important;\r\n  right: 8px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  cursor: pointer !important;\r\n  padding: 4px !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-date-cal-btn svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n  color: #94a3b8 !important;\r\n  stroke: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-date-cal-btn:hover svg {\r\n  color: #475569 !important;\r\n  stroke: #475569 !important;\r\n}\r\n\r\n.kbkg-field-error {\r\n  font-size: 11px !important;\r\n  color: #dc2626 !important;\r\n  margin-top: 4px !important;\r\n  display: none !important;\r\n}\r\n\r\n.kbkg-field-error.kbkg-visible {\r\n  display: block !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input.kbkg-input-error,\r\n.kbkg-estimator-wrapper .kbkg-field-select.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n/* ---------- Toggle row ---------- */\r\n.kbkg-toggle-row {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: space-between !important;\r\n  margin-bottom: 24px !important;\r\n  flex-wrap: nowrap !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-toggle-label {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 6px !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  line-height: 1.4 !important;\r\n  flex-shrink: 1 !important;\r\n  min-width: 0 !important;\r\n}\r\n\r\n.kbkg-toggle-control {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 8px !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.kbkg-toggle {\r\n  position: relative !important;\r\n  width: 44px !important;\r\n  min-width: 44px !important;\r\n  height: 24px !important;\r\n  cursor: pointer !important;\r\n  display: inline-block !important;\r\n}\r\n\r\n.kbkg-toggle input {\r\n  opacity: 0 !important;\r\n  width: 0 !important;\r\n  height: 0 !important;\r\n  position: absolute !important;\r\n}\r\n\r\n.kbkg-toggle-slider {\r\n  position: absolute !important;\r\n  inset: 0 !important;\r\n  background: #cbd5e1 !important;\r\n  border-radius: 12px !important;\r\n  transition: background 0.2s !important;\r\n}\r\n\r\n.kbkg-toggle-slider::before {\r\n  content: '' !important;\r\n  position: absolute !important;\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  left: 3px !important;\r\n  top: 3px !important;\r\n  background: #ffffff !important;\r\n  border-radius: 50% !important;\r\n  transition: transform 0.2s !important;\r\n}\r\n\r\n.kbkg-toggle input:checked + .kbkg-toggle-slider {\r\n  background: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-toggle input:checked + .kbkg-toggle-slider::before {\r\n  transform: translateX(20px) !important;\r\n}\r\n\r\n.kbkg-toggle-text {\r\n  font-size: 14px !important;\r\n  color: #64748b !important;\r\n  min-width: 28px !important;\r\n}\r\n\r\n/* ---------- Submit button ---------- */\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s !important;\r\n  line-height: 1.4 !important;\r\n  text-transform: none !important;\r\n  letter-spacing: normal !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:active {\r\n  background: #0f2035 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n/* ---------- Right Column (Results) ---------- */\r\n.kbkg-estimator-wrapper .kbkg-estimator-results {\r\n  flex: 1 !important;\r\n  min-width: 0 !important;\r\n  display: flex !important;\r\n  flex-direction: column !important;\r\n  gap: 20px !important;\r\n  padding-top: 8px !important;\r\n  border-left: 1px solid #e2e8f0 !important;\r\n  padding-left: 40px !important;\r\n}\r\n\r\n.kbkg-result-card {\r\n  border: 2px solid #16a34a !important;\r\n  border-radius: 12px !important;\r\n  padding: 20px 24px !important;\r\n  background: #f0fdf4 !important;\r\n}\r\n\r\n.kbkg-result-header {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 4px !important;\r\n}\r\n\r\n.kbkg-result-icon {\r\n  width: 36px !important;\r\n  min-width: 36px !important;\r\n  height: 36px !important;\r\n  min-height: 36px !important;\r\n  border-radius: 50% !important;\r\n  background: #d1e7dd !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.kbkg-result-icon svg {\r\n  width: 16px !important;\r\n  height: 16px !important;\r\n  min-width: 16px !important;\r\n  max-width: 16px !important;\r\n  color: #16a34a !important;\r\n  stroke: #16a34a !important;\r\n}\r\n\r\n.kbkg-result-label {\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #16a34a !important;\r\n  line-height: 1.3 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-result-value {\r\n  font-size: 24px !important;\r\n  font-weight: 800 !important;\r\n  color: #16a34a !important;\r\n  margin: 6px 0 4px !important;\r\n  line-height: 1.2 !important;\r\n  padding: 0 !important;\r\n}\r\n\r\n.kbkg-result-description {\r\n  font-size: 11px !important;\r\n  color: #64748b !important;\r\n  line-height: 1.5 !important;\r\n}\r\n\r\n.kbkg-result-assumption {\r\n  font-size: 12px !important;\r\n  color: #94a3b8 !important;\r\n  font-style: italic !important;\r\n  margin-top: 2px !important;\r\n}\r\n\r\n.kbkg-results-helper {\r\n  text-align: center !important;\r\n  font-size: 14px !important;\r\n  color: #94a3b8 !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n/* ---------- Error ---------- */\r\n.kbkg-disclaimer {\r\n  font-size: 12px !important;\r\n  color: #94a3b8 !important;\r\n  line-height: 1.5 !important;\r\n  margin-top: 0 !important;\r\n  display: none;\r\n}\r\n\r\n/* ---------- Email My Estimate Button ---------- */\r\n.kbkg-email-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e293b !important;\r\n  background: #ffffff !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s, border-color 0.2s !important;\r\n  display: none;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 8px !important;\r\n}\r\n\r\n.kbkg-email-btn:hover {\r\n  background: #f8fafc !important;\r\n  border-color: #cbd5e1 !important;\r\n}\r\n\r\n.kbkg-email-btn svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n}\r\n\r\n/* ---------- Email Modal ---------- */\r\n.kbkg-modal-overlay {\r\n  display: none;\r\n  position: fixed !important;\r\n  inset: 0 !important;\r\n  background: rgba(0, 0, 0, 0.5) !important;\r\n  z-index: 99999 !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-modal-overlay.kbkg-modal-open {\r\n  display: flex !important;\r\n}\r\n\r\n.kbkg-modal {\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  padding: 28px !important;\r\n  max-width: 480px !important;\r\n  width: 90% !important;\r\n  max-height: none !important;\r\n  overflow-y: visible !important;\r\n  position: relative !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n}\r\n\r\n.kbkg-modal-close {\r\n  position: absolute !important;\r\n  top: 16px !important;\r\n  right: 16px !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  font-size: 24px !important;\r\n  color: #94a3b8 !important;\r\n  cursor: pointer !important;\r\n  line-height: 1 !important;\r\n  padding: 4px !important;\r\n}\r\n\r\n.kbkg-modal-close:hover {\r\n  color: #475569 !important;\r\n}\r\n\r\n.kbkg-modal-title {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 10px !important;\r\n  font-size: 18px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 6px !important;\r\n}\r\n\r\n.kbkg-modal-title svg {\r\n  width: 24px !important;\r\n  height: 24px !important;\r\n  min-width: 24px !important;\r\n  max-width: 24px !important;\r\n  color: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-modal-subtitle {\r\n  font-size: 13px !important;\r\n  color: #64748b !important;\r\n  margin: 0 0 16px !important;\r\n  line-height: 1.5 !important;\r\n}\r\n\r\n.kbkg-modal-summary {\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 10px !important;\r\n  padding: 16px 20px !important;\r\n  margin-bottom: 20px !important;\r\n}\r\n\r\n.kbkg-modal-summary-title {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 8px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e3a5f !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-modal-summary-title svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n  color: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-modal-summary-row {\r\n  display: flex !important;\r\n  justify-content: space-between !important;\r\n  padding: 4px 0 !important;\r\n  font-size: 13px !important;\r\n}\r\n\r\n.kbkg-modal-summary-label {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-modal-summary-value {\r\n  color: #1e293b !important;\r\n  font-weight: 500 !important;\r\n}\r\n\r\n.kbkg-modal-summary-value.kbkg-green {\r\n  color: #16a34a !important;\r\n  font-weight: 600 !important;\r\n}\r\n\r\n.kbkg-modal-summary-divider {\r\n  border: none !important;\r\n  border-top: 1px solid #e2e8f0 !important;\r\n  margin: 10px 0 !important;\r\n}\r\n\r\n.kbkg-modal-form-row {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-modal-form-group {\r\n  flex: 1 !important;\r\n}\r\n\r\n.kbkg-modal-form-group label {\r\n  display: block !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n}\r\n\r\n.kbkg-modal-form-group input {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-modal-form-group input:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-modal-form-group input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-modal-form-group input.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n.kbkg-modal-buttons {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-top: 16px !important;\r\n}\r\n\r\n.kbkg-modal-cancel-btn {\r\n  flex: 1 !important;\r\n  padding: 12px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e293b !important;\r\n  background: #ffffff !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 6px !important;\r\n}\r\n\r\n.kbkg-modal-cancel-btn:hover {\r\n  background: #f8fafc !important;\r\n}\r\n\r\n.kbkg-modal-send-btn {\r\n  flex: 1 !important;\r\n  padding: 12px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 6px !important;\r\n}\r\n\r\n.kbkg-modal-send-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-modal-send-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n.kbkg-modal-disclaimer {\r\n  font-size: 10px !important;\r\n  color: #94a3b8 !important;\r\n  line-height: 1.5 !important;\r\n  margin-top: 12px !important;\r\n  text-align: center !important;\r\n}\r\n\r\n.kbkg-modal-error {\r\n  font-size: 13px !important;\r\n  color: #dc2626 !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n.kbkg-modal-success {\r\n  font-size: 14px !important;\r\n  color: #16a34a !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n.kbkg-error-msg {\r\n  text-align: center !important;\r\n  font-size: 14px !important;\r\n  color: #dc2626 !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n/* ---------- Contact Modal (pre-results) ---------- */\r\n.kbkg-contact-modal-overlay {\r\n  display: none;\r\n  position: fixed !important;\r\n  inset: 0 !important;\r\n  background: rgba(0, 0, 0, 0.5) !important;\r\n  z-index: 99998 !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-contact-modal-overlay.kbkg-modal-open {\r\n  display: flex !important;\r\n}\r\n\r\n.kbkg-contact-modal {\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  padding: 28px !important;\r\n  max-width: 480px !important;\r\n  width: 90% !important;\r\n  position: relative !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n}\r\n\r\n.kbkg-contact-modal-close {\r\n  position: absolute !important;\r\n  top: 16px !important;\r\n  right: 16px !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  font-size: 24px !important;\r\n  color: #94a3b8 !important;\r\n  cursor: pointer !important;\r\n  line-height: 1 !important;\r\n  padding: 4px !important;\r\n}\r\n\r\n.kbkg-contact-modal-close:hover {\r\n  color: #475569 !important;\r\n}\r\n\r\n.kbkg-contact-modal-title {\r\n  font-size: 20px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 16px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info {\r\n  background: #f8fafc !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 10px !important;\r\n  padding: 16px 20px !important;\r\n  margin-bottom: 20px !important;\r\n  display: flex !important;\r\n  align-items: flex-start !important;\r\n  gap: 12px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info svg {\r\n  width: 20px !important;\r\n  height: 20px !important;\r\n  min-width: 20px !important;\r\n  max-width: 20px !important;\r\n  color: #1e3a5f !important;\r\n  margin-top: 2px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info p {\r\n  font-size: 13px !important;\r\n  color: #475569 !important;\r\n  line-height: 1.5 !important;\r\n  margin: 0 !important;\r\n}\r\n\r\n.kbkg-contact-form-row {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-contact-form-group {\r\n  flex: 1 !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-contact-form-group label {\r\n  display: block !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n}\r\n\r\n.kbkg-contact-form-group input,\r\n.kbkg-contact-form-group select {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-contact-form-group input:focus,\r\n.kbkg-contact-form-group select:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-contact-form-group input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-contact-form-group input.kbkg-input-error,\r\n.kbkg-contact-form-group select.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n.kbkg-contact-error {\r\n  font-size: 13px !important;\r\n  color: #dc2626 !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n/* ---------- Responsive ---------- */\r\n@media (max-width: 768px) {\r\n  .kbkg-estimator-wrapper {\r\n    padding: 28px 20px 24px !important;\r\n  }\r\n\r\n  .kbkg-estimator-wrapper h2.kbkg-estimator-title {\r\n    font-size: 24px !important;\r\n  }\r\n\r\n  .kbkg-estimator-body {\r\n    flex-direction: column !important;\r\n    gap: 32px !important;\r\n  }\r\n\r\n  .kbkg-estimator-wrapper .kbkg-result-value {\r\n    font-size: 20px !important;\r\n  }\r\n}\r\n</style>\r\n\r\n<!-- ===================== HTML ===================== -->\r\n<div class=\"kbkg-estimator-wrapper\">\r\n  <h2 class=\"kbkg-estimator-title\">Estimate Your First Year Tax Savings</h2>\r\n\r\n  <div class=\"kbkg-estimator-body\">\r\n    <!-- LEFT: Form -->\r\n    <div class=\"kbkg-estimator-form\">\r\n\r\n      <!-- Property Address -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z\"/><circle cx=\"12\" cy=\"10\" r=\"3\"/></svg>\r\n          Property Address\r\n        </label>\r\n        <input type=\"text\" class=\"kbkg-field-input\" id=\"kbkg-address\" placeholder=\"123 Main Street, City, State\" autocomplete=\"street-address\">\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-address-error\">Please enter a property address.</div>\r\n      </div>\r\n\r\n      <!-- Purchase Price -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"12\" y1=\"1\" x2=\"12\" y2=\"23\"/><path d=\"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6\"/></svg>\r\n          Purchase Price (Less Land)\r\n        </label>\r\n        <div class=\"kbkg-input-with-prefix\">\r\n          <span class=\"kbkg-input-prefix\">$</span>\r\n          <input type=\"text\" class=\"kbkg-field-input\" id=\"kbkg-price\" placeholder=\"1,500,000\" inputmode=\"numeric\">\r\n        </div>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-price-error\">Please enter a valid purchase price.</div>\r\n      </div>\r\n\r\n      <!-- Date of Purchase -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"/><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"/><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"/><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"/></svg>\r\n          Date of Purchase\r\n        </label>\r\n        <div class=\"kbkg-date-wrapper\">\r\n          <input type=\"text\" class=\"kbkg-field-input kbkg-date-input\" id=\"kbkg-date\" placeholder=\"MM/DD/YYYY\" maxlength=\"10\" autocomplete=\"off\" data-lpignore=\"true\" data-form-type=\"other\">\r\n          <button type=\"button\" class=\"kbkg-date-cal-btn\" id=\"kbkg-date-cal-btn\" title=\"Open calendar\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"/><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"/><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"/><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"/></svg>\r\n          </button>\r\n          <input type=\"date\" id=\"kbkg-date-hidden\" style=\"position:absolute;opacity:0;width:0;height:0;overflow:hidden;pointer-events:none;\" tabindex=\"-1\" aria-hidden=\"true\">\r\n        </div>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-date-error\">Please enter a valid date (MM/DD/YYYY).</div>\r\n      </div>\r\n\r\n      <!-- Property Type -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"4\" y=\"2\" width=\"16\" height=\"20\" rx=\"2\" ry=\"2\"/><line x1=\"9\" y1=\"6\" x2=\"9\" y2=\"6.01\"/><line x1=\"15\" y1=\"6\" x2=\"15\" y2=\"6.01\"/><line x1=\"9\" y1=\"10\" x2=\"9\" y2=\"10.01\"/><line x1=\"15\" y1=\"10\" x2=\"15\" y2=\"10.01\"/><line x1=\"9\" y1=\"14\" x2=\"9\" y2=\"14.01\"/><line x1=\"15\" y1=\"14\" x2=\"15\" y2=\"14.01\"/><line x1=\"9\" y1=\"18\" x2=\"15\" y2=\"18\"/></svg>\r\n          Property Type\r\n        </label>\r\n        <select class=\"kbkg-field-select\" id=\"kbkg-property-type\">\r\n          <option value=\"\" disabled selected>Select property type...</option>\r\n          <option value=\"Single Family Home\">Single Family Home</option>\r\n          <option value=\"Townhouse\">Townhouse</option>\r\n          <option value=\"Condo - High Rise\">Condo - High Rise</option>\r\n          <option value=\"Condo - SFH\">Condo - SFH</option>\r\n          <option value=\"ADU - Freestanding\">ADU - Freestanding</option>\r\n          <option value=\"ADU - Interior Conversion\">ADU - Interior Conversion</option>\r\n          <option value=\"Duplex\">Duplex</option>\r\n          <option value=\"Triplex\">Triplex</option>\r\n          <option value=\"Fourplex\">Fourplex</option>\r\n          <option value=\"Apartment\">Apartment</option>\r\n          <option value=\"Assisted Living\">Assisted Living</option>\r\n          <option value=\"Auto Dealership\">Auto Dealership</option>\r\n          <option value=\"Bank, Branch Office\">Bank, Branch Office</option>\r\n          <option value=\"Car / Truck Repair\">Car / Truck Repair</option>\r\n          <option value=\"Car Wash\">Car Wash</option>\r\n          <option value=\"Casino\">Casino</option>\r\n          <option value=\"Cold Storage\">Cold Storage</option>\r\n          <option value=\"Distribution Center\">Distribution Center</option>\r\n          <option value=\"Food Processing Facility\">Food Processing Facility</option>\r\n          <option value=\"Golf Course/Country Club\">Golf Course/Country Club</option>\r\n          <option value=\"Hospital / Medical Center\">Hospital / Medical Center</option>\r\n          <option value=\"Hotel - Extended Stay\">Hotel - Extended Stay</option>\r\n          <option value=\"Hotel - Full Service\">Hotel - Full Service</option>\r\n          <option value=\"Hotel - Limited Service\">Hotel - Limited Service</option>\r\n          <option value=\"Motel - Exterior Access Units\">Motel - Exterior Access Units</option>\r\n          <option value=\"Motel - Interior Access Units\">Motel - Interior Access Units</option>\r\n          <option value=\"Industrial\">Industrial</option>\r\n          <option value=\"Industrial/Flex - Mixed Use\">Industrial/Flex - Mixed Use</option>\r\n          <option value=\"Lube/Oil Change Facility\">Lube/Oil Change Facility</option>\r\n          <option value=\"Manufacturing - Heavy\">Manufacturing - Heavy</option>\r\n          <option value=\"Manufacturing - Light\">Manufacturing - Light</option>\r\n          <option value=\"Manufacturing - Medium\">Manufacturing - Medium</option>\r\n          <option value=\"Mixed Use (Apt & Other)\">Mixed Use (Apt &amp; Other)</option>\r\n          <option value=\"Nursing Home\">Nursing Home</option>\r\n          <option value=\"Office - General\">Office - General</option>\r\n          <option value=\"Office - Medical\">Office - Medical</option>\r\n          <option value=\"Office Condo\">Office Condo</option>\r\n          <option value=\"R & D Facility\">R &amp; D Facility</option>\r\n          <option value=\"Restaurant - Average\">Restaurant - Average</option>\r\n          <option value=\"Restaurant - Fast Food\">Restaurant - Fast Food</option>\r\n          <option value=\"Restaurant - Upscale\">Restaurant - Upscale</option>\r\n          <option value=\"Retail - Department Store\">Retail - Department Store</option>\r\n          <option value=\"Retail - General\">Retail - General</option>\r\n          <option value=\"Retail - Regional Mall\">Retail - Regional Mall</option>\r\n          <option value=\"Retail - Shopping Center\">Retail - Shopping Center</option>\r\n          <option value=\"Self Storage Facility - Drive Up Access\">Self Storage Facility - Drive Up Access</option>\r\n          <option value=\"Self Storage Facility - Interior Access\">Self Storage Facility - Interior Access</option>\r\n          <option value=\"Service (Gas) Stations\">Service (Gas) Stations</option>\r\n          <option value=\"Supermarket\">Supermarket</option>\r\n          <option value=\"Theater / Cinema\">Theater / Cinema</option>\r\n          <option value=\"Veterinary Facility\">Veterinary Facility</option>\r\n          <option value=\"Warehouse\">Warehouse</option>\r\n        </select>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-type-error\">Please select a property type.</div>\r\n      </div>\r\n\r\n      <!-- Short-Term Rental Toggle -->\r\n      <div class=\"kbkg-toggle-row\">\r\n        <span class=\"kbkg-toggle-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z\"/><polyline points=\"9 22 9 12 15 12 15 22\"/></svg>\r\n          Is this a Short-Term or Vacation Rental?\r\n        </span>\r\n        <div class=\"kbkg-toggle-control\">\r\n          <label class=\"kbkg-toggle\">\r\n            <input type=\"checkbox\" id=\"kbkg-short-term\">\r\n            <span class=\"kbkg-toggle-slider\"></span>\r\n          </label>\r\n          <span class=\"kbkg-toggle-text\" id=\"kbkg-toggle-label\">No</span>\r\n        </div>\r\n      </div>\r\n\r\n      <!-- Submit -->\r\n      <button class=\"kbkg-submit-btn\" id=\"kbkg-estimate-btn\">Estimate Savings</button>\r\n    </div>\r\n\r\n    <!-- RIGHT: Result Cards -->\r\n    <div class=\"kbkg-estimator-results\">\r\n\r\n      <!-- Card 1: Total Year 1 Deductions -->\r\n      <div class=\"kbkg-result-card\">\r\n        <div class=\"kbkg-result-header\">\r\n          <div class=\"kbkg-result-icon\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"23 6 13.5 15.5 8.5 10.5 1 18\"/><polyline points=\"17 6 23 6 23 12\"/></svg>\r\n          </div>\r\n          <span class=\"kbkg-result-label\">Total Year 1 Deductions</span>\r\n        </div>\r\n        <div class=\"kbkg-result-value\" id=\"kbkg-deductions-value\">$0</div>\r\n        <div class=\"kbkg-result-description\">Deductions offset taxable income and reduce tax liability.</div>\r\n      </div>\r\n\r\n      <!-- Card 2: Tax Savings -->\r\n      <div class=\"kbkg-result-card\">\r\n        <div class=\"kbkg-result-header\">\r\n          <div class=\"kbkg-result-icon\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M19 5c-1.5 0-2.8 1.4-3 2-3.5-1.5-11-.3-11 5 0 1.8 0 3 2 4.5V20h4v-2h3v2h4v-4c1-.5 1.7-1 2-2h2v-4h-2c0-1-.5-1.5-1-2\"/><circle cx=\"9\" cy=\"12\" r=\"1\"/></svg>\r\n          </div>\r\n          <span class=\"kbkg-result-label\">Year 1 Tax Savings From Depreciation</span>\r\n        </div>\r\n        <div class=\"kbkg-result-value\" id=\"kbkg-savings-value\">$0</div>\r\n        <div class=\"kbkg-result-assumption\" id=\"kbkg-savings-assumption\"></div>\r\n      </div>\r\n\r\n      <!-- Email My Estimate Button -->\r\n      <button class=\"kbkg-email-btn\" id=\"kbkg-email-btn\" style=\"display:none;\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n        Email My Estimate\r\n      </button>\r\n\r\n      <div class=\"kbkg-results-helper\" id=\"kbkg-results-helper\">\r\n        Enter your property details and click Estimate Savings.\r\n      </div>\r\n\r\n      <div class=\"kbkg-disclaimer\" id=\"kbkg-disclaimer\">\r\n        This high-level estimate is intended for informational purposes only and should not be used for filing tax returns. It assumes bonus depreciation applies and a tax rate of 35%. Actual results will depend on your specific property facts and circumstances. State income tax benefits may be higher. Please consult with a qualified tax professional for advice tailored to your situation.\r\n      </div>\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<!-- ===================== Email Modal ===================== -->\r\n<div class=\"kbkg-modal-overlay\" id=\"kbkg-email-modal\">\r\n  <div class=\"kbkg-modal\">\r\n    <button class=\"kbkg-modal-close\" id=\"kbkg-modal-close\">&times;</button>\r\n\r\n    <div class=\"kbkg-modal-title\">\r\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n      Email Your Results\r\n    </div>\r\n    <p class=\"kbkg-modal-subtitle\">You'll receive a professionally formatted email from CostSegregation.com with your complete estimate.</p>\r\n\r\n    <div class=\"kbkg-modal-summary\">\r\n      <div class=\"kbkg-modal-summary-title\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M22 11.08V12a10 10 0 1 1-5.93-9.14\"/><polyline points=\"22 4 12 14.01 9 11.01\"/></svg>\r\n        Your email will include:\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Property Address:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-address\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Purchase Price:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-price\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Property Type:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-type\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Purchase Date:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-date\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\" id=\"kbkg-modal-str-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Short-Term Rental:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-str\"></span>\r\n      </div>\r\n      <hr class=\"kbkg-modal-summary-divider\">\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Year 1 Deductions:</span>\r\n        <span class=\"kbkg-modal-summary-value kbkg-green\" id=\"kbkg-modal-deductions\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Year 1 Tax Savings:</span>\r\n        <span class=\"kbkg-modal-summary-value kbkg-green\" id=\"kbkg-modal-savings\"></span>\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-form-row\">\r\n      <div class=\"kbkg-modal-form-group\">\r\n        <label>First Name</label>\r\n        <input type=\"text\" id=\"kbkg-modal-fname\" placeholder=\"John\">\r\n      </div>\r\n      <div class=\"kbkg-modal-form-group\">\r\n        <label>Last Name</label>\r\n        <input type=\"text\" id=\"kbkg-modal-lname\" placeholder=\"Smith\">\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-form-group\" style=\"margin-bottom:0;\">\r\n      <label>Email Address</label>\r\n      <input type=\"email\" id=\"kbkg-modal-email\" placeholder=\"john@example.com\">\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-buttons\">\r\n      <button class=\"kbkg-modal-cancel-btn\" id=\"kbkg-modal-cancel-btn\">&times; Cancel</button>\r\n      <button class=\"kbkg-modal-send-btn\" id=\"kbkg-modal-send-btn\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg>\r\n        Send Results\r\n      </button>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-error\" id=\"kbkg-modal-error\"></div>\r\n    <div class=\"kbkg-modal-success\" id=\"kbkg-modal-success\"></div>\r\n\r\n    <div class=\"kbkg-modal-disclaimer\">\r\n      This high-level estimate is intended for informational purposes only and should not be used for filing tax returns. It assumes bonus depreciation applies and a tax rate of 35%. Actual results will depend on your specific property facts and circumstances. State income tax benefits may be higher. Please consult with a qualified tax professional for advice tailored to your situation.\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<!-- ===================== Contact Modal (pre-results) ===================== -->\r\n<div class=\"kbkg-contact-modal-overlay\" id=\"kbkg-contact-modal\">\r\n  <div class=\"kbkg-contact-modal\">\r\n    <button class=\"kbkg-contact-modal-close\" id=\"kbkg-contact-close\">&times;</button>\r\n\r\n    <div class=\"kbkg-contact-modal-title\">Get Your Estimate</div>\r\n\r\n    <div class=\"kbkg-contact-modal-info\">\r\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n      <p>Enter your info to instantly view your results! We'll also email you a detailed summary of tax benefits for your records.</p>\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-row\">\r\n      <div class=\"kbkg-contact-form-group\" style=\"margin-bottom:0;\">\r\n        <label>First Name *</label>\r\n        <input type=\"text\" id=\"kbkg-contact-fname\" placeholder=\"John\">\r\n      </div>\r\n      <div class=\"kbkg-contact-form-group\" style=\"margin-bottom:0;\">\r\n        <label>Last Name *</label>\r\n        <input type=\"text\" id=\"kbkg-contact-lname\" placeholder=\"Smith\">\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-group\">\r\n      <label>Email *</label>\r\n      <input type=\"email\" id=\"kbkg-contact-email\" placeholder=\"john@example.com\">\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-group\">\r\n      <label>How did you first hear about CostSegregation.com?</label>\r\n      <select id=\"kbkg-contact-source\">\r\n        <option value=\"\" disabled selected>Please Select</option>\r\n        <option value=\"ChatGPT/AI\">ChatGPT/AI</option>\r\n        <option value=\"Conference/Event\">Conference/Event</option>\r\n        <option value=\"Postcard/Mail\">Postcard/Mail</option>\r\n        <option value=\"Marketing Email\">Marketing Email</option>\r\n        <option value=\"Online Advertising\">Online Advertising</option>\r\n        <option value=\"Organic Search\">Organic Search</option>\r\n        <option value=\"Other\">Other</option>\r\n        <option value=\"Publication / PR\">Publication / PR</option>\r\n        <option value=\"Referral - Client\">Referral - Client</option>\r\n        <option value=\"Referral - CPA\">Referral - CPA</option>\r\n        <option value=\"Referral - Internal\">Referral - Internal</option>\r\n        <option value=\"Referral - Partner\">Referral - Partner</option>\r\n        <option value=\"Sales Email / Outreach\">Sales Email / Outreach</option>\r\n        <option value=\"Social Media\">Social Media</option>\r\n        <option value=\"Webinar\">Webinar</option>\r\n        <option value=\"Influencer\">Influencer</option>\r\n        <option value=\"Podcast/Radio\">Podcast/Radio</option>\r\n      </select>\r\n    </div>\r\n\r\n    <button class=\"kbkg-contact-submit-btn\" id=\"kbkg-contact-submit\">View My Estimate</button>\r\n    <div class=\"kbkg-contact-error\" id=\"kbkg-contact-error\"></div>\r\n  </div>\r\n</div>\r\n<!-- ===================== JS ===================== -->\r\n<script>\r\n(function () {\r\n  \"use strict\";\r\n\r\n  var API_URL = \"https://app.costsegregation.com/api/project/v1/rcs-quick-estimator\";\r\n  var TAX_RATE = 0.35;\r\n\r\n  /* ---------- Helpers ---------- */\r\n  var UTM_TO_HS_FIELD_MAP = {\r\n    utm_campaign: \"sfdc_utm_campaign\",\r\n    utm_source: \"sfdc_utm_source\",\r\n    utm_medium: \"sfdc_utm_medium\",\r\n    utm_content: \"sfdc_utm_content\"\r\n  };\r\n  \r\n  var GOOGLE_CLICK_TO_HS_FIELD_MAP = {\r\n  gclid: \"google_gclid\",\r\n  gbraid: \"google_gbraid\",\r\n  wbraid: \"google_wbraid\"\r\n};\r\n\r\n  function getCookie(name) {\r\n    var match = document.cookie.match(new RegExp(\"(^|;\\\\s*)\" + name + \"=([^;]*)\"));\r\n    return match ? decodeURIComponent(match[2]) : \"\";\r\n  }\r\n\r\n  function parseQueryUtms() {\r\n    var utms = {};\r\n    try {\r\n      var params = new URLSearchParams(window.location.search || \"\");\r\n      if (params.get(\"utm_campaign\")) utms.utm_campaign = params.get(\"utm_campaign\");\r\n      if (params.get(\"utm_source\")) utms.utm_source = params.get(\"utm_source\");\r\n      if (params.get(\"utm_medium\")) utms.utm_medium = params.get(\"utm_medium\");\r\n      if (params.get(\"utm_content\")) utms.utm_content = params.get(\"utm_content\");\r\n    } catch (e) {}\r\n    return utms;\r\n  }\r\n\r\nfunction parseAffiliateId() {\r\n  try {\r\n    var params = new URLSearchParams(window.location.search || \"\");\r\n    return params.get(\"awinaffid\") || params.get(\"sv_campaign_id\") || \"\";\r\n  } catch (e) {\r\n    return \"\";\r\n  }\r\n}\r\n\r\nfunction parseGoogleClickParams() {\r\n  var values = {};\r\n\r\n  try {\r\n    var params = new URLSearchParams(window.location.search || \"\");\r\n\r\n    Object.keys(GOOGLE_CLICK_TO_HS_FIELD_MAP).forEach(function (key) {\r\n      var value = params.get(key);\r\n      if (value) {\r\n        values[key] = value;\r\n      }\r\n    });\r\n  } catch (e) {\r\n    /* ignore */\r\n  }\r\n\r\n  return values;\r\n}\r\n\r\nfunction getPersistedAffiliateId() {\r\n  var affiliateId = parseAffiliateId();\r\n\r\n  try {\r\n    if (affiliateId) {\r\n      sessionStorage.setItem(\"kbkg_affiliate_id\", affiliateId);\r\n      return affiliateId;\r\n    }\r\n\r\n    return sessionStorage.getItem(\"kbkg_affiliate_id\") || \"\";\r\n  } catch (e) {\r\n    return affiliateId || \"\";\r\n  }\r\n}\r\n\r\nfunction getPersistedGoogleClickParams() {\r\n  var values = parseGoogleClickParams();\r\n\r\n  try {\r\n    Object.keys(GOOGLE_CLICK_TO_HS_FIELD_MAP).forEach(function (key) {\r\n      if (values[key]) {\r\n        sessionStorage.setItem(\"kbkg_\" + key, values[key]);\r\n      } else {\r\n        var storedValue = sessionStorage.getItem(\"kbkg_\" + key) || \"\";\r\n        if (storedValue) {\r\n          values[key] = storedValue;\r\n        }\r\n      }\r\n    });\r\n  } catch (e) {\r\n    /* ignore */\r\n  }\r\n\r\n  return values || {};\r\n}\r\n\r\n/* Store affiliate ID when the page loads */\r\ngetPersistedAffiliateId();\r\n\r\n/* Store Google click parameters when the page loads */\r\ngetPersistedGoogleClickParams();\r\n\r\n  function readKbkgVisitUtms() {\r\n    try {\r\n      var raw = getCookie(\"kbkgvisit\");\r\n      if (!raw) return {};\r\n      var parsed = JSON.parse(raw);\r\n      return (parsed && parsed.kbkgUtm) ? parsed.kbkgUtm : {};\r\n    } catch (e) {\r\n      return {};\r\n    }\r\n  }\r\n\r\n  function hasTrackedUtms(utms) {\r\n    return !!(\r\n      utms &&\r\n      (utms.utm_campaign || utms.utm_source || utms.utm_medium || utms.utm_content)\r\n    );\r\n  }\r\n\r\n  function getPersistedUtmParams() {\r\n    var utms = {};\r\n\r\n    try {\r\n      if (window.kbkgConsentManager && typeof window.kbkgConsentManager.getUtmParams === \"function\") {\r\n        utms = window.kbkgConsentManager.getUtmParams() || {};\r\n      }\r\n    } catch (e) {\r\n      console.warn(\"kbkgConsentManager.getUtmParams failed:\", e);\r\n    }\r\n\r\n    if (!hasTrackedUtms(utms)) {\r\n      utms = readKbkgVisitUtms();\r\n    }\r\n\r\n    if (!hasTrackedUtms(utms)) {\r\n      utms = parseQueryUtms();\r\n    }\r\n\r\n    return utms || {};\r\n  }\r\n\r\n  function formatMoney(value) {\r\n    if (value == null || isNaN(value)) return \"$0\";\r\n    return \"$\" + Math.round(value).toLocaleString(\"en-US\");\r\n  }\r\n\r\n  function formatPriceInput(input) {\r\n    var raw = input.value.replace(/[^0-9]/g, \"\");\r\n    if (raw === \"\") { input.value = \"\"; return; }\r\n    input.value = parseInt(raw, 10).toLocaleString(\"en-US\");\r\n  }\r\n\r\n  function formatDateForApi(dateStr) {\r\n    return dateStr || \"\";\r\n  }\r\n\r\n  function getYearFromDate(dateStr) {\r\n    if (!dateStr) return new Date().getFullYear();\r\n    var parts = dateStr.split(\"/\");\r\n    if (parts.length === 3) return parseInt(parts[2], 10) || new Date().getFullYear();\r\n    return new Date().getFullYear();\r\n  }\r\n\r\n  /* ---------- Toggle label ---------- */\r\n  var toggleCheckbox = document.getElementById(\"kbkg-short-term\");\r\n  var toggleLabel = document.getElementById(\"kbkg-toggle-label\");\r\n  if (toggleCheckbox && toggleLabel) {\r\n    toggleCheckbox.addEventListener(\"change\", function () {\r\n      toggleLabel.textContent = this.checked ? \"Yes\" : \"No\";\r\n    });\r\n  }\r\n\r\n  /* ---------- Price formatting ---------- */\r\n  var priceInput = document.getElementById(\"kbkg-price\");\r\n  if (priceInput) {\r\n    priceInput.addEventListener(\"input\", function () { formatPriceInput(this); });\r\n  }\r\n\r\n  /* ---------- Date input: type + calendar ---------- */\r\n  var dateInput = document.getElementById(\"kbkg-date\");\r\n  var dateHidden = document.getElementById(\"kbkg-date-hidden\");\r\n  var dateCalBtn = document.getElementById(\"kbkg-date-cal-btn\");\r\n\r\n  /* ---------- Inline field error helpers ---------- */\r\n  function isValidDate(m, d, y) {\r\n    if (y < 1900 || y > 2100 || m < 1 || m > 12 || d < 1) return false;\r\n    var date = new Date(y, m - 1, d);\r\n    return date.getFullYear() === y && date.getMonth() === m - 1 && date.getDate() === d;\r\n  }\r\n\r\n  function setFieldError(inputEl, errorId, show) {\r\n    var errEl = document.getElementById(errorId);\r\n    if (errEl) errEl.className = show ? \"kbkg-field-error kbkg-visible\" : \"kbkg-field-error\";\r\n    if (inputEl) {\r\n      if (show) inputEl.classList.add(\"kbkg-input-error\");\r\n      else inputEl.classList.remove(\"kbkg-input-error\");\r\n    }\r\n  }\r\n\r\n  /* Clear errors on input */\r\n  var addressInput = document.getElementById(\"kbkg-address\");\r\n  var priceEl = document.getElementById(\"kbkg-price\");\r\n  var typeEl = document.getElementById(\"kbkg-property-type\");\r\n\r\n  if (addressInput) addressInput.addEventListener(\"input\", function () { setFieldError(this, \"kbkg-address-error\", false); resetResults(); });\r\n  if (priceEl) priceEl.addEventListener(\"input\", function () { setFieldError(this, \"kbkg-price-error\", false); resetResults(); });\r\n  if (typeEl) typeEl.addEventListener(\"change\", function () {\r\n    setFieldError(this, \"kbkg-type-error\", false);\r\n    updateStrVisibility(this.value);\r\n    resetResults();\r\n  });\r\n  if (toggleCheckbox) toggleCheckbox.addEventListener(\"change\", function () { resetResults(); });\r\n\r\n  /* ---------- Show/hide short-term rental based on property type ---------- */\r\n  var strTypes = [\"Single Family Home\",\"Townhouse\",\"Condo - High Rise\",\"Condo - SFH\",\"ADU - Freestanding\",\"ADU - Interior Conversion\",\"Duplex\",\"Triplex\",\"Fourplex\",\"Apartment\"];\r\n  var toggleRow = document.querySelector(\".kbkg-toggle-row\");\r\n\r\n  function updateStrVisibility(val) {\r\n    if (strTypes.indexOf(val) !== -1) {\r\n      toggleRow.style.cssText = \"display:flex!important;\";\r\n    } else {\r\n      toggleRow.style.cssText = \"display:none!important;\";\r\n      toggleCheckbox.checked = false;\r\n      toggleLabel.textContent = \"No\";\r\n    }\r\n  }\r\n\r\n  if (dateInput) {\r\n    dateInput.addEventListener(\"input\", function () {\r\n      var raw = this.value.replace(/[^0-9]/g, \"\");\r\n      var formatted = \"\";\r\n      if (raw.length > 0) formatted = raw.substring(0, 2);\r\n      if (raw.length >= 3) formatted += \"/\" + raw.substring(2, 4);\r\n      if (raw.length >= 5) formatted += \"/\" + raw.substring(4, 8);\r\n      this.value = formatted;\r\n      setFieldError(this, \"kbkg-date-error\", false);\r\n      resetResults();\r\n    });\r\n\r\n    dateInput.addEventListener(\"blur\", function () {\r\n      var val = this.value.trim();\r\n      if (!val) { setFieldError(this, \"kbkg-date-error\", false); return; }\r\n      var parts = val.split(\"/\");\r\n      if (parts.length !== 3 || parts[2].length !== 4) {\r\n        setFieldError(this, \"kbkg-date-error\", true);\r\n        return;\r\n      }\r\n      var m = parseInt(parts[0], 10);\r\n      var d = parseInt(parts[1], 10);\r\n      var y = parseInt(parts[2], 10);\r\n      setFieldError(this, \"kbkg-date-error\", !isValidDate(m, d, y));\r\n    });\r\n  }\r\n\r\n  if (dateCalBtn && dateHidden) {\r\n    dateCalBtn.addEventListener(\"click\", function (e) {\r\n      e.preventDefault();\r\n      if (dateHidden.showPicker) {\r\n        dateHidden.showPicker();\r\n      } else {\r\n        dateHidden.click();\r\n      }\r\n    });\r\n\r\n    dateHidden.addEventListener(\"change\", function () {\r\n      var val = this.value;\r\n      if (!val) return;\r\n      var parts = val.split(\"-\");\r\n      if (parts.length === 3) {\r\n        dateInput.value = parts[1] + \"/\" + parts[2] + \"/\" + parts[0];\r\n        setFieldError(dateInput, \"kbkg-date-error\", false);\r\n      }\r\n    });\r\n  }\r\n\r\n  /* ---------- Display results ---------- */\r\n  function showResults(low, high) {\r\n    var deductionsEl = document.getElementById(\"kbkg-deductions-value\");\r\n    var savingsEl = document.getElementById(\"kbkg-savings-value\");\r\n    var assumptionEl = document.getElementById(\"kbkg-savings-assumption\");\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n\r\n    deductionsEl.textContent = formatMoney(low) + \" to \" + formatMoney(high);\r\n\r\n    var savingsLow = low * TAX_RATE;\r\n    var savingsHigh = high * TAX_RATE;\r\n    savingsEl.textContent = formatMoney(savingsLow) + \" to \" + formatMoney(savingsHigh);\r\n    assumptionEl.textContent = \"Potential cash savings in your first year. State income tax benefits may be higher.\";\r\n\r\n    helperEl.textContent = \"\";\r\n    helperEl.style.display = \"none\";\r\n\r\n    var disclaimerEl = document.getElementById(\"kbkg-disclaimer\");\r\n    disclaimerEl.style.display = \"block\";\r\n\r\n    var emailBtn = document.getElementById(\"kbkg-email-btn\");\r\n    emailBtn.style.display = \"flex\";\r\n  }\r\n\r\n  function showError(msg) {\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-error-msg\";\r\n    helperEl.textContent = msg;\r\n  }\r\n\r\n  function resetResults() {\r\n    document.getElementById(\"kbkg-deductions-value\").textContent = \"$0\";\r\n    document.getElementById(\"kbkg-savings-value\").textContent = \"$0\";\r\n    document.getElementById(\"kbkg-savings-assumption\").textContent = \"\";\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-results-helper\";\r\n    helperEl.textContent = \"Enter your property details and click Estimate Savings.\";\r\n    helperEl.style.display = \"\";\r\n    document.getElementById(\"kbkg-disclaimer\").style.display = \"none\";\r\n    document.getElementById(\"kbkg-email-btn\").style.display = \"none\";\r\n  }\r\n\r\n  function resetHelper() {\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-results-helper\";\r\n  }\r\n\r\n  /* ---------- API call ---------- */\r\n  function callEstimatorApi() {\r\n    var btn = document.getElementById(\"kbkg-estimate-btn\");\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var propertyType = document.getElementById(\"kbkg-property-type\").value;\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n\r\n    var hasError = false;\r\n\r\n    if (!address) {\r\n      setFieldError(document.getElementById(\"kbkg-address\"), \"kbkg-address-error\", true);\r\n      hasError = true;\r\n    }\r\n    if (!price || price <= 0) {\r\n      setFieldError(document.getElementById(\"kbkg-price\"), \"kbkg-price-error\", true);\r\n      hasError = true;\r\n    }\r\n    if (!dateVal) {\r\n      setFieldError(document.getElementById(\"kbkg-date\"), \"kbkg-date-error\", true);\r\n      hasError = true;\r\n    } else {\r\n      var dateParts = dateVal.split(\"/\");\r\n      if (dateParts.length !== 3 || dateParts[2].length !== 4 ||\r\n          !isValidDate(parseInt(dateParts[0],10), parseInt(dateParts[1],10), parseInt(dateParts[2],10))) {\r\n        setFieldError(document.getElementById(\"kbkg-date\"), \"kbkg-date-error\", true);\r\n        hasError = true;\r\n      }\r\n    }\r\n    if (!propertyType) {\r\n      setFieldError(document.getElementById(\"kbkg-property-type\"), \"kbkg-type-error\", true);\r\n      hasError = true;\r\n    }\r\n\r\n    if (hasError) return;\r\n\r\n    resetHelper();\r\n\r\n    var payload = {\r\n      address: address,\r\n      transactionType: \"Acquired Property\",\r\n      propertyType: propertyType,\r\n      buildingType: \"Freestanding/Detached\",\r\n      pisDate: formatDateForApi(dateVal),\r\n      currentTaxYear: getYearFromDate(dateVal),\r\n      purchasePrice: price,\r\n      estimatedLandValue: 0,\r\n      shortTermRental: shortTerm,\r\n      source: \"Website\"\r\n    };\r\n\r\n    btn.disabled = true;\r\n    btn.textContent = \"Calculating...\";\r\n\r\n    fetch(API_URL, {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/json\" },\r\n      body: JSON.stringify(payload)\r\n    })\r\n    .then(function (response) {\r\n      if (!response.ok) throw new Error(\"API request failed (status \" + response.status + \")\");\r\n      return response.json();\r\n    })\r\n    .then(function (data) {\r\n      if (\r\n        data.result &&\r\n        data.result.estimatedAdditionalTaxDeductionsYear1Low != null &&\r\n        data.result.estimatedAdditionalTaxDeductionsYear1High != null\r\n      ) {\r\n        pendingResultLow = data.result.estimatedAdditionalTaxDeductionsYear1Low;\r\n        pendingResultHigh = data.result.estimatedAdditionalTaxDeductionsYear1High;\r\n        openContactModal();\r\n      } else {\r\n        showError(\"Could not calculate estimate. Please check your inputs.\");\r\n      }\r\n    })\r\n    .catch(function (err) {\r\n      console.error(\"Estimator API error:\", err);\r\n      showError(\"Something went wrong. Please try again.\");\r\n    })\r\n    .finally(function () {\r\n      btn.disabled = false;\r\n      btn.textContent = \"Estimate Savings\";\r\n    });\r\n  }\r\n\r\n  var pendingResultLow = 0;\r\n  var pendingResultHigh = 0;\r\n\r\n  var btn = document.getElementById(\"kbkg-estimate-btn\");\r\n  if (btn) {\r\n    btn.addEventListener(\"click\", callEstimatorApi);\r\n  }\r\n\r\n  /* ---------- Contact Modal (pre-results) ---------- */\r\n  var contactOverlay = document.getElementById(\"kbkg-contact-modal\");\r\n  var contactCloseBtn = document.getElementById(\"kbkg-contact-close\");\r\n  var contactSubmitBtn = document.getElementById(\"kbkg-contact-submit\");\r\n\r\n  function openContactModal() {\r\n    document.getElementById(\"kbkg-contact-error\").style.display = \"none\";\r\n    contactSubmitBtn.disabled = false;\r\n    contactSubmitBtn.textContent = \"View My Estimate\";\r\n    contactOverlay.classList.add(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function closeContactModal() {\r\n    contactOverlay.classList.remove(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function submitContact() {\r\n    console.log(\"submitContact fired\");\r\n\r\n    var fname = document.getElementById(\"kbkg-contact-fname\").value.trim();\r\n    var lname = document.getElementById(\"kbkg-contact-lname\").value.trim();\r\n    var email = document.getElementById(\"kbkg-contact-email\").value.trim();\r\n    var source = document.getElementById(\"kbkg-contact-source\").value;\r\n    var errorEl = document.getElementById(\"kbkg-contact-error\");\r\n\r\n    errorEl.style.display = \"none\";\r\n    document.getElementById(\"kbkg-contact-fname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-contact-lname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-contact-email\").classList.remove(\"kbkg-input-error\");\r\n\r\n    var hasErr = false;\r\n    if (!fname) { document.getElementById(\"kbkg-contact-fname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!lname) { document.getElementById(\"kbkg-contact-lname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!email || !/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(email)) { document.getElementById(\"kbkg-contact-email\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (hasErr) {\r\n      errorEl.textContent = \"Please fill in all required fields.\";\r\n      errorEl.style.display = \"block\";\r\n      return;\r\n    }\r\n\r\n    showResults(pendingResultLow, pendingResultHigh);\r\n    closeContactModal();\r\n\r\n    document.getElementById(\"kbkg-modal-fname\").value = fname;\r\n    document.getElementById(\"kbkg-modal-lname\").value = lname;\r\n    document.getElementById(\"kbkg-modal-email\").value = email;\r\n\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var propertyType = document.getElementById(\"kbkg-property-type\").value;\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n    var savingsLow = pendingResultLow * TAX_RATE;\r\n    var savingsHigh = pendingResultHigh * TAX_RATE;\r\n\r\n    var hsFields = [\r\n      { name: \"firstname\", value: fname },\r\n      { name: \"lastname\", value: lname },\r\n      { name: \"email\", value: email },\r\n      { name: \"how_did_you_first_hear_about_kbkg_\", value: source },\r\n      { name: \"full_property_address\", value: address },\r\n      { name: \"building_basis\", value: String(price) },\r\n      { name: \"date_of_purchase\", value: dateVal },\r\n      { name: \"property_type_dropdown\", value: propertyType },\r\n      { name: \"shortterm_or_vacation_rental\", value: shortTerm ? \"true\" : \"false\" },\r\n      { name: \"cost_segregation_calculator_low_tax_deductions_year_1\", value: String(Math.round(pendingResultLow)) },\r\n      { name: \"cost_segregation_calculator_high_tax_deductions_year_1\", value: String(Math.round(pendingResultHigh)) },\r\n      { name: \"year_1_tax_savings_low_end\", value: String(Math.round(savingsLow)) },\r\n      { name: \"year_1_tax_savings_high_end\", value: String(Math.round(savingsHigh)) }\r\n    ];\r\n\r\n    var storedUtms = {};\r\n    try {\r\n      storedUtms = getPersistedUtmParams();\r\n    } catch (e) {\r\n      console.error(\"UTM retrieval error:\", e);\r\n      storedUtms = {};\r\n    }\r\n\r\n    for (var utmKey in UTM_TO_HS_FIELD_MAP) {\r\n      if (Object.prototype.hasOwnProperty.call(UTM_TO_HS_FIELD_MAP, utmKey) && storedUtms[utmKey]) {\r\n        hsFields.push({\r\n          name: UTM_TO_HS_FIELD_MAP[utmKey],\r\n          value: storedUtms[utmKey]\r\n        });\r\n      }\r\n    }\r\n\r\nvar affiliateId = getPersistedAffiliateId();\r\nif (affiliateId) {\r\n  hsFields.push({\r\n    name: \"affiliate_id\",\r\n    value: affiliateId\r\n  });\r\n}\r\n\r\nvar googleClickParams = getPersistedGoogleClickParams();\r\n\r\nfor (var googleClickKey in GOOGLE_CLICK_TO_HS_FIELD_MAP) {\r\n  if (\r\n    Object.prototype.hasOwnProperty.call(GOOGLE_CLICK_TO_HS_FIELD_MAP, googleClickKey) &&\r\n    googleClickParams[googleClickKey]\r\n  ) {\r\n    hsFields.push({\r\n      name: GOOGLE_CLICK_TO_HS_FIELD_MAP[googleClickKey],\r\n      value: googleClickParams[googleClickKey]\r\n    });\r\n  }\r\n}\r\n    var hsContext = {\r\n  pageUri: window.location.href,\r\n  pageName: document.title\r\n};\r\n\r\nvar hutk = getCookie(\"hubspotutk\");\r\nif (hutk) {\r\n  hsContext.hutk = hutk;\r\n}\r\n\r\nvar hsPayload = {\r\n  fields: hsFields,\r\n  context: hsContext\r\n};\r\n\r\n    console.log(\"About to send to HubSpot\", hsPayload);\r\n\r\n    fetch(\"https://api.hsforms.com/submissions/v3/integration/submit/3615782/1883c298-1b07-4401-98fc-cd428ae7b37d\", {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/json\" },\r\n      body: JSON.stringify(hsPayload)\r\n    })\r\n    .then(function (response) {\r\n      if (!response.ok) {\r\n        return response.text().then(function (text) {\r\n          throw new Error(\"HubSpot submission failed (\" + response.status + \"): \" + text);\r\n        });\r\n      }\r\n      return response.text();\r\n    })\r\n    .then(function (text) {\r\n      console.log(\"HubSpot submission succeeded:\", text);\r\n    })\r\n    .catch(function (err) {\r\n      console.error(\"HubSpot submission error:\", err);\r\n    });\r\n  }\r\n\r\n  if (contactCloseBtn) contactCloseBtn.addEventListener(\"click\", closeContactModal);\r\n  if (contactSubmitBtn) contactSubmitBtn.addEventListener(\"click\", submitContact);\r\n  if (contactOverlay) contactOverlay.addEventListener(\"click\", function (e) {\r\n    if (e.target === contactOverlay) closeContactModal();\r\n  });\r\n\r\n  /* ---------- Email Modal ---------- */\r\n  var emailBtn = document.getElementById(\"kbkg-email-btn\");\r\n  var modalOverlay = document.getElementById(\"kbkg-email-modal\");\r\n  var modalCloseBtn = document.getElementById(\"kbkg-modal-close\");\r\n  var modalCancelBtn = document.getElementById(\"kbkg-modal-cancel-btn\");\r\n  var modalSendBtn = document.getElementById(\"kbkg-modal-send-btn\");\r\n\r\n  function getPropertyTypeDisplay() {\r\n    var sel = document.getElementById(\"kbkg-property-type\");\r\n    return sel.options[sel.selectedIndex].text;\r\n  }\r\n\r\n  function formatDateDisplay(dateStr) {\r\n    if (!dateStr) return \"\";\r\n    var parts = dateStr.split(\"/\");\r\n    if (parts.length !== 3) return dateStr;\r\n    var months = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"];\r\n    var m = parseInt(parts[0], 10);\r\n    var d = parseInt(parts[1], 10);\r\n    var y = parts[2];\r\n    var suffix = \"th\";\r\n    if (d === 1 || d === 21 || d === 31) suffix = \"st\";\r\n    else if (d === 2 || d === 22) suffix = \"nd\";\r\n    else if (d === 3 || d === 23) suffix = \"rd\";\r\n    return months[m - 1] + \" \" + d + suffix + \", \" + y;\r\n  }\r\n\r\n  function openEmailModal() {\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n\r\n    document.getElementById(\"kbkg-modal-address\").textContent = address;\r\n    document.getElementById(\"kbkg-modal-price\").textContent = formatMoney(price);\r\n    document.getElementById(\"kbkg-modal-type\").textContent = getPropertyTypeDisplay();\r\n    document.getElementById(\"kbkg-modal-date\").textContent = formatDateDisplay(dateVal);\r\n    var propertyVal = document.getElementById(\"kbkg-property-type\").value;\r\n    var strRow = document.getElementById(\"kbkg-modal-str-row\");\r\n    if (strTypes.indexOf(propertyVal) !== -1) {\r\n      strRow.style.display = \"flex\";\r\n      document.getElementById(\"kbkg-modal-str\").textContent = shortTerm ? \"Yes\" : \"No\";\r\n    } else {\r\n      strRow.style.display = \"none\";\r\n    }\r\n    document.getElementById(\"kbkg-modal-deductions\").textContent = document.getElementById(\"kbkg-deductions-value\").textContent;\r\n    document.getElementById(\"kbkg-modal-savings\").textContent = document.getElementById(\"kbkg-savings-value\").textContent;\r\n\r\n    document.getElementById(\"kbkg-modal-error\").style.display = \"none\";\r\n    document.getElementById(\"kbkg-modal-success\").style.display = \"none\";\r\n    modalSendBtn.disabled = false;\r\n    modalSendBtn.innerHTML = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg> Send Results';\r\n\r\n    modalOverlay.classList.add(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function closeEmailModal() {\r\n    modalOverlay.classList.remove(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function sendEmail() {\r\n    var fname = document.getElementById(\"kbkg-modal-fname\").value.trim();\r\n    var lname = document.getElementById(\"kbkg-modal-lname\").value.trim();\r\n    var email = document.getElementById(\"kbkg-modal-email\").value.trim();\r\n    var errorEl = document.getElementById(\"kbkg-modal-error\");\r\n    var successEl = document.getElementById(\"kbkg-modal-success\");\r\n\r\n    errorEl.style.display = \"none\";\r\n    successEl.style.display = \"none\";\r\n    document.getElementById(\"kbkg-modal-fname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-modal-lname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-modal-email\").classList.remove(\"kbkg-input-error\");\r\n\r\n    var hasErr = false;\r\n    if (!fname) { document.getElementById(\"kbkg-modal-fname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!lname) { document.getElementById(\"kbkg-modal-lname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!email || !/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(email)) { document.getElementById(\"kbkg-modal-email\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (hasErr) {\r\n      errorEl.textContent = \"Please fill in all fields with a valid email.\";\r\n      errorEl.style.display = \"block\";\r\n      return;\r\n    }\r\n\r\n    modalSendBtn.disabled = true;\r\n    modalSendBtn.textContent = \"Sending...\";\r\n\r\n    var payload = {\r\n      firstName: fname,\r\n      lastName: lname,\r\n      email: email,\r\n      address: document.getElementById(\"kbkg-modal-address\").textContent,\r\n      purchasePrice: document.getElementById(\"kbkg-modal-price\").textContent,\r\n      propertyType: document.getElementById(\"kbkg-modal-type\").textContent,\r\n      purchaseDate: document.getElementById(\"kbkg-modal-date\").textContent,\r\n      shortTermRental: document.getElementById(\"kbkg-modal-str\").textContent,\r\n      deductions: document.getElementById(\"kbkg-modal-deductions\").textContent,\r\n      savings: document.getElementById(\"kbkg-modal-savings\").textContent\r\n    };\r\n\r\n    var ajaxUrl = (typeof kbkg_estimator_ajax !== \"undefined\") ? kbkg_estimator_ajax.ajax_url : \"/wp-admin/admin-ajax.php\";\r\n\r\n    fetch(ajaxUrl, {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/x-www-form-urlencoded\" },\r\n      body: \"action=kbkg_send_estimate_email&\" + Object.keys(payload).map(function(k) {\r\n        return encodeURIComponent(k) + \"=\" + encodeURIComponent(payload[k]);\r\n      }).join(\"&\")\r\n    })\r\n    .then(function (response) { return response.json(); })\r\n    .then(function (data) {\r\n      if (data.success) {\r\n        successEl.textContent = \"Email sent successfully! Check your inbox.\";\r\n        successEl.style.display = \"block\";\r\n        modalSendBtn.textContent = \"Sent!\";\r\n      } else {\r\n        throw new Error(data.data || \"Failed to send email.\");\r\n      }\r\n    })\r\n    .catch(function (err) {\r\n      errorEl.textContent = err.message || \"Something went wrong. Please try again.\";\r\n      errorEl.style.display = \"block\";\r\n      modalSendBtn.disabled = false;\r\n      modalSendBtn.innerHTML = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg> Send Results';\r\n    });\r\n  }\r\n\r\n  if (emailBtn) emailBtn.addEventListener(\"click\", openEmailModal);\r\n  if (modalCloseBtn) modalCloseBtn.addEventListener(\"click\", closeEmailModal);\r\n  if (modalCancelBtn) modalCancelBtn.addEventListener(\"click\", closeEmailModal);\r\n  if (modalSendBtn) modalSendBtn.addEventListener(\"click\", sendEmail);\r\n  if (modalOverlay) modalOverlay.addEventListener(\"click\", function (e) {\r\n    if (e.target === modalOverlay) closeEmailModal();\r\n  });\r\n\r\n})();\r\n</script>\r\n\r\n\t\t","editSettings":{"defaultEditRoute":"content","panel":{"activeTab":"content","activeSection":"section_title"}}}]}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-9801f19 */{"type":"elementor","siteurl":"https://www.costsegregation.com/wp-json/","elements":[{"id":"1b54566","elType":"widget","isInner":false,"isLocked":false,"settings":{"html":"<!--\r\n  KBKG Tax Savings Estimator — Redesigned Layout\r\n  ================================================\r\n  Drop this into a single Elementor \"Custom HTML\" widget,\r\n  replacing the entire current estimator section.\r\n  Calls the API directly — no dependency on KbkgBasicEstimator library.\r\n-->\r\n\r\n<!-- ===================== CSS ===================== -->\r\n<style>\r\n/* ---------- Container ---------- */\r\n.kbkg-estimator-wrapper {\r\n  max-width: 100% !important;\r\n  margin: 0 auto !important;\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06) !important;\r\n  padding: 48px 48px 40px !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper *,\r\n.kbkg-estimator-wrapper *::before,\r\n.kbkg-estimator-wrapper *::after {\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper h2.kbkg-estimator-title {\r\n  text-align: center !important;\r\n  font-size: 24px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 28px !important;\r\n  padding: 0 !important;\r\n  line-height: 1.3 !important;\r\n  letter-spacing: -0.01em !important;\r\n}\r\n\r\n.kbkg-estimator-body {\r\n  display: flex !important;\r\n  gap: 40px !important;\r\n  align-items: flex-start !important;\r\n  border: none !important;\r\n}\r\n\r\n/* (vertical divider merged into main .kbkg-estimator-results rule below) */\r\n\r\n/* ---------- Force ALL SVGs inside our wrapper to respect size ---------- */\r\n.kbkg-estimator-wrapper svg {\r\n  max-width: 100% !important;\r\n  height: auto !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper svg.kbkg-icon {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  min-height: 18px !important;\r\n  max-width: 18px !important;\r\n  max-height: 18px !important;\r\n  flex-shrink: 0 !important;\r\n  color: #475569 !important;\r\n  display: inline-block !important;\r\n  vertical-align: middle !important;\r\n}\r\n\r\n/* ---------- Left Column (Form) ---------- */\r\n.kbkg-estimator-form {\r\n  flex: 1 !important;\r\n  min-width: 0 !important;\r\n}\r\n\r\n.kbkg-field-group {\r\n  margin-bottom: 16px !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-label {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 6px !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n  line-height: 1.4 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input,\r\n.kbkg-estimator-wrapper .kbkg-field-select {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n  line-height: 1.4 !important;\r\n  height: auto !important;\r\n  margin: 0 !important;\r\n  -webkit-appearance: none !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input:focus,\r\n.kbkg-estimator-wrapper .kbkg-field-select:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n/* Dollar prefix input */\r\n.kbkg-input-with-prefix {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-input-prefix {\r\n  position: absolute !important;\r\n  left: 14px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  font-size: 15px !important;\r\n  color: #94a3b8 !important;\r\n  pointer-events: none !important;\r\n  z-index: 1 !important;\r\n}\r\n\r\n.kbkg-input-with-prefix .kbkg-field-input {\r\n  padding-left: 30px !important;\r\n}\r\n\r\n/* Date input wrapper */\r\n.kbkg-input-with-icon {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper svg.kbkg-input-icon {\r\n  position: absolute !important;\r\n  left: 14px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  width: 16px !important;\r\n  height: 16px !important;\r\n  min-width: 16px !important;\r\n  max-width: 16px !important;\r\n  color: #94a3b8 !important;\r\n  pointer-events: none !important;\r\n  z-index: 1 !important;\r\n}\r\n\r\n.kbkg-input-with-icon .kbkg-field-input {\r\n  padding-left: 38px !important;\r\n}\r\n\r\n/* Date input wrapper with calendar button */\r\n.kbkg-date-wrapper {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper input[type=\"text\"].kbkg-date-input {\r\n  cursor: text !important;\r\n  padding-right: 40px !important;\r\n}\r\n\r\n.kbkg-date-cal-btn {\r\n  position: absolute !important;\r\n  right: 8px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  cursor: pointer !important;\r\n  padding: 4px !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-date-cal-btn svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n  color: #94a3b8 !important;\r\n  stroke: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-date-cal-btn:hover svg {\r\n  color: #475569 !important;\r\n  stroke: #475569 !important;\r\n}\r\n\r\n.kbkg-field-error {\r\n  font-size: 11px !important;\r\n  color: #dc2626 !important;\r\n  margin-top: 4px !important;\r\n  display: none !important;\r\n}\r\n\r\n.kbkg-field-error.kbkg-visible {\r\n  display: block !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input.kbkg-input-error,\r\n.kbkg-estimator-wrapper .kbkg-field-select.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n/* ---------- Toggle row ---------- */\r\n.kbkg-toggle-row {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: space-between !important;\r\n  margin-bottom: 24px !important;\r\n  flex-wrap: nowrap !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-toggle-label {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 6px !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  line-height: 1.4 !important;\r\n  flex-shrink: 1 !important;\r\n  min-width: 0 !important;\r\n}\r\n\r\n.kbkg-toggle-control {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 8px !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.kbkg-toggle {\r\n  position: relative !important;\r\n  width: 44px !important;\r\n  min-width: 44px !important;\r\n  height: 24px !important;\r\n  cursor: pointer !important;\r\n  display: inline-block !important;\r\n}\r\n\r\n.kbkg-toggle input {\r\n  opacity: 0 !important;\r\n  width: 0 !important;\r\n  height: 0 !important;\r\n  position: absolute !important;\r\n}\r\n\r\n.kbkg-toggle-slider {\r\n  position: absolute !important;\r\n  inset: 0 !important;\r\n  background: #cbd5e1 !important;\r\n  border-radius: 12px !important;\r\n  transition: background 0.2s !important;\r\n}\r\n\r\n.kbkg-toggle-slider::before {\r\n  content: '' !important;\r\n  position: absolute !important;\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  left: 3px !important;\r\n  top: 3px !important;\r\n  background: #ffffff !important;\r\n  border-radius: 50% !important;\r\n  transition: transform 0.2s !important;\r\n}\r\n\r\n.kbkg-toggle input:checked + .kbkg-toggle-slider {\r\n  background: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-toggle input:checked + .kbkg-toggle-slider::before {\r\n  transform: translateX(20px) !important;\r\n}\r\n\r\n.kbkg-toggle-text {\r\n  font-size: 14px !important;\r\n  color: #64748b !important;\r\n  min-width: 28px !important;\r\n}\r\n\r\n/* ---------- Submit button ---------- */\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s !important;\r\n  line-height: 1.4 !important;\r\n  text-transform: none !important;\r\n  letter-spacing: normal !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:active {\r\n  background: #0f2035 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n/* ---------- Right Column (Results) ---------- */\r\n.kbkg-estimator-wrapper .kbkg-estimator-results {\r\n  flex: 1 !important;\r\n  min-width: 0 !important;\r\n  display: flex !important;\r\n  flex-direction: column !important;\r\n  gap: 20px !important;\r\n  padding-top: 8px !important;\r\n  border-left: 1px solid #e2e8f0 !important;\r\n  padding-left: 40px !important;\r\n}\r\n\r\n.kbkg-result-card {\r\n  border: 2px solid #16a34a !important;\r\n  border-radius: 12px !important;\r\n  padding: 20px 24px !important;\r\n  background: #f0fdf4 !important;\r\n}\r\n\r\n.kbkg-result-header {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 4px !important;\r\n}\r\n\r\n.kbkg-result-icon {\r\n  width: 36px !important;\r\n  min-width: 36px !important;\r\n  height: 36px !important;\r\n  min-height: 36px !important;\r\n  border-radius: 50% !important;\r\n  background: #d1e7dd !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.kbkg-result-icon svg {\r\n  width: 16px !important;\r\n  height: 16px !important;\r\n  min-width: 16px !important;\r\n  max-width: 16px !important;\r\n  color: #16a34a !important;\r\n  stroke: #16a34a !important;\r\n}\r\n\r\n.kbkg-result-label {\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #16a34a !important;\r\n  line-height: 1.3 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-result-value {\r\n  font-size: 24px !important;\r\n  font-weight: 800 !important;\r\n  color: #16a34a !important;\r\n  margin: 6px 0 4px !important;\r\n  line-height: 1.2 !important;\r\n  padding: 0 !important;\r\n}\r\n\r\n.kbkg-result-description {\r\n  font-size: 11px !important;\r\n  color: #64748b !important;\r\n  line-height: 1.5 !important;\r\n}\r\n\r\n.kbkg-result-assumption {\r\n  font-size: 12px !important;\r\n  color: #94a3b8 !important;\r\n  font-style: italic !important;\r\n  margin-top: 2px !important;\r\n}\r\n\r\n.kbkg-results-helper {\r\n  text-align: center !important;\r\n  font-size: 14px !important;\r\n  color: #94a3b8 !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n/* ---------- Error ---------- */\r\n.kbkg-disclaimer {\r\n  font-size: 12px !important;\r\n  color: #94a3b8 !important;\r\n  line-height: 1.5 !important;\r\n  margin-top: 0 !important;\r\n  display: none;\r\n}\r\n\r\n/* ---------- Email My Estimate Button ---------- */\r\n.kbkg-email-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e293b !important;\r\n  background: #ffffff !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s, border-color 0.2s !important;\r\n  display: none;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 8px !important;\r\n}\r\n\r\n.kbkg-email-btn:hover {\r\n  background: #f8fafc !important;\r\n  border-color: #cbd5e1 !important;\r\n}\r\n\r\n.kbkg-email-btn svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n}\r\n\r\n/* ---------- Email Modal ---------- */\r\n.kbkg-modal-overlay {\r\n  display: none;\r\n  position: fixed !important;\r\n  inset: 0 !important;\r\n  background: rgba(0, 0, 0, 0.5) !important;\r\n  z-index: 99999 !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-modal-overlay.kbkg-modal-open {\r\n  display: flex !important;\r\n}\r\n\r\n.kbkg-modal {\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  padding: 28px !important;\r\n  max-width: 480px !important;\r\n  width: 90% !important;\r\n  max-height: none !important;\r\n  overflow-y: visible !important;\r\n  position: relative !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n}\r\n\r\n.kbkg-modal-close {\r\n  position: absolute !important;\r\n  top: 16px !important;\r\n  right: 16px !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  font-size: 24px !important;\r\n  color: #94a3b8 !important;\r\n  cursor: pointer !important;\r\n  line-height: 1 !important;\r\n  padding: 4px !important;\r\n}\r\n\r\n.kbkg-modal-close:hover {\r\n  color: #475569 !important;\r\n}\r\n\r\n.kbkg-modal-title {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 10px !important;\r\n  font-size: 18px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 6px !important;\r\n}\r\n\r\n.kbkg-modal-title svg {\r\n  width: 24px !important;\r\n  height: 24px !important;\r\n  min-width: 24px !important;\r\n  max-width: 24px !important;\r\n  color: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-modal-subtitle {\r\n  font-size: 13px !important;\r\n  color: #64748b !important;\r\n  margin: 0 0 16px !important;\r\n  line-height: 1.5 !important;\r\n}\r\n\r\n.kbkg-modal-summary {\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 10px !important;\r\n  padding: 16px 20px !important;\r\n  margin-bottom: 20px !important;\r\n}\r\n\r\n.kbkg-modal-summary-title {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 8px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e3a5f !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-modal-summary-title svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n  color: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-modal-summary-row {\r\n  display: flex !important;\r\n  justify-content: space-between !important;\r\n  padding: 4px 0 !important;\r\n  font-size: 13px !important;\r\n}\r\n\r\n.kbkg-modal-summary-label {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-modal-summary-value {\r\n  color: #1e293b !important;\r\n  font-weight: 500 !important;\r\n}\r\n\r\n.kbkg-modal-summary-value.kbkg-green {\r\n  color: #16a34a !important;\r\n  font-weight: 600 !important;\r\n}\r\n\r\n.kbkg-modal-summary-divider {\r\n  border: none !important;\r\n  border-top: 1px solid #e2e8f0 !important;\r\n  margin: 10px 0 !important;\r\n}\r\n\r\n.kbkg-modal-form-row {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-modal-form-group {\r\n  flex: 1 !important;\r\n}\r\n\r\n.kbkg-modal-form-group label {\r\n  display: block !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n}\r\n\r\n.kbkg-modal-form-group input {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-modal-form-group input:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-modal-form-group input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-modal-form-group input.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n.kbkg-modal-buttons {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-top: 16px !important;\r\n}\r\n\r\n.kbkg-modal-cancel-btn {\r\n  flex: 1 !important;\r\n  padding: 12px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e293b !important;\r\n  background: #ffffff !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 6px !important;\r\n}\r\n\r\n.kbkg-modal-cancel-btn:hover {\r\n  background: #f8fafc !important;\r\n}\r\n\r\n.kbkg-modal-send-btn {\r\n  flex: 1 !important;\r\n  padding: 12px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 6px !important;\r\n}\r\n\r\n.kbkg-modal-send-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-modal-send-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n.kbkg-modal-disclaimer {\r\n  font-size: 10px !important;\r\n  color: #94a3b8 !important;\r\n  line-height: 1.5 !important;\r\n  margin-top: 12px !important;\r\n  text-align: center !important;\r\n}\r\n\r\n.kbkg-modal-error {\r\n  font-size: 13px !important;\r\n  color: #dc2626 !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n.kbkg-modal-success {\r\n  font-size: 14px !important;\r\n  color: #16a34a !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n.kbkg-error-msg {\r\n  text-align: center !important;\r\n  font-size: 14px !important;\r\n  color: #dc2626 !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n/* ---------- Contact Modal (pre-results) ---------- */\r\n.kbkg-contact-modal-overlay {\r\n  display: none;\r\n  position: fixed !important;\r\n  inset: 0 !important;\r\n  background: rgba(0, 0, 0, 0.5) !important;\r\n  z-index: 99998 !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-contact-modal-overlay.kbkg-modal-open {\r\n  display: flex !important;\r\n}\r\n\r\n.kbkg-contact-modal {\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  padding: 28px !important;\r\n  max-width: 480px !important;\r\n  width: 90% !important;\r\n  position: relative !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n}\r\n\r\n.kbkg-contact-modal-close {\r\n  position: absolute !important;\r\n  top: 16px !important;\r\n  right: 16px !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  font-size: 24px !important;\r\n  color: #94a3b8 !important;\r\n  cursor: pointer !important;\r\n  line-height: 1 !important;\r\n  padding: 4px !important;\r\n}\r\n\r\n.kbkg-contact-modal-close:hover {\r\n  color: #475569 !important;\r\n}\r\n\r\n.kbkg-contact-modal-title {\r\n  font-size: 20px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 16px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info {\r\n  background: #f8fafc !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 10px !important;\r\n  padding: 16px 20px !important;\r\n  margin-bottom: 20px !important;\r\n  display: flex !important;\r\n  align-items: flex-start !important;\r\n  gap: 12px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info svg {\r\n  width: 20px !important;\r\n  height: 20px !important;\r\n  min-width: 20px !important;\r\n  max-width: 20px !important;\r\n  color: #1e3a5f !important;\r\n  margin-top: 2px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info p {\r\n  font-size: 13px !important;\r\n  color: #475569 !important;\r\n  line-height: 1.5 !important;\r\n  margin: 0 !important;\r\n}\r\n\r\n.kbkg-contact-form-row {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-contact-form-group {\r\n  flex: 1 !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-contact-form-group label {\r\n  display: block !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n}\r\n\r\n.kbkg-contact-form-group input,\r\n.kbkg-contact-form-group select {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-contact-form-group input:focus,\r\n.kbkg-contact-form-group select:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-contact-form-group input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-contact-form-group input.kbkg-input-error,\r\n.kbkg-contact-form-group select.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n.kbkg-contact-error {\r\n  font-size: 13px !important;\r\n  color: #dc2626 !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n/* ---------- Responsive ---------- */\r\n@media (max-width: 768px) {\r\n  .kbkg-estimator-wrapper {\r\n    padding: 28px 20px 24px !important;\r\n  }\r\n\r\n  .kbkg-estimator-wrapper h2.kbkg-estimator-title {\r\n    font-size: 24px !important;\r\n  }\r\n\r\n  .kbkg-estimator-body {\r\n    flex-direction: column !important;\r\n    gap: 32px !important;\r\n  }\r\n\r\n  .kbkg-estimator-wrapper .kbkg-result-value {\r\n    font-size: 20px !important;\r\n  }\r\n}\r\n</style>\r\n\r\n<!-- ===================== HTML ===================== -->\r\n<div class=\"kbkg-estimator-wrapper\">\r\n  <h2 class=\"kbkg-estimator-title\">Estimate Your First Year Tax Savings</h2>\r\n\r\n  <div class=\"kbkg-estimator-body\">\r\n    <!-- LEFT: Form -->\r\n    <div class=\"kbkg-estimator-form\">\r\n\r\n      <!-- Property Address -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z\"/><circle cx=\"12\" cy=\"10\" r=\"3\"/></svg>\r\n          Property Address\r\n        </label>\r\n        <input type=\"text\" class=\"kbkg-field-input\" id=\"kbkg-address\" placeholder=\"123 Main Street, City, State\" autocomplete=\"street-address\">\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-address-error\">Please enter a property address.</div>\r\n      </div>\r\n\r\n      <!-- Purchase Price -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"12\" y1=\"1\" x2=\"12\" y2=\"23\"/><path d=\"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6\"/></svg>\r\n          Purchase Price (Less Land)\r\n        </label>\r\n        <div class=\"kbkg-input-with-prefix\">\r\n          <span class=\"kbkg-input-prefix\">$</span>\r\n          <input type=\"text\" class=\"kbkg-field-input\" id=\"kbkg-price\" placeholder=\"1,500,000\" inputmode=\"numeric\">\r\n        </div>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-price-error\">Please enter a valid purchase price.</div>\r\n      </div>\r\n\r\n      <!-- Date of Purchase -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"/><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"/><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"/><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"/></svg>\r\n          Date of Purchase\r\n        </label>\r\n        <div class=\"kbkg-date-wrapper\">\r\n          <input type=\"text\" class=\"kbkg-field-input kbkg-date-input\" id=\"kbkg-date\" placeholder=\"MM/DD/YYYY\" maxlength=\"10\" autocomplete=\"off\" data-lpignore=\"true\" data-form-type=\"other\">\r\n          <button type=\"button\" class=\"kbkg-date-cal-btn\" id=\"kbkg-date-cal-btn\" title=\"Open calendar\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"/><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"/><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"/><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"/></svg>\r\n          </button>\r\n          <input type=\"date\" id=\"kbkg-date-hidden\" style=\"position:absolute;opacity:0;width:0;height:0;overflow:hidden;pointer-events:none;\" tabindex=\"-1\" aria-hidden=\"true\">\r\n        </div>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-date-error\">Please enter a valid date (MM/DD/YYYY).</div>\r\n      </div>\r\n\r\n      <!-- Property Type -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"4\" y=\"2\" width=\"16\" height=\"20\" rx=\"2\" ry=\"2\"/><line x1=\"9\" y1=\"6\" x2=\"9\" y2=\"6.01\"/><line x1=\"15\" y1=\"6\" x2=\"15\" y2=\"6.01\"/><line x1=\"9\" y1=\"10\" x2=\"9\" y2=\"10.01\"/><line x1=\"15\" y1=\"10\" x2=\"15\" y2=\"10.01\"/><line x1=\"9\" y1=\"14\" x2=\"9\" y2=\"14.01\"/><line x1=\"15\" y1=\"14\" x2=\"15\" y2=\"14.01\"/><line x1=\"9\" y1=\"18\" x2=\"15\" y2=\"18\"/></svg>\r\n          Property Type\r\n        </label>\r\n        <select class=\"kbkg-field-select\" id=\"kbkg-property-type\">\r\n          <option value=\"\" disabled selected>Select property type...</option>\r\n          <option value=\"Single Family Home\">Single Family Home</option>\r\n          <option value=\"Townhouse\">Townhouse</option>\r\n          <option value=\"Condo - High Rise\">Condo - High Rise</option>\r\n          <option value=\"Condo - SFH\">Condo - SFH</option>\r\n          <option value=\"ADU - Freestanding\">ADU - Freestanding</option>\r\n          <option value=\"ADU - Interior Conversion\">ADU - Interior Conversion</option>\r\n          <option value=\"Duplex\">Duplex</option>\r\n          <option value=\"Triplex\">Triplex</option>\r\n          <option value=\"Fourplex\">Fourplex</option>\r\n          <option value=\"Apartment\">Apartment</option>\r\n          <option value=\"Assisted Living\">Assisted Living</option>\r\n          <option value=\"Auto Dealership\">Auto Dealership</option>\r\n          <option value=\"Bank, Branch Office\">Bank, Branch Office</option>\r\n          <option value=\"Car / Truck Repair\">Car / Truck Repair</option>\r\n          <option value=\"Car Wash\">Car Wash</option>\r\n          <option value=\"Casino\">Casino</option>\r\n          <option value=\"Cold Storage\">Cold Storage</option>\r\n          <option value=\"Distribution Center\">Distribution Center</option>\r\n          <option value=\"Food Processing Facility\">Food Processing Facility</option>\r\n          <option value=\"Golf Course/Country Club\">Golf Course/Country Club</option>\r\n          <option value=\"Hospital / Medical Center\">Hospital / Medical Center</option>\r\n          <option value=\"Hotel - Extended Stay\">Hotel - Extended Stay</option>\r\n          <option value=\"Hotel - Full Service\">Hotel - Full Service</option>\r\n          <option value=\"Hotel - Limited Service\">Hotel - Limited Service</option>\r\n          <option value=\"Motel - Exterior Access Units\">Motel - Exterior Access Units</option>\r\n          <option value=\"Motel - Interior Access Units\">Motel - Interior Access Units</option>\r\n          <option value=\"Industrial\">Industrial</option>\r\n          <option value=\"Industrial/Flex - Mixed Use\">Industrial/Flex - Mixed Use</option>\r\n          <option value=\"Lube/Oil Change Facility\">Lube/Oil Change Facility</option>\r\n          <option value=\"Manufacturing - Heavy\">Manufacturing - Heavy</option>\r\n          <option value=\"Manufacturing - Light\">Manufacturing - Light</option>\r\n          <option value=\"Manufacturing - Medium\">Manufacturing - Medium</option>\r\n          <option value=\"Mixed Use (Apt & Other)\">Mixed Use (Apt &amp; Other)</option>\r\n          <option value=\"Nursing Home\">Nursing Home</option>\r\n          <option value=\"Office - General\">Office - General</option>\r\n          <option value=\"Office - Medical\">Office - Medical</option>\r\n          <option value=\"Office Condo\">Office Condo</option>\r\n          <option value=\"R & D Facility\">R &amp; D Facility</option>\r\n          <option value=\"Restaurant - Average\">Restaurant - Average</option>\r\n          <option value=\"Restaurant - Fast Food\">Restaurant - Fast Food</option>\r\n          <option value=\"Restaurant - Upscale\">Restaurant - Upscale</option>\r\n          <option value=\"Retail - Department Store\">Retail - Department Store</option>\r\n          <option value=\"Retail - General\">Retail - General</option>\r\n          <option value=\"Retail - Regional Mall\">Retail - Regional Mall</option>\r\n          <option value=\"Retail - Shopping Center\">Retail - Shopping Center</option>\r\n          <option value=\"Self Storage Facility - Drive Up Access\">Self Storage Facility - Drive Up Access</option>\r\n          <option value=\"Self Storage Facility - Interior Access\">Self Storage Facility - Interior Access</option>\r\n          <option value=\"Service (Gas) Stations\">Service (Gas) Stations</option>\r\n          <option value=\"Supermarket\">Supermarket</option>\r\n          <option value=\"Theater / Cinema\">Theater / Cinema</option>\r\n          <option value=\"Veterinary Facility\">Veterinary Facility</option>\r\n          <option value=\"Warehouse\">Warehouse</option>\r\n        </select>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-type-error\">Please select a property type.</div>\r\n      </div>\r\n\r\n      <!-- Short-Term Rental Toggle -->\r\n      <div class=\"kbkg-toggle-row\">\r\n        <span class=\"kbkg-toggle-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z\"/><polyline points=\"9 22 9 12 15 12 15 22\"/></svg>\r\n          Is this a Short-Term or Vacation Rental?\r\n        </span>\r\n        <div class=\"kbkg-toggle-control\">\r\n          <label class=\"kbkg-toggle\">\r\n            <input type=\"checkbox\" id=\"kbkg-short-term\">\r\n            <span class=\"kbkg-toggle-slider\"></span>\r\n          </label>\r\n          <span class=\"kbkg-toggle-text\" id=\"kbkg-toggle-label\">No</span>\r\n        </div>\r\n      </div>\r\n\r\n      <!-- Submit -->\r\n      <button class=\"kbkg-submit-btn\" id=\"kbkg-estimate-btn\">Estimate Savings</button>\r\n    </div>\r\n\r\n    <!-- RIGHT: Result Cards -->\r\n    <div class=\"kbkg-estimator-results\">\r\n\r\n      <!-- Card 1: Total Year 1 Deductions -->\r\n      <div class=\"kbkg-result-card\">\r\n        <div class=\"kbkg-result-header\">\r\n          <div class=\"kbkg-result-icon\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"23 6 13.5 15.5 8.5 10.5 1 18\"/><polyline points=\"17 6 23 6 23 12\"/></svg>\r\n          </div>\r\n          <span class=\"kbkg-result-label\">Total Year 1 Deductions</span>\r\n        </div>\r\n        <div class=\"kbkg-result-value\" id=\"kbkg-deductions-value\">$0</div>\r\n        <div class=\"kbkg-result-description\">Deductions offset taxable income and reduce tax liability.</div>\r\n      </div>\r\n\r\n      <!-- Card 2: Tax Savings -->\r\n      <div class=\"kbkg-result-card\">\r\n        <div class=\"kbkg-result-header\">\r\n          <div class=\"kbkg-result-icon\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M19 5c-1.5 0-2.8 1.4-3 2-3.5-1.5-11-.3-11 5 0 1.8 0 3 2 4.5V20h4v-2h3v2h4v-4c1-.5 1.7-1 2-2h2v-4h-2c0-1-.5-1.5-1-2\"/><circle cx=\"9\" cy=\"12\" r=\"1\"/></svg>\r\n          </div>\r\n          <span class=\"kbkg-result-label\">Year 1 Tax Savings From Depreciation</span>\r\n        </div>\r\n        <div class=\"kbkg-result-value\" id=\"kbkg-savings-value\">$0</div>\r\n        <div class=\"kbkg-result-assumption\" id=\"kbkg-savings-assumption\"></div>\r\n      </div>\r\n\r\n      <!-- Email My Estimate Button -->\r\n      <button class=\"kbkg-email-btn\" id=\"kbkg-email-btn\" style=\"display:none;\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n        Email My Estimate\r\n      </button>\r\n\r\n      <div class=\"kbkg-results-helper\" id=\"kbkg-results-helper\">\r\n        Enter your property details and click Estimate Savings.\r\n      </div>\r\n\r\n      <div class=\"kbkg-disclaimer\" id=\"kbkg-disclaimer\">\r\n        This high-level estimate is intended for informational purposes only and should not be used for filing tax returns. It assumes bonus depreciation applies and a tax rate of 35%. Actual results will depend on your specific property facts and circumstances. State income tax benefits may be higher. Please consult with a qualified tax professional for advice tailored to your situation.\r\n      </div>\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<!-- ===================== Email Modal ===================== -->\r\n<div class=\"kbkg-modal-overlay\" id=\"kbkg-email-modal\">\r\n  <div class=\"kbkg-modal\">\r\n    <button class=\"kbkg-modal-close\" id=\"kbkg-modal-close\">&times;</button>\r\n\r\n    <div class=\"kbkg-modal-title\">\r\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n      Email Your Results\r\n    </div>\r\n    <p class=\"kbkg-modal-subtitle\">You'll receive a professionally formatted email from CostSegregation.com with your complete estimate.</p>\r\n\r\n    <div class=\"kbkg-modal-summary\">\r\n      <div class=\"kbkg-modal-summary-title\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M22 11.08V12a10 10 0 1 1-5.93-9.14\"/><polyline points=\"22 4 12 14.01 9 11.01\"/></svg>\r\n        Your email will include:\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Property Address:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-address\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Purchase Price:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-price\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Property Type:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-type\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Purchase Date:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-date\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\" id=\"kbkg-modal-str-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Short-Term Rental:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-str\"></span>\r\n      </div>\r\n      <hr class=\"kbkg-modal-summary-divider\">\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Year 1 Deductions:</span>\r\n        <span class=\"kbkg-modal-summary-value kbkg-green\" id=\"kbkg-modal-deductions\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Year 1 Tax Savings:</span>\r\n        <span class=\"kbkg-modal-summary-value kbkg-green\" id=\"kbkg-modal-savings\"></span>\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-form-row\">\r\n      <div class=\"kbkg-modal-form-group\">\r\n        <label>First Name</label>\r\n        <input type=\"text\" id=\"kbkg-modal-fname\" placeholder=\"John\">\r\n      </div>\r\n      <div class=\"kbkg-modal-form-group\">\r\n        <label>Last Name</label>\r\n        <input type=\"text\" id=\"kbkg-modal-lname\" placeholder=\"Smith\">\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-form-group\" style=\"margin-bottom:0;\">\r\n      <label>Email Address</label>\r\n      <input type=\"email\" id=\"kbkg-modal-email\" placeholder=\"john@example.com\">\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-buttons\">\r\n      <button class=\"kbkg-modal-cancel-btn\" id=\"kbkg-modal-cancel-btn\">&times; Cancel</button>\r\n      <button class=\"kbkg-modal-send-btn\" id=\"kbkg-modal-send-btn\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg>\r\n        Send Results\r\n      </button>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-error\" id=\"kbkg-modal-error\"></div>\r\n    <div class=\"kbkg-modal-success\" id=\"kbkg-modal-success\"></div>\r\n\r\n    <div class=\"kbkg-modal-disclaimer\">\r\n      This high-level estimate is intended for informational purposes only and should not be used for filing tax returns. It assumes bonus depreciation applies and a tax rate of 35%. Actual results will depend on your specific property facts and circumstances. State income tax benefits may be higher. Please consult with a qualified tax professional for advice tailored to your situation.\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<!-- ===================== Contact Modal (pre-results) ===================== -->\r\n<div class=\"kbkg-contact-modal-overlay\" id=\"kbkg-contact-modal\">\r\n  <div class=\"kbkg-contact-modal\">\r\n    <button class=\"kbkg-contact-modal-close\" id=\"kbkg-contact-close\">&times;</button>\r\n\r\n    <div class=\"kbkg-contact-modal-title\">Get Your Estimate</div>\r\n\r\n    <div class=\"kbkg-contact-modal-info\">\r\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n      <p>Enter your info to instantly view your results! We'll also email you a detailed summary of tax benefits for your records.</p>\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-row\">\r\n      <div class=\"kbkg-contact-form-group\" style=\"margin-bottom:0;\">\r\n        <label>First Name *</label>\r\n        <input type=\"text\" id=\"kbkg-contact-fname\" placeholder=\"John\">\r\n      </div>\r\n      <div class=\"kbkg-contact-form-group\" style=\"margin-bottom:0;\">\r\n        <label>Last Name *</label>\r\n        <input type=\"text\" id=\"kbkg-contact-lname\" placeholder=\"Smith\">\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-group\">\r\n      <label>Email *</label>\r\n      <input type=\"email\" id=\"kbkg-contact-email\" placeholder=\"john@example.com\">\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-group\">\r\n      <label>How did you first hear about CostSegregation.com?</label>\r\n      <select id=\"kbkg-contact-source\">\r\n        <option value=\"\" disabled selected>Please Select</option>\r\n        <option value=\"ChatGPT/AI\">ChatGPT/AI</option>\r\n        <option value=\"Conference/Event\">Conference/Event</option>\r\n        <option value=\"Postcard/Mail\">Postcard/Mail</option>\r\n        <option value=\"Marketing Email\">Marketing Email</option>\r\n        <option value=\"Online Advertising\">Online Advertising</option>\r\n        <option value=\"Organic Search\">Organic Search</option>\r\n        <option value=\"Other\">Other</option>\r\n        <option value=\"Publication / PR\">Publication / PR</option>\r\n        <option value=\"Referral - Client\">Referral - Client</option>\r\n        <option value=\"Referral - CPA\">Referral - CPA</option>\r\n        <option value=\"Referral - Internal\">Referral - Internal</option>\r\n        <option value=\"Referral - Partner\">Referral - Partner</option>\r\n        <option value=\"Sales Email / Outreach\">Sales Email / Outreach</option>\r\n        <option value=\"Social Media\">Social Media</option>\r\n        <option value=\"Webinar\">Webinar</option>\r\n        <option value=\"Influencer\">Influencer</option>\r\n        <option value=\"Podcast/Radio\">Podcast/Radio</option>\r\n      </select>\r\n    </div>\r\n\r\n    <button class=\"kbkg-contact-submit-btn\" id=\"kbkg-contact-submit\">View My Estimate</button>\r\n    <div class=\"kbkg-contact-error\" id=\"kbkg-contact-error\"></div>\r\n  </div>\r\n</div>\r\n<!-- ===================== JS ===================== -->\r\n<script>\r\n(function () {\r\n  \"use strict\";\r\n\r\n  var API_URL = \"https://app.costsegregation.com/api/project/v1/rcs-quick-estimator\";\r\n  var TAX_RATE = 0.35;\r\n\r\n  /* ---------- Helpers ---------- */\r\n  var UTM_TO_HS_FIELD_MAP = {\r\n    utm_campaign: \"sfdc_utm_campaign\",\r\n    utm_source: \"sfdc_utm_source\",\r\n    utm_medium: \"sfdc_utm_medium\",\r\n    utm_content: \"sfdc_utm_content\"\r\n  };\r\n  \r\n  var GOOGLE_CLICK_TO_HS_FIELD_MAP = {\r\n  gclid: \"google_gclid\",\r\n  gbraid: \"google_gbraid\",\r\n  wbraid: \"google_wbraid\"\r\n};\r\n\r\n  function getCookie(name) {\r\n    var match = document.cookie.match(new RegExp(\"(^|;\\\\s*)\" + name + \"=([^;]*)\"));\r\n    return match ? decodeURIComponent(match[2]) : \"\";\r\n  }\r\n\r\n  function parseQueryUtms() {\r\n    var utms = {};\r\n    try {\r\n      var params = new URLSearchParams(window.location.search || \"\");\r\n      if (params.get(\"utm_campaign\")) utms.utm_campaign = params.get(\"utm_campaign\");\r\n      if (params.get(\"utm_source\")) utms.utm_source = params.get(\"utm_source\");\r\n      if (params.get(\"utm_medium\")) utms.utm_medium = params.get(\"utm_medium\");\r\n      if (params.get(\"utm_content\")) utms.utm_content = params.get(\"utm_content\");\r\n    } catch (e) {}\r\n    return utms;\r\n  }\r\n\r\nfunction parseAffiliateId() {\r\n  try {\r\n    var params = new URLSearchParams(window.location.search || \"\");\r\n    return params.get(\"awinaffid\") || params.get(\"sv_campaign_id\") || \"\";\r\n  } catch (e) {\r\n    return \"\";\r\n  }\r\n}\r\n\r\nfunction parseGoogleClickParams() {\r\n  var values = {};\r\n\r\n  try {\r\n    var params = new URLSearchParams(window.location.search || \"\");\r\n\r\n    Object.keys(GOOGLE_CLICK_TO_HS_FIELD_MAP).forEach(function (key) {\r\n      var value = params.get(key);\r\n      if (value) {\r\n        values[key] = value;\r\n      }\r\n    });\r\n  } catch (e) {\r\n    /* ignore */\r\n  }\r\n\r\n  return values;\r\n}\r\n\r\nfunction getPersistedAffiliateId() {\r\n  var affiliateId = parseAffiliateId();\r\n\r\n  try {\r\n    if (affiliateId) {\r\n      sessionStorage.setItem(\"kbkg_affiliate_id\", affiliateId);\r\n      return affiliateId;\r\n    }\r\n\r\n    return sessionStorage.getItem(\"kbkg_affiliate_id\") || \"\";\r\n  } catch (e) {\r\n    return affiliateId || \"\";\r\n  }\r\n}\r\n\r\nfunction getPersistedGoogleClickParams() {\r\n  var values = parseGoogleClickParams();\r\n\r\n  try {\r\n    Object.keys(GOOGLE_CLICK_TO_HS_FIELD_MAP).forEach(function (key) {\r\n      if (values[key]) {\r\n        sessionStorage.setItem(\"kbkg_\" + key, values[key]);\r\n      } else {\r\n        var storedValue = sessionStorage.getItem(\"kbkg_\" + key) || \"\";\r\n        if (storedValue) {\r\n          values[key] = storedValue;\r\n        }\r\n      }\r\n    });\r\n  } catch (e) {\r\n    /* ignore */\r\n  }\r\n\r\n  return values || {};\r\n}\r\n\r\n/* Store affiliate ID when the page loads */\r\ngetPersistedAffiliateId();\r\n\r\n/* Store Google click parameters when the page loads */\r\ngetPersistedGoogleClickParams();\r\n\r\n  function readKbkgVisitUtms() {\r\n    try {\r\n      var raw = getCookie(\"kbkgvisit\");\r\n      if (!raw) return {};\r\n      var parsed = JSON.parse(raw);\r\n      return (parsed && parsed.kbkgUtm) ? parsed.kbkgUtm : {};\r\n    } catch (e) {\r\n      return {};\r\n    }\r\n  }\r\n\r\n  function hasTrackedUtms(utms) {\r\n    return !!(\r\n      utms &&\r\n      (utms.utm_campaign || utms.utm_source || utms.utm_medium || utms.utm_content)\r\n    );\r\n  }\r\n\r\n  function getPersistedUtmParams() {\r\n    var utms = {};\r\n\r\n    try {\r\n      if (window.kbkgConsentManager && typeof window.kbkgConsentManager.getUtmParams === \"function\") {\r\n        utms = window.kbkgConsentManager.getUtmParams() || {};\r\n      }\r\n    } catch (e) {\r\n      console.warn(\"kbkgConsentManager.getUtmParams failed:\", e);\r\n    }\r\n\r\n    if (!hasTrackedUtms(utms)) {\r\n      utms = readKbkgVisitUtms();\r\n    }\r\n\r\n    if (!hasTrackedUtms(utms)) {\r\n      utms = parseQueryUtms();\r\n    }\r\n\r\n    return utms || {};\r\n  }\r\n\r\n  function formatMoney(value) {\r\n    if (value == null || isNaN(value)) return \"$0\";\r\n    return \"$\" + Math.round(value).toLocaleString(\"en-US\");\r\n  }\r\n\r\n  function formatPriceInput(input) {\r\n    var raw = input.value.replace(/[^0-9]/g, \"\");\r\n    if (raw === \"\") { input.value = \"\"; return; }\r\n    input.value = parseInt(raw, 10).toLocaleString(\"en-US\");\r\n  }\r\n\r\n  function formatDateForApi(dateStr) {\r\n    return dateStr || \"\";\r\n  }\r\n\r\n  function getYearFromDate(dateStr) {\r\n    if (!dateStr) return new Date().getFullYear();\r\n    var parts = dateStr.split(\"/\");\r\n    if (parts.length === 3) return parseInt(parts[2], 10) || new Date().getFullYear();\r\n    return new Date().getFullYear();\r\n  }\r\n\r\n  /* ---------- Toggle label ---------- */\r\n  var toggleCheckbox = document.getElementById(\"kbkg-short-term\");\r\n  var toggleLabel = document.getElementById(\"kbkg-toggle-label\");\r\n  if (toggleCheckbox && toggleLabel) {\r\n    toggleCheckbox.addEventListener(\"change\", function () {\r\n      toggleLabel.textContent = this.checked ? \"Yes\" : \"No\";\r\n    });\r\n  }\r\n\r\n  /* ---------- Price formatting ---------- */\r\n  var priceInput = document.getElementById(\"kbkg-price\");\r\n  if (priceInput) {\r\n    priceInput.addEventListener(\"input\", function () { formatPriceInput(this); });\r\n  }\r\n\r\n  /* ---------- Date input: type + calendar ---------- */\r\n  var dateInput = document.getElementById(\"kbkg-date\");\r\n  var dateHidden = document.getElementById(\"kbkg-date-hidden\");\r\n  var dateCalBtn = document.getElementById(\"kbkg-date-cal-btn\");\r\n\r\n  /* ---------- Inline field error helpers ---------- */\r\n  function isValidDate(m, d, y) {\r\n    if (y < 1900 || y > 2100 || m < 1 || m > 12 || d < 1) return false;\r\n    var date = new Date(y, m - 1, d);\r\n    return date.getFullYear() === y && date.getMonth() === m - 1 && date.getDate() === d;\r\n  }\r\n\r\n  function setFieldError(inputEl, errorId, show) {\r\n    var errEl = document.getElementById(errorId);\r\n    if (errEl) errEl.className = show ? \"kbkg-field-error kbkg-visible\" : \"kbkg-field-error\";\r\n    if (inputEl) {\r\n      if (show) inputEl.classList.add(\"kbkg-input-error\");\r\n      else inputEl.classList.remove(\"kbkg-input-error\");\r\n    }\r\n  }\r\n\r\n  /* Clear errors on input */\r\n  var addressInput = document.getElementById(\"kbkg-address\");\r\n  var priceEl = document.getElementById(\"kbkg-price\");\r\n  var typeEl = document.getElementById(\"kbkg-property-type\");\r\n\r\n  if (addressInput) addressInput.addEventListener(\"input\", function () { setFieldError(this, \"kbkg-address-error\", false); resetResults(); });\r\n  if (priceEl) priceEl.addEventListener(\"input\", function () { setFieldError(this, \"kbkg-price-error\", false); resetResults(); });\r\n  if (typeEl) typeEl.addEventListener(\"change\", function () {\r\n    setFieldError(this, \"kbkg-type-error\", false);\r\n    updateStrVisibility(this.value);\r\n    resetResults();\r\n  });\r\n  if (toggleCheckbox) toggleCheckbox.addEventListener(\"change\", function () { resetResults(); });\r\n\r\n  /* ---------- Show/hide short-term rental based on property type ---------- */\r\n  var strTypes = [\"Single Family Home\",\"Townhouse\",\"Condo - High Rise\",\"Condo - SFH\",\"ADU - Freestanding\",\"ADU - Interior Conversion\",\"Duplex\",\"Triplex\",\"Fourplex\",\"Apartment\"];\r\n  var toggleRow = document.querySelector(\".kbkg-toggle-row\");\r\n\r\n  function updateStrVisibility(val) {\r\n    if (strTypes.indexOf(val) !== -1) {\r\n      toggleRow.style.cssText = \"display:flex!important;\";\r\n    } else {\r\n      toggleRow.style.cssText = \"display:none!important;\";\r\n      toggleCheckbox.checked = false;\r\n      toggleLabel.textContent = \"No\";\r\n    }\r\n  }\r\n\r\n  if (dateInput) {\r\n    dateInput.addEventListener(\"input\", function () {\r\n      var raw = this.value.replace(/[^0-9]/g, \"\");\r\n      var formatted = \"\";\r\n      if (raw.length > 0) formatted = raw.substring(0, 2);\r\n      if (raw.length >= 3) formatted += \"/\" + raw.substring(2, 4);\r\n      if (raw.length >= 5) formatted += \"/\" + raw.substring(4, 8);\r\n      this.value = formatted;\r\n      setFieldError(this, \"kbkg-date-error\", false);\r\n      resetResults();\r\n    });\r\n\r\n    dateInput.addEventListener(\"blur\", function () {\r\n      var val = this.value.trim();\r\n      if (!val) { setFieldError(this, \"kbkg-date-error\", false); return; }\r\n      var parts = val.split(\"/\");\r\n      if (parts.length !== 3 || parts[2].length !== 4) {\r\n        setFieldError(this, \"kbkg-date-error\", true);\r\n        return;\r\n      }\r\n      var m = parseInt(parts[0], 10);\r\n      var d = parseInt(parts[1], 10);\r\n      var y = parseInt(parts[2], 10);\r\n      setFieldError(this, \"kbkg-date-error\", !isValidDate(m, d, y));\r\n    });\r\n  }\r\n\r\n  if (dateCalBtn && dateHidden) {\r\n    dateCalBtn.addEventListener(\"click\", function (e) {\r\n      e.preventDefault();\r\n      if (dateHidden.showPicker) {\r\n        dateHidden.showPicker();\r\n      } else {\r\n        dateHidden.click();\r\n      }\r\n    });\r\n\r\n    dateHidden.addEventListener(\"change\", function () {\r\n      var val = this.value;\r\n      if (!val) return;\r\n      var parts = val.split(\"-\");\r\n      if (parts.length === 3) {\r\n        dateInput.value = parts[1] + \"/\" + parts[2] + \"/\" + parts[0];\r\n        setFieldError(dateInput, \"kbkg-date-error\", false);\r\n      }\r\n    });\r\n  }\r\n\r\n  /* ---------- Display results ---------- */\r\n  function showResults(low, high) {\r\n    var deductionsEl = document.getElementById(\"kbkg-deductions-value\");\r\n    var savingsEl = document.getElementById(\"kbkg-savings-value\");\r\n    var assumptionEl = document.getElementById(\"kbkg-savings-assumption\");\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n\r\n    deductionsEl.textContent = formatMoney(low) + \" to \" + formatMoney(high);\r\n\r\n    var savingsLow = low * TAX_RATE;\r\n    var savingsHigh = high * TAX_RATE;\r\n    savingsEl.textContent = formatMoney(savingsLow) + \" to \" + formatMoney(savingsHigh);\r\n    assumptionEl.textContent = \"Potential cash savings in your first year. State income tax benefits may be higher.\";\r\n\r\n    helperEl.textContent = \"\";\r\n    helperEl.style.display = \"none\";\r\n\r\n    var disclaimerEl = document.getElementById(\"kbkg-disclaimer\");\r\n    disclaimerEl.style.display = \"block\";\r\n\r\n    var emailBtn = document.getElementById(\"kbkg-email-btn\");\r\n    emailBtn.style.display = \"flex\";\r\n  }\r\n\r\n  function showError(msg) {\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-error-msg\";\r\n    helperEl.textContent = msg;\r\n  }\r\n\r\n  function resetResults() {\r\n    document.getElementById(\"kbkg-deductions-value\").textContent = \"$0\";\r\n    document.getElementById(\"kbkg-savings-value\").textContent = \"$0\";\r\n    document.getElementById(\"kbkg-savings-assumption\").textContent = \"\";\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-results-helper\";\r\n    helperEl.textContent = \"Enter your property details and click Estimate Savings.\";\r\n    helperEl.style.display = \"\";\r\n    document.getElementById(\"kbkg-disclaimer\").style.display = \"none\";\r\n    document.getElementById(\"kbkg-email-btn\").style.display = \"none\";\r\n  }\r\n\r\n  function resetHelper() {\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-results-helper\";\r\n  }\r\n\r\n  /* ---------- API call ---------- */\r\n  function callEstimatorApi() {\r\n    var btn = document.getElementById(\"kbkg-estimate-btn\");\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var propertyType = document.getElementById(\"kbkg-property-type\").value;\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n\r\n    var hasError = false;\r\n\r\n    if (!address) {\r\n      setFieldError(document.getElementById(\"kbkg-address\"), \"kbkg-address-error\", true);\r\n      hasError = true;\r\n    }\r\n    if (!price || price <= 0) {\r\n      setFieldError(document.getElementById(\"kbkg-price\"), \"kbkg-price-error\", true);\r\n      hasError = true;\r\n    }\r\n    if (!dateVal) {\r\n      setFieldError(document.getElementById(\"kbkg-date\"), \"kbkg-date-error\", true);\r\n      hasError = true;\r\n    } else {\r\n      var dateParts = dateVal.split(\"/\");\r\n      if (dateParts.length !== 3 || dateParts[2].length !== 4 ||\r\n          !isValidDate(parseInt(dateParts[0],10), parseInt(dateParts[1],10), parseInt(dateParts[2],10))) {\r\n        setFieldError(document.getElementById(\"kbkg-date\"), \"kbkg-date-error\", true);\r\n        hasError = true;\r\n      }\r\n    }\r\n    if (!propertyType) {\r\n      setFieldError(document.getElementById(\"kbkg-property-type\"), \"kbkg-type-error\", true);\r\n      hasError = true;\r\n    }\r\n\r\n    if (hasError) return;\r\n\r\n    resetHelper();\r\n\r\n    var payload = {\r\n      address: address,\r\n      transactionType: \"Acquired Property\",\r\n      propertyType: propertyType,\r\n      buildingType: \"Freestanding/Detached\",\r\n      pisDate: formatDateForApi(dateVal),\r\n      currentTaxYear: getYearFromDate(dateVal),\r\n      purchasePrice: price,\r\n      estimatedLandValue: 0,\r\n      shortTermRental: shortTerm,\r\n      source: \"Website\"\r\n    };\r\n\r\n    btn.disabled = true;\r\n    btn.textContent = \"Calculating...\";\r\n\r\n    fetch(API_URL, {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/json\" },\r\n      body: JSON.stringify(payload)\r\n    })\r\n    .then(function (response) {\r\n      if (!response.ok) throw new Error(\"API request failed (status \" + response.status + \")\");\r\n      return response.json();\r\n    })\r\n    .then(function (data) {\r\n      if (\r\n        data.result &&\r\n        data.result.estimatedAdditionalTaxDeductionsYear1Low != null &&\r\n        data.result.estimatedAdditionalTaxDeductionsYear1High != null\r\n      ) {\r\n        pendingResultLow = data.result.estimatedAdditionalTaxDeductionsYear1Low;\r\n        pendingResultHigh = data.result.estimatedAdditionalTaxDeductionsYear1High;\r\n        openContactModal();\r\n      } else {\r\n        showError(\"Could not calculate estimate. Please check your inputs.\");\r\n      }\r\n    })\r\n    .catch(function (err) {\r\n      console.error(\"Estimator API error:\", err);\r\n      showError(\"Something went wrong. Please try again.\");\r\n    })\r\n    .finally(function () {\r\n      btn.disabled = false;\r\n      btn.textContent = \"Estimate Savings\";\r\n    });\r\n  }\r\n\r\n  var pendingResultLow = 0;\r\n  var pendingResultHigh = 0;\r\n\r\n  var btn = document.getElementById(\"kbkg-estimate-btn\");\r\n  if (btn) {\r\n    btn.addEventListener(\"click\", callEstimatorApi);\r\n  }\r\n\r\n  /* ---------- Contact Modal (pre-results) ---------- */\r\n  var contactOverlay = document.getElementById(\"kbkg-contact-modal\");\r\n  var contactCloseBtn = document.getElementById(\"kbkg-contact-close\");\r\n  var contactSubmitBtn = document.getElementById(\"kbkg-contact-submit\");\r\n\r\n  function openContactModal() {\r\n    document.getElementById(\"kbkg-contact-error\").style.display = \"none\";\r\n    contactSubmitBtn.disabled = false;\r\n    contactSubmitBtn.textContent = \"View My Estimate\";\r\n    contactOverlay.classList.add(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function closeContactModal() {\r\n    contactOverlay.classList.remove(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function submitContact() {\r\n    console.log(\"submitContact fired\");\r\n\r\n    var fname = document.getElementById(\"kbkg-contact-fname\").value.trim();\r\n    var lname = document.getElementById(\"kbkg-contact-lname\").value.trim();\r\n    var email = document.getElementById(\"kbkg-contact-email\").value.trim();\r\n    var source = document.getElementById(\"kbkg-contact-source\").value;\r\n    var errorEl = document.getElementById(\"kbkg-contact-error\");\r\n\r\n    errorEl.style.display = \"none\";\r\n    document.getElementById(\"kbkg-contact-fname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-contact-lname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-contact-email\").classList.remove(\"kbkg-input-error\");\r\n\r\n    var hasErr = false;\r\n    if (!fname) { document.getElementById(\"kbkg-contact-fname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!lname) { document.getElementById(\"kbkg-contact-lname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!email || !/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(email)) { document.getElementById(\"kbkg-contact-email\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (hasErr) {\r\n      errorEl.textContent = \"Please fill in all required fields.\";\r\n      errorEl.style.display = \"block\";\r\n      return;\r\n    }\r\n\r\n    showResults(pendingResultLow, pendingResultHigh);\r\n    closeContactModal();\r\n\r\n    document.getElementById(\"kbkg-modal-fname\").value = fname;\r\n    document.getElementById(\"kbkg-modal-lname\").value = lname;\r\n    document.getElementById(\"kbkg-modal-email\").value = email;\r\n\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var propertyType = document.getElementById(\"kbkg-property-type\").value;\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n    var savingsLow = pendingResultLow * TAX_RATE;\r\n    var savingsHigh = pendingResultHigh * TAX_RATE;\r\n\r\n    var hsFields = [\r\n      { name: \"firstname\", value: fname },\r\n      { name: \"lastname\", value: lname },\r\n      { name: \"email\", value: email },\r\n      { name: \"how_did_you_first_hear_about_kbkg_\", value: source },\r\n      { name: \"full_property_address\", value: address },\r\n      { name: \"building_basis\", value: String(price) },\r\n      { name: \"date_of_purchase\", value: dateVal },\r\n      { name: \"property_type_dropdown\", value: propertyType },\r\n      { name: \"shortterm_or_vacation_rental\", value: shortTerm ? \"true\" : \"false\" },\r\n      { name: \"cost_segregation_calculator_low_tax_deductions_year_1\", value: String(Math.round(pendingResultLow)) },\r\n      { name: \"cost_segregation_calculator_high_tax_deductions_year_1\", value: String(Math.round(pendingResultHigh)) },\r\n      { name: \"year_1_tax_savings_low_end\", value: String(Math.round(savingsLow)) },\r\n      { name: \"year_1_tax_savings_high_end\", value: String(Math.round(savingsHigh)) }\r\n    ];\r\n\r\n    var storedUtms = {};\r\n    try {\r\n      storedUtms = getPersistedUtmParams();\r\n    } catch (e) {\r\n      console.error(\"UTM retrieval error:\", e);\r\n      storedUtms = {};\r\n    }\r\n\r\n    for (var utmKey in UTM_TO_HS_FIELD_MAP) {\r\n      if (Object.prototype.hasOwnProperty.call(UTM_TO_HS_FIELD_MAP, utmKey) && storedUtms[utmKey]) {\r\n        hsFields.push({\r\n          name: UTM_TO_HS_FIELD_MAP[utmKey],\r\n          value: storedUtms[utmKey]\r\n        });\r\n      }\r\n    }\r\n\r\nvar affiliateId = getPersistedAffiliateId();\r\nif (affiliateId) {\r\n  hsFields.push({\r\n    name: \"affiliate_id\",\r\n    value: affiliateId\r\n  });\r\n}\r\n\r\nvar googleClickParams = getPersistedGoogleClickParams();\r\n\r\nfor (var googleClickKey in GOOGLE_CLICK_TO_HS_FIELD_MAP) {\r\n  if (\r\n    Object.prototype.hasOwnProperty.call(GOOGLE_CLICK_TO_HS_FIELD_MAP, googleClickKey) &&\r\n    googleClickParams[googleClickKey]\r\n  ) {\r\n    hsFields.push({\r\n      name: GOOGLE_CLICK_TO_HS_FIELD_MAP[googleClickKey],\r\n      value: googleClickParams[googleClickKey]\r\n    });\r\n  }\r\n}\r\n    var hsContext = {\r\n  pageUri: window.location.href,\r\n  pageName: document.title\r\n};\r\n\r\nvar hutk = getCookie(\"hubspotutk\");\r\nif (hutk) {\r\n  hsContext.hutk = hutk;\r\n}\r\n\r\nvar hsPayload = {\r\n  fields: hsFields,\r\n  context: hsContext\r\n};\r\n\r\n    console.log(\"About to send to HubSpot\", hsPayload);\r\n\r\n    fetch(\"https://api.hsforms.com/submissions/v3/integration/submit/3615782/1883c298-1b07-4401-98fc-cd428ae7b37d\", {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/json\" },\r\n      body: JSON.stringify(hsPayload)\r\n    })\r\n    .then(function (response) {\r\n      if (!response.ok) {\r\n        return response.text().then(function (text) {\r\n          throw new Error(\"HubSpot submission failed (\" + response.status + \"): \" + text);\r\n        });\r\n      }\r\n      return response.text();\r\n    })\r\n    .then(function (text) {\r\n      console.log(\"HubSpot submission succeeded:\", text);\r\n    })\r\n    .catch(function (err) {\r\n      console.error(\"HubSpot submission error:\", err);\r\n    });\r\n  }\r\n\r\n  if (contactCloseBtn) contactCloseBtn.addEventListener(\"click\", closeContactModal);\r\n  if (contactSubmitBtn) contactSubmitBtn.addEventListener(\"click\", submitContact);\r\n  if (contactOverlay) contactOverlay.addEventListener(\"click\", function (e) {\r\n    if (e.target === contactOverlay) closeContactModal();\r\n  });\r\n\r\n  /* ---------- Email Modal ---------- */\r\n  var emailBtn = document.getElementById(\"kbkg-email-btn\");\r\n  var modalOverlay = document.getElementById(\"kbkg-email-modal\");\r\n  var modalCloseBtn = document.getElementById(\"kbkg-modal-close\");\r\n  var modalCancelBtn = document.getElementById(\"kbkg-modal-cancel-btn\");\r\n  var modalSendBtn = document.getElementById(\"kbkg-modal-send-btn\");\r\n\r\n  function getPropertyTypeDisplay() {\r\n    var sel = document.getElementById(\"kbkg-property-type\");\r\n    return sel.options[sel.selectedIndex].text;\r\n  }\r\n\r\n  function formatDateDisplay(dateStr) {\r\n    if (!dateStr) return \"\";\r\n    var parts = dateStr.split(\"/\");\r\n    if (parts.length !== 3) return dateStr;\r\n    var months = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"];\r\n    var m = parseInt(parts[0], 10);\r\n    var d = parseInt(parts[1], 10);\r\n    var y = parts[2];\r\n    var suffix = \"th\";\r\n    if (d === 1 || d === 21 || d === 31) suffix = \"st\";\r\n    else if (d === 2 || d === 22) suffix = \"nd\";\r\n    else if (d === 3 || d === 23) suffix = \"rd\";\r\n    return months[m - 1] + \" \" + d + suffix + \", \" + y;\r\n  }\r\n\r\n  function openEmailModal() {\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n\r\n    document.getElementById(\"kbkg-modal-address\").textContent = address;\r\n    document.getElementById(\"kbkg-modal-price\").textContent = formatMoney(price);\r\n    document.getElementById(\"kbkg-modal-type\").textContent = getPropertyTypeDisplay();\r\n    document.getElementById(\"kbkg-modal-date\").textContent = formatDateDisplay(dateVal);\r\n    var propertyVal = document.getElementById(\"kbkg-property-type\").value;\r\n    var strRow = document.getElementById(\"kbkg-modal-str-row\");\r\n    if (strTypes.indexOf(propertyVal) !== -1) {\r\n      strRow.style.display = \"flex\";\r\n      document.getElementById(\"kbkg-modal-str\").textContent = shortTerm ? \"Yes\" : \"No\";\r\n    } else {\r\n      strRow.style.display = \"none\";\r\n    }\r\n    document.getElementById(\"kbkg-modal-deductions\").textContent = document.getElementById(\"kbkg-deductions-value\").textContent;\r\n    document.getElementById(\"kbkg-modal-savings\").textContent = document.getElementById(\"kbkg-savings-value\").textContent;\r\n\r\n    document.getElementById(\"kbkg-modal-error\").style.display = \"none\";\r\n    document.getElementById(\"kbkg-modal-success\").style.display = \"none\";\r\n    modalSendBtn.disabled = false;\r\n    modalSendBtn.innerHTML = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg> Send Results';\r\n\r\n    modalOverlay.classList.add(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function closeEmailModal() {\r\n    modalOverlay.classList.remove(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function sendEmail() {\r\n    var fname = document.getElementById(\"kbkg-modal-fname\").value.trim();\r\n    var lname = document.getElementById(\"kbkg-modal-lname\").value.trim();\r\n    var email = document.getElementById(\"kbkg-modal-email\").value.trim();\r\n    var errorEl = document.getElementById(\"kbkg-modal-error\");\r\n    var successEl = document.getElementById(\"kbkg-modal-success\");\r\n\r\n    errorEl.style.display = \"none\";\r\n    successEl.style.display = \"none\";\r\n    document.getElementById(\"kbkg-modal-fname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-modal-lname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-modal-email\").classList.remove(\"kbkg-input-error\");\r\n\r\n    var hasErr = false;\r\n    if (!fname) { document.getElementById(\"kbkg-modal-fname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!lname) { document.getElementById(\"kbkg-modal-lname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!email || !/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(email)) { document.getElementById(\"kbkg-modal-email\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (hasErr) {\r\n      errorEl.textContent = \"Please fill in all fields with a valid email.\";\r\n      errorEl.style.display = \"block\";\r\n      return;\r\n    }\r\n\r\n    modalSendBtn.disabled = true;\r\n    modalSendBtn.textContent = \"Sending...\";\r\n\r\n    var payload = {\r\n      firstName: fname,\r\n      lastName: lname,\r\n      email: email,\r\n      address: document.getElementById(\"kbkg-modal-address\").textContent,\r\n      purchasePrice: document.getElementById(\"kbkg-modal-price\").textContent,\r\n      propertyType: document.getElementById(\"kbkg-modal-type\").textContent,\r\n      purchaseDate: document.getElementById(\"kbkg-modal-date\").textContent,\r\n      shortTermRental: document.getElementById(\"kbkg-modal-str\").textContent,\r\n      deductions: document.getElementById(\"kbkg-modal-deductions\").textContent,\r\n      savings: document.getElementById(\"kbkg-modal-savings\").textContent\r\n    };\r\n\r\n    var ajaxUrl = (typeof kbkg_estimator_ajax !== \"undefined\") ? kbkg_estimator_ajax.ajax_url : \"/wp-admin/admin-ajax.php\";\r\n\r\n    fetch(ajaxUrl, {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/x-www-form-urlencoded\" },\r\n      body: \"action=kbkg_send_estimate_email&\" + Object.keys(payload).map(function(k) {\r\n        return encodeURIComponent(k) + \"=\" + encodeURIComponent(payload[k]);\r\n      }).join(\"&\")\r\n    })\r\n    .then(function (response) { return response.json(); })\r\n    .then(function (data) {\r\n      if (data.success) {\r\n        successEl.textContent = \"Email sent successfully! Check your inbox.\";\r\n        successEl.style.display = \"block\";\r\n        modalSendBtn.textContent = \"Sent!\";\r\n      } else {\r\n        throw new Error(data.data || \"Failed to send email.\");\r\n      }\r\n    })\r\n    .catch(function (err) {\r\n      errorEl.textContent = err.message || \"Something went wrong. Please try again.\";\r\n      errorEl.style.display = \"block\";\r\n      modalSendBtn.disabled = false;\r\n      modalSendBtn.innerHTML = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg> Send Results';\r\n    });\r\n  }\r\n\r\n  if (emailBtn) emailBtn.addEventListener(\"click\", openEmailModal);\r\n  if (modalCloseBtn) modalCloseBtn.addEventListener(\"click\", closeEmailModal);\r\n  if (modalCancelBtn) modalCancelBtn.addEventListener(\"click\", closeEmailModal);\r\n  if (modalSendBtn) modalSendBtn.addEventListener(\"click\", sendEmail);\r\n  if (modalOverlay) modalOverlay.addEventListener(\"click\", function (e) {\r\n    if (e.target === modalOverlay) closeEmailModal();\r\n  });\r\n\r\n})();\r\n</script>\r\n\r\n","_margin":{"unit":"px","top":"0","right":"0","bottom":"60","left":"0","isLinked":false},"_title":"","_margin_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_margin_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_margin_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_margin_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_padding":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_padding_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_padding_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_padding_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_padding_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_element_width":"","_element_width_laptop":"","_element_width_tablet_extra":"","_element_width_tablet":"","_element_width_mobile":"","_element_custom_width":{"unit":"%","size":"","sizes":[]},"_element_custom_width_laptop":{"unit":"px","size":"","sizes":[]},"_element_custom_width_tablet_extra":{"unit":"px","size":"","sizes":[]},"_element_custom_width_tablet":{"unit":"px","size":"","sizes":[]},"_element_custom_width_mobile":{"unit":"px","size":"","sizes":[]},"_grid_column":"","_grid_column_laptop":"","_grid_column_tablet_extra":"","_grid_column_tablet":"","_grid_column_mobile":"","_grid_column_custom":"","_grid_column_custom_laptop":"","_grid_column_custom_tablet_extra":"","_grid_column_custom_tablet":"","_grid_column_custom_mobile":"","_grid_row":"","_grid_row_laptop":"","_grid_row_tablet_extra":"","_grid_row_tablet":"","_grid_row_mobile":"","_grid_row_custom":"","_grid_row_custom_laptop":"","_grid_row_custom_tablet_extra":"","_grid_row_custom_tablet":"","_grid_row_custom_mobile":"","_flex_align_self":"","_flex_align_self_laptop":"","_flex_align_self_tablet_extra":"","_flex_align_self_tablet":"","_flex_align_self_mobile":"","_flex_order":"","_flex_order_laptop":"","_flex_order_tablet_extra":"","_flex_order_tablet":"","_flex_order_mobile":"","_flex_order_custom":"","_flex_order_custom_laptop":"","_flex_order_custom_tablet_extra":"","_flex_order_custom_tablet":"","_flex_order_custom_mobile":"","_flex_size":"","_flex_size_laptop":"","_flex_size_tablet_extra":"","_flex_size_tablet":"","_flex_size_mobile":"","_flex_grow":1,"_flex_grow_laptop":"","_flex_grow_tablet_extra":"","_flex_grow_tablet":"","_flex_grow_mobile":"","_flex_shrink":1,"_flex_shrink_laptop":"","_flex_shrink_tablet_extra":"","_flex_shrink_tablet":"","_flex_shrink_mobile":"","_element_vertical_align":"","_element_vertical_align_laptop":"","_element_vertical_align_tablet_extra":"","_element_vertical_align_tablet":"","_element_vertical_align_mobile":"","_position":"","_offset_orientation_h":"start","_offset_x":{"unit":"px","size":0,"sizes":[]},"_offset_x_laptop":{"unit":"px","size":"","sizes":[]},"_offset_x_tablet_extra":{"unit":"px","size":"","sizes":[]},"_offset_x_tablet":{"unit":"px","size":"","sizes":[]},"_offset_x_mobile":{"unit":"px","size":"","sizes":[]},"_offset_x_end":{"unit":"px","size":0,"sizes":[]},"_offset_x_end_laptop":{"unit":"px","size":"","sizes":[]},"_offset_x_end_tablet_extra":{"unit":"px","size":"","sizes":[]},"_offset_x_end_tablet":{"unit":"px","size":"","sizes":[]},"_offset_x_end_mobile":{"unit":"px","size":"","sizes":[]},"_offset_orientation_v":"start","_offset_y":{"unit":"px","size":0,"sizes":[]},"_offset_y_laptop":{"unit":"px","size":"","sizes":[]},"_offset_y_tablet_extra":{"unit":"px","size":"","sizes":[]},"_offset_y_tablet":{"unit":"px","size":"","sizes":[]},"_offset_y_mobile":{"unit":"px","size":"","sizes":[]},"_offset_y_end":{"unit":"px","size":0,"sizes":[]},"_offset_y_end_laptop":{"unit":"px","size":"","sizes":[]},"_offset_y_end_tablet_extra":{"unit":"px","size":"","sizes":[]},"_offset_y_end_tablet":{"unit":"px","size":"","sizes":[]},"_offset_y_end_mobile":{"unit":"px","size":"","sizes":[]},"_z_index":"","_z_index_laptop":"","_z_index_tablet_extra":"","_z_index_tablet":"","_z_index_mobile":"","_element_id":"","_css_classes":"","e_display_conditions":"","_element_cache":"","motion_fx_motion_fx_scrolling":"","motion_fx_translateY_effect":"","motion_fx_translateY_direction":"","motion_fx_translateY_speed":{"unit":"px","size":4,"sizes":[]},"motion_fx_translateY_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"motion_fx_translateX_effect":"","motion_fx_translateX_direction":"","motion_fx_translateX_speed":{"unit":"px","size":4,"sizes":[]},"motion_fx_translateX_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"motion_fx_opacity_effect":"","motion_fx_opacity_direction":"out-in","motion_fx_opacity_level":{"unit":"px","size":10,"sizes":[]},"motion_fx_opacity_range":{"unit":"%","size":"","sizes":{"start":20,"end":80}},"motion_fx_blur_effect":"","motion_fx_blur_direction":"out-in","motion_fx_blur_level":{"unit":"px","size":7,"sizes":[]},"motion_fx_blur_range":{"unit":"%","size":"","sizes":{"start":20,"end":80}},"motion_fx_rotateZ_effect":"","motion_fx_rotateZ_direction":"","motion_fx_rotateZ_speed":{"unit":"px","size":1,"sizes":[]},"motion_fx_rotateZ_affectedRange":{"unit":"%","size":"","sizes":{"start":0,"end":100}},"motion_fx_scale_effect":"","motion_fx_scale_direction":"out-in","motion_fx_scale_speed":{"unit":"px","size":4,"sizes":[]},"motion_fx_scale_range":{"unit":"%","size":"","sizes":{"start":20,"end":80}},"motion_fx_transform_origin_x":"center","motion_fx_transform_origin_y":"center","motion_fx_devices":["desktop","laptop","tablet_extra","tablet","mobile"],"motion_fx_range":"","motion_fx_motion_fx_mouse":"","motion_fx_mouseTrack_effect":"","motion_fx_mouseTrack_direction":"","motion_fx_mouseTrack_speed":{"unit":"px","size":1,"sizes":[]},"motion_fx_tilt_effect":"","motion_fx_tilt_direction":"","motion_fx_tilt_speed":{"unit":"px","size":4,"sizes":[]},"handle_motion_fx_asset_loading":"","sticky":"","sticky_on":["desktop","laptop","tablet_extra","tablet","mobile"],"sticky_offset":0,"sticky_offset_laptop":"","sticky_offset_tablet_extra":"","sticky_offset_tablet":"","sticky_offset_mobile":"","sticky_effects_offset":0,"sticky_effects_offset_laptop":"","sticky_effects_offset_tablet_extra":"","sticky_effects_offset_tablet":"","sticky_effects_offset_mobile":"","sticky_anchor_link_offset":0,"sticky_anchor_link_offset_laptop":"","sticky_anchor_link_offset_tablet_extra":"","sticky_anchor_link_offset_tablet":"","sticky_anchor_link_offset_mobile":"","sticky_parent":"","_animation":"","_animation_laptop":"","_animation_tablet_extra":"","_animation_tablet":"","_animation_mobile":"","animation_duration":"","_animation_delay":"","_transform_rotate_popover":"","_transform_rotateZ_effect":{"unit":"px","size":"","sizes":[]},"_transform_rotateZ_effect_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_rotate_3d":"","_transform_rotateX_effect":{"unit":"px","size":"","sizes":[]},"_transform_rotateX_effect_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect":{"unit":"px","size":"","sizes":[]},"_transform_rotateY_effect_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_perspective_effect":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_translate_popover":"","_transform_translateX_effect":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scale_popover":"","_transform_keep_proportions":"yes","_transform_scale_effect":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_mobile":{"unit":"px","size":"","sizes":[]},"_transform_skew_popover":"","_transform_skewX_effect":{"unit":"px","size":"","sizes":[]},"_transform_skewX_effect_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect":{"unit":"px","size":"","sizes":[]},"_transform_skewY_effect_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_flipX_effect":"","_transform_flipY_effect":"","_transform_rotate_popover_hover":"","_transform_rotateZ_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_rotateZ_effect_hover_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_hover_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_hover_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateZ_effect_hover_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_rotate_3d_hover":"","_transform_rotateX_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_rotateX_effect_hover_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_hover_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_hover_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateX_effect_hover_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_rotateY_effect_hover_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_hover_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_hover_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_rotateY_effect_hover_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_perspective_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_perspective_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_translate_popover_hover":"","_transform_translateX_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_translateX_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_translateY_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scale_popover_hover":"","_transform_keep_proportions_hover":"yes","_transform_scale_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scale_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scaleX_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_hover_laptop":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_hover_tablet_extra":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_hover_tablet":{"unit":"px","size":"","sizes":[]},"_transform_scaleY_effect_hover_mobile":{"unit":"px","size":"","sizes":[]},"_transform_skew_popover_hover":"","_transform_skewX_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_skewX_effect_hover_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_hover_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_hover_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_skewX_effect_hover_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_hover":{"unit":"px","size":"","sizes":[]},"_transform_skewY_effect_hover_laptop":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_hover_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_hover_tablet":{"unit":"deg","size":"","sizes":[]},"_transform_skewY_effect_hover_mobile":{"unit":"deg","size":"","sizes":[]},"_transform_flipX_effect_hover":"","_transform_flipY_effect_hover":"","_transform_transition_hover":{"unit":"px","size":"","sizes":[]},"motion_fx_transform_x_anchor_point":"","motion_fx_transform_x_anchor_point_laptop":"","motion_fx_transform_x_anchor_point_tablet_extra":"","motion_fx_transform_x_anchor_point_tablet":"","motion_fx_transform_x_anchor_point_mobile":"","motion_fx_transform_y_anchor_point":"","motion_fx_transform_y_anchor_point_laptop":"","motion_fx_transform_y_anchor_point_tablet_extra":"","motion_fx_transform_y_anchor_point_tablet":"","motion_fx_transform_y_anchor_point_mobile":"","_background_background":"","_background_color":"","_background_color_stop":{"unit":"%","size":0,"sizes":[]},"_background_color_stop_laptop":{"unit":"%","size":"","sizes":[]},"_background_color_stop_tablet_extra":{"unit":"%","size":"","sizes":[]},"_background_color_stop_tablet":{"unit":"%","size":"","sizes":[]},"_background_color_stop_mobile":{"unit":"%","size":"","sizes":[]},"_background_color_b":"#f2295b","_background_color_b_stop":{"unit":"%","size":100,"sizes":[]},"_background_color_b_stop_laptop":{"unit":"%","size":"","sizes":[]},"_background_color_b_stop_tablet_extra":{"unit":"%","size":"","sizes":[]},"_background_color_b_stop_tablet":{"unit":"%","size":"","sizes":[]},"_background_color_b_stop_mobile":{"unit":"%","size":"","sizes":[]},"_background_gradient_type":"linear","_background_gradient_angle":{"unit":"deg","size":180,"sizes":[]},"_background_gradient_angle_laptop":{"unit":"deg","size":"","sizes":[]},"_background_gradient_angle_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_background_gradient_angle_tablet":{"unit":"deg","size":"","sizes":[]},"_background_gradient_angle_mobile":{"unit":"deg","size":"","sizes":[]},"_background_gradient_position":"center center","_background_gradient_position_laptop":"","_background_gradient_position_tablet_extra":"","_background_gradient_position_tablet":"","_background_gradient_position_mobile":"","_background_image":{"url":"","id":"","size":""},"_background_image_laptop":{"url":"","id":"","size":""},"_background_image_tablet_extra":{"url":"","id":"","size":""},"_background_image_tablet":{"url":"","id":"","size":""},"_background_image_mobile":{"url":"","id":"","size":""},"_background_position":"","_background_position_laptop":"","_background_position_tablet_extra":"","_background_position_tablet":"","_background_position_mobile":"","_background_xpos":{"unit":"px","size":0,"sizes":[]},"_background_xpos_laptop":{"unit":"px","size":"","sizes":[]},"_background_xpos_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_xpos_tablet":{"unit":"px","size":0,"sizes":[]},"_background_xpos_mobile":{"unit":"px","size":0,"sizes":[]},"_background_ypos":{"unit":"px","size":0,"sizes":[]},"_background_ypos_laptop":{"unit":"px","size":"","sizes":[]},"_background_ypos_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_ypos_tablet":{"unit":"px","size":0,"sizes":[]},"_background_ypos_mobile":{"unit":"px","size":0,"sizes":[]},"_background_attachment":"","_background_repeat":"","_background_repeat_laptop":"","_background_repeat_tablet_extra":"","_background_repeat_tablet":"","_background_repeat_mobile":"","_background_size":"","_background_size_laptop":"","_background_size_tablet_extra":"","_background_size_tablet":"","_background_size_mobile":"","_background_bg_width":{"unit":"%","size":100,"sizes":[]},"_background_bg_width_laptop":{"unit":"px","size":"","sizes":[]},"_background_bg_width_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_bg_width_tablet":{"unit":"px","size":"","sizes":[]},"_background_bg_width_mobile":{"unit":"px","size":"","sizes":[]},"_background_video_link":"","_background_video_start":"","_background_video_end":"","_background_play_once":"","_background_play_on_mobile":"","_background_privacy_mode":"","_background_video_fallback":{"url":"","id":"","size":""},"_background_slideshow_gallery":[],"_background_slideshow_loop":"yes","_background_slideshow_slide_duration":5000,"_background_slideshow_slide_transition":"fade","_background_slideshow_transition_duration":500,"_background_slideshow_background_size":"","_background_slideshow_background_size_laptop":"","_background_slideshow_background_size_tablet_extra":"","_background_slideshow_background_size_tablet":"","_background_slideshow_background_size_mobile":"","_background_slideshow_background_position":"","_background_slideshow_background_position_laptop":"","_background_slideshow_background_position_tablet_extra":"","_background_slideshow_background_position_tablet":"","_background_slideshow_background_position_mobile":"","_background_slideshow_lazyload":"","_background_slideshow_ken_burns":"","_background_slideshow_ken_burns_zoom_direction":"in","_background_hover_background":"","_background_hover_color":"","_background_hover_color_stop":{"unit":"%","size":0,"sizes":[]},"_background_hover_color_stop_laptop":{"unit":"%","size":"","sizes":[]},"_background_hover_color_stop_tablet_extra":{"unit":"%","size":"","sizes":[]},"_background_hover_color_stop_tablet":{"unit":"%","size":"","sizes":[]},"_background_hover_color_stop_mobile":{"unit":"%","size":"","sizes":[]},"_background_hover_color_b":"#f2295b","_background_hover_color_b_stop":{"unit":"%","size":100,"sizes":[]},"_background_hover_color_b_stop_laptop":{"unit":"%","size":"","sizes":[]},"_background_hover_color_b_stop_tablet_extra":{"unit":"%","size":"","sizes":[]},"_background_hover_color_b_stop_tablet":{"unit":"%","size":"","sizes":[]},"_background_hover_color_b_stop_mobile":{"unit":"%","size":"","sizes":[]},"_background_hover_gradient_type":"linear","_background_hover_gradient_angle":{"unit":"deg","size":180,"sizes":[]},"_background_hover_gradient_angle_laptop":{"unit":"deg","size":"","sizes":[]},"_background_hover_gradient_angle_tablet_extra":{"unit":"deg","size":"","sizes":[]},"_background_hover_gradient_angle_tablet":{"unit":"deg","size":"","sizes":[]},"_background_hover_gradient_angle_mobile":{"unit":"deg","size":"","sizes":[]},"_background_hover_gradient_position":"center center","_background_hover_gradient_position_laptop":"","_background_hover_gradient_position_tablet_extra":"","_background_hover_gradient_position_tablet":"","_background_hover_gradient_position_mobile":"","_background_hover_image":{"url":"","id":"","size":""},"_background_hover_image_laptop":{"url":"","id":"","size":""},"_background_hover_image_tablet_extra":{"url":"","id":"","size":""},"_background_hover_image_tablet":{"url":"","id":"","size":""},"_background_hover_image_mobile":{"url":"","id":"","size":""},"_background_hover_position":"","_background_hover_position_laptop":"","_background_hover_position_tablet_extra":"","_background_hover_position_tablet":"","_background_hover_position_mobile":"","_background_hover_xpos":{"unit":"px","size":0,"sizes":[]},"_background_hover_xpos_laptop":{"unit":"px","size":"","sizes":[]},"_background_hover_xpos_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_hover_xpos_tablet":{"unit":"px","size":0,"sizes":[]},"_background_hover_xpos_mobile":{"unit":"px","size":0,"sizes":[]},"_background_hover_ypos":{"unit":"px","size":0,"sizes":[]},"_background_hover_ypos_laptop":{"unit":"px","size":"","sizes":[]},"_background_hover_ypos_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_hover_ypos_tablet":{"unit":"px","size":0,"sizes":[]},"_background_hover_ypos_mobile":{"unit":"px","size":0,"sizes":[]},"_background_hover_attachment":"","_background_hover_repeat":"","_background_hover_repeat_laptop":"","_background_hover_repeat_tablet_extra":"","_background_hover_repeat_tablet":"","_background_hover_repeat_mobile":"","_background_hover_size":"","_background_hover_size_laptop":"","_background_hover_size_tablet_extra":"","_background_hover_size_tablet":"","_background_hover_size_mobile":"","_background_hover_bg_width":{"unit":"%","size":100,"sizes":[]},"_background_hover_bg_width_laptop":{"unit":"px","size":"","sizes":[]},"_background_hover_bg_width_tablet_extra":{"unit":"px","size":"","sizes":[]},"_background_hover_bg_width_tablet":{"unit":"px","size":"","sizes":[]},"_background_hover_bg_width_mobile":{"unit":"px","size":"","sizes":[]},"_background_hover_video_link":"","_background_hover_video_start":"","_background_hover_video_end":"","_background_hover_play_once":"","_background_hover_play_on_mobile":"","_background_hover_privacy_mode":"","_background_hover_video_fallback":{"url":"","id":"","size":""},"_background_hover_slideshow_gallery":[],"_background_hover_slideshow_loop":"yes","_background_hover_slideshow_slide_duration":5000,"_background_hover_slideshow_slide_transition":"fade","_background_hover_slideshow_transition_duration":500,"_background_hover_slideshow_background_size":"","_background_hover_slideshow_background_size_laptop":"","_background_hover_slideshow_background_size_tablet_extra":"","_background_hover_slideshow_background_size_tablet":"","_background_hover_slideshow_background_size_mobile":"","_background_hover_slideshow_background_position":"","_background_hover_slideshow_background_position_laptop":"","_background_hover_slideshow_background_position_tablet_extra":"","_background_hover_slideshow_background_position_tablet":"","_background_hover_slideshow_background_position_mobile":"","_background_hover_slideshow_lazyload":"","_background_hover_slideshow_ken_burns":"","_background_hover_slideshow_ken_burns_zoom_direction":"in","_background_hover_transition":{"unit":"px","size":"","sizes":[]},"_border_border":"","_border_width":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_width_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_width_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_width_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_width_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_color":"","_border_radius":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_box_shadow_box_shadow_type":"","_box_shadow_box_shadow":{"horizontal":0,"vertical":0,"blur":10,"spread":0,"color":"rgba(0,0,0,0.5)"},"_box_shadow_box_shadow_position":" ","_border_hover_border":"","_border_hover_width":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_hover_width_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_hover_width_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_hover_width_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_hover_width_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_hover_color":"","_border_radius_hover":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_hover_laptop":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_hover_tablet_extra":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_hover_tablet":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_border_radius_hover_mobile":{"unit":"px","top":"","right":"","bottom":"","left":"","isLinked":true},"_box_shadow_hover_box_shadow_type":"","_box_shadow_hover_box_shadow":{"horizontal":0,"vertical":0,"blur":10,"spread":0,"color":"rgba(0,0,0,0.5)"},"_box_shadow_hover_box_shadow_position":" ","_border_hover_transition":{"unit":"px","size":"","sizes":[]},"_mask_switch":"","_mask_shape":"circle","_mask_image":{"url":"","id":"","size":""},"_mask_image_laptop":{"url":"","id":"","size":""},"_mask_image_tablet_extra":{"url":"","id":"","size":""},"_mask_image_tablet":{"url":"","id":"","size":""},"_mask_image_mobile":{"url":"","id":"","size":""},"_mask_size":"contain","_mask_size_laptop":"","_mask_size_tablet_extra":"","_mask_size_tablet":"","_mask_size_mobile":"","_mask_size_scale":{"unit":"%","size":100,"sizes":[]},"_mask_size_scale_laptop":{"unit":"px","size":"","sizes":[]},"_mask_size_scale_tablet_extra":{"unit":"px","size":"","sizes":[]},"_mask_size_scale_tablet":{"unit":"px","size":"","sizes":[]},"_mask_size_scale_mobile":{"unit":"px","size":"","sizes":[]},"_mask_position":"center center","_mask_position_laptop":"","_mask_position_tablet_extra":"","_mask_position_tablet":"","_mask_position_mobile":"","_mask_position_x":{"unit":"%","size":0,"sizes":[]},"_mask_position_x_laptop":{"unit":"px","size":"","sizes":[]},"_mask_position_x_tablet_extra":{"unit":"px","size":"","sizes":[]},"_mask_position_x_tablet":{"unit":"px","size":"","sizes":[]},"_mask_position_x_mobile":{"unit":"px","size":"","sizes":[]},"_mask_position_y":{"unit":"%","size":0,"sizes":[]},"_mask_position_y_laptop":{"unit":"px","size":"","sizes":[]},"_mask_position_y_tablet_extra":{"unit":"px","size":"","sizes":[]},"_mask_position_y_tablet":{"unit":"px","size":"","sizes":[]},"_mask_position_y_mobile":{"unit":"px","size":"","sizes":[]},"_mask_repeat":"no-repeat","_mask_repeat_laptop":"","_mask_repeat_tablet_extra":"","_mask_repeat_tablet":"","_mask_repeat_mobile":"","hide_desktop":"","hide_laptop":"","hide_tablet_extra":"","hide_tablet":"","hide_mobile":"","_attributes":"","custom_css":""},"defaultEditSettings":{"defaultEditRoute":"content"},"interactions":{},"elements":[],"widgetType":"html","htmlCache":"\t\t\t<!--\r\n  KBKG Tax Savings Estimator — Redesigned Layout\r\n  ================================================\r\n  Drop this into a single Elementor \"Custom HTML\" widget,\r\n  replacing the entire current estimator section.\r\n  Calls the API directly — no dependency on KbkgBasicEstimator library.\r\n-->\r\n\r\n<!-- ===================== CSS ===================== -->\r\n<style>\r\n/* ---------- Container ---------- */\r\n.kbkg-estimator-wrapper {\r\n  max-width: 100% !important;\r\n  margin: 0 auto !important;\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06) !important;\r\n  padding: 48px 48px 40px !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper *,\r\n.kbkg-estimator-wrapper *::before,\r\n.kbkg-estimator-wrapper *::after {\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper h2.kbkg-estimator-title {\r\n  text-align: center !important;\r\n  font-size: 24px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 28px !important;\r\n  padding: 0 !important;\r\n  line-height: 1.3 !important;\r\n  letter-spacing: -0.01em !important;\r\n}\r\n\r\n.kbkg-estimator-body {\r\n  display: flex !important;\r\n  gap: 40px !important;\r\n  align-items: flex-start !important;\r\n  border: none !important;\r\n}\r\n\r\n/* (vertical divider merged into main .kbkg-estimator-results rule below) */\r\n\r\n/* ---------- Force ALL SVGs inside our wrapper to respect size ---------- */\r\n.kbkg-estimator-wrapper svg {\r\n  max-width: 100% !important;\r\n  height: auto !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper svg.kbkg-icon {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  min-height: 18px !important;\r\n  max-width: 18px !important;\r\n  max-height: 18px !important;\r\n  flex-shrink: 0 !important;\r\n  color: #475569 !important;\r\n  display: inline-block !important;\r\n  vertical-align: middle !important;\r\n}\r\n\r\n/* ---------- Left Column (Form) ---------- */\r\n.kbkg-estimator-form {\r\n  flex: 1 !important;\r\n  min-width: 0 !important;\r\n}\r\n\r\n.kbkg-field-group {\r\n  margin-bottom: 16px !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-label {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 6px !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n  line-height: 1.4 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input,\r\n.kbkg-estimator-wrapper .kbkg-field-select {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n  line-height: 1.4 !important;\r\n  height: auto !important;\r\n  margin: 0 !important;\r\n  -webkit-appearance: none !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input:focus,\r\n.kbkg-estimator-wrapper .kbkg-field-select:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n/* Dollar prefix input */\r\n.kbkg-input-with-prefix {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-input-prefix {\r\n  position: absolute !important;\r\n  left: 14px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  font-size: 15px !important;\r\n  color: #94a3b8 !important;\r\n  pointer-events: none !important;\r\n  z-index: 1 !important;\r\n}\r\n\r\n.kbkg-input-with-prefix .kbkg-field-input {\r\n  padding-left: 30px !important;\r\n}\r\n\r\n/* Date input wrapper */\r\n.kbkg-input-with-icon {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper svg.kbkg-input-icon {\r\n  position: absolute !important;\r\n  left: 14px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  width: 16px !important;\r\n  height: 16px !important;\r\n  min-width: 16px !important;\r\n  max-width: 16px !important;\r\n  color: #94a3b8 !important;\r\n  pointer-events: none !important;\r\n  z-index: 1 !important;\r\n}\r\n\r\n.kbkg-input-with-icon .kbkg-field-input {\r\n  padding-left: 38px !important;\r\n}\r\n\r\n/* Date input wrapper with calendar button */\r\n.kbkg-date-wrapper {\r\n  position: relative !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper input[type=\"text\"].kbkg-date-input {\r\n  cursor: text !important;\r\n  padding-right: 40px !important;\r\n}\r\n\r\n.kbkg-date-cal-btn {\r\n  position: absolute !important;\r\n  right: 8px !important;\r\n  top: 50% !important;\r\n  transform: translateY(-50%) !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  cursor: pointer !important;\r\n  padding: 4px !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-date-cal-btn svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n  color: #94a3b8 !important;\r\n  stroke: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-date-cal-btn:hover svg {\r\n  color: #475569 !important;\r\n  stroke: #475569 !important;\r\n}\r\n\r\n.kbkg-field-error {\r\n  font-size: 11px !important;\r\n  color: #dc2626 !important;\r\n  margin-top: 4px !important;\r\n  display: none !important;\r\n}\r\n\r\n.kbkg-field-error.kbkg-visible {\r\n  display: block !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-field-input.kbkg-input-error,\r\n.kbkg-estimator-wrapper .kbkg-field-select.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n/* ---------- Toggle row ---------- */\r\n.kbkg-toggle-row {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: space-between !important;\r\n  margin-bottom: 24px !important;\r\n  flex-wrap: nowrap !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-toggle-label {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 6px !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  line-height: 1.4 !important;\r\n  flex-shrink: 1 !important;\r\n  min-width: 0 !important;\r\n}\r\n\r\n.kbkg-toggle-control {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 8px !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.kbkg-toggle {\r\n  position: relative !important;\r\n  width: 44px !important;\r\n  min-width: 44px !important;\r\n  height: 24px !important;\r\n  cursor: pointer !important;\r\n  display: inline-block !important;\r\n}\r\n\r\n.kbkg-toggle input {\r\n  opacity: 0 !important;\r\n  width: 0 !important;\r\n  height: 0 !important;\r\n  position: absolute !important;\r\n}\r\n\r\n.kbkg-toggle-slider {\r\n  position: absolute !important;\r\n  inset: 0 !important;\r\n  background: #cbd5e1 !important;\r\n  border-radius: 12px !important;\r\n  transition: background 0.2s !important;\r\n}\r\n\r\n.kbkg-toggle-slider::before {\r\n  content: '' !important;\r\n  position: absolute !important;\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  left: 3px !important;\r\n  top: 3px !important;\r\n  background: #ffffff !important;\r\n  border-radius: 50% !important;\r\n  transition: transform 0.2s !important;\r\n}\r\n\r\n.kbkg-toggle input:checked + .kbkg-toggle-slider {\r\n  background: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-toggle input:checked + .kbkg-toggle-slider::before {\r\n  transform: translateX(20px) !important;\r\n}\r\n\r\n.kbkg-toggle-text {\r\n  font-size: 14px !important;\r\n  color: #64748b !important;\r\n  min-width: 28px !important;\r\n}\r\n\r\n/* ---------- Submit button ---------- */\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s !important;\r\n  line-height: 1.4 !important;\r\n  text-transform: none !important;\r\n  letter-spacing: normal !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:active {\r\n  background: #0f2035 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper button.kbkg-submit-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n/* ---------- Right Column (Results) ---------- */\r\n.kbkg-estimator-wrapper .kbkg-estimator-results {\r\n  flex: 1 !important;\r\n  min-width: 0 !important;\r\n  display: flex !important;\r\n  flex-direction: column !important;\r\n  gap: 20px !important;\r\n  padding-top: 8px !important;\r\n  border-left: 1px solid #e2e8f0 !important;\r\n  padding-left: 40px !important;\r\n}\r\n\r\n.kbkg-result-card {\r\n  border: 2px solid #16a34a !important;\r\n  border-radius: 12px !important;\r\n  padding: 20px 24px !important;\r\n  background: #f0fdf4 !important;\r\n}\r\n\r\n.kbkg-result-header {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 4px !important;\r\n}\r\n\r\n.kbkg-result-icon {\r\n  width: 36px !important;\r\n  min-width: 36px !important;\r\n  height: 36px !important;\r\n  min-height: 36px !important;\r\n  border-radius: 50% !important;\r\n  background: #d1e7dd !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  flex-shrink: 0 !important;\r\n}\r\n\r\n.kbkg-result-icon svg {\r\n  width: 16px !important;\r\n  height: 16px !important;\r\n  min-width: 16px !important;\r\n  max-width: 16px !important;\r\n  color: #16a34a !important;\r\n  stroke: #16a34a !important;\r\n}\r\n\r\n.kbkg-result-label {\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #16a34a !important;\r\n  line-height: 1.3 !important;\r\n}\r\n\r\n.kbkg-estimator-wrapper .kbkg-result-value {\r\n  font-size: 24px !important;\r\n  font-weight: 800 !important;\r\n  color: #16a34a !important;\r\n  margin: 6px 0 4px !important;\r\n  line-height: 1.2 !important;\r\n  padding: 0 !important;\r\n}\r\n\r\n.kbkg-result-description {\r\n  font-size: 11px !important;\r\n  color: #64748b !important;\r\n  line-height: 1.5 !important;\r\n}\r\n\r\n.kbkg-result-assumption {\r\n  font-size: 12px !important;\r\n  color: #94a3b8 !important;\r\n  font-style: italic !important;\r\n  margin-top: 2px !important;\r\n}\r\n\r\n.kbkg-results-helper {\r\n  text-align: center !important;\r\n  font-size: 14px !important;\r\n  color: #94a3b8 !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n/* ---------- Error ---------- */\r\n.kbkg-disclaimer {\r\n  font-size: 12px !important;\r\n  color: #94a3b8 !important;\r\n  line-height: 1.5 !important;\r\n  margin-top: 0 !important;\r\n  display: none;\r\n}\r\n\r\n/* ---------- Email My Estimate Button ---------- */\r\n.kbkg-email-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e293b !important;\r\n  background: #ffffff !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s, border-color 0.2s !important;\r\n  display: none;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 8px !important;\r\n}\r\n\r\n.kbkg-email-btn:hover {\r\n  background: #f8fafc !important;\r\n  border-color: #cbd5e1 !important;\r\n}\r\n\r\n.kbkg-email-btn svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n}\r\n\r\n/* ---------- Email Modal ---------- */\r\n.kbkg-modal-overlay {\r\n  display: none;\r\n  position: fixed !important;\r\n  inset: 0 !important;\r\n  background: rgba(0, 0, 0, 0.5) !important;\r\n  z-index: 99999 !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-modal-overlay.kbkg-modal-open {\r\n  display: flex !important;\r\n}\r\n\r\n.kbkg-modal {\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  padding: 28px !important;\r\n  max-width: 480px !important;\r\n  width: 90% !important;\r\n  max-height: none !important;\r\n  overflow-y: visible !important;\r\n  position: relative !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n}\r\n\r\n.kbkg-modal-close {\r\n  position: absolute !important;\r\n  top: 16px !important;\r\n  right: 16px !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  font-size: 24px !important;\r\n  color: #94a3b8 !important;\r\n  cursor: pointer !important;\r\n  line-height: 1 !important;\r\n  padding: 4px !important;\r\n}\r\n\r\n.kbkg-modal-close:hover {\r\n  color: #475569 !important;\r\n}\r\n\r\n.kbkg-modal-title {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 10px !important;\r\n  font-size: 18px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 6px !important;\r\n}\r\n\r\n.kbkg-modal-title svg {\r\n  width: 24px !important;\r\n  height: 24px !important;\r\n  min-width: 24px !important;\r\n  max-width: 24px !important;\r\n  color: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-modal-subtitle {\r\n  font-size: 13px !important;\r\n  color: #64748b !important;\r\n  margin: 0 0 16px !important;\r\n  line-height: 1.5 !important;\r\n}\r\n\r\n.kbkg-modal-summary {\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 10px !important;\r\n  padding: 16px 20px !important;\r\n  margin-bottom: 20px !important;\r\n}\r\n\r\n.kbkg-modal-summary-title {\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  gap: 8px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e3a5f !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-modal-summary-title svg {\r\n  width: 18px !important;\r\n  height: 18px !important;\r\n  min-width: 18px !important;\r\n  max-width: 18px !important;\r\n  color: #1e3a5f !important;\r\n}\r\n\r\n.kbkg-modal-summary-row {\r\n  display: flex !important;\r\n  justify-content: space-between !important;\r\n  padding: 4px 0 !important;\r\n  font-size: 13px !important;\r\n}\r\n\r\n.kbkg-modal-summary-label {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-modal-summary-value {\r\n  color: #1e293b !important;\r\n  font-weight: 500 !important;\r\n}\r\n\r\n.kbkg-modal-summary-value.kbkg-green {\r\n  color: #16a34a !important;\r\n  font-weight: 600 !important;\r\n}\r\n\r\n.kbkg-modal-summary-divider {\r\n  border: none !important;\r\n  border-top: 1px solid #e2e8f0 !important;\r\n  margin: 10px 0 !important;\r\n}\r\n\r\n.kbkg-modal-form-row {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-modal-form-group {\r\n  flex: 1 !important;\r\n}\r\n\r\n.kbkg-modal-form-group label {\r\n  display: block !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n}\r\n\r\n.kbkg-modal-form-group input {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-modal-form-group input:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-modal-form-group input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-modal-form-group input.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n.kbkg-modal-buttons {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-top: 16px !important;\r\n}\r\n\r\n.kbkg-modal-cancel-btn {\r\n  flex: 1 !important;\r\n  padding: 12px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 600 !important;\r\n  color: #1e293b !important;\r\n  background: #ffffff !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 6px !important;\r\n}\r\n\r\n.kbkg-modal-cancel-btn:hover {\r\n  background: #f8fafc !important;\r\n}\r\n\r\n.kbkg-modal-send-btn {\r\n  flex: 1 !important;\r\n  padding: 12px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  display: flex !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n  gap: 6px !important;\r\n}\r\n\r\n.kbkg-modal-send-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-modal-send-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n.kbkg-modal-disclaimer {\r\n  font-size: 10px !important;\r\n  color: #94a3b8 !important;\r\n  line-height: 1.5 !important;\r\n  margin-top: 12px !important;\r\n  text-align: center !important;\r\n}\r\n\r\n.kbkg-modal-error {\r\n  font-size: 13px !important;\r\n  color: #dc2626 !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n.kbkg-modal-success {\r\n  font-size: 14px !important;\r\n  color: #16a34a !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n.kbkg-error-msg {\r\n  text-align: center !important;\r\n  font-size: 14px !important;\r\n  color: #dc2626 !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n/* ---------- Contact Modal (pre-results) ---------- */\r\n.kbkg-contact-modal-overlay {\r\n  display: none;\r\n  position: fixed !important;\r\n  inset: 0 !important;\r\n  background: rgba(0, 0, 0, 0.5) !important;\r\n  z-index: 99998 !important;\r\n  align-items: center !important;\r\n  justify-content: center !important;\r\n}\r\n\r\n.kbkg-contact-modal-overlay.kbkg-modal-open {\r\n  display: flex !important;\r\n}\r\n\r\n.kbkg-contact-modal {\r\n  background: #ffffff !important;\r\n  border-radius: 16px !important;\r\n  padding: 28px !important;\r\n  max-width: 480px !important;\r\n  width: 90% !important;\r\n  position: relative !important;\r\n  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;\r\n  color: #1e293b !important;\r\n}\r\n\r\n.kbkg-contact-modal-close {\r\n  position: absolute !important;\r\n  top: 16px !important;\r\n  right: 16px !important;\r\n  background: none !important;\r\n  border: none !important;\r\n  font-size: 24px !important;\r\n  color: #94a3b8 !important;\r\n  cursor: pointer !important;\r\n  line-height: 1 !important;\r\n  padding: 4px !important;\r\n}\r\n\r\n.kbkg-contact-modal-close:hover {\r\n  color: #475569 !important;\r\n}\r\n\r\n.kbkg-contact-modal-title {\r\n  font-size: 20px !important;\r\n  font-weight: 700 !important;\r\n  color: #0f172a !important;\r\n  margin: 0 0 16px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info {\r\n  background: #f8fafc !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 10px !important;\r\n  padding: 16px 20px !important;\r\n  margin-bottom: 20px !important;\r\n  display: flex !important;\r\n  align-items: flex-start !important;\r\n  gap: 12px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info svg {\r\n  width: 20px !important;\r\n  height: 20px !important;\r\n  min-width: 20px !important;\r\n  max-width: 20px !important;\r\n  color: #1e3a5f !important;\r\n  margin-top: 2px !important;\r\n}\r\n\r\n.kbkg-contact-modal-info p {\r\n  font-size: 13px !important;\r\n  color: #475569 !important;\r\n  line-height: 1.5 !important;\r\n  margin: 0 !important;\r\n}\r\n\r\n.kbkg-contact-form-row {\r\n  display: flex !important;\r\n  gap: 12px !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-contact-form-group {\r\n  flex: 1 !important;\r\n  margin-bottom: 12px !important;\r\n}\r\n\r\n.kbkg-contact-form-group label {\r\n  display: block !important;\r\n  font-size: 13px !important;\r\n  font-weight: 600 !important;\r\n  color: #0f172a !important;\r\n  margin-bottom: 6px !important;\r\n}\r\n\r\n.kbkg-contact-form-group input,\r\n.kbkg-contact-form-group select {\r\n  width: 100% !important;\r\n  padding: 10px 12px !important;\r\n  font-size: 13px !important;\r\n  border: 1px solid #e2e8f0 !important;\r\n  border-radius: 8px !important;\r\n  background: #ffffff !important;\r\n  color: #1e293b !important;\r\n  outline: none !important;\r\n  transition: border-color 0.2s !important;\r\n  box-sizing: border-box !important;\r\n}\r\n\r\n.kbkg-contact-form-group input:focus,\r\n.kbkg-contact-form-group select:focus {\r\n  border-color: #1e3a5f !important;\r\n  box-shadow: 0 0 0 3px rgba(30, 58, 95, 0.08) !important;\r\n}\r\n\r\n.kbkg-contact-form-group input::placeholder {\r\n  color: #94a3b8 !important;\r\n}\r\n\r\n.kbkg-contact-form-group input.kbkg-input-error,\r\n.kbkg-contact-form-group select.kbkg-input-error {\r\n  border-color: #dc2626 !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn {\r\n  width: 100% !important;\r\n  padding: 14px !important;\r\n  font-size: 14px !important;\r\n  font-weight: 700 !important;\r\n  color: #ffffff !important;\r\n  background: #1e3a5f !important;\r\n  border: none !important;\r\n  border-radius: 8px !important;\r\n  cursor: pointer !important;\r\n  transition: background 0.2s !important;\r\n  margin-top: 4px !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn:hover {\r\n  background: #162d4a !important;\r\n}\r\n\r\n.kbkg-contact-submit-btn:disabled {\r\n  background: #94a3b8 !important;\r\n  cursor: not-allowed !important;\r\n}\r\n\r\n.kbkg-contact-error {\r\n  font-size: 13px !important;\r\n  color: #dc2626 !important;\r\n  text-align: center !important;\r\n  margin-top: 8px !important;\r\n  display: none;\r\n}\r\n\r\n/* ---------- Responsive ---------- */\r\n@media (max-width: 768px) {\r\n  .kbkg-estimator-wrapper {\r\n    padding: 28px 20px 24px !important;\r\n  }\r\n\r\n  .kbkg-estimator-wrapper h2.kbkg-estimator-title {\r\n    font-size: 24px !important;\r\n  }\r\n\r\n  .kbkg-estimator-body {\r\n    flex-direction: column !important;\r\n    gap: 32px !important;\r\n  }\r\n\r\n  .kbkg-estimator-wrapper .kbkg-result-value {\r\n    font-size: 20px !important;\r\n  }\r\n}\r\n</style>\r\n\r\n<!-- ===================== HTML ===================== -->\r\n<div class=\"kbkg-estimator-wrapper\">\r\n  <h2 class=\"kbkg-estimator-title\">Estimate Your First Year Tax Savings</h2>\r\n\r\n  <div class=\"kbkg-estimator-body\">\r\n    <!-- LEFT: Form -->\r\n    <div class=\"kbkg-estimator-form\">\r\n\r\n      <!-- Property Address -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z\"/><circle cx=\"12\" cy=\"10\" r=\"3\"/></svg>\r\n          Property Address\r\n        </label>\r\n        <input type=\"text\" class=\"kbkg-field-input\" id=\"kbkg-address\" placeholder=\"123 Main Street, City, State\" autocomplete=\"street-address\">\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-address-error\">Please enter a property address.</div>\r\n      </div>\r\n\r\n      <!-- Purchase Price -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"12\" y1=\"1\" x2=\"12\" y2=\"23\"/><path d=\"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6\"/></svg>\r\n          Purchase Price (Less Land)\r\n        </label>\r\n        <div class=\"kbkg-input-with-prefix\">\r\n          <span class=\"kbkg-input-prefix\">$</span>\r\n          <input type=\"text\" class=\"kbkg-field-input\" id=\"kbkg-price\" placeholder=\"1,500,000\" inputmode=\"numeric\">\r\n        </div>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-price-error\">Please enter a valid purchase price.</div>\r\n      </div>\r\n\r\n      <!-- Date of Purchase -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"/><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"/><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"/><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"/></svg>\r\n          Date of Purchase\r\n        </label>\r\n        <div class=\"kbkg-date-wrapper\">\r\n          <input type=\"text\" class=\"kbkg-field-input kbkg-date-input\" id=\"kbkg-date\" placeholder=\"MM/DD/YYYY\" maxlength=\"10\" autocomplete=\"off\" data-lpignore=\"true\" data-form-type=\"other\">\r\n          <button type=\"button\" class=\"kbkg-date-cal-btn\" id=\"kbkg-date-cal-btn\" title=\"Open calendar\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"3\" y=\"4\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"/><line x1=\"16\" y1=\"2\" x2=\"16\" y2=\"6\"/><line x1=\"8\" y1=\"2\" x2=\"8\" y2=\"6\"/><line x1=\"3\" y1=\"10\" x2=\"21\" y2=\"10\"/></svg>\r\n          </button>\r\n          <input type=\"date\" id=\"kbkg-date-hidden\" style=\"position:absolute;opacity:0;width:0;height:0;overflow:hidden;pointer-events:none;\" tabindex=\"-1\" aria-hidden=\"true\">\r\n        </div>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-date-error\">Please enter a valid date (MM/DD/YYYY).</div>\r\n      </div>\r\n\r\n      <!-- Property Type -->\r\n      <div class=\"kbkg-field-group\">\r\n        <label class=\"kbkg-field-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"4\" y=\"2\" width=\"16\" height=\"20\" rx=\"2\" ry=\"2\"/><line x1=\"9\" y1=\"6\" x2=\"9\" y2=\"6.01\"/><line x1=\"15\" y1=\"6\" x2=\"15\" y2=\"6.01\"/><line x1=\"9\" y1=\"10\" x2=\"9\" y2=\"10.01\"/><line x1=\"15\" y1=\"10\" x2=\"15\" y2=\"10.01\"/><line x1=\"9\" y1=\"14\" x2=\"9\" y2=\"14.01\"/><line x1=\"15\" y1=\"14\" x2=\"15\" y2=\"14.01\"/><line x1=\"9\" y1=\"18\" x2=\"15\" y2=\"18\"/></svg>\r\n          Property Type\r\n        </label>\r\n        <select class=\"kbkg-field-select\" id=\"kbkg-property-type\">\r\n          <option value=\"\" disabled selected>Select property type...</option>\r\n          <option value=\"Single Family Home\">Single Family Home</option>\r\n          <option value=\"Townhouse\">Townhouse</option>\r\n          <option value=\"Condo - High Rise\">Condo - High Rise</option>\r\n          <option value=\"Condo - SFH\">Condo - SFH</option>\r\n          <option value=\"ADU - Freestanding\">ADU - Freestanding</option>\r\n          <option value=\"ADU - Interior Conversion\">ADU - Interior Conversion</option>\r\n          <option value=\"Duplex\">Duplex</option>\r\n          <option value=\"Triplex\">Triplex</option>\r\n          <option value=\"Fourplex\">Fourplex</option>\r\n          <option value=\"Apartment\">Apartment</option>\r\n          <option value=\"Assisted Living\">Assisted Living</option>\r\n          <option value=\"Auto Dealership\">Auto Dealership</option>\r\n          <option value=\"Bank, Branch Office\">Bank, Branch Office</option>\r\n          <option value=\"Car / Truck Repair\">Car / Truck Repair</option>\r\n          <option value=\"Car Wash\">Car Wash</option>\r\n          <option value=\"Casino\">Casino</option>\r\n          <option value=\"Cold Storage\">Cold Storage</option>\r\n          <option value=\"Distribution Center\">Distribution Center</option>\r\n          <option value=\"Food Processing Facility\">Food Processing Facility</option>\r\n          <option value=\"Golf Course/Country Club\">Golf Course/Country Club</option>\r\n          <option value=\"Hospital / Medical Center\">Hospital / Medical Center</option>\r\n          <option value=\"Hotel - Extended Stay\">Hotel - Extended Stay</option>\r\n          <option value=\"Hotel - Full Service\">Hotel - Full Service</option>\r\n          <option value=\"Hotel - Limited Service\">Hotel - Limited Service</option>\r\n          <option value=\"Motel - Exterior Access Units\">Motel - Exterior Access Units</option>\r\n          <option value=\"Motel - Interior Access Units\">Motel - Interior Access Units</option>\r\n          <option value=\"Industrial\">Industrial</option>\r\n          <option value=\"Industrial/Flex - Mixed Use\">Industrial/Flex - Mixed Use</option>\r\n          <option value=\"Lube/Oil Change Facility\">Lube/Oil Change Facility</option>\r\n          <option value=\"Manufacturing - Heavy\">Manufacturing - Heavy</option>\r\n          <option value=\"Manufacturing - Light\">Manufacturing - Light</option>\r\n          <option value=\"Manufacturing - Medium\">Manufacturing - Medium</option>\r\n          <option value=\"Mixed Use (Apt & Other)\">Mixed Use (Apt &amp; Other)</option>\r\n          <option value=\"Nursing Home\">Nursing Home</option>\r\n          <option value=\"Office - General\">Office - General</option>\r\n          <option value=\"Office - Medical\">Office - Medical</option>\r\n          <option value=\"Office Condo\">Office Condo</option>\r\n          <option value=\"R & D Facility\">R &amp; D Facility</option>\r\n          <option value=\"Restaurant - Average\">Restaurant - Average</option>\r\n          <option value=\"Restaurant - Fast Food\">Restaurant - Fast Food</option>\r\n          <option value=\"Restaurant - Upscale\">Restaurant - Upscale</option>\r\n          <option value=\"Retail - Department Store\">Retail - Department Store</option>\r\n          <option value=\"Retail - General\">Retail - General</option>\r\n          <option value=\"Retail - Regional Mall\">Retail - Regional Mall</option>\r\n          <option value=\"Retail - Shopping Center\">Retail - Shopping Center</option>\r\n          <option value=\"Self Storage Facility - Drive Up Access\">Self Storage Facility - Drive Up Access</option>\r\n          <option value=\"Self Storage Facility - Interior Access\">Self Storage Facility - Interior Access</option>\r\n          <option value=\"Service (Gas) Stations\">Service (Gas) Stations</option>\r\n          <option value=\"Supermarket\">Supermarket</option>\r\n          <option value=\"Theater / Cinema\">Theater / Cinema</option>\r\n          <option value=\"Veterinary Facility\">Veterinary Facility</option>\r\n          <option value=\"Warehouse\">Warehouse</option>\r\n        </select>\r\n        <div class=\"kbkg-field-error\" id=\"kbkg-type-error\">Please select a property type.</div>\r\n      </div>\r\n\r\n      <!-- Short-Term Rental Toggle -->\r\n      <div class=\"kbkg-toggle-row\">\r\n        <span class=\"kbkg-toggle-label\">\r\n          <svg class=\"kbkg-icon\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z\"/><polyline points=\"9 22 9 12 15 12 15 22\"/></svg>\r\n          Is this a Short-Term or Vacation Rental?\r\n        </span>\r\n        <div class=\"kbkg-toggle-control\">\r\n          <label class=\"kbkg-toggle\">\r\n            <input type=\"checkbox\" id=\"kbkg-short-term\">\r\n            <span class=\"kbkg-toggle-slider\"></span>\r\n          </label>\r\n          <span class=\"kbkg-toggle-text\" id=\"kbkg-toggle-label\">No</span>\r\n        </div>\r\n      </div>\r\n\r\n      <!-- Submit -->\r\n      <button class=\"kbkg-submit-btn\" id=\"kbkg-estimate-btn\">Estimate Savings</button>\r\n    </div>\r\n\r\n    <!-- RIGHT: Result Cards -->\r\n    <div class=\"kbkg-estimator-results\">\r\n\r\n      <!-- Card 1: Total Year 1 Deductions -->\r\n      <div class=\"kbkg-result-card\">\r\n        <div class=\"kbkg-result-header\">\r\n          <div class=\"kbkg-result-icon\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"23 6 13.5 15.5 8.5 10.5 1 18\"/><polyline points=\"17 6 23 6 23 12\"/></svg>\r\n          </div>\r\n          <span class=\"kbkg-result-label\">Total Year 1 Deductions</span>\r\n        </div>\r\n        <div class=\"kbkg-result-value\" id=\"kbkg-deductions-value\">$0</div>\r\n        <div class=\"kbkg-result-description\">Deductions offset taxable income and reduce tax liability.</div>\r\n      </div>\r\n\r\n      <!-- Card 2: Tax Savings -->\r\n      <div class=\"kbkg-result-card\">\r\n        <div class=\"kbkg-result-header\">\r\n          <div class=\"kbkg-result-icon\">\r\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M19 5c-1.5 0-2.8 1.4-3 2-3.5-1.5-11-.3-11 5 0 1.8 0 3 2 4.5V20h4v-2h3v2h4v-4c1-.5 1.7-1 2-2h2v-4h-2c0-1-.5-1.5-1-2\"/><circle cx=\"9\" cy=\"12\" r=\"1\"/></svg>\r\n          </div>\r\n          <span class=\"kbkg-result-label\">Year 1 Tax Savings From Depreciation</span>\r\n        </div>\r\n        <div class=\"kbkg-result-value\" id=\"kbkg-savings-value\">$0</div>\r\n        <div class=\"kbkg-result-assumption\" id=\"kbkg-savings-assumption\"></div>\r\n      </div>\r\n\r\n      <!-- Email My Estimate Button -->\r\n      <button class=\"kbkg-email-btn\" id=\"kbkg-email-btn\" style=\"display:none;\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n        Email My Estimate\r\n      </button>\r\n\r\n      <div class=\"kbkg-results-helper\" id=\"kbkg-results-helper\">\r\n        Enter your property details and click Estimate Savings.\r\n      </div>\r\n\r\n      <div class=\"kbkg-disclaimer\" id=\"kbkg-disclaimer\">\r\n        This high-level estimate is intended for informational purposes only and should not be used for filing tax returns. It assumes bonus depreciation applies and a tax rate of 35%. Actual results will depend on your specific property facts and circumstances. State income tax benefits may be higher. Please consult with a qualified tax professional for advice tailored to your situation.\r\n      </div>\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<!-- ===================== Email Modal ===================== -->\r\n<div class=\"kbkg-modal-overlay\" id=\"kbkg-email-modal\">\r\n  <div class=\"kbkg-modal\">\r\n    <button class=\"kbkg-modal-close\" id=\"kbkg-modal-close\">&times;</button>\r\n\r\n    <div class=\"kbkg-modal-title\">\r\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n      Email Your Results\r\n    </div>\r\n    <p class=\"kbkg-modal-subtitle\">You'll receive a professionally formatted email from CostSegregation.com with your complete estimate.</p>\r\n\r\n    <div class=\"kbkg-modal-summary\">\r\n      <div class=\"kbkg-modal-summary-title\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M22 11.08V12a10 10 0 1 1-5.93-9.14\"/><polyline points=\"22 4 12 14.01 9 11.01\"/></svg>\r\n        Your email will include:\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Property Address:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-address\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Purchase Price:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-price\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Property Type:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-type\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Purchase Date:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-date\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\" id=\"kbkg-modal-str-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Short-Term Rental:</span>\r\n        <span class=\"kbkg-modal-summary-value\" id=\"kbkg-modal-str\"></span>\r\n      </div>\r\n      <hr class=\"kbkg-modal-summary-divider\">\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Year 1 Deductions:</span>\r\n        <span class=\"kbkg-modal-summary-value kbkg-green\" id=\"kbkg-modal-deductions\"></span>\r\n      </div>\r\n      <div class=\"kbkg-modal-summary-row\">\r\n        <span class=\"kbkg-modal-summary-label\">Year 1 Tax Savings:</span>\r\n        <span class=\"kbkg-modal-summary-value kbkg-green\" id=\"kbkg-modal-savings\"></span>\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-form-row\">\r\n      <div class=\"kbkg-modal-form-group\">\r\n        <label>First Name</label>\r\n        <input type=\"text\" id=\"kbkg-modal-fname\" placeholder=\"John\">\r\n      </div>\r\n      <div class=\"kbkg-modal-form-group\">\r\n        <label>Last Name</label>\r\n        <input type=\"text\" id=\"kbkg-modal-lname\" placeholder=\"Smith\">\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-form-group\" style=\"margin-bottom:0;\">\r\n      <label>Email Address</label>\r\n      <input type=\"email\" id=\"kbkg-modal-email\" placeholder=\"john@example.com\">\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-buttons\">\r\n      <button class=\"kbkg-modal-cancel-btn\" id=\"kbkg-modal-cancel-btn\">&times; Cancel</button>\r\n      <button class=\"kbkg-modal-send-btn\" id=\"kbkg-modal-send-btn\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg>\r\n        Send Results\r\n      </button>\r\n    </div>\r\n\r\n    <div class=\"kbkg-modal-error\" id=\"kbkg-modal-error\"></div>\r\n    <div class=\"kbkg-modal-success\" id=\"kbkg-modal-success\"></div>\r\n\r\n    <div class=\"kbkg-modal-disclaimer\">\r\n      This high-level estimate is intended for informational purposes only and should not be used for filing tax returns. It assumes bonus depreciation applies and a tax rate of 35%. Actual results will depend on your specific property facts and circumstances. State income tax benefits may be higher. Please consult with a qualified tax professional for advice tailored to your situation.\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<!-- ===================== Contact Modal (pre-results) ===================== -->\r\n<div class=\"kbkg-contact-modal-overlay\" id=\"kbkg-contact-modal\">\r\n  <div class=\"kbkg-contact-modal\">\r\n    <button class=\"kbkg-contact-modal-close\" id=\"kbkg-contact-close\">&times;</button>\r\n\r\n    <div class=\"kbkg-contact-modal-title\">Get Your Estimate</div>\r\n\r\n    <div class=\"kbkg-contact-modal-info\">\r\n      <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"4\" width=\"20\" height=\"16\" rx=\"2\"/><path d=\"m22 7-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 7\"/></svg>\r\n      <p>Enter your info to instantly view your results! We'll also email you a detailed summary of tax benefits for your records.</p>\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-row\">\r\n      <div class=\"kbkg-contact-form-group\" style=\"margin-bottom:0;\">\r\n        <label>First Name *</label>\r\n        <input type=\"text\" id=\"kbkg-contact-fname\" placeholder=\"John\">\r\n      </div>\r\n      <div class=\"kbkg-contact-form-group\" style=\"margin-bottom:0;\">\r\n        <label>Last Name *</label>\r\n        <input type=\"text\" id=\"kbkg-contact-lname\" placeholder=\"Smith\">\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-group\">\r\n      <label>Email *</label>\r\n      <input type=\"email\" id=\"kbkg-contact-email\" placeholder=\"john@example.com\">\r\n    </div>\r\n\r\n    <div class=\"kbkg-contact-form-group\">\r\n      <label>How did you first hear about CostSegregation.com?</label>\r\n      <select id=\"kbkg-contact-source\">\r\n        <option value=\"\" disabled selected>Please Select</option>\r\n        <option value=\"ChatGPT/AI\">ChatGPT/AI</option>\r\n        <option value=\"Conference/Event\">Conference/Event</option>\r\n        <option value=\"Postcard/Mail\">Postcard/Mail</option>\r\n        <option value=\"Marketing Email\">Marketing Email</option>\r\n        <option value=\"Online Advertising\">Online Advertising</option>\r\n        <option value=\"Organic Search\">Organic Search</option>\r\n        <option value=\"Other\">Other</option>\r\n        <option value=\"Publication / PR\">Publication / PR</option>\r\n        <option value=\"Referral - Client\">Referral - Client</option>\r\n        <option value=\"Referral - CPA\">Referral - CPA</option>\r\n        <option value=\"Referral - Internal\">Referral - Internal</option>\r\n        <option value=\"Referral - Partner\">Referral - Partner</option>\r\n        <option value=\"Sales Email / Outreach\">Sales Email / Outreach</option>\r\n        <option value=\"Social Media\">Social Media</option>\r\n        <option value=\"Webinar\">Webinar</option>\r\n        <option value=\"Influencer\">Influencer</option>\r\n        <option value=\"Podcast/Radio\">Podcast/Radio</option>\r\n      </select>\r\n    </div>\r\n\r\n    <button class=\"kbkg-contact-submit-btn\" id=\"kbkg-contact-submit\">View My Estimate</button>\r\n    <div class=\"kbkg-contact-error\" id=\"kbkg-contact-error\"></div>\r\n  </div>\r\n</div>\r\n<!-- ===================== JS ===================== -->\r\n<script>\r\n(function () {\r\n  \"use strict\";\r\n\r\n  var API_URL = \"https://app.costsegregation.com/api/project/v1/rcs-quick-estimator\";\r\n  var TAX_RATE = 0.35;\r\n\r\n  /* ---------- Helpers ---------- */\r\n  var UTM_TO_HS_FIELD_MAP = {\r\n    utm_campaign: \"sfdc_utm_campaign\",\r\n    utm_source: \"sfdc_utm_source\",\r\n    utm_medium: \"sfdc_utm_medium\",\r\n    utm_content: \"sfdc_utm_content\"\r\n  };\r\n  \r\n  var GOOGLE_CLICK_TO_HS_FIELD_MAP = {\r\n  gclid: \"google_gclid\",\r\n  gbraid: \"google_gbraid\",\r\n  wbraid: \"google_wbraid\"\r\n};\r\n\r\n  function getCookie(name) {\r\n    var match = document.cookie.match(new RegExp(\"(^|;\\\\s*)\" + name + \"=([^;]*)\"));\r\n    return match ? decodeURIComponent(match[2]) : \"\";\r\n  }\r\n\r\n  function parseQueryUtms() {\r\n    var utms = {};\r\n    try {\r\n      var params = new URLSearchParams(window.location.search || \"\");\r\n      if (params.get(\"utm_campaign\")) utms.utm_campaign = params.get(\"utm_campaign\");\r\n      if (params.get(\"utm_source\")) utms.utm_source = params.get(\"utm_source\");\r\n      if (params.get(\"utm_medium\")) utms.utm_medium = params.get(\"utm_medium\");\r\n      if (params.get(\"utm_content\")) utms.utm_content = params.get(\"utm_content\");\r\n    } catch (e) {}\r\n    return utms;\r\n  }\r\n\r\nfunction parseAffiliateId() {\r\n  try {\r\n    var params = new URLSearchParams(window.location.search || \"\");\r\n    return params.get(\"awinaffid\") || params.get(\"sv_campaign_id\") || \"\";\r\n  } catch (e) {\r\n    return \"\";\r\n  }\r\n}\r\n\r\nfunction parseGoogleClickParams() {\r\n  var values = {};\r\n\r\n  try {\r\n    var params = new URLSearchParams(window.location.search || \"\");\r\n\r\n    Object.keys(GOOGLE_CLICK_TO_HS_FIELD_MAP).forEach(function (key) {\r\n      var value = params.get(key);\r\n      if (value) {\r\n        values[key] = value;\r\n      }\r\n    });\r\n  } catch (e) {\r\n    /* ignore */\r\n  }\r\n\r\n  return values;\r\n}\r\n\r\nfunction getPersistedAffiliateId() {\r\n  var affiliateId = parseAffiliateId();\r\n\r\n  try {\r\n    if (affiliateId) {\r\n      sessionStorage.setItem(\"kbkg_affiliate_id\", affiliateId);\r\n      return affiliateId;\r\n    }\r\n\r\n    return sessionStorage.getItem(\"kbkg_affiliate_id\") || \"\";\r\n  } catch (e) {\r\n    return affiliateId || \"\";\r\n  }\r\n}\r\n\r\nfunction getPersistedGoogleClickParams() {\r\n  var values = parseGoogleClickParams();\r\n\r\n  try {\r\n    Object.keys(GOOGLE_CLICK_TO_HS_FIELD_MAP).forEach(function (key) {\r\n      if (values[key]) {\r\n        sessionStorage.setItem(\"kbkg_\" + key, values[key]);\r\n      } else {\r\n        var storedValue = sessionStorage.getItem(\"kbkg_\" + key) || \"\";\r\n        if (storedValue) {\r\n          values[key] = storedValue;\r\n        }\r\n      }\r\n    });\r\n  } catch (e) {\r\n    /* ignore */\r\n  }\r\n\r\n  return values || {};\r\n}\r\n\r\n/* Store affiliate ID when the page loads */\r\ngetPersistedAffiliateId();\r\n\r\n/* Store Google click parameters when the page loads */\r\ngetPersistedGoogleClickParams();\r\n\r\n  function readKbkgVisitUtms() {\r\n    try {\r\n      var raw = getCookie(\"kbkgvisit\");\r\n      if (!raw) return {};\r\n      var parsed = JSON.parse(raw);\r\n      return (parsed && parsed.kbkgUtm) ? parsed.kbkgUtm : {};\r\n    } catch (e) {\r\n      return {};\r\n    }\r\n  }\r\n\r\n  function hasTrackedUtms(utms) {\r\n    return !!(\r\n      utms &&\r\n      (utms.utm_campaign || utms.utm_source || utms.utm_medium || utms.utm_content)\r\n    );\r\n  }\r\n\r\n  function getPersistedUtmParams() {\r\n    var utms = {};\r\n\r\n    try {\r\n      if (window.kbkgConsentManager && typeof window.kbkgConsentManager.getUtmParams === \"function\") {\r\n        utms = window.kbkgConsentManager.getUtmParams() || {};\r\n      }\r\n    } catch (e) {\r\n      console.warn(\"kbkgConsentManager.getUtmParams failed:\", e);\r\n    }\r\n\r\n    if (!hasTrackedUtms(utms)) {\r\n      utms = readKbkgVisitUtms();\r\n    }\r\n\r\n    if (!hasTrackedUtms(utms)) {\r\n      utms = parseQueryUtms();\r\n    }\r\n\r\n    return utms || {};\r\n  }\r\n\r\n  function formatMoney(value) {\r\n    if (value == null || isNaN(value)) return \"$0\";\r\n    return \"$\" + Math.round(value).toLocaleString(\"en-US\");\r\n  }\r\n\r\n  function formatPriceInput(input) {\r\n    var raw = input.value.replace(/[^0-9]/g, \"\");\r\n    if (raw === \"\") { input.value = \"\"; return; }\r\n    input.value = parseInt(raw, 10).toLocaleString(\"en-US\");\r\n  }\r\n\r\n  function formatDateForApi(dateStr) {\r\n    return dateStr || \"\";\r\n  }\r\n\r\n  function getYearFromDate(dateStr) {\r\n    if (!dateStr) return new Date().getFullYear();\r\n    var parts = dateStr.split(\"/\");\r\n    if (parts.length === 3) return parseInt(parts[2], 10) || new Date().getFullYear();\r\n    return new Date().getFullYear();\r\n  }\r\n\r\n  /* ---------- Toggle label ---------- */\r\n  var toggleCheckbox = document.getElementById(\"kbkg-short-term\");\r\n  var toggleLabel = document.getElementById(\"kbkg-toggle-label\");\r\n  if (toggleCheckbox && toggleLabel) {\r\n    toggleCheckbox.addEventListener(\"change\", function () {\r\n      toggleLabel.textContent = this.checked ? \"Yes\" : \"No\";\r\n    });\r\n  }\r\n\r\n  /* ---------- Price formatting ---------- */\r\n  var priceInput = document.getElementById(\"kbkg-price\");\r\n  if (priceInput) {\r\n    priceInput.addEventListener(\"input\", function () { formatPriceInput(this); });\r\n  }\r\n\r\n  /* ---------- Date input: type + calendar ---------- */\r\n  var dateInput = document.getElementById(\"kbkg-date\");\r\n  var dateHidden = document.getElementById(\"kbkg-date-hidden\");\r\n  var dateCalBtn = document.getElementById(\"kbkg-date-cal-btn\");\r\n\r\n  /* ---------- Inline field error helpers ---------- */\r\n  function isValidDate(m, d, y) {\r\n    if (y < 1900 || y > 2100 || m < 1 || m > 12 || d < 1) return false;\r\n    var date = new Date(y, m - 1, d);\r\n    return date.getFullYear() === y && date.getMonth() === m - 1 && date.getDate() === d;\r\n  }\r\n\r\n  function setFieldError(inputEl, errorId, show) {\r\n    var errEl = document.getElementById(errorId);\r\n    if (errEl) errEl.className = show ? \"kbkg-field-error kbkg-visible\" : \"kbkg-field-error\";\r\n    if (inputEl) {\r\n      if (show) inputEl.classList.add(\"kbkg-input-error\");\r\n      else inputEl.classList.remove(\"kbkg-input-error\");\r\n    }\r\n  }\r\n\r\n  /* Clear errors on input */\r\n  var addressInput = document.getElementById(\"kbkg-address\");\r\n  var priceEl = document.getElementById(\"kbkg-price\");\r\n  var typeEl = document.getElementById(\"kbkg-property-type\");\r\n\r\n  if (addressInput) addressInput.addEventListener(\"input\", function () { setFieldError(this, \"kbkg-address-error\", false); resetResults(); });\r\n  if (priceEl) priceEl.addEventListener(\"input\", function () { setFieldError(this, \"kbkg-price-error\", false); resetResults(); });\r\n  if (typeEl) typeEl.addEventListener(\"change\", function () {\r\n    setFieldError(this, \"kbkg-type-error\", false);\r\n    updateStrVisibility(this.value);\r\n    resetResults();\r\n  });\r\n  if (toggleCheckbox) toggleCheckbox.addEventListener(\"change\", function () { resetResults(); });\r\n\r\n  /* ---------- Show/hide short-term rental based on property type ---------- */\r\n  var strTypes = [\"Single Family Home\",\"Townhouse\",\"Condo - High Rise\",\"Condo - SFH\",\"ADU - Freestanding\",\"ADU - Interior Conversion\",\"Duplex\",\"Triplex\",\"Fourplex\",\"Apartment\"];\r\n  var toggleRow = document.querySelector(\".kbkg-toggle-row\");\r\n\r\n  function updateStrVisibility(val) {\r\n    if (strTypes.indexOf(val) !== -1) {\r\n      toggleRow.style.cssText = \"display:flex!important;\";\r\n    } else {\r\n      toggleRow.style.cssText = \"display:none!important;\";\r\n      toggleCheckbox.checked = false;\r\n      toggleLabel.textContent = \"No\";\r\n    }\r\n  }\r\n\r\n  if (dateInput) {\r\n    dateInput.addEventListener(\"input\", function () {\r\n      var raw = this.value.replace(/[^0-9]/g, \"\");\r\n      var formatted = \"\";\r\n      if (raw.length > 0) formatted = raw.substring(0, 2);\r\n      if (raw.length >= 3) formatted += \"/\" + raw.substring(2, 4);\r\n      if (raw.length >= 5) formatted += \"/\" + raw.substring(4, 8);\r\n      this.value = formatted;\r\n      setFieldError(this, \"kbkg-date-error\", false);\r\n      resetResults();\r\n    });\r\n\r\n    dateInput.addEventListener(\"blur\", function () {\r\n      var val = this.value.trim();\r\n      if (!val) { setFieldError(this, \"kbkg-date-error\", false); return; }\r\n      var parts = val.split(\"/\");\r\n      if (parts.length !== 3 || parts[2].length !== 4) {\r\n        setFieldError(this, \"kbkg-date-error\", true);\r\n        return;\r\n      }\r\n      var m = parseInt(parts[0], 10);\r\n      var d = parseInt(parts[1], 10);\r\n      var y = parseInt(parts[2], 10);\r\n      setFieldError(this, \"kbkg-date-error\", !isValidDate(m, d, y));\r\n    });\r\n  }\r\n\r\n  if (dateCalBtn && dateHidden) {\r\n    dateCalBtn.addEventListener(\"click\", function (e) {\r\n      e.preventDefault();\r\n      if (dateHidden.showPicker) {\r\n        dateHidden.showPicker();\r\n      } else {\r\n        dateHidden.click();\r\n      }\r\n    });\r\n\r\n    dateHidden.addEventListener(\"change\", function () {\r\n      var val = this.value;\r\n      if (!val) return;\r\n      var parts = val.split(\"-\");\r\n      if (parts.length === 3) {\r\n        dateInput.value = parts[1] + \"/\" + parts[2] + \"/\" + parts[0];\r\n        setFieldError(dateInput, \"kbkg-date-error\", false);\r\n      }\r\n    });\r\n  }\r\n\r\n  /* ---------- Display results ---------- */\r\n  function showResults(low, high) {\r\n    var deductionsEl = document.getElementById(\"kbkg-deductions-value\");\r\n    var savingsEl = document.getElementById(\"kbkg-savings-value\");\r\n    var assumptionEl = document.getElementById(\"kbkg-savings-assumption\");\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n\r\n    deductionsEl.textContent = formatMoney(low) + \" to \" + formatMoney(high);\r\n\r\n    var savingsLow = low * TAX_RATE;\r\n    var savingsHigh = high * TAX_RATE;\r\n    savingsEl.textContent = formatMoney(savingsLow) + \" to \" + formatMoney(savingsHigh);\r\n    assumptionEl.textContent = \"Potential cash savings in your first year. State income tax benefits may be higher.\";\r\n\r\n    helperEl.textContent = \"\";\r\n    helperEl.style.display = \"none\";\r\n\r\n    var disclaimerEl = document.getElementById(\"kbkg-disclaimer\");\r\n    disclaimerEl.style.display = \"block\";\r\n\r\n    var emailBtn = document.getElementById(\"kbkg-email-btn\");\r\n    emailBtn.style.display = \"flex\";\r\n  }\r\n\r\n  function showError(msg) {\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-error-msg\";\r\n    helperEl.textContent = msg;\r\n  }\r\n\r\n  function resetResults() {\r\n    document.getElementById(\"kbkg-deductions-value\").textContent = \"$0\";\r\n    document.getElementById(\"kbkg-savings-value\").textContent = \"$0\";\r\n    document.getElementById(\"kbkg-savings-assumption\").textContent = \"\";\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-results-helper\";\r\n    helperEl.textContent = \"Enter your property details and click Estimate Savings.\";\r\n    helperEl.style.display = \"\";\r\n    document.getElementById(\"kbkg-disclaimer\").style.display = \"none\";\r\n    document.getElementById(\"kbkg-email-btn\").style.display = \"none\";\r\n  }\r\n\r\n  function resetHelper() {\r\n    var helperEl = document.getElementById(\"kbkg-results-helper\");\r\n    helperEl.className = \"kbkg-results-helper\";\r\n  }\r\n\r\n  /* ---------- API call ---------- */\r\n  function callEstimatorApi() {\r\n    var btn = document.getElementById(\"kbkg-estimate-btn\");\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var propertyType = document.getElementById(\"kbkg-property-type\").value;\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n\r\n    var hasError = false;\r\n\r\n    if (!address) {\r\n      setFieldError(document.getElementById(\"kbkg-address\"), \"kbkg-address-error\", true);\r\n      hasError = true;\r\n    }\r\n    if (!price || price <= 0) {\r\n      setFieldError(document.getElementById(\"kbkg-price\"), \"kbkg-price-error\", true);\r\n      hasError = true;\r\n    }\r\n    if (!dateVal) {\r\n      setFieldError(document.getElementById(\"kbkg-date\"), \"kbkg-date-error\", true);\r\n      hasError = true;\r\n    } else {\r\n      var dateParts = dateVal.split(\"/\");\r\n      if (dateParts.length !== 3 || dateParts[2].length !== 4 ||\r\n          !isValidDate(parseInt(dateParts[0],10), parseInt(dateParts[1],10), parseInt(dateParts[2],10))) {\r\n        setFieldError(document.getElementById(\"kbkg-date\"), \"kbkg-date-error\", true);\r\n        hasError = true;\r\n      }\r\n    }\r\n    if (!propertyType) {\r\n      setFieldError(document.getElementById(\"kbkg-property-type\"), \"kbkg-type-error\", true);\r\n      hasError = true;\r\n    }\r\n\r\n    if (hasError) return;\r\n\r\n    resetHelper();\r\n\r\n    var payload = {\r\n      address: address,\r\n      transactionType: \"Acquired Property\",\r\n      propertyType: propertyType,\r\n      buildingType: \"Freestanding/Detached\",\r\n      pisDate: formatDateForApi(dateVal),\r\n      currentTaxYear: getYearFromDate(dateVal),\r\n      purchasePrice: price,\r\n      estimatedLandValue: 0,\r\n      shortTermRental: shortTerm,\r\n      source: \"Website\"\r\n    };\r\n\r\n    btn.disabled = true;\r\n    btn.textContent = \"Calculating...\";\r\n\r\n    fetch(API_URL, {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/json\" },\r\n      body: JSON.stringify(payload)\r\n    })\r\n    .then(function (response) {\r\n      if (!response.ok) throw new Error(\"API request failed (status \" + response.status + \")\");\r\n      return response.json();\r\n    })\r\n    .then(function (data) {\r\n      if (\r\n        data.result &&\r\n        data.result.estimatedAdditionalTaxDeductionsYear1Low != null &&\r\n        data.result.estimatedAdditionalTaxDeductionsYear1High != null\r\n      ) {\r\n        pendingResultLow = data.result.estimatedAdditionalTaxDeductionsYear1Low;\r\n        pendingResultHigh = data.result.estimatedAdditionalTaxDeductionsYear1High;\r\n        openContactModal();\r\n      } else {\r\n        showError(\"Could not calculate estimate. Please check your inputs.\");\r\n      }\r\n    })\r\n    .catch(function (err) {\r\n      console.error(\"Estimator API error:\", err);\r\n      showError(\"Something went wrong. Please try again.\");\r\n    })\r\n    .finally(function () {\r\n      btn.disabled = false;\r\n      btn.textContent = \"Estimate Savings\";\r\n    });\r\n  }\r\n\r\n  var pendingResultLow = 0;\r\n  var pendingResultHigh = 0;\r\n\r\n  var btn = document.getElementById(\"kbkg-estimate-btn\");\r\n  if (btn) {\r\n    btn.addEventListener(\"click\", callEstimatorApi);\r\n  }\r\n\r\n  /* ---------- Contact Modal (pre-results) ---------- */\r\n  var contactOverlay = document.getElementById(\"kbkg-contact-modal\");\r\n  var contactCloseBtn = document.getElementById(\"kbkg-contact-close\");\r\n  var contactSubmitBtn = document.getElementById(\"kbkg-contact-submit\");\r\n\r\n  function openContactModal() {\r\n    document.getElementById(\"kbkg-contact-error\").style.display = \"none\";\r\n    contactSubmitBtn.disabled = false;\r\n    contactSubmitBtn.textContent = \"View My Estimate\";\r\n    contactOverlay.classList.add(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function closeContactModal() {\r\n    contactOverlay.classList.remove(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function submitContact() {\r\n    console.log(\"submitContact fired\");\r\n\r\n    var fname = document.getElementById(\"kbkg-contact-fname\").value.trim();\r\n    var lname = document.getElementById(\"kbkg-contact-lname\").value.trim();\r\n    var email = document.getElementById(\"kbkg-contact-email\").value.trim();\r\n    var source = document.getElementById(\"kbkg-contact-source\").value;\r\n    var errorEl = document.getElementById(\"kbkg-contact-error\");\r\n\r\n    errorEl.style.display = \"none\";\r\n    document.getElementById(\"kbkg-contact-fname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-contact-lname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-contact-email\").classList.remove(\"kbkg-input-error\");\r\n\r\n    var hasErr = false;\r\n    if (!fname) { document.getElementById(\"kbkg-contact-fname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!lname) { document.getElementById(\"kbkg-contact-lname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!email || !/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(email)) { document.getElementById(\"kbkg-contact-email\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (hasErr) {\r\n      errorEl.textContent = \"Please fill in all required fields.\";\r\n      errorEl.style.display = \"block\";\r\n      return;\r\n    }\r\n\r\n    showResults(pendingResultLow, pendingResultHigh);\r\n    closeContactModal();\r\n\r\n    document.getElementById(\"kbkg-modal-fname\").value = fname;\r\n    document.getElementById(\"kbkg-modal-lname\").value = lname;\r\n    document.getElementById(\"kbkg-modal-email\").value = email;\r\n\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var propertyType = document.getElementById(\"kbkg-property-type\").value;\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n    var savingsLow = pendingResultLow * TAX_RATE;\r\n    var savingsHigh = pendingResultHigh * TAX_RATE;\r\n\r\n    var hsFields = [\r\n      { name: \"firstname\", value: fname },\r\n      { name: \"lastname\", value: lname },\r\n      { name: \"email\", value: email },\r\n      { name: \"how_did_you_first_hear_about_kbkg_\", value: source },\r\n      { name: \"full_property_address\", value: address },\r\n      { name: \"building_basis\", value: String(price) },\r\n      { name: \"date_of_purchase\", value: dateVal },\r\n      { name: \"property_type_dropdown\", value: propertyType },\r\n      { name: \"shortterm_or_vacation_rental\", value: shortTerm ? \"true\" : \"false\" },\r\n      { name: \"cost_segregation_calculator_low_tax_deductions_year_1\", value: String(Math.round(pendingResultLow)) },\r\n      { name: \"cost_segregation_calculator_high_tax_deductions_year_1\", value: String(Math.round(pendingResultHigh)) },\r\n      { name: \"year_1_tax_savings_low_end\", value: String(Math.round(savingsLow)) },\r\n      { name: \"year_1_tax_savings_high_end\", value: String(Math.round(savingsHigh)) }\r\n    ];\r\n\r\n    var storedUtms = {};\r\n    try {\r\n      storedUtms = getPersistedUtmParams();\r\n    } catch (e) {\r\n      console.error(\"UTM retrieval error:\", e);\r\n      storedUtms = {};\r\n    }\r\n\r\n    for (var utmKey in UTM_TO_HS_FIELD_MAP) {\r\n      if (Object.prototype.hasOwnProperty.call(UTM_TO_HS_FIELD_MAP, utmKey) && storedUtms[utmKey]) {\r\n        hsFields.push({\r\n          name: UTM_TO_HS_FIELD_MAP[utmKey],\r\n          value: storedUtms[utmKey]\r\n        });\r\n      }\r\n    }\r\n\r\nvar affiliateId = getPersistedAffiliateId();\r\nif (affiliateId) {\r\n  hsFields.push({\r\n    name: \"affiliate_id\",\r\n    value: affiliateId\r\n  });\r\n}\r\n\r\nvar googleClickParams = getPersistedGoogleClickParams();\r\n\r\nfor (var googleClickKey in GOOGLE_CLICK_TO_HS_FIELD_MAP) {\r\n  if (\r\n    Object.prototype.hasOwnProperty.call(GOOGLE_CLICK_TO_HS_FIELD_MAP, googleClickKey) &&\r\n    googleClickParams[googleClickKey]\r\n  ) {\r\n    hsFields.push({\r\n      name: GOOGLE_CLICK_TO_HS_FIELD_MAP[googleClickKey],\r\n      value: googleClickParams[googleClickKey]\r\n    });\r\n  }\r\n}\r\n    var hsContext = {\r\n  pageUri: window.location.href,\r\n  pageName: document.title\r\n};\r\n\r\nvar hutk = getCookie(\"hubspotutk\");\r\nif (hutk) {\r\n  hsContext.hutk = hutk;\r\n}\r\n\r\nvar hsPayload = {\r\n  fields: hsFields,\r\n  context: hsContext\r\n};\r\n\r\n    console.log(\"About to send to HubSpot\", hsPayload);\r\n\r\n    fetch(\"https://api.hsforms.com/submissions/v3/integration/submit/3615782/1883c298-1b07-4401-98fc-cd428ae7b37d\", {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/json\" },\r\n      body: JSON.stringify(hsPayload)\r\n    })\r\n    .then(function (response) {\r\n      if (!response.ok) {\r\n        return response.text().then(function (text) {\r\n          throw new Error(\"HubSpot submission failed (\" + response.status + \"): \" + text);\r\n        });\r\n      }\r\n      return response.text();\r\n    })\r\n    .then(function (text) {\r\n      console.log(\"HubSpot submission succeeded:\", text);\r\n    })\r\n    .catch(function (err) {\r\n      console.error(\"HubSpot submission error:\", err);\r\n    });\r\n  }\r\n\r\n  if (contactCloseBtn) contactCloseBtn.addEventListener(\"click\", closeContactModal);\r\n  if (contactSubmitBtn) contactSubmitBtn.addEventListener(\"click\", submitContact);\r\n  if (contactOverlay) contactOverlay.addEventListener(\"click\", function (e) {\r\n    if (e.target === contactOverlay) closeContactModal();\r\n  });\r\n\r\n  /* ---------- Email Modal ---------- */\r\n  var emailBtn = document.getElementById(\"kbkg-email-btn\");\r\n  var modalOverlay = document.getElementById(\"kbkg-email-modal\");\r\n  var modalCloseBtn = document.getElementById(\"kbkg-modal-close\");\r\n  var modalCancelBtn = document.getElementById(\"kbkg-modal-cancel-btn\");\r\n  var modalSendBtn = document.getElementById(\"kbkg-modal-send-btn\");\r\n\r\n  function getPropertyTypeDisplay() {\r\n    var sel = document.getElementById(\"kbkg-property-type\");\r\n    return sel.options[sel.selectedIndex].text;\r\n  }\r\n\r\n  function formatDateDisplay(dateStr) {\r\n    if (!dateStr) return \"\";\r\n    var parts = dateStr.split(\"/\");\r\n    if (parts.length !== 3) return dateStr;\r\n    var months = [\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"];\r\n    var m = parseInt(parts[0], 10);\r\n    var d = parseInt(parts[1], 10);\r\n    var y = parts[2];\r\n    var suffix = \"th\";\r\n    if (d === 1 || d === 21 || d === 31) suffix = \"st\";\r\n    else if (d === 2 || d === 22) suffix = \"nd\";\r\n    else if (d === 3 || d === 23) suffix = \"rd\";\r\n    return months[m - 1] + \" \" + d + suffix + \", \" + y;\r\n  }\r\n\r\n  function openEmailModal() {\r\n    var address = document.getElementById(\"kbkg-address\").value.trim();\r\n    var priceRaw = (document.getElementById(\"kbkg-price\").value || \"\").replace(/[^0-9]/g, \"\");\r\n    var price = parseInt(priceRaw, 10) || 0;\r\n    var dateVal = document.getElementById(\"kbkg-date\").value.trim();\r\n    var shortTerm = document.getElementById(\"kbkg-short-term\").checked;\r\n\r\n    document.getElementById(\"kbkg-modal-address\").textContent = address;\r\n    document.getElementById(\"kbkg-modal-price\").textContent = formatMoney(price);\r\n    document.getElementById(\"kbkg-modal-type\").textContent = getPropertyTypeDisplay();\r\n    document.getElementById(\"kbkg-modal-date\").textContent = formatDateDisplay(dateVal);\r\n    var propertyVal = document.getElementById(\"kbkg-property-type\").value;\r\n    var strRow = document.getElementById(\"kbkg-modal-str-row\");\r\n    if (strTypes.indexOf(propertyVal) !== -1) {\r\n      strRow.style.display = \"flex\";\r\n      document.getElementById(\"kbkg-modal-str\").textContent = shortTerm ? \"Yes\" : \"No\";\r\n    } else {\r\n      strRow.style.display = \"none\";\r\n    }\r\n    document.getElementById(\"kbkg-modal-deductions\").textContent = document.getElementById(\"kbkg-deductions-value\").textContent;\r\n    document.getElementById(\"kbkg-modal-savings\").textContent = document.getElementById(\"kbkg-savings-value\").textContent;\r\n\r\n    document.getElementById(\"kbkg-modal-error\").style.display = \"none\";\r\n    document.getElementById(\"kbkg-modal-success\").style.display = \"none\";\r\n    modalSendBtn.disabled = false;\r\n    modalSendBtn.innerHTML = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg> Send Results';\r\n\r\n    modalOverlay.classList.add(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function closeEmailModal() {\r\n    modalOverlay.classList.remove(\"kbkg-modal-open\");\r\n  }\r\n\r\n  function sendEmail() {\r\n    var fname = document.getElementById(\"kbkg-modal-fname\").value.trim();\r\n    var lname = document.getElementById(\"kbkg-modal-lname\").value.trim();\r\n    var email = document.getElementById(\"kbkg-modal-email\").value.trim();\r\n    var errorEl = document.getElementById(\"kbkg-modal-error\");\r\n    var successEl = document.getElementById(\"kbkg-modal-success\");\r\n\r\n    errorEl.style.display = \"none\";\r\n    successEl.style.display = \"none\";\r\n    document.getElementById(\"kbkg-modal-fname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-modal-lname\").classList.remove(\"kbkg-input-error\");\r\n    document.getElementById(\"kbkg-modal-email\").classList.remove(\"kbkg-input-error\");\r\n\r\n    var hasErr = false;\r\n    if (!fname) { document.getElementById(\"kbkg-modal-fname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!lname) { document.getElementById(\"kbkg-modal-lname\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (!email || !/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(email)) { document.getElementById(\"kbkg-modal-email\").classList.add(\"kbkg-input-error\"); hasErr = true; }\r\n    if (hasErr) {\r\n      errorEl.textContent = \"Please fill in all fields with a valid email.\";\r\n      errorEl.style.display = \"block\";\r\n      return;\r\n    }\r\n\r\n    modalSendBtn.disabled = true;\r\n    modalSendBtn.textContent = \"Sending...\";\r\n\r\n    var payload = {\r\n      firstName: fname,\r\n      lastName: lname,\r\n      email: email,\r\n      address: document.getElementById(\"kbkg-modal-address\").textContent,\r\n      purchasePrice: document.getElementById(\"kbkg-modal-price\").textContent,\r\n      propertyType: document.getElementById(\"kbkg-modal-type\").textContent,\r\n      purchaseDate: document.getElementById(\"kbkg-modal-date\").textContent,\r\n      shortTermRental: document.getElementById(\"kbkg-modal-str\").textContent,\r\n      deductions: document.getElementById(\"kbkg-modal-deductions\").textContent,\r\n      savings: document.getElementById(\"kbkg-modal-savings\").textContent\r\n    };\r\n\r\n    var ajaxUrl = (typeof kbkg_estimator_ajax !== \"undefined\") ? kbkg_estimator_ajax.ajax_url : \"/wp-admin/admin-ajax.php\";\r\n\r\n    fetch(ajaxUrl, {\r\n      method: \"POST\",\r\n      headers: { \"Content-Type\": \"application/x-www-form-urlencoded\" },\r\n      body: \"action=kbkg_send_estimate_email&\" + Object.keys(payload).map(function(k) {\r\n        return encodeURIComponent(k) + \"=\" + encodeURIComponent(payload[k]);\r\n      }).join(\"&\")\r\n    })\r\n    .then(function (response) { return response.json(); })\r\n    .then(function (data) {\r\n      if (data.success) {\r\n        successEl.textContent = \"Email sent successfully! Check your inbox.\";\r\n        successEl.style.display = \"block\";\r\n        modalSendBtn.textContent = \"Sent!\";\r\n      } else {\r\n        throw new Error(data.data || \"Failed to send email.\");\r\n      }\r\n    })\r\n    .catch(function (err) {\r\n      errorEl.textContent = err.message || \"Something went wrong. Please try again.\";\r\n      errorEl.style.display = \"block\";\r\n      modalSendBtn.disabled = false;\r\n      modalSendBtn.innerHTML = '<svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"width:16px;height:16px;\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"/></svg> Send Results';\r\n    });\r\n  }\r\n\r\n  if (emailBtn) emailBtn.addEventListener(\"click\", openEmailModal);\r\n  if (modalCloseBtn) modalCloseBtn.addEventListener(\"click\", closeEmailModal);\r\n  if (modalCancelBtn) modalCancelBtn.addEventListener(\"click\", closeEmailModal);\r\n  if (modalSendBtn) modalSendBtn.addEventListener(\"click\", sendEmail);\r\n  if (modalOverlay) modalOverlay.addEventListener(\"click\", function (e) {\r\n    if (e.target === modalOverlay) closeEmailModal();\r\n  });\r\n\r\n})();\r\n</script>\r\n\r\n\t\t","editSettings":{"defaultEditRoute":"content","panel":{"activeTab":"content","activeSection":"section_title"}}}]}/* End custom CSS */