.elementor-2972 .elementor-element.elementor-element-51411c4{--display:flex;}.elementor-2972 .elementor-element.elementor-element-51411c4.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-2972 .elementor-element.elementor-element-abad759{--display:flex;--padding-top:24px;--padding-bottom:24px;--padding-left:24px;--padding-right:24px;}.elementor-2972 .elementor-element.elementor-element-62df3e2{border-style:none;border-radius:0px 0px 0px 0px;}.elementor-2972 .elementor-element.elementor-element-62df3e2 .elementor-heading-title{font-family:var( --e-global-typography-6e340fb-font-family ), Sans-serif;font-size:var( --e-global-typography-6e340fb-font-size );font-weight:var( --e-global-typography-6e340fb-font-weight );text-transform:var( --e-global-typography-6e340fb-text-transform );font-style:var( --e-global-typography-6e340fb-font-style );line-height:var( --e-global-typography-6e340fb-line-height );letter-spacing:var( --e-global-typography-6e340fb-letter-spacing );color:var( --e-global-color-ec25634 );}.elementor-2972 .elementor-element.elementor-element-0b2ce1d .elementor-heading-title{font-family:var( --e-global-typography-4b4aecd-font-family ), Sans-serif;font-size:var( --e-global-typography-4b4aecd-font-size );font-weight:var( --e-global-typography-4b4aecd-font-weight );text-transform:var( --e-global-typography-4b4aecd-text-transform );font-style:var( --e-global-typography-4b4aecd-font-style );line-height:var( --e-global-typography-4b4aecd-line-height );letter-spacing:var( --e-global-typography-4b4aecd-letter-spacing );color:var( --e-global-color-primary );}.elementor-2972 .elementor-element.elementor-element-8f87c9c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );text-transform:var( --e-global-typography-text-text-transform );font-style:var( --e-global-typography-text-font-style );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );color:var( --e-global-color-text );}.elementor-2972 .elementor-element.elementor-element-82f32a0{background-color:var( --e-global-color-dc78308 );padding:22px 22px 22px 22px;border-radius:8px 8px 8px 8px;box-shadow:0px 4px 10px 0px rgba(0, 0, 0, 0.11);--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-button-content-wrapper{flex-direction:row;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-field-group{padding-right:calc( 14px/2 );padding-left:calc( 14px/2 );margin-bottom:14px;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-form-fields-wrapper{margin-left:calc( -14px/2 );margin-right:calc( -14px/2 );margin-bottom:-14px;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-field-group > label, .elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-field-subgroup label{color:var( --e-global-color-primary );}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-field-group .elementor-field{color:var( --e-global-color-a0e571a );}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:var( --e-global-color-dc78308 );border-radius:4px 4px 4px 4px;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-field-group .elementor-select-wrapper select{background-color:var( --e-global-color-dc78308 );border-radius:4px 4px 4px 4px;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-button[type="submit"]{color:#ffffff;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-2972 .elementor-element.elementor-element-82f32a0 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-2972 .elementor-element.elementor-element-3c7c41e{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + -20px) 0px;font-family:"Inter", Sans-serif;font-size:11px;font-weight:400;text-transform:capitalize;font-style:normal;line-height:1.5em;letter-spacing:0px;}#elementor-popup-modal-2972 .dialog-widget-content{animation-duration:0.3s;background-color:var( --e-global-color-d3ae19d );border-radius:10px 10px 10px 10px;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-2972{background-color:#00000088;justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-2972 .dialog-message{width:38vw;height:auto;}#elementor-popup-modal-2972 .dialog-close-button{display:flex;}#elementor-popup-modal-2972 .dialog-close-button i{color:var( --e-global-color-a0e571a );}#elementor-popup-modal-2972 .dialog-close-button svg{fill:var( --e-global-color-a0e571a );}#elementor-popup-modal-2972 .dialog-close-button:hover i{color:var( --e-global-color-07414c8 );}@media(max-width:1024px){.elementor-2972 .elementor-element.elementor-element-62df3e2 .elementor-heading-title{font-size:var( --e-global-typography-6e340fb-font-size );line-height:var( --e-global-typography-6e340fb-line-height );letter-spacing:var( --e-global-typography-6e340fb-letter-spacing );}.elementor-2972 .elementor-element.elementor-element-0b2ce1d .elementor-heading-title{font-size:var( --e-global-typography-4b4aecd-font-size );line-height:var( --e-global-typography-4b4aecd-line-height );letter-spacing:var( --e-global-typography-4b4aecd-letter-spacing );}.elementor-2972 .elementor-element.elementor-element-8f87c9c{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}#elementor-popup-modal-2972 .dialog-message{width:75vw;}}@media(min-width:768px){.elementor-2972 .elementor-element.elementor-element-51411c4{--width:100%;}}@media(max-width:767px){.elementor-2972 .elementor-element.elementor-element-abad759{--gap:16px 16px;--row-gap:16px;--column-gap:16px;--padding-top:10px;--padding-bottom:10px;--padding-left:10px;--padding-right:10px;}.elementor-2972 .elementor-element.elementor-element-62df3e2{margin:5px 0px calc(var(--kit-widget-spacing, 0px) + -5px) 0px;}.elementor-2972 .elementor-element.elementor-element-62df3e2 .elementor-heading-title{font-size:var( --e-global-typography-6e340fb-font-size );line-height:var( --e-global-typography-6e340fb-line-height );letter-spacing:var( --e-global-typography-6e340fb-letter-spacing );}.elementor-2972 .elementor-element.elementor-element-0b2ce1d .elementor-heading-title{font-size:var( --e-global-typography-4b4aecd-font-size );line-height:var( --e-global-typography-4b4aecd-line-height );letter-spacing:var( --e-global-typography-4b4aecd-letter-spacing );}.elementor-2972 .elementor-element.elementor-element-8f87c9c{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );letter-spacing:var( --e-global-typography-text-letter-spacing );}.elementor-2972 .elementor-element.elementor-element-82f32a0{padding:20px 20px 20px 20px;}.elementor-2972 .elementor-element.elementor-element-3c7c41e{font-size:10px;}#elementor-popup-modal-2972 .dialog-message{width:90vw;}#elementor-popup-modal-2972{justify-content:center;align-items:center;}}/* Start custom CSS for heading, class: .elementor-element-62df3e2 */#popup-title {
    min-height: 00px;
}
#popup-title .elementor-heading-title {
    visibility: hidden;
}

#popup-title .elementor-heading-title.loaded {
    visibility: visible;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-82f32a0 *//* ============================================
   MAINFORM v5 - BULLETPROOF
   Uses CSS :focus-within (no JS for focus!)
   ============================================ */

.MainForm {
  /* Brand */
  --primary: #A876F9;
  --primary-soft: rgba(168, 118, 249, 0.15);
  
  /* Background */
  --bg: #FCFBFE;
  --bg-input: red;
  
  /* Borders */
  --border: #E0DBE9;
  --border-focus: #A876F9;
  
  /* Text */
  --text: #1C1624;
  --label: #887F99;
  --label-focus: #8054D8;
  
  /* Feedback */
  --error: #DC3545;
  --error-bg: #FDF0F1;
  --success: #28A745;
  --success-bg: #EDFBF0;
  
  /* Sizing */
  --radius: 0px;
  --height: 50px;
}

/* ============================================
   FIELD GROUP
   ============================================ */

.MainForm .elementor-field-group {
  position: relative;
  margin-bottom: 24px;
}

/* ============================================
   THE INPUT
   ============================================ */

.MainForm .elementor-field-textual {
  width: 100%;
  height: var(--height);
  padding: 0 16px;
  font-family: inherit;
  font-size: 15px;
  font-weight: 400;
  color: var(--text);
  background: var(--bg-input);
  border: 1.5px solid var(--border);
  border-radius: var(--radius);
  outline: none;
  transition: 
    border-color 0.2s ease,
    box-shadow 0.2s ease;
  -webkit-appearance: none;
}

.MainForm textarea.elementor-field-textual {
  height: auto;
  min-height: 120px;
  padding: 16px;
  line-height: 1.6;
  resize: vertical;
}

.MainForm .elementor-field-textual::placeholder {
  color: transparent;
}

/* ============================================
   FOCUS STATE - Pure CSS, works instantly!
   ============================================ */

.MainForm .elementor-field-textual:focus {
  border-color: var(--border-focus);
  box-shadow: 0 0 0 3px var(--primary-soft);
}

/* ============================================
   THE FLOATING LABEL
   ============================================ */

.MainForm .elementor-field-label {
  position: absolute;
  left: 14px;
  top: 50%;
  z-index: 5;
  transform: translateY(-50%);
  
  font-size: 15px;
  font-weight: 450;
  color: var(--label);
  
  /* Solid BG - covers the border */
  background: #FCFBFE;
  padding: 0 6px;
  
  pointer-events: none;
  transition: 
    top 0.2s cubic-bezier(0.4, 0, 0.2, 1),
    transform 0.2s cubic-bezier(0.4, 0, 0.2, 1),
    font-size 0.2s cubic-bezier(0.4, 0, 0.2, 1),
    color 0.15s ease;
}

/* Textarea label */
.MainForm .elementor-field-type-textarea .elementor-field-label {
  top: 20px;
  transform: none;
}

/* ============================================
   LABEL FLOAT - FOCUS (CSS Only!)
   This is the magic - :focus-within on parent
   ============================================ */

.MainForm .elementor-field-group:focus-within .elementor-field-label {
  top: 0;
  transform: translateY(-50%) scale(0.8);
  color: var(--label-focus);
  font-weight: 500;
}

/* Textarea focus */
.MainForm .elementor-field-type-textarea:focus-within .elementor-field-label {
  top: 0;
  transform: translateY(-50%) scale(0.8);
}

/* ============================================
   LABEL FLOAT - FILLED (JS adds .is-filled)
   ============================================ */

.MainForm .elementor-field-group.is-filled .elementor-field-label {
  top: 0;
  transform: translateY(-50%) scale(0.8);
  font-weight: 500;
  color: var(--label);
}

/* When focused AND filled */
.MainForm .elementor-field-group.is-filled:focus-within .elementor-field-label {
  color: var(--label-focus);
}

/* ============================================
   SELECT
   ============================================ */

.MainForm select.elementor-field-textual {
  cursor: pointer;
  padding-right: 44px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23887F99' stroke-width='2'%3E%3Cpath d='M4 6l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 14px center;
}

.MainForm select.elementor-field-textual:focus {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%23A876F9' stroke-width='2'%3E%3Cpath d='M4 6l6 6 6-6'/%3E%3C/svg%3E");
}

/* Select label always floated */
.MainForm .elementor-field-type-select .elementor-field-label {
  top: 0;
  transform: translateY(-50%) scale(0.8);
  font-weight: 500;
}

/* ============================================
   CHECKBOX & RADIO
   ============================================ */

.MainForm .elementor-field-type-checkbox .elementor-field-label,
.MainForm .elementor-field-type-radio .elementor-field-label,
.MainForm .elementor-field-type-acceptance .elementor-field-label {
  position: static;
  transform: none;
  background: none;
  padding: 0;
  margin-bottom: 10px;
  font-size: 14px;
  font-weight: 500;
  color: var(--text);
}

.MainForm input[type="checkbox"],
.MainForm input[type="radio"] {
  width: 18px;
  height: 18px;
  margin-right: 8px;
  accent-color: var(--primary);
  cursor: pointer;
}

/* ============================================
   ERROR STATE
   ============================================ */

.MainForm .elementor-field-group.elementor-error .elementor-field-textual {
  border-color: var(--error);
  background: var(--error-bg);
}

.MainForm .elementor-field-group.elementor-error .elementor-field-textual:focus {
  box-shadow: 0 0 0 3px rgba(220, 53, 69, 0.15);
}

.MainForm .elementor-field-group.elementor-error .elementor-field-label,
.MainForm .elementor-field-group.elementor-error:focus-within .elementor-field-label {
  color: var(--error) !important;
}

.MainForm .elementor-message-danger {
  margin-top: 6px;
  font-size: 13px;
  color: var(--error);
}

/* ============================================
   SUCCESS
   ============================================ */

.MainForm .elementor-field-group.elementor-success .elementor-field-textual {
  border-color: var(--success);
  background: var(--success-bg);
}

.MainForm .elementor-message-success {
  padding: 16px;
  background: var(--success-bg);
  border-radius: var(--radius);
  color: var(--success);
  font-weight: 500;
}

/* ============================================
   REQUIRED
   ============================================ */

.MainForm .elementor-mark-required .elementor-field-label::after {
  content: " *";
  color: var(--primary);
}

/* ============================================
   POPUP FIX - Explicit background color
   ============================================ */

.elementor-popup-modal .MainForm .elementor-field-label,
.elementor-location-popup .MainForm .elementor-field-label,
.dialog-widget-content .MainForm .elementor-field-label {
  background-color: #FCFBFE !important;
}

/* If form is inside a white container */
.MainForm.white-bg .elementor-field-label,
.MainForm.on-white .elementor-field-label {
  background-color: #FFFFFF !important;
}

/* ============================================
   MOBILE
   ============================================ */

@media (max-width: 767px) {
  .MainForm {
    --height: 52px;
    --radius: 10px;
  }
  
  .MainForm .elementor-field-textual {
    font-size: 16px;
    padding: 0 14px;
  }
  
  .MainForm .elementor-field-label {
    left: 12px;
    font-size: 14px;
  }
  
  .MainForm .elementor-field-group {
    margin-bottom: 20px;
  }
}

/* ============================================
   ACCESSIBILITY
   ============================================ */

@media (prefers-reduced-motion: reduce) {
  .MainForm * {
    transition-duration: 0.01ms !important;
  }
}/* End custom CSS */