/* =========================================================
   GRAVITY WIZARD STYLE (FORM ID 5) - PURE CSS (NO VARIABLES)
   ========================================================= */

#gform_wrapper_5,
#gform_wrapper_5 * {
  font-family: "Montserrat", Arial, sans-serif !important;
}

.gform_heading {
    margin: 10px !important;
}

#gform_wrapper_5 {
	margin: 0!important;
}

p.gform_required_legend {
    display: none;
}


#gf_page_steps_5,
#gform_wrapper_5 .gf_page_steps {
  display: none !important;
}

/* Center the question label (legend) */
#gform_wrapper_5 .gfield_label,
#gform_wrapper_5 legend.gfield_label {
  color: #000;
  font-size: 17px !important;
  margin: 5px 0 31px;
  display: block;
  font-weight: 700;
  font-family: montserrat;
  text-align: center !important;
  padding-left: 0;
  line-height: normal;
  letter-spacing: .4px;
}

/* Optional: hide required asterisk */
#gform_wrapper_5 .gfield_required {
  display: none !important;
}

/* Fix theme padding that sometimes hits radios */
#gform_wrapper_5 input[type="radio"] {
  padding-left: 0 !important;
}

/* =============================
   PILL RADIO STYLE
   Apply to fields that have class: or-step-choice
   ============================= */
#gform_wrapper_5 .gfield.or-step-choice {
  width: 100% !important;
  max-width: 100% !important;
}


#gform_wrapper_5 .gfield.or-step-choice .gfield_radio {
  margin: 0 !important;
  padding: 0 !important;
}

#gform_wrapper_5 .gfield.or-step-choice .ginput_container_radio,
#gform_wrapper_5 .gfield.or-step-choice .gfield_radio{
  width: 100% !important;
  max-width: 100% !important;
  gap: 0 !important;
}

/* Supports both markups: li or .gchoice */
#gform_wrapper_5 .gfield.or-step-choice .gfield_radio li,
#gform_wrapper_5 .gfield.or-step-choice .gfield_radio .gchoice {
  list-style: none !important;
  margin: 0 0 10px !important;
  position: relative !important;
  width: 100% !important;
  max-width: 100%!important;
  display: block;
}

/* Hide the native radio */
#gform_wrapper_5 .gfield.or-step-choice input[type="radio"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 1px !important;
  height: 1px !important;
  pointer-events: none !important;
  appearance: none !important;
}

/* Remove Gravity custom bullet */
#gform_wrapper_5 .gfield.or-step-choice input[type="radio"] + label:before {
  content: none !important;
  display: none !important;
}

/* Pill label */
#gform_wrapper_5 .gfield.or-step-choice input[type="radio"] + label {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  width: 100%!important;
  max-width: 100%!important;
  box-sizing:border-box !important;
  border: 2px solid #1E88E5 !important;
  border-radius: 999px !important;
  margin: 0 !important;
  padding: 12px 15px 12px 30px !important;
  min-height: 56px !important;

  color: #1f2a32 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.87;
  cursor: pointer !important;
  user-select: none !important;

  background: #fff !important;
  transition: background .15s ease, transform .05s ease !important;
}

/* Right circle */
#gform_wrapper_5 .gfield.or-step-choice input[type="radio"] + label:after {
  content: "" !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  border: 2px solid #1E88E5 !important;
  background: #fff !important;
  flex: 0 0 auto !important;
}

/* Hover */
#gform_wrapper_5 .gfield.or-step-choice input[type="radio"] + label:hover {
  background: rgba(30, 136, 229, 0.10) !important;
}

/* Press */
#gform_wrapper_5 .gfield.or-step-choice input[type="radio"] + label:active {
  transform: scale(0.99) !important;
}

/* Checked */
#gform_wrapper_5 .gfield.or-step-choice input[type="radio"]:checked + label {
  background: #1E88E5  !important;
  border-color: #1E88E5 !important;
  color: #fff !important;
}

