.elementor-1858 .elementor-element.elementor-element-3bd4313{--display:flex;}.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 );}.elementor-1858 .elementor-element.elementor-element-86984fe > .elementor-widget-container{margin:35px 0px 0px 0px;}.elementor-1858 .elementor-element.elementor-element-86984fe{text-align:center;}.elementor-1858 .elementor-element.elementor-element-86984fe img{width:23%;}.elementor-1858 .elementor-element.elementor-element-455b4df{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-fluent-form-widget .fluentform-widget-description{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-fluent-form-widget .ff-el-progress-status{color:var( --e-global-color-primary );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 );}.elementor-widget-fluent-form-widget .ff-el-progress-bar span{color:var( --e-global-color-primary );}.elementor-widget-fluent-form-widget .step-nav button{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 );}.elementor-1858 .elementor-element.elementor-element-c563f18 .fluentform-widget-wrapper .ff-el-input--label label{color:var( --e-global-color-primary );font-size:36px;font-weight:600;}.elementor-1858 .elementor-element.elementor-element-c563f18 .ff-el-is-required.asterisk-right label:after{font-size:0px;}.elementor-1858 .elementor-element.elementor-element-c563f18 .fluentform-widget-custom-radio-checkbox input[type="checkbox"], .elementor-1858 .elementor-element.elementor-element-c563f18 .fluentform-widget-custom-radio-checkbox input[type="radio"]{width:20px;height:20px;}.elementor-1858 .elementor-element.elementor-element-c563f18 .fluentform-widget-custom-radio-checkbox input[type="checkbox"]:after, .elementor-1858 .elementor-element.elementor-element-c563f18 .fluentform-widget-custom-radio-checkbox input[type="radio"]:after{border-color:var( --e-global-color-primary );}.elementor-1858 .elementor-element.elementor-element-c563f18 .fluentform-widget-custom-radio-checkbox input[type="checkbox"]:checked:after, .elementor-1858 .elementor-element.elementor-element-c563f18 .fluentform-widget-custom-radio-checkbox input[type="radio"]:checked:after{background-color:var( --e-global-color-primary );}.elementor-1858 .elementor-element.elementor-element-c563f18 .fluentform-widget-wrapper .ff-el-group .ff-btn-submit{background-color:#FA466F !important;color:#ffffff !important;}.elementor-1858 .elementor-element.elementor-element-b1961f8{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1858 .elementor-element.elementor-element-b06ca3b{--spacer-size:50px;}.elementor-1858 .elementor-element.elementor-element-ec15894{--display:flex;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-1858 .elementor-element.elementor-element-455b4df{--content-width:742px;}}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-widget-fluent-form-widget .fluentform-widget-description{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-fluent-form-widget .ff-el-progress-status{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-fluent-form-widget .step-nav button{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:767px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-1858 .elementor-element.elementor-element-86984fe img{width:50%;}.elementor-widget-fluent-form-widget .fluentform-widget-description{font-size:var( --e-global-typography-accent-font-size );}.elementor-widget-fluent-form-widget .ff-el-progress-status{font-size:var( --e-global-typography-primary-font-size );}.elementor-widget-fluent-form-widget .step-nav button{font-size:var( --e-global-typography-primary-font-size );}.elementor-1858 .elementor-element.elementor-element-c563f18 .fluentform-widget-wrapper .ff-el-input--label label{font-size:20px;}.elementor-1858 .elementor-element.elementor-element-b06ca3b{--spacer-size:124px;}}/* Start custom CSS for fluent-form-widget, class: .elementor-element-c563f18 *//* 1. GLOBAL CONTAINER & PROGRESS BAR */
.fluentform {
    max-width: 100% !important;
    overflow-x: hidden !important;
}

.ff-el-progress-bar {
    background-color: #ff5a78 !important;
}

.ff-el-progress-percent {
    color: #ff5a78 !important;
    font-weight: bold;
}

/* 2. HEADLINES & TITLES */
.ff-el-form-check-label, 
.ff-el-section-title {
    color: #2b59c3 !important;
    font-size: 28px !important;
    margin-bottom: 10px !important;
    text-align: center;
}

/* 3. RADIO CARD DESIGN (Selection Steps) */
.ff-el-form-check {
    width: 100% !important;
    margin: 0 0 5px 0 !important;
}

.ff-el-form-check label {
    display: flex !important;
    align-items: center !important;
    background: #ffffff !important;
    padding: 20px 25px !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
    cursor: pointer !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transition: all 0.3s ease;
    font-size: 18px !important;
    color: #333 !important;
}

/* Custom Radio Circle */
.ff-el-form-check input[type="radio"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 22px !important;
    height: 22px !important;
    border: 1px solid #2b59c3 !important;
    border-radius: 50% !important;
    margin-right: 15px !important;
    flex-shrink: 0 !important;
    position: relative !important;
    background: #fff !important;
}

.ff-el-form-check input[type="radio"]:checked::after {
    content: '' !important;
    width: 12px !important;
    height: 12px !important;
    background: #2b59c3 !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    border-radius: 50% !important;
}

/* 4. TEXT INPUTS (Active/Focus Red State) */
.fluentform input[type="text"]:focus,
.fluentform input[type="tel"]:focus,
.fluentform input[type="number"]:focus,
.fluentform .ff-el-form-control:focus {
    border: 2px solid #ff5a78 !important;
    box-shadow: 0 0 8px rgba(255, 90, 120, 0.2) !important;
    outline: none !important;
}

/* 5. NAVIGATION BUTTONS (General) */
.ff-step-tigger {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-top: 30px !important;
    gap: 15px !important;
}

/* Next/Submit Button */
.ff-btn-next, .ff_btn_submit {
    background-color: #ff4b6b !important;
    border: none !important;
    color: white !important;
    padding: 15px 30px !important;
    border-radius: 8px !important;
    font-weight: bold !important;
    font-size: 16px !important;
    white-space: nowrap !important;
    flex: 0 1 auto !important;
}

/* Back Button */
.ff-btn-prev {
    background-color: transparent !important;
    border: 1px solid #ff4b6b !important;
    color: #ff4b6b !important;
    padding: 15px 30px !important;
    border-radius: 8px !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
    flex: 0 1 auto !important;
}

/* 6. FINAL STEP: ALIGNMENT & TERMS */
/* Force Submit Button to Right on Last Step */
.ff-step-tigger:has(.ff_btn_submit) {
    justify-content: space-between !important;
}

.ff_btn_submit {
    margin-left: auto !important;
}

/* Terms & Conditions: 12px, Left Aligned, Small Box */
.ff-el-type-custom_html, 
.ff-el-type-terms_and_condition {
    font-size: 12px !important;
    text-align: left !important;
    line-height: 1.5 !important;
    margin-top: 20px !important;
    color: #666 !important;
}

.ff-el-type-custom_html p, 
.ff-el-type-terms_and_condition label {
    font-size: 16px !important;
    text-align: left !important;
}

/* 7. MOBILE RESPONSIVENESS (Fixing Cutouts) */
@media (max-width: 600px) {
    .ff-el-section-title {
        font-size: 22px !important;
    }

    .ff-el-form-check label {
        padding: 15px !important;
        font-size: 15px !important;
    }

    /* Prevent buttons from cutting out text on small screens */
    .ff-btn-next, .ff-btn-prev, .ff_btn_submit {
        padding: 12px 10px !important;
        font-size: 13px !important;
        flex: 1 !important; /* Share space equally */
        min-width: 0 !important; /* Allow shrink */
        text-align: center !important;
    }

    .ff-step-tigger {
        gap: 8px !important;
    }
}

/* 1. FINAL STEP: BUTTON ALIGNMENT */
/* This forces the "Back" button to the left and "Get My Offers" to the right */
.ff-step-tigger {
    display: flex !important;
    justify-content: space-between !important; 
    align-items: center !important;
    width: 100% !important;
    gap: 10px !important;
}

/* Specific fix for the Submit button to ensure it doesn't center */
.ff_btn_submit {
    margin-left: auto !important;
    background-color: #ff4b6b !important;
    padding: 15px 35px !important;
    border-radius: 8px !important;
    font-weight: bold !important;
}

/* 1. FORCE BUTTON ALIGNMENT */
/* This targets the container and forces space between Back and Submit */
.ff-step-tigger {
    display: flex !important;
    flex-direction: row !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    margin-top: 30px !important;
}

/* Force the "Get My Offers" button to stay on the right */
.ff_btn_submit {
    margin-left: auto !important;
    display: inline-block !important;
    width: auto !important;
}

/* 2. THE DISCLAIMER BOX (Small, Left Aligned, Not Wide) */
/* This targets the container for the "By clicking..." text */
.ff-el-type-custom_html, 
.ff-el-type-terms_and_condition {
    width: 100% !important;
    max-width: 550px !important; /* Prevents it from being too wide */
    margin: 15px 0 !important; /* Resets margins to the left */
    text-align: left !important;
}

.ff-el-type-custom_html p, 
.ff-el-type-terms_and_condition label {
    font-size: 11px !important; /* Even smaller to look like fine print */
    text-align: left !important;
    line-height: 1.4 !important;
    display: block !important;
    color: #777 !important;
}

/* 3. MOBILE FIX (Prevents Button Overlap) */
@media (max-width: 600px) {
    .ff-step-tigger {
        gap: 10px !important;
    }
    
    .ff-btn-prev, .ff_btn_submit {
        padding: 12px 15px !important;
        font-size: 13px !important;
        flex: 1 !important; /* On mobile, they share the row */
    }
}

.ff-tigger-prev { flex: 1 !important; }
.ff-tigger-next { flex: 1 !important; text-align: right !important; }/* End custom CSS */