.elementor-966 .elementor-element.elementor-element-31260f7{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-966 .elementor-element.elementor-element-31260f7.e-con{--flex-grow:0;--flex-shrink:0;}.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 );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-primary );}.elementor-966 .elementor-element.elementor-element-71ab60a{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 030px) 0px;text-align:center;}.elementor-966 .elementor-element.elementor-element-71ab60a .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 );line-height:var( --e-global-typography-primary-line-height );color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{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 );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );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 );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{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 );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{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 );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-group{padding-right:calc( 0px/2 );padding-left:calc( 0px/2 );margin-bottom:0px;}.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-form-fields-wrapper{margin-left:calc( -0px/2 );margin-right:calc( -0px/2 );margin-bottom:-0px;}.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-group.recaptcha_v3-bottomleft, .elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-group > label{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:24px;}.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-button{font-family:"Roboto", Sans-serif;font-weight:500;border-radius:8px 8px 8px 8px;}.elementor-966 .elementor-element.elementor-element-3e5e96d .e-form__buttons__wrapper__button-next{background-color:#1742FD;color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-button[type="submit"]{background-color:#1742FD;color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-966 .elementor-element.elementor-element-3e5e96d .e-form__buttons__wrapper__button-previous{background-color:#1742FD;color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3e5e96d .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-966 .elementor-element.elementor-element-3e5e96d .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3e5e96d{--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-966 .elementor-element.elementor-element-20afa96{padding:0px 0px 0px 0px;--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-966 .elementor-element.elementor-element-20afa96 .elementor-field-group{padding-right:calc( 0px/2 );padding-left:calc( 0px/2 );margin-bottom:0px;}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-form-fields-wrapper{margin-left:calc( -0px/2 );margin-right:calc( -0px/2 );margin-bottom:-0px;}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-group > label{font-family:"Inter", Sans-serif;font-size:16px;font-weight:500;}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-html{padding-bottom:0px;}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-group .elementor-field, .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-subgroup label{font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-button{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 );line-height:var( --e-global-typography-text-line-height );border-radius:8px 8px 8px 8px;padding:015px 30px 15px 30px;}.elementor-966 .elementor-element.elementor-element-20afa96 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-primary );color:var( --e-global-color-de04389 );}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-button[type="submit"]{background-color:var( --e-global-color-primary );color:var( --e-global-color-de04389 );}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-button[type="submit"] svg *{fill:var( --e-global-color-de04389 );}.elementor-966 .elementor-element.elementor-element-20afa96 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-20afa96 .e-form__buttons__wrapper__button-next:hover{background-color:var( --e-global-color-text );color:#ffffff;}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-button[type="submit"]:hover{background-color:var( --e-global-color-text );color:#ffffff;}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-966 .elementor-element.elementor-element-20afa96 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-c9ed240{background-color:#FFFFFF;padding:0px 0px 0px 0px;border-style:none;--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-966 .elementor-element.elementor-element-c9ed240 .elementor-field-group{padding-right:calc( 0px/2 );padding-left:calc( 0px/2 );margin-bottom:32px;}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-form-fields-wrapper{margin-left:calc( -0px/2 );margin-right:calc( -0px/2 );margin-bottom:-32px;}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-labels-inline .elementor-field-group > label{padding-left:12px;}body:not(.rtl) .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-labels-inline .elementor-field-group > label{padding-right:12px;}body .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-labels-above .elementor-field-group > label{padding-bottom:12px;}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-group > label, .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-group > label{font-family:"Inter", Sans-serif;font-size:16px;font-weight:500;line-height:24px;}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-html{padding-bottom:0px;color:var( --e-global-color-text );font-family:"Inter", Sans-serif;font-weight:400;}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-width:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-width:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-primary );color:var( --e-global-color-de04389 );}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button[type="submit"]{background-color:var( --e-global-color-primary );color:var( --e-global-color-de04389 );}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button[type="submit"] svg *{fill:var( --e-global-color-de04389 );}.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons__wrapper__button-previous{background-color:#FFFFFF;color:#ffffff;}.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button{border-radius:8px 8px 8px 8px;padding:015px 030px 015px 030px;}.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-group{padding-right:calc( 0px/2 );padding-left:calc( 0px/2 );margin-bottom:32px;}.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-form-fields-wrapper{margin-left:calc( -0px/2 );margin-right:calc( -0px/2 );margin-bottom:-32px;}.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-labels-inline .elementor-field-group > label{padding-left:12px;}body:not(.rtl) .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-labels-inline .elementor-field-group > label{padding-right:12px;}body .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-labels-above .elementor-field-group > label{padding-bottom:12px;}.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-html{padding-bottom:0px;}.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button[type="submit"]{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-966 .elementor-element.elementor-element-3f47575{--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-966 .elementor-element.elementor-element-aea19f1{--display:flex;--gap:60px 0px;--row-gap:60px;--column-gap:0px;}.elementor-966 .elementor-element.elementor-element-86c8902{width:initial;max-width:initial;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 012px) 0px;}.elementor-966 .elementor-element.elementor-element-86c8902 .elementor-heading-title{font-family:"IBM Plex Mono", Sans-serif;font-size:28px;font-weight:600;line-height:28px;color:var( --e-global-color-primary );}.elementor-966 .elementor-element.elementor-element-d28b4df{width:initial;max-width:initial;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 012px) 0px;}.elementor-966 .elementor-element.elementor-element-d28b4df .elementor-heading-title{font-family:"IBM Plex Mono", Sans-serif;font-size:28px;font-weight:600;line-height:28px;color:var( --e-global-color-primary );}.elementor-966 .elementor-element.elementor-element-e0fd5dd{width:initial;max-width:initial;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 012px) 0px;}.elementor-966 .elementor-element.elementor-element-e0fd5dd .elementor-heading-title{font-family:"IBM Plex Mono", Sans-serif;font-size:28px;font-weight:600;line-height:28px;color:var( --e-global-color-primary );}.elementor-966 .elementor-element.elementor-element-f05608a{--display:flex;--gap:60px 60px;--row-gap:60px;--column-gap:60px;}.elementor-966 .elementor-element.elementor-element-4d190a1{text-align:center;}.elementor-966 .elementor-element.elementor-element-4d190a1 .elementor-heading-title{font-family:var( --e-global-typography-ae9259c-font-family ), Sans-serif;font-size:var( --e-global-typography-ae9259c-font-size );font-weight:var( --e-global-typography-ae9259c-font-weight );line-height:var( --e-global-typography-ae9259c-line-height );color:var( --e-global-color-text );}.elementor-966 .elementor-element.elementor-element-76360ff{--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;--gap:0px 16px;--row-gap:0px;--column-gap:16px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E8F1FF;--border-color:#E8F1FF;--border-radius:8px 8px 8px 8px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-966 .elementor-element.elementor-element-d22a854{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-d22a854 .elementor-heading-title{font-family:"IBM Plex Mono", Sans-serif;font-size:48px;font-weight:600;line-height:48px;}.elementor-966 .elementor-element.elementor-element-6033700{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 06px) 0px;}.elementor-966 .elementor-element.elementor-element-6033700 .elementor-heading-title{font-family:var( --e-global-typography-6eb7d98-font-family ), Sans-serif;font-size:var( --e-global-typography-6eb7d98-font-size );font-weight:var( --e-global-typography-6eb7d98-font-weight );line-height:var( --e-global-typography-6eb7d98-line-height );color:var( --e-global-color-text );}.elementor-966 .elementor-element.elementor-element-749d9fc{--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;--gap:0px 00px;--row-gap:0px;--column-gap:00px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E8F1FF;--border-color:#E8F1FF;--border-radius:8px 8px 8px 8px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-966 .elementor-element.elementor-element-296ae7f{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-296ae7f .elementor-heading-title{font-family:"IBM Plex Mono", Sans-serif;font-size:48px;font-weight:600;line-height:48px;}.elementor-966 .elementor-element.elementor-element-89d25b9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 06px) 0px;}.elementor-966 .elementor-element.elementor-element-89d25b9 .elementor-heading-title{font-family:var( --e-global-typography-6eb7d98-font-family ), Sans-serif;font-size:var( --e-global-typography-6eb7d98-font-size );font-weight:var( --e-global-typography-6eb7d98-font-weight );line-height:var( --e-global-typography-6eb7d98-line-height );color:var( --e-global-color-text );}.elementor-966 .elementor-element.elementor-element-759aba3{--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;--gap:0px 00px;--row-gap:0px;--column-gap:00px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E8F1FF;--border-color:#E8F1FF;--border-radius:8px 8px 8px 8px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-966 .elementor-element.elementor-element-c581cdf{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-c581cdf .elementor-heading-title{font-family:"IBM Plex Mono", Sans-serif;font-size:48px;font-weight:600;line-height:48px;}.elementor-966 .elementor-element.elementor-element-53cc4bf{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 06px) 0px;}.elementor-966 .elementor-element.elementor-element-53cc4bf .elementor-heading-title{font-family:var( --e-global-typography-6eb7d98-font-family ), Sans-serif;font-size:var( --e-global-typography-6eb7d98-font-size );font-weight:var( --e-global-typography-6eb7d98-font-weight );line-height:var( --e-global-typography-6eb7d98-line-height );color:var( --e-global-color-text );}.elementor-966 .elementor-element.elementor-element-db39817{--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;--gap:0px 16px;--row-gap:0px;--column-gap:16px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E8F1FF;--border-color:#E8F1FF;--border-radius:8px 8px 8px 8px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-966 .elementor-element.elementor-element-07c90af{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-07c90af .elementor-heading-title{font-family:"IBM Plex Mono", Sans-serif;font-size:48px;font-weight:600;line-height:48px;}.elementor-966 .elementor-element.elementor-element-0e47d76{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 06px) 0px;}.elementor-966 .elementor-element.elementor-element-0e47d76 .elementor-heading-title{font-family:"Space Grotesk", Sans-serif;font-size:24px;font-weight:500;line-height:31px;color:#0B1330;}.elementor-966 .elementor-element.elementor-element-ad61a8a{--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;--gap:0px 00px;--row-gap:0px;--column-gap:00px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E8F1FF;--border-color:#E8F1FF;--border-radius:8px 8px 8px 8px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-966 .elementor-element.elementor-element-ad61a8a:not(.elementor-motion-effects-element-type-background), .elementor-966 .elementor-element.elementor-element-ad61a8a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-966 .elementor-element.elementor-element-fb5fd2f{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-fb5fd2f .elementor-heading-title{font-family:"IBM Plex Mono", Sans-serif;font-size:48px;font-weight:600;line-height:48px;}.elementor-966 .elementor-element.elementor-element-d247e43{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 06px) 0px;}.elementor-966 .elementor-element.elementor-element-d247e43 .elementor-heading-title{font-family:"Space Grotesk", Sans-serif;font-size:24px;font-weight:500;line-height:31px;color:#0B1330;}.elementor-966 .elementor-element.elementor-element-f3f63d1{--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;--gap:0px 00px;--row-gap:0px;--column-gap:00px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#E8F1FF;--border-color:#E8F1FF;--border-radius:8px 8px 8px 8px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:32px;--padding-bottom:32px;--padding-left:32px;--padding-right:32px;}.elementor-966 .elementor-element.elementor-element-f3f63d1:not(.elementor-motion-effects-element-type-background), .elementor-966 .elementor-element.elementor-element-f3f63d1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-966 .elementor-element.elementor-element-1b0daab{width:auto;max-width:auto;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-1b0daab .elementor-heading-title{font-family:"IBM Plex Mono", Sans-serif;font-size:48px;font-weight:600;line-height:48px;}.elementor-966 .elementor-element.elementor-element-0daef4c{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 06px) 0px;}.elementor-966 .elementor-element.elementor-element-0daef4c .elementor-heading-title{font-family:"Space Grotesk", Sans-serif;font-size:24px;font-weight:500;line-height:31px;color:#0B1330;}.elementor-966 .elementor-element.elementor-element-7716459{--display:flex;}.elementor-966 .elementor-element.elementor-element-f9bfc0d{--display:flex;--min-height:356px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 077px;--row-gap:0px;--column-gap:077px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:var( --e-global-color-6f80623 );--border-color:var( --e-global-color-6f80623 );--border-radius:8px 8px 8px 8px;}.elementor-966 .elementor-element.elementor-element-f9bfc0d:not(.elementor-motion-effects-element-type-background), .elementor-966 .elementor-element.elementor-element-f9bfc0d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#E8F1FF;}.elementor-966 .elementor-element.elementor-element-71d73d9{margin:060px 0px calc(var(--kit-widget-spacing, 0px) + 030px) 060px;}.elementor-966 .elementor-element.elementor-element-71d73d9 .elementor-heading-title{font-family:"Space Grotesk", Sans-serif;font-size:36px;font-weight:500;line-height:46px;color:#000000;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-966 .elementor-element.elementor-element-66894a3 .elementor-button{background-color:var( --e-global-color-primary );font-family:"Inter", Sans-serif;font-size:16px;font-weight:400;line-height:19px;border-radius:8px 8px 8px 8px;padding:015px 30px 15px 30px;}.elementor-966 .elementor-element.elementor-element-66894a3 .elementor-button:hover, .elementor-966 .elementor-element.elementor-element-66894a3 .elementor-button:focus{background-color:var( --e-global-color-text );}.elementor-966 .elementor-element.elementor-element-66894a3{width:initial;max-width:initial;margin:030px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 060px;padding:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-66894a3.elementor-element{--align-self:center;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );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 );line-height:var( --e-global-typography-text-line-height );}.elementor-966 .elementor-element.elementor-element-05899d6{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-05899d6.elementor-element{--align-self:center;}.elementor-966 .elementor-element.elementor-element-05899d6 img{width:326px;height:236px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-966 .elementor-element.elementor-element-f9bfc0d{--width:1036px;}}@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 );}.elementor-966 .elementor-element.elementor-element-71ab60a .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-966 .elementor-element.elementor-element-f05608a{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:030px 0px;--row-gap:030px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:030px;--padding-right:030px;}.elementor-966 .elementor-element.elementor-element-4d190a1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 030px) 0px;padding:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-4d190a1 .elementor-heading-title{font-size:var( --e-global-typography-ae9259c-font-size );line-height:var( --e-global-typography-ae9259c-line-height );}.elementor-966 .elementor-element.elementor-element-d22a854{text-align:center;}.elementor-966 .elementor-element.elementor-element-6033700{text-align:center;}.elementor-966 .elementor-element.elementor-element-6033700 .elementor-heading-title{font-size:var( --e-global-typography-6eb7d98-font-size );line-height:var( --e-global-typography-6eb7d98-line-height );}.elementor-966 .elementor-element.elementor-element-89d25b9{text-align:center;}.elementor-966 .elementor-element.elementor-element-89d25b9 .elementor-heading-title{font-size:var( --e-global-typography-6eb7d98-font-size );line-height:var( --e-global-typography-6eb7d98-line-height );}.elementor-966 .elementor-element.elementor-element-53cc4bf{text-align:center;}.elementor-966 .elementor-element.elementor-element-53cc4bf .elementor-heading-title{font-size:var( --e-global-typography-6eb7d98-font-size );line-height:var( --e-global-typography-6eb7d98-line-height );}.elementor-966 .elementor-element.elementor-element-f3f63d1{--min-height:187px;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-966 .elementor-element.elementor-element-f9bfc0d{--min-height:auto;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--border-radius:0px 0px 0px 0px;--padding-top:60px;--padding-bottom:60px;--padding-left:60px;--padding-right:60px;}.elementor-966 .elementor-element.elementor-element-f9bfc0d.e-con{--align-self:center;}.elementor-966 .elementor-element.elementor-element-66894a3{margin:030px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:767px){.elementor-966 .elementor-element.elementor-element-31260f7{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--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 );}.elementor-966 .elementor-element.elementor-element-71ab60a{padding:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-71ab60a .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );line-height:var( --e-global-typography-primary-line-height );}.elementor-widget-form .elementor-field-group > label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-type-html{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-message{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-966 .elementor-element.elementor-element-20afa96{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-button{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}.elementor-966 .elementor-element.elementor-element-aea19f1{--gap:040px 0px;--row-gap:040px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-966 .elementor-element.elementor-element-86c8902 .elementor-heading-title{font-size:24px;line-height:24px;}.elementor-966 .elementor-element.elementor-element-d28b4df .elementor-heading-title{font-size:24px;line-height:24px;}.elementor-966 .elementor-element.elementor-element-e0fd5dd .elementor-heading-title{font-size:24px;line-height:24px;}.elementor-966 .elementor-element.elementor-element-f05608a{--gap:040px 0px;--row-gap:040px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:060px;--padding-bottom:060px;--padding-left:015px;--padding-right:015px;}.elementor-966 .elementor-element.elementor-element-4d190a1{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-966 .elementor-element.elementor-element-4d190a1 .elementor-heading-title{font-size:var( --e-global-typography-ae9259c-font-size );line-height:var( --e-global-typography-ae9259c-line-height );}.elementor-966 .elementor-element.elementor-element-76360ff{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-966 .elementor-element.elementor-element-6033700 .elementor-heading-title{font-size:var( --e-global-typography-6eb7d98-font-size );line-height:var( --e-global-typography-6eb7d98-line-height );}.elementor-966 .elementor-element.elementor-element-749d9fc{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-966 .elementor-element.elementor-element-89d25b9 .elementor-heading-title{font-size:var( --e-global-typography-6eb7d98-font-size );line-height:var( --e-global-typography-6eb7d98-line-height );}.elementor-966 .elementor-element.elementor-element-759aba3{--padding-top:20px;--padding-bottom:20px;--padding-left:20px;--padding-right:20px;}.elementor-966 .elementor-element.elementor-element-53cc4bf .elementor-heading-title{font-size:var( --e-global-typography-6eb7d98-font-size );line-height:var( --e-global-typography-6eb7d98-line-height );}.elementor-966 .elementor-element.elementor-element-db39817{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-966 .elementor-element.elementor-element-ad61a8a{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-966 .elementor-element.elementor-element-f3f63d1{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-966 .elementor-element.elementor-element-f9bfc0d{--width:100%;--min-height:auto;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:040px;--padding-bottom:40px;--padding-left:020px;--padding-right:020px;}.elementor-966 .elementor-element.elementor-element-71d73d9{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 020px) 0px;text-align:center;}.elementor-966 .elementor-element.elementor-element-71d73d9 .elementor-heading-title{font-size:30px;line-height:40px;}.elementor-966 .elementor-element.elementor-element-66894a3{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-966 .elementor-element.elementor-element-66894a3.elementor-element{--align-self:center;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );line-height:var( --e-global-typography-text-line-height );}}@media(max-width:1024px) and (min-width:768px){.elementor-966 .elementor-element.elementor-element-f3f63d1{--width:467px;}.elementor-966 .elementor-element.elementor-element-f9bfc0d{--width:100%;}}/* Start custom CSS for form, class: .elementor-element-3e5e96d *//* Hide standard radio button */
.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-option input[type="radio"] {
    display: none !important;
}

/* Space out options */
.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-option {
    margin-bottom: 32px;
    display: block;
}

/* Setup text label and spacing */
.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-option label {
    display: inline-flex;
    align-items: center;
    color: #1a1e2d;
    font-size: 16px;
    font-weight: 500;
    cursor: pointer;
    position: relative;
    padding-left: 36px; 
    margin: 0;
    transition: color 0.2s ease;
}

/* Unselected dark outer ring */
.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-option label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border: 1px solid #1a1e2d; 
    border-radius: 50%;
    box-sizing: border-box;
    transition: border-color 0.2s ease;
}