/* Checked circle + check icon */
#gform_wrapper_5 .gfield.or-step-choice input[type="radio"]:checked + label:after {
  border-color: #ffffff !important;
  background-color: #ffffff !important;

  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 14px 14px !important;

  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%234EA381' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") !important;
}

/* Focus */
#gform_wrapper_5 .gfield.or-step-choice input[type="radio"]:focus + label {
  outline: 3px solid rgba(30, 136, 229, 0.30) !important;
  outline-offset: 2px !important;
}

/* =============================
   Buttons:
   - Hide Next/Prev only on page 1
   - Show normally on pages 2+
   ============================= */

/* Step 1: visually hide Prev/Next but keep them usable for GF */
#gform_page_5_1 .gform_page_footer .gform_previous_button,
#gform_page_5_1 .gform_page_footer .gform_next_button{
  position: absolute !important;
  left: -9999px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important; /* optional */
}

/* Nice layout for pages 2+ footers */
#gform_wrapper_5 .gform_page_footer {
  display: flex;
  gap: 12px;
  justify-content: space-between;
  align-items: center;
  margin-top: 18px;
}

/* Style prev/next/submit */
#gform_wrapper_5 .gform_page_footer input[type="button"],
#gform_wrapper_5 .gform_page_footer input[type="submit"] {
  border-radius: 999px !important;
  padding: 12px 18px !important;
  font-weight: 800 !important;
  text-transform: uppercase;
}

/* Make submit full width on last page (optional) */
#gform_wrapper_5 .gform_page_footer input[type="submit"] {
  width: 100%;
}

/* =============================
   Dots (JS will inject)
   ============================= */

#gform_wrapper_5 .or-step-dots {
  display: flex !important;
  justify-content: center !important;
  gap: 10px !important;
  padding: 60px 0 10px !important;
}

#gform_wrapper_5 .or-dot {
  width: 15px !important;
  height: 15px !important;
  border-radius: 50% !important;
  background: #e3e6ea !important;
}

#gform_wrapper_5 .or-dot.is-complete { background: #c6ccd1 !important; }
#gform_wrapper_5 .or-dot.is-active   { background: #9aa0a6 !important; }

@media (max-width: 575px) {
  #gform_wrapper_5 .gfield_label,
  #gform_wrapper_5 legend.gfield_label {
    font-size: 18px !important;
  }

  #gform_wrapper_5 .gfield.or-step-choice input[type="radio"] + label {
    font-size: 15px !important;
  }

  /* Optional: make buttons stack on mobile */
  #gform_wrapper_5 .gform_page_footer {
    flex-direction: column;
    align-items: stretch;
  }

  #gform_wrapper_5 .gform_page_footer input[type="button"] {
    width: 100%;
  }
}

/* =========================================
   FORM 5: Make Step (name/email/phone) look like Image 2
   Scope: only inside .gformarea
   ========================================= */

.gformarea #gform_wrapper_5 .gform_fields{
  display: block !important;
}

/* Force all fields to be full width (kill 2-col grid) */
.gformarea #gform_wrapper_5 .gfield,
.gformarea #gform_wrapper_5 .gfield--width-half,
.gformarea #gform_wrapper_5 .gfield--width-third,
.gformarea #gform_wrapper_5 .gfield--width-quarter{
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
}

/* Remove any "input with icon" padding / background */
.gformarea #gform_wrapper_5 .ginput_container{
  width: 100% !important;
  max-width: 100% !important;
}

/* Hide icons if they are added as background / pseudo elements (common patterns) */
.gformarea #gform_wrapper_5 .ginput_container i,
.gformarea #gform_wrapper_5 .ginput_container svg{
  display: none !important;
}

