.elementor-1233 .elementor-element.elementor-element-d295444{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--border-radius:10px 10px 10px 10px;}.elementor-1233 .elementor-element.elementor-element-d295444:not(.elementor-motion-effects-element-type-background), .elementor-1233 .elementor-element.elementor-element-d295444 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}.elementor-1233 .elementor-element.elementor-element-d295444.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-1233 .elementor-element.elementor-element-6974883{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );text-transform:var( --e-global-typography-primary-text-transform );font-style:var( --e-global-typography-primary-font-style );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );color:var( --e-global-color-primary );}.elementor-1233 .elementor-element.elementor-element-7aa9a21.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-1233 .elementor-element.elementor-element-7aa9a21 .elementor-heading-title{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );font-style:var( --e-global-typography-secondary-font-style );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}#elementor-popup-modal-1233{background-color:rgba(0,0,0,.8);justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-1233 .dialog-message{width:1000px;height:auto;}#elementor-popup-modal-1233 .dialog-close-button{display:flex;top:5%;font-size:25px;}#elementor-popup-modal-1233 .dialog-widget-content{border-radius:10px 10px 10px 10px;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}body:not(.rtl) #elementor-popup-modal-1233 .dialog-close-button{right:2%;}body.rtl #elementor-popup-modal-1233 .dialog-close-button{left:2%;}#elementor-popup-modal-1233 .dialog-close-button i{color:var( --e-global-color-secondary );}#elementor-popup-modal-1233 .dialog-close-button svg{fill:var( --e-global-color-secondary );}#elementor-popup-modal-1233 .dialog-close-button:hover i{color:var( --e-global-color-primary );}@media(max-width:1024px){.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-1233 .elementor-element.elementor-element-7aa9a21 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}#elementor-popup-modal-1233 .dialog-close-button{top:5%;}body:not(.rtl) #elementor-popup-modal-1233 .dialog-close-button{right:2%;}body.rtl #elementor-popup-modal-1233 .dialog-close-button{left:2%;}}@media(min-width:768px){.elementor-1233 .elementor-element.elementor-element-d295444{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-1233 .elementor-element.elementor-element-d295444{--width:100%;}}@media(max-width:767px){.elementor-1233 .elementor-element.elementor-element-d295444{--width:100%;--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-1233 .elementor-element.elementor-element-6974883{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );letter-spacing:var( --e-global-typography-primary-letter-spacing );}.elementor-1233 .elementor-element.elementor-element-7aa9a21{width:var( --container-widget-width, 214px );max-width:214px;--container-widget-width:214px;--container-widget-flex-grow:0;}.elementor-1233 .elementor-element.elementor-element-7aa9a21 .elementor-heading-title{font-size:var( --e-global-typography-secondary-font-size );line-height:var( --e-global-typography-secondary-line-height );letter-spacing:var( --e-global-typography-secondary-letter-spacing );}#elementor-popup-modal-1233 .dialog-message{width:1000px;padding:10px 10px 10px 10px;}#elementor-popup-modal-1233 .dialog-close-button{top:2%;}body:not(.rtl) #elementor-popup-modal-1233 .dialog-close-button{right:3%;}body.rtl #elementor-popup-modal-1233 .dialog-close-button{left:3%;}}/* Start custom CSS for shortcode, class: .elementor-element-40c77ff *//* =========================================================
   Gravity Forms (Elementor Shortcode widget)
   Desktop + Tablet + Mobile
   ========================================================= */

.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper{
  --gf-accent:#E66713;
  --gf-dark:#0b0b0b;
  --gf-dark-2:#121212;
  --gf-light:#ffffff;
  --gf-radius:12px;
  --gf-gap-desktop:18px;
  --gf-gap-tablet:16px;
  --gf-gap-mobile:12px;
}

/* ---------- Inputs (orange outline, black fill) ---------- */
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper input[type="text"],
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper input[type="email"],
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper input[type="tel"],
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper input[type="number"],
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper textarea,
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper select{
  background: var(--gf-dark-2) !important;
  color: var(--gf-light) !important;
  border: 2px solid var(--gf-accent) !important;
  border-radius: var(--gf-radius) !important;
  padding: 14px 16px !important;
  min-height: 54px !important;
  box-shadow: none !important;
  outline: none !important;
  max-width: 100% !important;
}

.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper ::placeholder{
  color: rgba(255,255,255,.55) !important;
}

/* Focus ring */
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper input:focus,
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper textarea:focus,
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper select:focus{
  box-shadow: 0 0 0 3px rgba(230,103,19,0.22) !important;
}