/* Hidden inner blue dot */
.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-option label::after {
    content: "";
    position: absolute;
    left: 5px; 
    top: 50%;
    transform: translateY(-50%) scale(0);
    width: 14px;
    height: 14px;
    background-color: #2041ff;
    border-radius: 50%;
    transition: transform 0.2s ease;
}

/* --- SELECTED STATES --- */
.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-option input[type="radio"]:checked + label::before {
    border-color: #2041ff;
}
.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-option input[type="radio"]:checked + label::after {
    transform: translateY(-50%) scale(1);
}
.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-option input[type="radio"]:checked + label {
    color: #2041ff;
}

/* Force the Submit button to the right and add divider line */
.elementor-966 .elementor-element.elementor-element-3e5e96d .elementor-field-type-submit {
    padding-top: 24px;
    margin-left: 450px;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-20afa96 *//* 1. Heading & Subtitle Typography */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-html h2,
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-html .custom-step-title {
    font-family: 'Inter', sans-serif;
    font-size: 24px;
    font-weight: 600;
    color: #0B1330;
    line-height: 32px;
    margin: 0 0 8px 0;
}

.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-html p,
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-html .custom-step-subtitle {
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    font-weight: 400;
    color: #0B1330;
    line-height: 24px;
    margin: 0 0 40px 0;
}
/* Change h4 bottom margin to 8px */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-group-field_ca83d24 h4 {
    margin-top: 0px;
    margin-bottom: 8px !important;
}

/* Optional: reduce the field-group wrapper gap if needed */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-group-field_ca83d24 {
    margin-bottom: 0 !important;
}

/* 2. Custom 18x18px Radio Buttons */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option input[type="radio"] {
    display: none;
}

.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option label {
    display: inline-flex;
    align-items: center;
    position: relative;
    padding-left: 40px;
    cursor: pointer;
    font-family: 'Inter', sans-serif;
    font-size: 16px;
    line-height: 24px;
    color: #0B1330;
    margin: 0;
}

/* Radio Outer Ring (18x18px) */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option label::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border: 1px solid #0B1330;
    border-radius: 50%;
    box-sizing: border-box;
}