/* Make inputs look like Image 2 */
.gformarea #gform_wrapper_5 input[type="text"],
.gformarea #gform_wrapper_5 input[type="email"],
.gformarea #gform_wrapper_5 input[type="tel"],
.gformarea #gform_wrapper_5 select,
.gformarea #gform_wrapper_5 textarea{
  width: 100% !important;
  max-width: 100% !important;

  border: 1px solid #d9d9d9 !important;
  border-radius: 0 !important;      /* Image 2 is squared */
  background: #fff !important;

  padding: 14px 12px !important;    /* no left icon spacing */
  box-shadow: none !important;
}

/* Labels like Image 2 */
.gformarea #gform_wrapper_5 .gfield_label{
  text-align: center !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  margin: 30px 0 !important;
}

/* Fix the "phone country flag" field if using intl-tel-input */
.gformarea #gform_wrapper_5 .iti,
.gformarea #gform_wrapper_5 .iti input{
  width: 100% !important;
  max-width: 100% !important;
}

/* Remove extra spacing that makes it look like cards/rows */
.gformarea #gform_wrapper_5 .gfield{
  margin-bottom: 16px !important;
}

/* The row that contains first/last */
.gformarea #gform_wrapper_5 #field_5_40 #input_5_40.gform-grid-row{
  display: block !important;
  width: 100% !important;
  gap: 0 !important;
  margin: 0 !important;
}

/* Each column (first + last) becomes full width */
.gformarea #gform_wrapper_5 #field_5_40 #input_5_40 .gform-grid-col{
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
  padding: 0 !important;
}

/* Space between First and Last */
.gformarea #gform_wrapper_5 #field_5_40 #input_5_40 .gform-grid-col + .gform-grid-col{
  margin-top: 16px !important;
}

/* Make sure the inputs fill the row */
.gformarea #gform_wrapper_5 #field_5_40 input[type="text"]{
  width: 100% !important;
  max-width: 100% !important;
}

/* ================================
   FIX intl-tel-input flag layout
   ================================ */

/* Make the ITI wrapper full width */
.gformarea #gform_wrapper_5 .iti{
  width: 100% !important;
  display: block !important;
}

/* Ensure the phone input has room for the flag */
.gformarea #gform_wrapper_5 .iti input[type="tel"],
.gformarea #gform_wrapper_5 input[type="tel"].iti__tel-input{
  width: 100% !important;
  padding-left: 52px !important;  /* space for flag */
  box-sizing: border-box !important;
}

/* Position the flag container correctly */
.gformarea #gform_wrapper_5 .iti__flag-container{
  left: 12px !important;
  right: auto !important;
}

/* Keep the flag vertically centered */
.gformarea #gform_wrapper_5 .iti__selected-flag{
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
}

/* Make sure dropdown arrow doesn't overlap */
.gformarea #gform_wrapper_5 .iti__arrow{
  margin-left: 6px !important;
}

/* If your general input rules add padding-left, exclude tel so it doesn't break ITI */
.gformarea #gform_wrapper_5 input:not([type="submit"]):not([type="radio"]):not([type="checkbox"]):not([type="tel"]){
  padding-left: 12px !important;
}

/* =========================================
   Submit button style (Form 5) - matches blue theme
   Scope: only inside .gformarea
   ========================================= */

.gformarea #gform_wrapper_5 .gform_page_footer{
  display: flex;
  gap: 12px;
  align-items: center;
}

/* Make Previous on the left, Submit on the right */
.gformarea #gform_wrapper_5 .gform_page_footer #gform_previous_button_5{
  order: 1;
}
.gformarea #gform_wrapper_5 .gform_page_footer #gform_submit_button_5{
  order: 2;
  margin-left: auto;
}

/* SUBMIT button */
.gformarea #gform_wrapper_5 #gform_submit_button_5{
  background: #1E88E5 !important;       /* brand blue */
  color: #ffffff !important;
  border: 2px solid #1E88E5 !important;

  border-radius: 999px !important;
  padding: 14px 26px !important;
  font-weight: 800 !important;
  letter-spacing: .3px !important;
  text-transform: uppercase !important;

  box-shadow: 0 10px 22px rgba(30,136,229,.25) !important;
  transition: transform .08s ease, background .15s ease, box-shadow .15s ease !important;
}