/* ---------- Labels ---------- */
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gfield_label{
  margin-bottom: 8px !important;
  font-weight: 700 !important;
}

/* ---------- Progress bar ---------- */
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gf_progressbar_wrapper{
  margin: 8px 0 18px !important;
}

.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gf_progressbar{
  height: 10px !important;
  border-radius: 999px !important;
  background: #111 !important;
  overflow: hidden !important;
}

.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gf_progressbar_percentage{
  height: 10px !important;
  border-radius: 999px !important;
  background: var(--gf-accent) !important;
}

.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gf_progressbar_percentage span{
  display:none !important;
}

/* ---------- Buttons (white text, orange outline) ---------- */
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_next_button,
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_previous_button,
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_button{
  background: var(--gf-dark) !important;
  color: #fff !important;
  border: 2px solid var(--gf-accent) !important;
  border-radius: var(--gf-radius) !important;
  min-height: 54px !important;
  padding: 0 22px !important;
  box-shadow: none !important;
}

/* Footer alignment */
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_page_footer,
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_footer{
  display: flex !important;
  gap: 12px !important;
  margin-top: 18px !important;
  padding: 0 !important;
  justify-content: flex-end !important;
}

/* =========================================================
   IMPORTANT: Only style PAGE 1 as the one-line layout
   so steps 2/3 don't get forced into the same grid.
   ========================================================= */

/* Default: make fields behave */
.elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_fields{
  row-gap: 16px !important;
}

/* ---------- DESKTOP (>= 1025px): one row ---------- */
@media (min-width: 1025px){

  /* Target only the visible page's fields.
     GF marks the active page with .gform_page (visible) */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_page:not([style*="display: none"]) .gform_fields{
    display: grid !important;
    grid-template-columns: 1.35fr 1.05fr 1.05fr; /* Name | Email | Phone */
    gap: var(--gf-gap-desktop) !important;
    align-items: end !important;
  }

  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_fields .gfield{
    margin: 0 !important;
    width: auto !important;
    float: none !important;
    max-width: 100% !important;
  }

  /* place fields by type */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_fields .gfield.gfield--type-name{ grid-column: 1 !important; }
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_fields .gfield.gfield--type-email{ grid-column: 2 !important; }
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_fields .gfield.gfield--type-phone{ grid-column: 3 !important; }

  /* Name field: First + Last on one line */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gfield.gfield--type-name .ginput_container_name{
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: var(--gf-gap-desktop) !important;
    align-items: end !important;
  }
}

/* ---------- TABLET (768px–1024px): 2 columns ---------- */
@media (min-width: 768px) and (max-width: 1024px){

  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_page:not([style*="display: none"]) .gform_fields{
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: var(--gf-gap-tablet) !important;
    align-items: end !important;
  }

  /* Name spans full width */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_fields .gfield.gfield--type-name{
    grid-column: 1 / -1 !important;
  }

  /* Keep first/last side-by-side on tablet */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gfield.gfield--type-name .ginput_container_name{
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: var(--gf-gap-tablet) !important;
  }

  /* Email left, phone right */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_fields .gfield.gfield--type-email{ grid-column: 1 !important; }
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_fields .gfield.gfield--type-phone{ grid-column: 2 !important; }
}

/* ---------- MOBILE (<= 767px): stack + full width buttons ---------- */
@media (max-width: 767px){

  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_fields{
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: var(--gf-gap-mobile) !important;
  }

  /* Name stacks on mobile */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gfield.gfield--type-name .ginput_container_name{
    grid-template-columns: 1fr !important;
    gap: var(--gf-gap-mobile) !important;
  }

  /* Full width buttons */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_page_footer,
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_footer{
    justify-content: stretch !important;
  }

  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_next_button,
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_previous_button,
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_button{
    width: 100% !important;
  }
}

/* =========================
   MOBILE FIX: force full width fields/inputs
   ========================= */
@media (max-width: 767px){

  /* Gravity Forms width utility classes override stuff on real devices */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gfield,
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gfield.gfield--width-half,
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gfield.gfield--width-third,
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gfield.gfield--width-quarter{
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
  }

  /* Make the container and inputs fill */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .ginput_container,
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper input[type="text"],
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper input[type="email"],
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper input[type="tel"],
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper input[type="number"],
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper select,
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper textarea{
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* If your theme uses flex rows for fields, force wrap */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_fields{
    display: flex !important;
    flex-wrap: wrap !important;
  }

  /* Button already full width in your CSS, but this makes it bulletproof */
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_page_footer,
  .elementor-1233 .elementor-element.elementor-element-40c77ff .gform_wrapper .gform_footer{
    width: 100% !important;
  }
}/* End custom CSS */