/* Radio Inner Blue Dot */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option label::after {
    content: "";
    position: absolute;
    left: 3px;
    top: 50%;
    transform: translateY(-50%) scale(0);
    width: 18px;
    height: 18px;
    background-color: #1742FD;
    border-radius: 50%;
    transition: transform 0.2s ease;
}

/* Radio Checked States */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option input[type="radio"]:checked + label::before {
    border-color: #1742FD;
}

.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option input[type="radio"]:checked + label::after {
    transform: translateY(-50%) scale(1);
}

.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option input[type="radio"]:checked + label {
    color: #1742FD;
}

/* 3. Vertical Gap Between the Two Options */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
    margin-bottom: 32px;
}

.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option:last-child {
    margin-bottom: 0;
}

/* 4. Divider Line and Right-Aligned Next Button */
.elementor-966 .elementor-element.elementor-element-20afa96 .e-form__buttons {
    display: flex;
    justify-content: flex-end;
    border-top: 1px solid #E8F1FF;
    margin-top: 40px;
    width: 100%;
}

.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-next,
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-submit {
    margin-left: auto;
    width: 100%;
}

/*.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-button {*/
/*    width: auto;*/
/*    background-color: #1742FD;*/
/*    color: #ffffff;*/
/*    padding: 15px 30px;*/
/*    border-radius: 8px;*/
/*    font-family: 'Inter', sans-serif;*/
/*    font-weight: 500;*/
/*    font-size: 16px;*/
/*    border: 1px solid #2041ff;*/
/*    transition: background-color 0.2s ease;*/
/*}*/

/*.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-button:hover {*/
/*    background-color: #1a35cc;*/
/*}   */

/* Radio Button Typography (Inter 16px / 24px / Medium 500) */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option label {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;             /* Style: Medium */
    font-size: 16px !important;              /* Size: 16px */
    line-height: 24px !important;            /* Line height: 24px */
    letter-spacing: 0 !important;            /* Letter spacing: 0% */
    color: #0B1330 !important;               /* Default unselected text color */
}

/* Selected State Typography Color */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option input[type="radio"]:checked + label {
    color: #1742FD !important;
    
    /* Active blue label text matching Figma[cite: 13] */
}


/* Exact Figma CTA 'Next' Button Styling (96x49px) */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-next .elementor-button,
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-submit .elementor-button {
    /*width: 96px !important; */
    /* Fixed width from Figma */
    /*height: 49px !important;*/
    /* Fixed height from Figma */
    /*padding: 15px 30px !important;*/
    /* Top/Bottom 15px, Left/Right 30px 
    border-radius: 8px !important;               /* Radius: 8px */
    /*background-color: #1742FD !important; */
    /* Primary CTA blue color 
    border: none !important;
    color: #ffffff !important;
    /*display: inline-flex !important;*/
    /*justify-content: center !important;*/
    /*align-items: center !important;*/
    /*box-sizing: border-box !important;*/
    /*font-family: 'Inter', sans-serif !important;*/
    /*font-weight: 500 !important;*/
    /*font-size: 16px !important;*/
    /*line-height: 19px !important;*/
    /*cursor: pointer !important;*/
    /*transition: background-color 0.2s ease !important;*/
    margin-top: 20px;
}