/* Hover */
.gformarea #gform_wrapper_5 #gform_submit_button_5:hover{
  background: #1876c7 !important;
  border-color: #1876c7 !important;
  box-shadow: 0 12px 26px rgba(30,136,229,.32) !important;
}

/* Press */
.gformarea #gform_wrapper_5 #gform_submit_button_5:active{
  transform: scale(.99) !important;
}

/* Focus */
.gformarea #gform_wrapper_5 #gform_submit_button_5:focus{
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(30,136,229,.25), 0 10px 22px rgba(30,136,229,.25) !important;
}

/* Remove Gravity's weird background highlight on the footer (the green/blue bar you see) */
.gformarea #gform_wrapper_5 .gform_page_footer{
  background: transparent !important;
}

/* Mobile: full-width buttons stacked */
@media (max-width: 575px){
  .gformarea #gform_wrapper_5 .gform_page_footer{
    flex-direction: column;
    align-items: stretch;
  }

  .gformarea #gform_wrapper_5 #gform_previous_button_5,
  .gformarea #gform_wrapper_5 #gform_submit_button_5{
    width: 100% !important;
    margin-left: 0 !important;
  }
}

/* =========================================
   FORM 5 - NEXT / PREV / SUBMIT (final override)
   Put this at the END of your CSS
   ========================================= */

#gform_wrapper_5 .gform_page_footer{
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  justify-content: flex-start !important;
  background: transparent !important;
  margin-top: 18px !important;
}

/* Push Next/Submit to the right */
#gform_wrapper_5 .gform_page_footer .gform_next_button,
#gform_wrapper_5 .gform_page_footer input[type="submit"]{
  margin-left: auto !important;
}

/* Base button look */
#gform_wrapper_5 .gform_page_footer .gform_previous_button,
#gform_wrapper_5 .gform_page_footer .gform_next_button,
#gform_wrapper_5 .gform_page_footer input[type="submit"]{
  appearance: none !important;
  border-radius: 999px !important;
  padding: 12px 22px !important;
  min-height: 46px !important;
  font-weight: 800 !important;
  font-size: 14px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  border: 2px solid transparent !important;
  transition: background .15s ease, border-color .15s ease, box-shadow .15s ease, transform .08s ease !important;
}

/* IMPORTANT: undo your earlier "submit width:100%" rule on desktop */
#gform_wrapper_5 .gform_page_footer input[type="submit"]{
  width: auto !important;
}

/* Previous = outline */
#gform_wrapper_5 .gform_page_footer .gform_previous_button{
  background: #fff !important;
  color: #009EF7 !important;
  border-color: #009EF7 !important;
  box-shadow: 0 8px 18px rgba(0,158,247,.12) !important;
}

/* Next + Submit = filled */
#gform_wrapper_5 .gform_page_footer .gform_next_button,
#gform_wrapper_5 .gform_page_footer input[type="submit"]{
  background: #009EF7 !important;
  color: #fff !important;
  border-color: #009EF7 !important;
  box-shadow: 0 10px 22px rgba(0,158,247,.22) !important;
}

/* Hover */
#gform_wrapper_5 .gform_page_footer .gform_previous_button:hover{
  background: rgba(0,158,247,.08) !important;
}
#gform_wrapper_5 .gform_page_footer .gform_next_button:hover,
#gform_wrapper_5 .gform_page_footer input[type="submit"]:hover{
  background: #0087D2 !important;
  border-color: #0087D2 !important;
}

/* Press */
#gform_wrapper_5 .gform_page_footer .gform_previous_button:active,
#gform_wrapper_5 .gform_page_footer .gform_next_button:active,
#gform_wrapper_5 .gform_page_footer input[type="submit"]:active{
  transform: scale(.99) !important;
}

