.elementor-17339 .elementor-element.elementor-element-739e14e{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-17339 .elementor-element.elementor-element-36b5c58{column-gap:0px;}.elementor-17339 .elementor-element.elementor-element-36b5c58 p{margin-bottom:0px;}#elementor-popup-modal-17339 .dialog-widget-content{animation-duration:0.6s;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-17339{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-17339 .dialog-message{width:640px;height:auto;}#elementor-popup-modal-17339 .dialog-close-button{display:flex;}/* Start custom CSS for container, class: .elementor-element-739e14e *//* ================================
   Popup (Elementor ID 17339) — Styles
   ================================ */

/* Theme tokens for quick tweaks */
.elementor-17339 {
  --popup-bg: #ffffff;
  --popup-fg: #111827;           /* slate-900 */
  --popup-muted: #6b7280;        /* slate-500 */
  --popup-accent: #409EFF;       /* matches Fluent Forms submit */
  --popup-accent-hover: #2f7fd3;
  --popup-radius: 18px;
  --popup-shadow: 0 20px 50px rgba(0,0,0,0.25);
  --popup-padding: clamp(20px, 3vw, 32px);
  --popup-gap: 16px;
}

/* Lightbox overlay */
.dialog-widget-content.dialog-lightbox-widget-content.animated {
  background: rgba(0,0,0,0.6) !important;         /* darker backdrop */
  backdrop-filter: blur(3px);                      /* subtle blur */
  -webkit-backdrop-filter: blur(3px);
  display: flex !important;
  align-items: center;
  justify-content: center;
  z-index: 999999;                                 /* sit above sticky headers, etc. */
}

/* Inner popup container (Elementor popup root) */
.dialog-widget-content .elementor-17339.elementor-location-popup {
  background: var(--popup-bg);
  color: var(--popup-fg);
  width: min(92vw, var(--popup-max-width));
  border-radius: var(--popup-radius);
  padding: var(--popup-padding);
  position: relative;
  overflow: hidden;
}

/* Layout spacing inside */
.elementor-17339 .e-con-inner {
  display: flex;
  flex-direction: column;
  gap: var(--popup-gap);
}

/* Headline & copy */
.elementor-17339 h2 {
  margin: 0 0 8px;
  font-size: clamp(20px, 3.4vw, 28px);
  line-height: 1.2;
}

.elementor-17339 p {
  margin: 0 0 12px;
  color: var(--popup-muted);
  font-size: clamp(14px, 2.4vw, 16px);
}

/* Close button (top-right, large tap target) */
.dialog-lightbox-close-button {
  display: flex;
    align-items: center;
    justify-content: center;
  top: 10px;
  right: 10px;
  width: 36px;
  height: 36px;
  display: grid;
  place-items: center;
  background: rgba(17,24,39,0.06);                 /* subtle slate backdrop */
  border-radius: 999px;
  transition: transform 120ms ease, background 120ms ease, opacity 120ms ease;
  outline: none;
}

.dialog-lightbox-close-button svg {
  width: 18px;
  height: 18px;
  display: block;
  pointer-events: none;
  fill: currentColor;
  color: #111827;
  opacity: 0.7;
}

.dialog-lightbox-close-button:hover {
  background: rgba(17,24,39,0.1);
  transform: scale(1.04);
}

.dialog-lightbox-close-button:focus-visible {
  box-shadow: 0 0 0 3px rgba(64,158,255,0.35);
}

.dialog-lightbox-close-button:hover svg,
.dialog-lightbox-close-button:focus-visible svg {
  opacity: 1;
}

/* Fluent Forms — inputs */
.elementor-17339 .fluentform_wrapper_3 .ff-el-form-control {
  width: 100%;
  border: 1px solid #e5e7eb;                       /* slate-200 */
  background: #fff;
  border-radius: 12px;
  padding: 12px 14px;
  font-size: 16px;
  line-height: 1.4;
  transition: border-color 140ms ease, box-shadow 140ms ease;
}

.elementor-17339 .fluentform_wrapper_3 .ff-el-form-control::placeholder {
  color: #9ca3af;                                   /* slate-400 */
}

.elementor-17339 .fluentform_wrapper_3 .ff-el-input--label label {
  font-weight: 600;
  margin-bottom: 6px;
  display: inline-block;
  color: #374151;                                   /* slate-700 */
}

/* Input focus */
.elementor-17339 .fluentform_wrapper_3 .ff-el-form-control:focus {
  border-color: var(--popup-accent);
  box-shadow: 0 0 0 3px rgba(64,158,255,0.25);
  outline: none;
}

/* Submit button */
.elementor-17339 .fluentform_wrapper_3 .ff-btn-submit {
  width: 100%;
  border-radius: 12px !important;
  padding: 12px 16px;
  font-weight: 700;
  line-height: 1.2;
  border: none;
  transition: transform 120ms ease, background-color 120ms ease, box-shadow 120ms ease;
}

.elementor-17339 .fluentform_wrapper_3 .ff-btn-submit:hover {
  background-color: var(--popup-accent-hover) !important;
  transform: translateY(-1px);
}

.elementor-17339 .fluentform_wrapper_3 .ff-btn-submit:active {
  transform: translateY(0);
}

.elementor-17339 .fluentform_wrapper_3 .ff-btn-submit:focus-visible {
  box-shadow: 0 0 0 3px rgba(64,158,255,0.35);
  outline: none;
}

/* Align submit group and center content if needed */
.elementor-17339 .fluentform_wrapper_3 .ff_submit_btn_wrapper {
  margin-top: 8px;
  text-align: center;
}

/* Error stack styling */
.elementor-17339 #fluentform_3_errors,
.elementor-17339 .fluentform_wrapper_3 .ff-el-is-error .ff-el-form-control {
  border-color: #ef4444 !important;                /* red-500 */
}

.elementor-17339 #fluentform_3_errors {
  margin-top: 10px;
  color: #b91c1c;                                   /* red-700 */
  font-size: 14px;
}

/* Accessibility: ensure legend remains visually hidden */
.elementor-17339 legend.ff_screen_reader_title {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Tighten container spacing from Elementor wrapper widgets if present */
.elementor-17339 .elementor-widget,
.elementor-17339 .elementor-element {
  margin: 0 !important;
}

/* Button + input vertical rhythm on mobile */
@media (max-width: 480px) {
  .elementor-17339 {
    --popup-padding: 18px;
    --popup-radius: 16px;
  }
  .dialog-lightbox-close-button {
    top: 8px;
    right: 8px;
  }
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
  .dialog-widget-content.dialog-lightbox-widget-content.animated,
  .elementor-17339 .ff-btn-submit,
  .dialog-lightbox-close-button {
    transition: none !important;
    animation: none !important;
  }
}

/* Optional: Prevent page scroll jump when popup is open (Elementor sets prevent_scroll, but this adds safety) */
html.elementor-html .dialog-prevent-scroll {
  overflow: hidden;
}/* End custom CSS */