/* Hover State */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-next .elementor-button:hover,
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-submit .elementor-button:hover {
    /*background-color: #0f35dc !important;*/
}

/* =========================================
   MOBILE ONLY OVERRIDES (767px and below)
   ========================================= */
@media (max-width: 767px) {
    
    /* 1. EXACT FIGMA BOUNDARY (370px Width) */
    /* Blocks desktop 100% width and centers the form on mobile */
    .elementor-966 .elementor-element.elementor-element-20afa96, 
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-widget-container,
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-form {
        width: 100% !important;
        /*max-width: 370px !important; */
        /* Locks to Figma design width */
        margin: 0 auto !important;   /* Centers the 370px box on screen */
        box-sizing: border-box !important;
        padding: 0px !important; 
        overflow: visible !important;
        
    }

    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-group {
        padding: 0 !important;
        margin-left: 0 !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* =========================================
   TYPOGRAPHY CONTROLS (EDIT HERE)
   ========================================= */

/* 1. MAIN STEP HEADING ("What are you looking to build or improve?") */
/* Main Step Heading - targeting h4 */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-html h4,
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-html h2,
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-html .custom-step-title {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 20px !important;                          /* Adjust mobile font size here */
    font-weight: 600 !important;                         /* Adjust weight (400, 500, 600, 700) */
    line-height: 26px !important;                        /* Adjust line height */
    color: #0B1330 !important;                           /* Heading color */
    margin: 0 0 8px 0 !important;                        /* Gap below the heading */
    text-align: left !important;
}

  .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-html p,
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-html .custom-step-subtitle {
        font-family: 'Inter', sans-serif !important;
        font-size: 16px !important;
        font-weight: 400 !important;
        line-height: 24px !important;
        color: #0B1330 !important;
        margin: 0 0 30px 0 !important;
        text-align: left !important;
    }
    
    
/* 3. RADIO OPTION LABELS ("Business Website", "E-Commerce Solution") */
.elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option label {
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    line-height: 24px !important;
    color: #0B1330 !important;
}



    /* 3. BLOCK DESKTOP RADIO BEHAVIOR & RESTORE CIRCLES */
    /* Overrides inline-flex which breaks on mobile */
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option label {
        display: block !important; 
        position: relative !important;
        padding-left: 36px !important; /* Space for circles */
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        width: 100% !important;
        min-height: 24px !important; /* Matches circle height */
        line-height: 24px !important;
        white-space: normal !important;
        word-wrap: break-word !important;
        box-sizing: border-box !important;
        text-align: left !important;
    }

    /* Spacing between the two radio options */
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-subgroup:not(.elementor-subgroup-inline) .elementor-field-option {
        margin-bottom: 16px !important;
    }

    /* Force circles back into position */
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option label::before,
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option label::after {
        display: block !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
    }

    /* Fix the checked state animation on mobile */
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option input[type="radio"]:checked + label::after {
        transform: translateY(-50%) scale(1) !important;
    }

    /* 4. DIVIDER & NEXT BUTTON POSITIONING */
    
    /* 1. Create the full-width horizontal line and push contents to the right */
    .elementor-966 .elementor-element.elementor-element-20afa96 .e-form__buttons {
        display: flex !important;
        justify-content: flex-end !important; /* This pushes the button to the right */
        width: 100% !important;
        border-top: 1px solid #E8F1FF !important; /* Horizontal line */
        margin-top: 30.39px !important;
        padding-top: 20px !important;
    }

    /* 2. CRITICAL FIX: Force the wrapper to 100% so the button has room to move right */
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-next,
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-type-submit {
        width: 100% !important; 
        max-width: 100% !important;
        flex: 0 0 100% !important
    }

    /* 3. Lock only the actual clickable button to 96x49px */
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-button {
        width: 96px !important;
        max-width: 96px !important;
        height: 49px !important;
        margin: 0 !important;
        padding: 0 !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }
    
 
  

    /* Radio Text Typography */
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option label {
        font-family: 'Inter', sans-serif !important;
        font-size: 16px !important;
        font-weight: 500 !important;
        line-height: 24px !important;
        color: #0B1330 !important;
        display: block !important; 
        position: relative !important;
        padding-left: 36px !important; /* Space form the circles */
        text-align: left !important;
    }
/* 2. STRICT RADIO BUTTON SIZING & FIX MULTIPLE SELECTIONS */
    
    /* Outer Ring (Always visible) */
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option label::before {
        display: block !important;
        width: 24px !important;
        height: 24px !important;
        border: 1px solid #777777 !important;
        top: 50% !important;
        transform: translateY(-50%) !important; /* Normal positioning */
    }

    /* Inner Blue Dot (Hidden by default using scale(0)) */
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option label::after {
        display: block !important;
        width: 18px !important;
        height: 18px !important;
        left: 3px !important; 
        top: 50% !important;
        /* CRITICAL FIX: Added scale(0) so it hides when not selected */
        transform: translateY(-50%) scale(0) !important; 
    }

    /* Inner Blue Dot (Shows only when clicked using scale(1)) */
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option input[type="radio"]:checked + label::after {
        transform: translateY(-50%) scale(1) !important;
    }

    /* Restores the animation/scaling for the active blue dot on mobile */
    .elementor-966 .elementor-element.elementor-element-20afa96 .elementor-field-option input[type="radio"]:checked + label::after {
        transform: translateY(-50%) scale(1) !important;
    }
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-c9ed240 *//* =========================================
   ELEMENTOR MULTI-STEP FORM MASTER CSS
========================================= */

/* 1. Hide Native Elementor Progress Bar */
.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__indicators {
    display: none !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 h4 {
    margin: 0;
}

/* 2. Step Headings (HTML Fields) */
.custom-step-heading {
    font-family: 'Inter', sans-serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    color: #1a1e2d !important;
}

/* 3. Global Form Typography (Inter 16px / 24px) */
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-label,
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option label,
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-textual {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 16px !important;
    line-height: 24px !important;
    letter-spacing: 0px !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-label {
    font-weight: 500 !important;
    display: block !important;
}

/* 4. Text Inputs & Textarea Fields */
.elementor-966 .elementor-element.elementor-element-c9ed240 input.elementor-field-textual {
    border: 1px solid #0B1330 !important;
    border-radius: 8px !important;
    height: 50px !important;
    padding: 0 16px !important;
    width: 542px !important;
    background-color: #ffffff !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 textarea.elementor-field-textual {
    border: 1px solid #0B1330 !important;
    border-radius: 8px !important;
    min-height: 120px !important;
    padding: 16px !important;
    width: 100% !important;
    background-color: #ffffff !important;
}

/* 5. Custom 18x18px Radio Buttons */
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option input[type="radio"] {
    display: none !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option label {
    display: inline-flex !important;
    align-items: center !important;
    position: relative !important;
    padding-left: 31px !important; /* 18px circle + 8px gap to text */
    cursor: pointer !important;
    margin: 0 !important;
}

/* Radio Outer Ring (18x18px) */
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option label::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 24px !important;
    height: 24px !important;
    border: 1px solid #0B1330 !important; /* Restores the outer circle */
    border-radius: 50% !important;
    box-sizing: border-box !important;
}

/* Radio Inner Blue Dot */
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option label::after {
    content: "" !important;
    position: absolute !important;
    left: 3px !important;
    top: 50% !important;
    transform: translateY(-50%) scale(0) !important;
    width: 18px !important;
    height: 18px !important;
    background-color: #1742FD !important;
    border-radius: 50% !important;
    transition: transform 0.2s ease !important;
}

/* Radio Checked States */
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option input[type="radio"]:checked + label::before {
    border-color: #1742FD !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option input[type="radio"]:checked + label::after {
    transform: translateY(-50%) scale(1) !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option input[type="radio"]:checked + label {
    color: #1742FD !important;
}

/* 6. Subgroup Flex Layout & 32px Horizontal Gap */
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-subgroup, .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-subgroup.elementor-subgroup-inline {
    display: flex !important;
    flex-wrap: wrap !important;
    column-gap: 24px !important; /* Exact 32px gap between options */
    row-gap: 16px !important;    /* Vertical gap if items wrap */
}

/* Zero out Elementor's default inline padding and margins */
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    padding-inline-end: 0 !important;
    padding-right: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
}

/* 7. Buttons: Prev (Left) & Next (Right) */
.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons {
    display: flex !important;
    justify-content: space-between !important;
    width: 100% !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-next,
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-submit {
    margin-left: auto !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    padding: 12px 32px !important;
    border-radius: 6px !important;
    width: auto !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-previous .elementor-button {
    background-color: transparent !important;
    border: 1px solid #1a1e2d !important;
    color: #1a1e2d !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-previous .elementor-button:hover {
    /*border-color: #1742FD !important;*/
    /*color: #1742FD !important;*/
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-next .elementor-button,
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-submit .elementor-button {
    background-color: #1742FD !important;
    border: 1px solid #1742FD !important;
    color: #ffffff !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-next .elementor-button:hover,
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-submit .elementor-button:hover {
    background-color: #0B1330 !important;
}

/* 8. Conditional Logic (Step 2 URL & Specify Fields) */
.dynamic, .specify {
    display: none !important;
    margin-left: 26px !important;
    margin-top: -12px !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240:has(input[value="Yes, working well"]:checked) .dynamic,
.elementor-966 .elementor-element.elementor-element-c9ed240:has(input[value="Yes, but outdated"]:checked) .dynamic {
    display: block !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240:has(input[value="Others"]:checked) .specify {
    display: block !important;
}

/* =========================================
   RESET SELECTION BUTTON (Floating Top Right)
   ========================================= */

/* 1. Anchor the button and prevent the container from cutting it off */
.elementor-966 .elementor-element.elementor-element-c9ed240,
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-form {
    position: relative !important;
    overflow: visible !important;
}

/* 2. Position and style the Reset button */
.elementor-966 .elementor-element.elementor-element-c9ed240 .reset_questionnaire {
    position: absolute !important;
    top: -60px !important;   /* <-- ADJUST THIS: Increase negative value (e.g., -50px) to move higher */
    right: -30px !important;     /* <-- ADJUST THIS: Change value to push left or right */
    
    /* Figma Typography */
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 16px !important;
    line-height: 24px !important;
    color: #1742FD !important; 
    
    /* Strip default red theme styling */
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    
    cursor: pointer !important;
    z-index: 98 !important; 
}

/* 3. Subtle hover state */
.elementor-966 .elementor-element.elementor-element-c9ed240 .reset_questionnaire:hover {
    color: #0f35dc !important; 
}



/* ========================================================
   FIGMA STEP BUTTONS: PREV (FAR LEFT) & NEXT (FAR RIGHT)
======================================================== */

/* 1. Button Wrapper Row: Full width space-between layout */
.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons,
.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons__wrapper {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important; /* Pushes Prev to far-left & Next to far-right */
    align-items: center !important;
    width: 100% !important;
    margin-top: 20px !important;
    box-sizing: border-box !important;
}

/* 2. Prevent Elementor wrapper divs from stretching to 50% width */
.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons > div,
.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons__wrapper > div {
    width: auto !important;
    flex: 0 0 auto !important;
    flex-grow: 0 !important;
}

/* 3. Button Typography & Dimensions (Figma Specs) */
.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons .elementor-button,
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button-previous,
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button-next {
    /* Typography from Figma */
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;              /* Weight: 400 Regular */
    font-size: 16px !important;               /* Size: 16px */
    line-height: 100% !important;             /* Line height: 100% */
    letter-spacing: 0 !important;             /* Letter spacing: 0% */

    /* Button geometry */
    height: 49px !important;
    min-width: 96px !important;
    padding: 15px 30px !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

/* 4. PREV BUTTON: Locked to the Far-Left */
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button-previous {
    margin-right: auto !important;            /* Pins button flush to the left edge */
    margin-left: 0 !important;
    background-color: #ffffff !important;
    color: #1a1e2d !important;
    border: 1px solid #1a1e2d !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button-previous:hover {
    background-color: #F9FAFB !important;
}

/* 5. NEXT / SUBMIT BUTTON: Locked to the Far-Right */
.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button-next,
.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons button[type="submit"] {
    margin-left: auto !important;             /* Pins button flush to the right edge */
    margin-right: 0 !important;
    background-color: #1742FD !important;
    color: #ffffff !important;                /* Colors: white */
    border: 1px solid #1742FD !important;
}

.elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button-next:hover,
.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons button[type="submit"]:hover {
    background-color: #0B1330 !important;
    border-color: #0B1330 !important;
}

/*horizontal divider line*/
.elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons {
    display: flex;
    justify-content: flex-end;
    border-top: 1px solid #E8F1FF;
    margin-top: 40px;
    width: 100%;
    margin-bottom: 0px;
}



 /*Mobile Layout css */
 
 
@media (max-width: 767px) {
    
    /* 1. Strip styles from outer wrappers to fix the dual border */
    .elementor-966 .elementor-element.elementor-element-c9ed240, 
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-widget-container {
        border: none !important;
        background: transparent !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    /* 2. Apply styling ONLY to the main form container */
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-form {
        width: 100% !important;
        /*max-width: 370px !important;*/
        margin: 0 auto !important; 
        box-sizing: border-box !important;
        padding: 0px !important; 
        overflow: visible !important; 
        background-color: #FFFFFF !important;
        border-radius: 8px !important;
        position: relative !important;
    }

    /* 3. Full-width Inputs */
    .elementor-966 .elementor-element.elementor-element-c9ed240 input.elementor-field-textual,
    .elementor-966 .elementor-element.elementor-element-c9ed240 textarea.elementor-field-textual {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* 4. Heading Typography */
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-html h2,
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-html .custom-step-title,
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-html .elementor-field-text,
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-html .elementor-field-text h2,
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-html > div {
        font-size: 20px !important; 
        line-height: 30px !important;
        margin: 0 0 8px 0 !important;
    }

    /* 5. Vertical Radio Layout */
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-subgroup.elementor-subgroup-inline {
        display: flex !important;
        flex-direction: column !important;
        row-gap: 16px !important; 
    }

    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option label {
        display: block !important;
        position: relative !important;
        padding-left: 36px !important; 
        width: 100% !important;
        white-space: normal !important;
        box-sizing: border-box !important;
    }

    /* 6. Radio Circles Fixed Position */
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option label::before,
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option label::after {
        display: block !important;
        top: 50% !important;
    }

    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option label::before {
        transform: translateY(-50%) !important;
    }

    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option label::after {
        transform: translateY(-50%) scale(0) !important; 
    }

    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-option input[type="radio"]:checked + label::after {
        transform: translateY(-50%) scale(1) !important;
    }

    /* 7. Divider & Bottom Buttons */
    .elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons {
        display: flex !important;
        justify-content: space-between !important; 
        width: 100% !important;
        border-top: 1px solid #E8F1FF !important;
        margin-top: 24px !important;
        padding-top: 24px !important;
        flex-wrap: nowrap !important;
    }

    .elementor-966 .elementor-element.elementor-element-c9ed240 .e-form__buttons > div,
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-next,
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-submit,
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-field-type-previous {
        width: auto !important;
        flex: 0 0 auto !important;
        /*width: 100% !important;*/
        margin: 0 !important;
    }
    
  
    .elementor-966 .elementor-element.elementor-element-c9ed240 .elementor-button {
        min-width: 96px !important;
        height: 49px !important;
        margin: 0 !important;
        padding: 0 20px !important; 
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }
    
    /* 8. Reset Button (Floating Top Right, OUTSIDE container) */
    .elementor-966 .elementor-element.elementor-element-c9ed240 .reset_questionnaire {
        position: absolute !important;
        top: -50px !important;
        right: -20px !important;   
        font-size: 14px !important; 
    }
    
    
    
    /* 1. Fix multi-line text alignment (Budget question) & vertical spacing */
    .elementor-field-subgroup .elementor-field-option {
        display: flex !important;
        align-items: flex-start !important;
        margin-bottom: 0px !important;
        width: 100% !important;
    }

    /* Remove bottom margin from the last item */
    .elementor-field-subgroup .elementor-field-option:last-child {
        margin-bottom: 0 !important;
    }

    /* 2. Lock radio circle size and spacing */
    .elementor-field-option input[type="radio"] {
        margin-right: 12px !important;
        margin-top: 4px !important; 
        flex-shrink: 0 !important; 
    }

    /* 3. Force all inline 2-column grids into a clean single column */
    .elementor-subgroup-inline {
        display: flex !important;
        flex-direction: column !important;
        row-gap: 16px !important;
    }
    
    
}



/* =========================================
   CUSTOM RESULT CARDS (GRADIENTS & SPACING)
   ========================================= */

/* 1. Base Card Alignment & Common Styles */
.form-result-card {
    display: none; /* Hides the card initially */
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0px !important;
    padding: 40px 32px !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
    box-shadow: 0 4px 24px rgba(11, 19, 48, 0.04) !important;
}

/* 2. SPECIFIC GRADIENTS & BORDERS (Figma Specs) */

/* SUCCESS CARD (Blue Tint) */
#submission_success_card {
    background: linear-gradient(180deg, #FCFCFC 0%, #F2F7FF 100%) !important;
    border: 1px solid #E8F1FF !important;
    min-height: 291px !important;
}

/* ERROR / FAILURE CARD (Pink Tint) */
#submission_error_card {
    background: linear-gradient(180deg, #FCFCFC 0%, #FBF7FF 100%) !important;
    border: 1px solid #F7EEFF !important;
    min-height: 370px !important;
}

/* 3. FLEXBOX FIX */
.form-result-card[style*="display: block"] {
    display: flex !important;
}

/* 4. NUCLEAR OVERRIDE: Block 'start' or 'left' */
.form-result-card,
.form-result-card *,
.form-result-card h3,
.form-result-card p,
.form-result-card div,
.form-result-card svg {
    text-align: center !important;
    align-self: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* 5. Icon */
.form-result-card .msg-icon {
    margin-bottom: 24px !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
}

/* 6. Heading & GAP CONTROL */
.form-result-card .msg-heading {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    line-height: 30px !important;
    color: #0B1330 !important;
    width: 100% !important;
    
    /* ---> ADJUST THIS VALUE TO CHANGE THE GAP BETWEEN TITLE AND PARAGRAPH <--- */
    margin-bottom: 12px !important; 
}

/* 7. Text */
.form-result-card .msg-text {
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    color: #4A5568 !important; /* Figma gray for body copy */
    max-width: 490px !important;
    width: 100% !important;
    margin-bottom: 0 !important;
}

.form-result-card .msg-text a {
    color: inherit !important;
    text-decoration: underline !important;
}

/* 8. Retry Button */
.form-result-card .msg-retry-btn {
    background: transparent !important;
    border: 1px solid #0B1330 !important;
    border-radius: 8px !important;
    color: #0B1330 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    padding: 12px 28px !important;
    margin-top: 24px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    display: inline-block !important;
}

.form-result-card .msg-retry-btn:hover {
    background: #0B1330 !important;
    color: #FFFFFF !important;
}



/* =========================================
   STRIP PADDING ONLY FOR VISIBLE RESULT CARDS
   ========================================= */
   
/* This rule stays completely disabled until jQuery makes the card visible */
body:has(#submission_success_card[style*="block"]) .elementor-element-34e03d1,
body:has(#submission_success_card[style*="flex"]) .elementor-element-34e03d1,
body:has(#submission_error_card[style*="block"]) .elementor-element-34e03d1,
body:has(#submission_error_card[style*="flex"]) .elementor-element-34e03d1 {
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* 2. HIDE FORM FIELDS ON SUBMIT */
.elementor-966 .elementor-element.elementor-element-c9ed240:has(.elementor-message-success) .elementor-form-fields-wrapper,
.elementor-966 .elementor-element.elementor-element-c9ed240:has(.elementor-message-success) .e-form__buttons,
.elementor-966 .elementor-element.elementor-element-c9ed240:has(.elementor-message-danger) .elementor-form-fields-wrapper,
.elementor-966 .elementor-element.elementor-element-c9ed240:has(.elementor-message-danger) .e-form__buttons {
    display: none !important;
}


/* =========================================
   MOBILE RESPONSIVENESS (MAX 767PX)
   ========================================= */
@media (max-width: 767px) {
    .form-result-card,
    #submission_success_card,
    #submission_error_card {
        padding: 15px !important;
        min-height: auto !important; /* Allows the card to shrink naturally on small screens */
       margin: 0px !important;
    }
    
    /* Optional: Reduces the gap below the icon slightly for mobile */
    .form-result-card .msg-icon {
        margin-bottom: 0px !important;
    }
}





/* Give the moved fields proper spacing and indent them to align with the text */
.elementor-field-group-url_field.active-field,
.elementor-field-group-specify_field.active-field {
    display: block !important;
    margin-top: 10px !important;
    margin-bottom: 15px !important;
    padding-left: 30px !important; /* Indents the box past the radio circle */
    width: 100% !important;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-3f47575 *//* =========================================
   ELEMENTOR MULTI-STEP FORM MASTER CSS
========================================= */

/* 1. Hide Native Elementor Progress Bar */
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__indicators {
    display: none !important;
}

/* 2. Step Headings (HTML Fields) */
.custom-step-heading {
    font-family: 'Inter', sans-serif !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    color: #1a1e2d !important;
}

/* 3. Global Form Typography (Inter 16px / 24px) */
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-label,
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option label,
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-textual {
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 16px !important;
    line-height: 24px !important;
    letter-spacing: 0px !important;
    color: #1a1e2d !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-label {
    font-weight: 500 !important;
    display: block !important;
}

/* 4. Text Inputs & Textarea Fields */
.elementor-966 .elementor-element.elementor-element-3f47575 input.elementor-field-textual {
    border: 1px solid #0B1330 !important;
    border-radius: 8px !important;
    height: 50px !important;
    padding: 0 16px !important;
    width: 100% !important;
    background-color: #ffffff !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 textarea.elementor-field-textual {
    border: 1px solid #0B1330 !important;
    border-radius: 8px !important;
    min-height: 120px !important;
    padding: 16px !important;
    width: 100% !important;
    background-color: #ffffff !important;
}

/* 5. Custom 18x18px Radio Buttons */
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option input[type="radio"] {
    display: none !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option label {
    display: inline-flex !important;
    align-items: center !important;
    position: relative !important;
    padding-left: 31px !important; /* 18px circle + 8px gap to text */
    cursor: pointer !important;
    margin: 0 !important;
}

/* Radio Outer Ring (18x18px) */
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option label::before {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 24px !important;
    height: 24px !important;
    border: 1px solid #0B1330 !important; /* Restores the outer circle */
    border-radius: 50% !important;
    box-sizing: border-box !important;
}

/* Radio Inner Blue Dot */
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option label::after {
    content: "" !important;
    position: absolute !important;
    left: 3px !important;
    top: 50% !important;
    transform: translateY(-50%) scale(0) !important;
    width: 18px !important;
    height: 18px !important;
    background-color: #1742FD !important;
    border-radius: 50% !important;
    transition: transform 0.2s ease !important;
}

/* Radio Checked States */
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option input[type="radio"]:checked + label::before {
    border-color: #2041ff !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option input[type="radio"]:checked + label::after {
    transform: translateY(-50%) scale(1) !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option input[type="radio"]:checked + label {
    color: #2041ff !important;
}

/* 6. Subgroup Flex Layout & 32px Horizontal Gap */
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-subgroup, .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-subgroup.elementor-subgroup-inline {
    display: flex !important;
    flex-wrap: wrap !important;
    column-gap: 24px !important; /* Exact 32px gap between options */
    row-gap: 16px !important;    /* Vertical gap if items wrap */
}

/* Zero out Elementor's default inline padding and margins */
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    padding-inline-end: 0 !important;
    padding-right: 0 !important;
    margin-right: 0 !important;
    margin-bottom: 0 !important;
}

/* 7. Buttons: Prev (Left) & Next (Right) */
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons {
    display: flex !important;
    justify-content: space-between !important;
    width: 100% !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-next,
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-submit {
    margin-left: auto !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button {
    font-family: 'Inter', sans-serif !important;
    font-weight: 500 !important;
    font-size: 16px !important;
    padding: 12px 32px !important;
    border-radius: 6px !important;
    width: auto !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-previous .elementor-button {
    background-color: transparent !important;
    border: 1px solid #1a1e2d !important;
    color: #1a1e2d !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-previous .elementor-button:hover {
    border-color: #2041ff !important;
    color: #2041ff !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-next .elementor-button,
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-submit .elementor-button {
    background-color: #1742FD !important;
    border: 1px solid #1742FD !important;
    color: #ffffff !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-next .elementor-button:hover,
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-submit .elementor-button:hover {
    background-color: #0B1330 !important;
}

/* 8. Conditional Logic (Step 2 URL & Specify Fields) */
.dynamic, .specify {
    display: none !important;
    margin-left: 26px !important;
    margin-top: -12px !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575:has(input[value="Yes, working well"]:checked) .dynamic,
.elementor-966 .elementor-element.elementor-element-3f47575:has(input[value="Yes, but outdated"]:checked) .dynamic {
    display: block !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575:has(input[value="Others"]:checked) .specify {
    display: block !important;
}

/* ========================================================
   FIGMA STEP BUTTONS: PREV (FAR LEFT) & NEXT (FAR RIGHT)
======================================================== */

/* 1. Button Wrapper Row: Full width space-between layout */
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons,
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons__wrapper {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important; /* Pushes Prev to far-left & Next to far-right */
    align-items: center !important;
    width: 100% !important;
    margin-top: 19px !important;
    box-sizing: border-box !important;
}

/* 2. Prevent Elementor wrapper divs from stretching to 50% width */
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons > div,
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons__wrapper > div {
    width: auto !important;
    flex: 0 0 auto !important;
    flex-grow: 0 !important;
}

/* 3. Button Typography & Dimensions (Figma Specs) */
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons .elementor-button,
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-previous,
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-next {
    /* Typography from Figma */
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;              /* Weight: 400 Regular */
    font-size: 16px !important;               /* Size: 16px */
    line-height: 100% !important;             /* Line height: 100% */
    letter-spacing: 0 !important;             /* Letter spacing: 0% */

    /* Button geometry */
    height: 49px !important;
    min-width: 96px !important;
    padding: 15px 30px !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

/* 4. PREV BUTTON: Locked to the Far-Left */
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-previous {
    margin-right: auto !important;            /* Pins button flush to the left edge */
    margin-left: 0 !important;
    background-color: #ffffff !important;
    color: #1a1e2d !important;
    border: 1px solid #1a1e2d !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-previous:hover {
    background-color: #F9FAFB !important;
}

/* 5. NEXT / SUBMIT BUTTON: Locked to the Far-Right */
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-next,
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons button[type="submit"] {
    margin-left: auto !important;             /* Pins button flush to the right edge */
    margin-right: 0 !important;
    background-color: #0B1330 !important;
    color: #ffffff !important;                /* Colors: white */
    border: 1px solid #0B1330 !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-next:hover,
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons button[type="submit"]:hover {
    /*background-color: #0f35dc !important;*/
    /*border-color: #0f35dc !important;*/
}

/*horizontal divider line*/
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons {
    display: flex;
    justify-content: flex-end;
    border-top: 1px solid #E8F1FF;
    margin-top: 40px;
    width: 100%;
    margin-bottom: 19px;
}

/* =========================================
   RESET SELECTION BUTTON (Floating Top Right)
   ========================================= */

/* 1. Anchor the button and prevent the container from cutting it off */
.elementor-966 .elementor-element.elementor-element-3f47575,
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-form {
    position: relative !important;
    overflow: visible !important;
}

/* 2. Position and style the Reset button */
.elementor-966 .elementor-element.elementor-element-3f47575 .reset_questionnaire {
    position: absolute !important;
    top: -59px !important;   /* <-- ADJUST THIS: Increase negative value (e.g., -50px) to move higher */
    right: 0 !important;     /* <-- ADJUST THIS: Change value to push left or right */
    
    /* Figma Typography */
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;
    font-size: 16px !important;
    line-height: 24px !important;
    color: #1742FD !important; 
    
    /* Strip default red theme styling */
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
    
    cursor: pointer !important;
    z-index: 99 !important; 
}

/* 3. Subtle hover state */
.elementor-966 .elementor-element.elementor-element-3f47575 .reset_questionnaire:hover {
    color: #0f35dc !important; 
}



/* ========================================================
   FIGMA STEP BUTTONS: PREV (FAR LEFT) & NEXT (FAR RIGHT)
======================================================== */

/* 1. Button Wrapper Row: Full width space-between layout */
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons,
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons__wrapper {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important; /* Pushes Prev to far-left & Next to far-right */
    align-items: center !important;
    width: 100% !important;
    margin-top: 19px !important;
    box-sizing: border-box !important;
}

/* 2. Prevent Elementor wrapper divs from stretching to 50% width */
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons > div,
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons__wrapper > div {
    width: auto !important;
    flex: 0 0 auto !important;
    flex-grow: 0 !important;
}

/* 3. Button Typography & Dimensions (Figma Specs) */
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons .elementor-button,
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-previous,
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-next {
    /* Typography from Figma */
    font-family: 'Inter', sans-serif !important;
    font-weight: 400 !important;              /* Weight: 400 Regular */
    font-size: 16px !important;               /* Size: 16px */
    line-height: 100% !important;             /* Line height: 100% */
    letter-spacing: 0 !important;             /* Letter spacing: 0% */

    /* Button geometry */
    height: 49px !important;
    min-width: 96px !important;
    padding: 15px 30px !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
}

/* 4. PREV BUTTON: Locked to the Far-Left */
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-previous {
    margin-right: auto !important;            /* Pins button flush to the left edge */
    margin-left: 0 !important;
    background-color: #ffffff !important;
    color: #1a1e2d !important;
    border: 1px solid #1a1e2d !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-previous:hover {
    background-color: #F9FAFB !important;
}

/* 5. NEXT / SUBMIT BUTTON: Locked to the Far-Right */
.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-next,
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons button[type="submit"] {
    margin-left: auto !important;             /* Pins button flush to the right edge */
    margin-right: 0 !important;
    background-color: #1742FD !important;
    color: #ffffff !important;                /* Colors: white */
    border: 1px solid #1742FD !important;
}

.elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button-next:hover,
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons button[type="submit"]:hover {
    /*background-color: #0f35dc !important;*/
    /*border-color: #0f35dc !important;*/
}

/*horizontal divider line*/
.elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons {
    display: flex;
    justify-content: flex-end;
    border-top: 1px solid #E8F1FF;
    margin-top: 40px;
    width: 100%;
    margin-bottom: 19px;
}






 /*Mobile Layout css */
 
 
@media (max-width: 767px) {
    
    /* 1. Strip styles from outer wrappers to fix the dual border */
    .elementor-966 .elementor-element.elementor-element-3f47575, 
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-widget-container {
        border: none !important;
        background: transparent !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    /* 2. Apply styling ONLY to the main form container */
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-form {
        width: 100% !important;
        /*max-width: 370px !important;*/
        margin: 0 auto !important; 
        box-sizing: border-box !important;
        padding: 0px !important; 
        overflow: visible !important; 
        background-color: #FFFFFF !important;
        /*border: 1px solid #E8F1FF !important;*/
        border-radius: 8px !important;
        position: relative !important;
    }

    /* 3. Full-width Inputs */
    .elementor-966 .elementor-element.elementor-element-3f47575 input.elementor-field-textual,
    .elementor-966 .elementor-element.elementor-element-3f47575 textarea.elementor-field-textual {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* 4. Heading Typography */
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-html h2,
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-html .custom-step-title,
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-html .elementor-field-text,
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-html .elementor-field-text h2,
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-html > div {
        font-size: 20px !important; 
        line-height: 30px !important;
        margin: 0 0 8px 0 !important;
    }

    /* 5. Vertical Radio Layout */
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-subgroup.elementor-subgroup-inline {
        display: flex !important;
        flex-direction: column !important;
        row-gap: 16px !important; 
    }

    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option label {
        display: block !important;
        position: relative !important;
        padding-left: 36px !important; 
        width: 100% !important;
        white-space: normal !important;
        box-sizing: border-box !important;
    }

    /* 6. Radio Circles Fixed Position */
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option label::before,
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option label::after {
        display: block !important;
        top: 50% !important;
    }

    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option label::before {
        transform: translateY(-50%) !important;
    }

    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option label::after {
        transform: translateY(-50%) scale(0) !important; 
    }

    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-option input[type="radio"]:checked + label::after {
        transform: translateY(-50%) scale(1) !important;
    }

    /* 7. Divider & Bottom Buttons */
    .elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons {
        display: flex !important;
        justify-content: space-between !important; 
        width: 100% !important;
        border-top: 1px solid #E8F1FF !important;
        margin-top: 24px !important;
        padding-top: 24px !important;
        flex-wrap: nowrap !important;
    }

    .elementor-966 .elementor-element.elementor-element-3f47575 .e-form__buttons > div,
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-next,
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-submit,
    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-field-type-previous {
        width: auto !important;
        flex: 0 0 auto !important;
        margin: 0 !important;
    }

    .elementor-966 .elementor-element.elementor-element-3f47575 .elementor-button {
        min-width: 96px !important;
        height: 49px !important;
        margin: 0 !important;
        padding: 0 20px !important; 
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
    }
    
    /* 8. Reset Button (Floating Top Right, OUTSIDE container) */
    .elementor-966 .elementor-element.elementor-element-3f47575 .reset_questionnaire {
        position: absolute !important;
        top: -50px !important;
        right: -20px !important;  
        font-size: 14px !important; 
    }
    
    
    
     /* 1. Fix multi-line text alignment (Budget question) & vertical spacing */
    .elementor-field-subgroup .elementor-field-option {
        display: flex !important;
        align-items: flex-start !important;
        margin-bottom: 0px !important;
        width: 100% !important;
    }

    /* Remove bottom margin from the last item */
    .elementor-field-subgroup .elementor-field-option:last-child {
        margin-bottom: 0 !important;
    }

    /* 2. Lock radio circle size and spacing */
    .elementor-field-option input[type="radio"] {
        margin-right: 12px !important;
        margin-top: 4px !important; 
        flex-shrink: 0 !important; 
    }

    /* 3. Force all inline 2-column grids into a clean single column */
    .elementor-subgroup-inline {
        display: flex !important;
        flex-direction: column !important;
        row-gap: 16px !important;
    }
    
    
    
    
}



/* =========================================
   CUSTOM RESULT CARDS (GRADIENTS & SPACING)
   ========================================= */

/* 1. Base Card Alignment & Common Styles */
.form-result-card {
    display: none; /* Hides the card initially */
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0px !important;
    padding: 40px 32px !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
    box-shadow: 0 4px 24px rgba(11, 19, 48, 0.04) !important;
}

/* 2. SPECIFIC GRADIENTS & BORDERS (Figma Specs) */

/* SUCCESS CARD (Blue Tint) */
#submission_success_card {
    background: linear-gradient(180deg, #FCFCFC 0%, #F2F7FF 100%) !important;
    border: 1px solid #E8F1FF !important;
    min-height: 291px !important;
}

/* ERROR / FAILURE CARD (Pink Tint) */
#submission_error_card {
    background: linear-gradient(180deg, #FCFCFC 0%, #FBF7FF 100%) !important;
    border: 1px solid #F7EEFF !important;
    min-height: 370px !important;
}

/* 3. FLEXBOX FIX */
.form-result-card[style*="display: block"] {
    display: flex !important;
}

/* 4. NUCLEAR OVERRIDE: Block 'start' or 'left' */
.form-result-card,
.form-result-card *,
.form-result-card h3,
.form-result-card p,
.form-result-card div,
.form-result-card svg {
    text-align: center !important;
    align-self: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* 5. Icon */
.form-result-card .msg-icon {
    margin-bottom: 24px !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
}

/* 6. Heading & GAP CONTROL */
.form-result-card .msg-heading {
    font-family: 'Space Grotesk', sans-serif !important;
    font-size: 22px !important;
    font-weight: 600 !important;
    line-height: 30px !important;
    color: #0B1330 !important;
    width: 100% !important;
    
    /* ---> ADJUST THIS VALUE TO CHANGE THE GAP BETWEEN TITLE AND PARAGRAPH <--- */
    margin-bottom: 12px !important; 
}

/* 7. Text */
.form-result-card .msg-text {
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    font-weight: 400 !important;
    line-height: 24px !important;
    color: #4A5568 !important; /* Figma gray for body copy */
    max-width: 490px !important;
    width: 100% !important;
    margin-bottom: 0 !important;
}

.form-result-card .msg-text a {
    color: inherit !important;
    text-decoration: underline !important;
}

/* 8. Retry Button */
.form-result-card .msg-retry-btn {
    background: transparent !important;
    border: 1px solid #0B1330 !important;
    border-radius: 8px !important;
    color: #0B1330 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    padding: 12px 28px !important;
    margin-top: 24px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    display: inline-block !important;
}

.form-result-card .msg-retry-btn:hover {
    background: #0B1330 !important;
    color: #FFFFFF !important;
}



/* =========================================
   STRIP PADDING ONLY FOR VISIBLE RESULT CARDS
   ========================================= */
   
/* This rule stays completely disabled until jQuery makes the card visible */
body:has(#submission_success_card[style*="block"]) .elementor-element-34e03d1,
body:has(#submission_success_card[style*="flex"]) .elementor-element-34e03d1,
body:has(#submission_error_card[style*="block"]) .elementor-element-34e03d1,
body:has(#submission_error_card[style*="flex"]) .elementor-element-34e03d1 {
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* 2. HIDE FORM FIELDS ON SUBMIT */
.elementor-966 .elementor-element.elementor-element-3f47575:has(.elementor-message-success) .elementor-form-fields-wrapper,
.elementor-966 .elementor-element.elementor-element-3f47575:has(.elementor-message-success) .e-form__buttons,
.elementor-966 .elementor-element.elementor-element-3f47575:has(.elementor-message-danger) .elementor-form-fields-wrapper,
.elementor-966 .elementor-element.elementor-element-3f47575:has(.elementor-message-danger) .e-form__buttons {
    display: none !important;
}


/* =========================================
   MOBILE RESPONSIVENESS (MAX 767PX)
   ========================================= */
@media (max-width: 767px) {
    .form-result-card,
    #submission_success_card,
    #submission_error_card {
        padding: 15px !important;
        min-height: auto !important; /* Allows the card to shrink naturally on small screens */
       margin: 0px !important;
    }
    
    /* Optional: Reduces the gap below the icon slightly for mobile */
    .form-result-card .msg-icon {
        margin-bottom: 0px !important;
    }
}




/* 1. Hide ALL conditional fields by default */
.elementor-field-group-url_field,
.elementor-field-group-specify_field,
.elementor-field-group-sell_url_field,
.elementor-field-group-store_specify_field {
    display: none !important;
}

/* 2. Show fields when JS adds the active class and apply spacing */
.elementor-field-group-url_field.active-field,
.elementor-field-group-specify_field.active-field,
.elementor-field-group-sell_url_field.active-field,
.elementor-field-group-store_specify_field.active-field {
    display: block !important;
    margin-top: 10px !important;
    margin-bottom: 15px !important;
    padding-left: 30px !important;
    width: 100% !important;
}

/* 3. Blue Borders for all conditional inputs */
.elementor-field-group-url_field input,
.elementor-field-group-specify_field input,
.elementor-field-group-specify_field textarea,
.elementor-field-group-sell_url_field input,
.elementor-field-group-store_specify_field input,
.elementor-field-group-store_specify_field textarea {
    border: 1px solid #3b5cf5 !important;
    border-radius: 6px !important;
    outline: none !important;
}

.elementor-field-group-url_field input:focus,
.elementor-field-group-specify_field input:focus,
.elementor-field-group-specify_field textarea:focus,
.elementor-field-group-sell_url_field input:focus,
.elementor-field-group-store_specify_field input:focus,
.elementor-field-group-store_specify_field textarea:focus {
    border: 1px solid #3b5cf5 !important;
    box-shadow: 0 0 0 1px #3b5cf5 !important;
    outline: none !important;
}/* End custom CSS */