/* Focus */
#gform_wrapper_5 .gform_page_footer .gform_previous_button:focus,
#gform_wrapper_5 .gform_page_footer .gform_next_button:focus,
#gform_wrapper_5 .gform_page_footer input[type="submit"]:focus{
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(0,158,247,.25), 0 10px 22px rgba(0,158,247,.22) !important;
}

/* Tablet + mobile: stack full width */
@media (max-width: 768px){
  #gform_wrapper_5 .gform_page_footer{
    flex-direction: column !important;
    align-items: stretch !important;
  }

  #gform_wrapper_5 .gform_page_footer .gform_next_button,
  #gform_wrapper_5 .gform_page_footer input[type="submit"]{
    margin-left: 0 !important;
  }

  #gform_wrapper_5 .gform_page_footer .gform_previous_button,
  #gform_wrapper_5 .gform_page_footer .gform_next_button,
  #gform_wrapper_5 .gform_page_footer input[type="submit"]{
    width: 100% !important;
  }
}

.gformarea .gform_wrapper .gf-terms{
  text-align: center !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
}

.gformarea .gform_wrapper .gf-terms a{
  color: #009EF7 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.gformarea .gform_wrapper .gf-terms a:hover{
  text-decoration: underline !important;
}

  .gf-terms {
    text-align: center !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
  }

  .gf-terms a {
    color: #009EF7 !important;
   font-weight: 700 !important;
   text-decoration: none !important;
  }

  .gf-terms a:hover {
    text-decoration: underline !important;
  }

  /* Hide "Next" button (multi-page steps) */
#gform_wrapper_5 .gform_page_footer .gform_next_button{
  position: absolute !important;
  left: -9999px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
/* FORM 5 - move Previous button to the RIGHT */
#gform_wrapper_5 .gform_page_footer{
  justify-content: flex-end !important;
}

#gform_wrapper_5 .gform_page_footer .gform_previous_button{
  margin-left: auto !important;
}
/* FORM 5 - Dots colors (completed = bluish, active = solid blue) */
#gform_wrapper_5 .or-dot{
  background: #e3e6ea !important; /* default */
}

#gform_wrapper_5 .or-dot.is-complete{
  background: rgba(0,158,247,.35) !important; /* bluish for previous steps */
}

#gform_wrapper_5 .or-dot.is-active{
  background: #009EF7 !important; /* current step */
}
#gform_wrapper_5 input[type="text"],
#gform_wrapper_5 input[type="email"],
#gform_wrapper_5 input[type="tel"],
#gform_wrapper_5 select,
#gform_wrapper_5 textarea{
  border-radius: 14px !important;     /* rounded rectangle */
  padding: 14px 16px !important;
  min-height: 54px !important;
}

/* Textarea a bit more rounded + taller */
#gform_wrapper_5 textarea{
  border-radius: 14px !important;
  min-height: 120px !important;
}

/* Phone input (intl-tel-input) keep space for flag */
#gform_wrapper_5 .iti input[type="tel"]{
  border-radius: 14px !important;
  padding-left: 58px !important;
}

/* Flag container alignment */
#gform_wrapper_5 .iti__flag-container{
  left: 14px !important;
}
/* Stack fields + add clean spacing */
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) .gform_fields{
  display: block !important;
}

#gform_wrapper_5 .gform_page:not(.gform_page_hidden) .gfield{
  margin: 0 0 16px !important;  /* space between inputs */
}

/* Inputs: rounded rectangle (not pill), light border */
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) input[type="text"],
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) input[type="email"],
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) input[type="tel"],
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) select,
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) textarea{
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  box-sizing: border-box !important;

  border: 1px solid #d9d9d9 !important;
  border-radius: 10px !important;     /* rounded rectangle */
  background: #fff !important;

  min-height: 52px !important;
  padding: 14px 16px !important;

  font-size: 16px !important;
  font-weight: 600 !important;
  color: #1f2a32 !important;

  box-shadow: none !important;
}

/* Focus style (blue, but not heavy) */
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) input[type="text"]:focus,
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) input[type="email"]:focus,
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) input[type="tel"]:focus,
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) select:focus,
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) textarea:focus{
  border-color: #009EF7 !important;
  box-shadow: 0 0 0 3px rgba(0,158,247,.15) !important;
  outline: none !important;
}

/* Phone (intl-tel-input) – keep it full width and aligned */
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) .iti{
  width: 100% !important;
  display: block !important;
}
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) .iti input[type="tel"]{
  width: 100% !important;
  padding-left: 56px !important; /* space for flag */
  border-radius: 10px !important;
}
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) .iti__flag-container{
  left: 14px !important;
}

/* Terms spacing like your example */
#gform_wrapper_5 .gform_page:not(.gform_page_hidden) .gf-terms{
  margin-top: 6px !important;
}

/* last page only (from your screenshot: #gform_page_5_4) */
#gform_page_5_4 .gform_page_footer{
  display: flex !important;
  justify-content: flex-end !important;   /* group stays on the right */
  align-items: center !important;
  gap: 12px !important;
  background: transparent !important;
}

/* stop the buttons stretching / pushing away */
#gform_page_5_4 .gform_page_footer .gform_previous_button,
#gform_page_5_4 .gform_page_footer input[type="submit"]{
  width: auto !important;
  flex: 0 0 auto !important;
  margin: 0 !important;                  /* kills margin-left:auto from older rules */
}

/* keep them side-by-side on tablet too (your CSS stacks at <=768px) */
@media (max-width: 768px){
  #gform_page_5_4 .gform_page_footer{
    flex-direction: row !important;
    justify-content: flex-end !important;
    align-items: center !important;
  }
}

/* optional: only on small phones stack full width */
@media (max-width: 575px){
  #gform_page_5_4 .gform_page_footer{
    flex-direction: column !important;
    align-items: stretch !important;
  }
  
  #gform_page_5_4 .gform_page_footer input[type="submit"]{
    width: 100% !important;
  }
}
/* Small screens: Previous + Submit side-by-side, centered (like screenshot) */
@media (max-width: 575px){
  #gform_page_5_4 .gform_page_footer{
    display: flex !important;
    flex-direction: row !important;        /* stop stacking */
    justify-content: center !important;    /* center the pair */
    align-items: center !important;
    gap: 14px !important;
    flex-wrap: nowrap !important;          /* keep them on one line */
  }

  
  #gform_page_5_4 .gform_page_footer input[type="submit"]{
    width: auto !important;                /* stop 100% width */
    flex: 0 0 auto !important;
    margin: 0 !important;                  /* kills any margin-left:auto rules */
    min-width: 140px !important;           /* optional: make them look even */
  }
}

/* make the label a flex row so we can push the circle to the far right */
#gform_wrapper_5 .gfield.or-step-choice input[type="radio"] + label{
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

/* push the circle to the right */
#gform_wrapper_5 .gfield.or-step-choice input[type="radio"] + label:after{
  margin-left: auto !important;   /* key line */
  margin-right: 10px !important;  /* adjust: smaller = closer to right edge */
}




/* Every field wrapper = full width */
#gform_wrapper_5 .gform_fields > .gfield,
#gform_wrapper_5 .gfield--width-half,
#gform_wrapper_5 .gfield--width-third,
#gform_wrapper_5 .gfield--width-quarter{
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
}

/* Any “grid/complex” inputs (Name, Address, etc.) = stack their parts */
#gform_wrapper_5 .ginput_complex,
#gform_wrapper_5 .ginput_complex.gform-grid-row,
#gform_wrapper_5 .ginput_complex .gform-grid-row{
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

/* Each inner “column” becomes full width */
#gform_wrapper_5 .ginput_complex .gform-grid-col,
#gform_wrapper_5 .ginput_complex > span{
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
}