

{"id":145,"date":"2026-10-21T19:07:56","date_gmt":"2026-10-21T19:07:56","guid":{"rendered":"https:\/\/hexatechhub.com\/lem-electrical\/?page_id=145"},"modified":"2026-10-21T19:08:21","modified_gmt":"2026-10-21T19:08:21","slug":"request-an-electrical-quote","status":"publish","type":"page","link":"https:\/\/hexatechhub.com\/lem-electrical\/request-an-electrical-quote\/","title":{"rendered":"Request an Electrical Quote"},"content":{"rendered":"[vc_row type=&#8221;full_width_background&#8221; full_screen_row_position=&#8221;middle&#8221; column_margin=&#8221;default&#8221; column_direction=&#8221;default&#8221; column_direction_tablet=&#8221;default&#8221; column_direction_phone=&#8221;default&#8221; bg_color=&#8221;#f7f9fe&#8221; scene_position=&#8221;center&#8221; top_padding=&#8221;70&#8243; bottom_padding=&#8221;70&#8243; text_color=&#8221;dark&#8221; text_align=&#8221;left&#8221; row_border_radius=&#8221;none&#8221; row_border_radius_applies=&#8221;bg&#8221; overflow=&#8221;visible&#8221; id=&#8221;reques-banner&#8221; overlay_strength=&#8221;0.3&#8243; gradient_direction=&#8221;left_to_right&#8221; shape_divider_position=&#8221;bottom&#8221; bg_image_animation=&#8221;none&#8221; gradient_type=&#8221;default&#8221; shape_type=&#8221;&#8221;][vc_column column_padding=&#8221;no-extra-padding&#8221; column_padding_tablet=&#8221;inherit&#8221; column_padding_phone=&#8221;inherit&#8221; column_padding_position=&#8221;all&#8221; column_element_direction_desktop=&#8221;default&#8221; column_element_spacing=&#8221;default&#8221; desktop_text_alignment=&#8221;default&#8221; tablet_text_alignment=&#8221;default&#8221; phone_text_alignment=&#8221;default&#8221; background_color_opacity=&#8221;1&#8243; background_hover_color_opacity=&#8221;1&#8243; column_backdrop_filter=&#8221;none&#8221; column_shadow=&#8221;none&#8221; column_border_radius=&#8221;none&#8221; column_link_target=&#8221;_self&#8221; column_position=&#8221;default&#8221; gradient_direction=&#8221;left_to_right&#8221; overlay_strength=&#8221;0.3&#8243; width=&#8221;1\/1&#8243; tablet_width_inherit=&#8221;default&#8221; animation_type=&#8221;default&#8221; bg_image_animation=&#8221;none&#8221; border_type=&#8221;simple&#8221; column_border_width=&#8221;none&#8221; column_border_style=&#8221;solid&#8221;][split_line_heading animation_type=&#8221;line-reveal-by-space&#8221; font_style=&#8221;h2&#8243; text_color=&#8221;#0088e9&#8243; line_reveal_by_space_text_effect=&#8221;default&#8221; content_alignment=&#8221;default&#8221; mobile_content_alignment=&#8221;inherit&#8221; link_target=&#8221;_self&#8221; text_content=&#8221;Request an Electrical Quote&#8221; text_direction=&#8221;default&#8221;][\/split_line_heading][split_line_heading animation_type=&#8221;line-reveal-by-space&#8221; font_style=&#8221;p&#8221; text_color=&#8221;#252525&#8243; line_reveal_by_space_text_effect=&#8221;default&#8221; content_alignment=&#8221;default&#8221; mobile_content_alignment=&#8221;inherit&#8221; link_target=&#8221;_self&#8221; text_content=&#8221;Provide a few details about your project, and our expert team will get back to you with a comprehensive, transparent estimate.&#8221; text_direction=&#8221;default&#8221;][\/split_line_heading][\/vc_column][\/vc_row][vc_row type=&#8221;full_width_background&#8221; full_screen_row_position=&#8221;middle&#8221; column_margin=&#8221;default&#8221; column_direction=&#8221;default&#8221; column_direction_tablet=&#8221;default&#8221; column_direction_phone=&#8221;default&#8221; bg_color=&#8221;#f7f9fe&#8221; scene_position=&#8221;center&#8221; top_padding=&#8221;50&#8243; bottom_padding=&#8221;50&#8243; text_color=&#8221;dark&#8221; text_align=&#8221;left&#8221; row_border_radius=&#8221;none&#8221; row_border_radius_applies=&#8221;bg&#8221; overflow=&#8221;visible&#8221; id=&#8221;step-form&#8221; overlay_strength=&#8221;0.3&#8243; gradient_direction=&#8221;left_to_right&#8221; shape_divider_position=&#8221;bottom&#8221; bg_image_animation=&#8221;none&#8221; gradient_type=&#8221;default&#8221; shape_type=&#8221;&#8221;][vc_column column_padding=&#8221;no-extra-padding&#8221; column_padding_tablet=&#8221;inherit&#8221; column_padding_phone=&#8221;inherit&#8221; column_padding_position=&#8221;all&#8221; column_element_direction_desktop=&#8221;default&#8221; column_element_spacing=&#8221;default&#8221; desktop_text_alignment=&#8221;default&#8221; tablet_text_alignment=&#8221;default&#8221; phone_text_alignment=&#8221;default&#8221; background_color_opacity=&#8221;1&#8243; background_hover_color_opacity=&#8221;1&#8243; column_backdrop_filter=&#8221;none&#8221; column_shadow=&#8221;none&#8221; column_border_radius=&#8221;none&#8221; column_link_target=&#8221;_self&#8221; column_position=&#8221;default&#8221; gradient_direction=&#8221;left_to_right&#8221; overlay_strength=&#8221;0.3&#8243; width=&#8221;1\/1&#8243; tablet_width_inherit=&#8221;default&#8221; animation_type=&#8221;default&#8221; bg_image_animation=&#8221;none&#8221; border_type=&#8221;simple&#8221; column_border_width=&#8221;none&#8221; column_border_style=&#8221;solid&#8221;][vc_column_text css_animation=&#8221;fadeInDown&#8221; css=&#8221;&#8221; text_direction=&#8221;default&#8221;]    <style>\n        \/* Container Setup *\/\n        .cmsb-wrapper {\n            max-width: 1280px;\n            margin: 0px auto;\n            color: #1e293b;\n            font-family: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif;\n        }\n\n        \/* 1. Exact Stepper Header Styling *\/\n        .cmsb-stepper {\n            display: flex;\n            justify-content: center;\n            align-items: flex-start;\n            gap: 215px;\n            margin-bottom: 30px;\n            padding: 0 10px;\n        }\n        .cmsb-step-item {\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            cursor: pointer;\n            position: relative;\n        }\n        .cmsb-step-number {\n            width: 28px;\n            height: 28px;\n            border-radius: 50%;\n            background: #e2e8f0;\n            color: #64748b;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            font-size: 12px;\n            font-weight: 700;\n            margin-bottom: 8px;\n            transition: all 0.2s ease;\n        }\n        .cmsb-step-label {\n            font-size: 20px;\n            color: #334155;\n            font-weight: 500;\n            padding-bottom: 6px;\n            border-bottom: 2px solid transparent;\n            transition: all 0.2s ease;\n            font-family: 'Manrope', sans-serif !important;\n            line-height: 28px !important;\n        }\n        \n        \/* Active State - Blue Circle + Underline *\/\n        .cmsb-step-item.active .cmsb-step-number,\n        .cmsb-step-item.completed .cmsb-step-number {\n            background: #0084ff;\n            color: #ffffff;\n        }\n        .cmsb-step-item.active .cmsb-step-label {\n            color: #0084ff;\n            font-weight: 600;\n            border-bottom: 2px solid #0084ff;\n        }\n\n        \/* 2. Form Card Container *\/\n        .cmsb-card {\n            background: #ffffff;\n            border-radius: 12px;\n            padding: 40px 48px;\n            box-shadow: 0 10px 25px rgba(0, 0, 0, 0.03);\n            border: 1px solid #f1f5f9;\n        }\n\n        .cmsb-header-title {\n            font-size: 24px;\n            font-weight: 700;\n            margin: 0 0 6px 0;\n            color: #0f172a;\n            letter-spacing: -0.2px;\n        }\n        .cmsb-header-subtitle {\n            font-size: 14px;\n            color: #64748b;\n            margin: 0 0 32px 0;\n            line-height: 1.4;\n        }\n\n        \/* 3. Services Cards Grid *\/\n        .cmsb-services-grid {\n            display: grid;\n            grid-template-columns: repeat(2, 1fr);\n            gap: 16px;\n            margin-bottom: 36px;\n        }\n        @media (max-width: 650px) {\n            .cmsb-services-grid { grid-template-columns: 1fr; }\n            .cmsb-card { padding: 24px 20px; }\n            .cmsb-stepper { gap: 16px; }\n            .cmsb-step-label { font-size: 13px; }\n        }\n\n        \/* Clean Service Card Design *\/\n        .cmsb-service-card {\n            background: #f8fafc;\n            border: 1.5px solid transparent;\n            border-radius: 8px;\n            padding: 20px;\n            display: flex;\n            align-items: flex-start;\n            gap: 14px;\n            cursor: pointer;\n            transition: all 0.2s ease;\n        }\n        .cmsb-service-card:hover {\n            background: #f1f5f9;\n        }\n        .cmsb-service-card.selected {\n            background: #f0f7ff;\n            border-color: #3b82f6;\n        }\n\n        .cmsb-icon-box {\n            width: 22px;\n            height: 22px;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            flex-shrink: 0;\n            margin-top: 2px;\n        }\n        .cmsb-icon-box svg {\n            width: 20px;\n            height: 20px;\n        }\n        .cmsb-icon-box .dashicons {\n            font-size: 20px;\n            width: 20px;\n            height: 20px;\n            color: #0084ff;\n        }\n\n        .cmsb-service-info h4 {\n            margin: 0 0 6px 0;\n            font-size: 16px;\n            font-weight: 700;\n            color: #0f172a;\n        }\n        .cmsb-service-info p {\n            margin: 0;\n            font-size: 13px;\n            line-height: 1.45;\n            color: #64748b;\n        }\n\n        \/* Form Inputs *\/\n        .cmsb-field-group {\n            margin-bottom: 20px;\n        }\n        .cmsb-field-group label {\n            display: block;\n            font-weight: 600;\n            font-size: 13px;\n            margin-bottom: 6px;\n            color: #334155;\n        }\n        .cmsb-input, .cmsb-select, .cmsb-textarea {\n            width: 100%;\n            padding: 11px 14px;\n            border-radius: 6px;\n            border: 1px solid #cbd5e1;\n            font-size: 14px;\n            box-sizing: border-box;\n            outline: none;\n            transition: border-color 0.2s;\n            background: #fff;\n        }\n        .cmsb-input:focus, .cmsb-select:focus, .cmsb-textarea:focus {\n            border-color: #0084ff;\n        }\n\n        \/* Review Table *\/\n        .cmsb-summary-table {\n            width: 100%;\n            border-collapse: collapse;\n            border: 1px solid #e2e8f0;\n            border-radius: 6px;\n            overflow: hidden;\n            margin-bottom: 28px;\n        }\n        .cmsb-summary-table tr {\n            border-bottom: 1px solid #e2e8f0;\n        }\n        .cmsb-summary-table tr:last-child {\n            border-bottom: none;\n        }\n        .cmsb-summary-table td {\n            padding: 12px 16px;\n            font-size: 13px;\n            color: #334155;\n        }\n        .cmsb-summary-table td:first-child {\n            width: 35%;\n            font-weight: 600;\n            background: #fafafa;\n            border-right: 1px solid #e2e8f0;\n        }\n\n        \/* 4. Action Buttons Layout (Right Aligned) *\/\n        .cmsb-actions {\n            display: flex;\n            justify-content: flex-end;\n            align-items: center;\n            gap: 12px;\n            margin-top: 24px;\n        }\n        .cmsb-btn {\n            padding: 10px 22px;\n            border-radius: 6px;\n            font-size: 14px;\n            font-weight: 600;\n            cursor: pointer;\n            transition: all 0.2s;\n            border: 1px solid transparent;\n        }\n        .cmsb-btn-cancel {\n            background: #ffffff;\n            border: 1px solid #d1d5db;\n            color: #374151;\n        }\n        .cmsb-btn-cancel:hover {\n            background: #f9fafb;\n        }\n        .cmsb-btn-next {\n            background: #0084ff;\n            color: #ffffff;\n            border: none;\n        }\n        .cmsb-btn-next:hover {\n            background: #0072e6;\n        }\n\n        .cmsb-step-content { display: none; }\n        .cmsb-step-content.active { display: block; }\n\n        #cmsb-msg {\n            margin-top: 15px;\n            padding: 12px 16px;\n            border-radius: 6px;\n            display: none;\n            font-size: 13px;\n        }\n        #cmsb-msg.success { background: #dcfce7; color: #166534; display: block; }\n        #cmsb-msg.error { background: #fee2e2; color: #991b1b; display: block; }\n    <\/style>\n\n    <div class=\"cmsb-wrapper\">\n\n        <!-- Stepper Bar (1 Service, 2 Property, 3 Details, 4 Contact, 5 Review) -->\n        <div class=\"cmsb-stepper\">\n            <div class=\"cmsb-step-item active\" data-step=\"1\">\n                <div class=\"cmsb-step-number\">1<\/div>\n                <div class=\"cmsb-step-label\">Service<\/div>\n            <\/div>\n            <div class=\"cmsb-step-item\" data-step=\"2\">\n                <div class=\"cmsb-step-number\">2<\/div>\n                <div class=\"cmsb-step-label\">Property<\/div>\n            <\/div>\n            <div class=\"cmsb-step-item\" data-step=\"3\">\n                <div class=\"cmsb-step-number\">3<\/div>\n                <div class=\"cmsb-step-label\">Details<\/div>\n            <\/div>\n            <div class=\"cmsb-step-item\" data-step=\"4\">\n                <div class=\"cmsb-step-number\">4<\/div>\n                <div class=\"cmsb-step-label\">Contact<\/div>\n            <\/div>\n            <div class=\"cmsb-step-item\" data-step=\"5\">\n                <div class=\"cmsb-step-number\">5<\/div>\n                <div class=\"cmsb-step-label\">Review<\/div>\n            <\/div>\n        <\/div>\n\n        <!-- Form Card Container -->\n        <div class=\"cmsb-card\">\n            <form id=\"cmsb-multi-step-form\">\n                \n                <!-- STEP 1: SERVICE -->\n                <div class=\"cmsb-step-content active\" id=\"step-1\">\n                    <h2 class=\"cmsb-header-title\">What type of service do you need?<\/h2>\n                    <p class=\"cmsb-header-subtitle\">Select the category that best describes your project.<\/p>\n\n                    <div class=\"cmsb-services-grid\">\n                                                    <div class=\"cmsb-service-card selected\" data-id=\"1\" data-title=\"Residential Electrical\">\n                                <div class=\"cmsb-icon-box\">\n                                                                            <span class=\"dashicons \"><\/span>\n                                                                    <\/div>\n                                <div class=\"cmsb-service-info\">\n                                    <h4>Residential Electrical<\/h4>\n                                    <p>Rewiring, lighting installations, consumer unit upgrades, and general home electrical works.<\/p>\n                                <\/div>\n                                <input type=\"radio\" name=\"selected_service\" value=\"1\" checked style=\"display:none;\">\n                            <\/div>\n                                                    <div class=\"cmsb-service-card \" data-id=\"2\" data-title=\"Commercial Contracting\">\n                                <div class=\"cmsb-icon-box\">\n                                                                            <span class=\"dashicons \"><\/span>\n                                                                    <\/div>\n                                <div class=\"cmsb-service-info\">\n                                    <h4>Commercial Contracting<\/h4>\n                                    <p>Office fit-outs, commercial lighting, data cabling, and planned preventative maintenance.<\/p>\n                                <\/div>\n                                <input type=\"radio\" name=\"selected_service\" value=\"2\"  style=\"display:none;\">\n                            <\/div>\n                                                    <div class=\"cmsb-service-card \" data-id=\"3\" data-title=\"Testing &amp; Inspection\">\n                                <div class=\"cmsb-icon-box\">\n                                                                            <span class=\"dashicons \"><\/span>\n                                                                    <\/div>\n                                <div class=\"cmsb-service-info\">\n                                    <h4>Testing &amp; Inspection<\/h4>\n                                    <p>EICR certificates, landlord safety checks, and fault diagnostics.<\/p>\n                                <\/div>\n                                <input type=\"radio\" name=\"selected_service\" value=\"3\"  style=\"display:none;\">\n                            <\/div>\n                                                    <div class=\"cmsb-service-card \" data-id=\"4\" data-title=\"EV Charger Installation\">\n                                <div class=\"cmsb-icon-box\">\n                                                                            <span class=\"dashicons \"><\/span>\n                                                                    <\/div>\n                                <div class=\"cmsb-service-info\">\n                                    <h4>EV Charger Installation<\/h4>\n                                    <p>Home and workplace electric vehicle charging point installations.<\/p>\n                                <\/div>\n                                <input type=\"radio\" name=\"selected_service\" value=\"4\"  style=\"display:none;\">\n                            <\/div>\n                                            <\/div>\n                <\/div>\n\n                <!-- STEP 2: PROPERTY -->\n                <div class=\"cmsb-step-content\" id=\"step-2\">\n                    <h2 class=\"cmsb-header-title\">Property Details<\/h2>\n                    <p class=\"cmsb-header-subtitle\">Provide details about your property.<\/p>\n                    <div class=\"cmsb-field-group\">\n                        <label>Property Type<\/label>\n                        <select name=\"property_type\" id=\"property_type\" class=\"cmsb-select\">\n                            <option value=\"Residential Home\">Residential Home<\/option>\n                            <option value=\"Commercial Office\">Commercial Office<\/option>\n                            <option value=\"Industrial Facility\">Industrial Facility<\/option>\n                            <option value=\"Other\">Other<\/option>\n                        <\/select>\n                    <\/div>\n                    <div class=\"cmsb-field-group\">\n                        <label>Property Address \/ Location<\/label>\n                        <input type=\"text\" name=\"property_address\" id=\"property_address\" class=\"cmsb-input\" placeholder=\"e.g. 123 Main Street, City\">\n                    <\/div>\n                <\/div>\n\n                <!-- STEP 3: DETAILS -->\n                <div class=\"cmsb-step-content\" id=\"step-3\">\n                    <h2 class=\"cmsb-header-title\">Project Details<\/h2>\n                    <p class=\"cmsb-header-subtitle\">Specify your project requirements.<\/p>\n                    <div class=\"cmsb-field-group\">\n                        <label>Project Description<\/label>\n                        <textarea name=\"project_details\" id=\"project_details\" rows=\"5\" class=\"cmsb-textarea\" placeholder=\"Describe the required electrical work...\"><\/textarea>\n                    <\/div>\n                <\/div>\n\n                <!-- STEP 4: CONTACT -->\n                <div class=\"cmsb-step-content\" id=\"step-4\">\n                    <h2 class=\"cmsb-header-title\">Contact Information<\/h2>\n                    <p class=\"cmsb-header-subtitle\">How can we reach you regarding this estimate?<\/p>\n                    <div class=\"cmsb-field-group\">\n                        <label>Full Name *<\/label>\n                        <input type=\"text\" name=\"full_name\" id=\"full_name\" class=\"cmsb-input\" placeholder=\"e.g. Rooney Yates\" required>\n                    <\/div>\n                    <div class=\"cmsb-field-group\">\n                        <label>Email Address *<\/label>\n                        <input type=\"email\" name=\"email\" id=\"email\" class=\"cmsb-input\" placeholder=\"e.g. rooney@example.com\" required>\n                    <\/div>\n                    <div class=\"cmsb-field-group\">\n                        <label>Phone Number<\/label>\n                        <input type=\"tel\" name=\"phone\" id=\"phone\" class=\"cmsb-input\" placeholder=\"e.g. +1 (476) 587-5748\">\n                    <\/div>\n                <\/div>\n\n                <!-- STEP 5: REVIEW -->\n                <div class=\"cmsb-step-content\" id=\"step-5\">\n                    <h2 class=\"cmsb-header-title\">Review & Submit<\/h2>\n                    <p class=\"cmsb-header-subtitle\">Please double check your submission details before sending.<\/p>\n                    <table class=\"cmsb-summary-table\">\n                        <tr><td>Selected Service:<\/td><td id=\"sum-service\">-<\/td><\/tr>\n                        <tr><td>Property Type:<\/td><td id=\"sum-type\">-<\/td><\/tr>\n                        <tr><td>Address:<\/td><td id=\"sum-address\">-<\/td><\/tr>\n                        <tr><td>Project Details:<\/td><td id=\"sum-details\">-<\/td><\/tr>\n                        <tr><td>Contact Name:<\/td><td id=\"sum-name\">-<\/td><\/tr>\n                        <tr><td>Email:<\/td><td id=\"sum-email\">-<\/td><\/tr>\n                        <tr><td>Phone:<\/td><td id=\"sum-phone\">-<\/td><\/tr>\n                    <\/table>\n                <\/div>\n\n                <div id=\"cmsb-msg\"><\/div>\n\n                <!-- Buttons: Cancel \/ Back & Next Step \/ Submit -->\n                <div class=\"cmsb-actions\">\n                    <button type=\"button\" class=\"cmsb-btn cmsb-btn-cancel\" id=\"cmsb-prev-btn\">Cancel<\/button>\n                    <button type=\"button\" class=\"cmsb-btn cmsb-btn-next\" id=\"cmsb-next-btn\">Next Step &rarr;<\/button>\n                <\/div>\n            <\/form>\n        <\/div>\n    <\/div>\n\n    <!-- Frontend Script -->\n    <script>\n        document.addEventListener('DOMContentLoaded', function() {\n            let currentStep = 1;\n            const totalSteps = 5;\n            const ajaxUrl = \"https:\/\/hexatechhub.com\/lem-electrical\/wp-admin\/admin-ajax.php\";\n            const ajaxNonce = \"f69f122261\";\n\n            const cards = document.querySelectorAll('.cmsb-service-card');\n            cards.forEach(card => {\n                card.addEventListener('click', function() {\n                    cards.forEach(c => c.classList.remove('selected'));\n                    this.classList.add('selected');\n                    const radio = this.querySelector('input[type=\"radio\"]');\n                    if (radio) radio.checked = true;\n                });\n            });\n\n            const prevBtn = document.getElementById('cmsb-prev-btn');\n            const nextBtn = document.getElementById('cmsb-next-btn');\n            const msgBox = document.getElementById('cmsb-msg');\n\n            function populateSummary() {\n                const selectedCard = document.querySelector('.cmsb-service-card.selected');\n                document.getElementById('sum-service').innerText = selectedCard ? selectedCard.getAttribute('data-title') : '-';\n                document.getElementById('sum-type').innerText = document.getElementById('property_type').value || '-';\n                document.getElementById('sum-address').innerText = document.getElementById('property_address').value || '-';\n                document.getElementById('sum-details').innerText = document.getElementById('project_details').value || '-';\n                document.getElementById('sum-name').innerText = document.getElementById('full_name').value || '-';\n                document.getElementById('sum-email').innerText = document.getElementById('email').value || '-';\n                document.getElementById('sum-phone').innerText = document.getElementById('phone').value || '-';\n            }\n\n            function updateStepUI() {\n                msgBox.className = '';\n                msgBox.style.display = 'none';\n\n                document.querySelectorAll('.cmsb-step-content').forEach(el => el.classList.remove('active'));\n                document.getElementById('step-' + currentStep).classList.add('active');\n\n                document.querySelectorAll('.cmsb-step-item').forEach(el => {\n                    const stepNum = parseInt(el.getAttribute('data-step'));\n                    el.classList.remove('active', 'completed');\n                    if (stepNum === currentStep) {\n                        el.classList.add('active');\n                    } else if (stepNum < currentStep) {\n                        el.classList.add('completed');\n                    }\n                });\n\n                if (currentStep === 1) {\n                    prevBtn.innerHTML = 'Cancel';\n                } else {\n                    prevBtn.innerHTML = 'Back';\n                }\n\n                if (currentStep === totalSteps) {\n                    populateSummary();\n                    nextBtn.innerHTML = 'Submit Booking Request';\n                } else {\n                    nextBtn.innerHTML = 'Next Step &rarr;';\n                }\n            }\n\n            nextBtn.addEventListener('click', function() {\n                if (currentStep === 4) {\n                    const name = document.getElementById('full_name').value.trim();\n                    const email = document.getElementById('email').value.trim();\n                    if (!name || !email) {\n                        alert('Please fill in required fields (Full Name & Email).');\n                        return;\n                    }\n                }\n\n                if (currentStep < totalSteps) {\n                    currentStep++;\n                    updateStepUI();\n                } else {\n                    nextBtn.disabled = true;\n                    nextBtn.innerText = 'Submitting...';\n\n                    const selectedCard = document.querySelector('.cmsb-service-card.selected');\n                    const serviceId = selectedCard ? selectedCard.getAttribute('data-id') : '';\n\n                    const formData = new FormData();\n                    formData.append('action', 'cmsb_submit_form');\n                    formData.append('nonce', ajaxNonce);\n                    formData.append('service_id', serviceId);\n                    formData.append('property_type', document.getElementById('property_type').value);\n                    formData.append('property_address', document.getElementById('property_address').value);\n                    formData.append('project_details', document.getElementById('project_details').value);\n                    formData.append('full_name', document.getElementById('full_name').value);\n                    formData.append('email', document.getElementById('email').value);\n                    formData.append('phone', document.getElementById('phone').value);\n\n                    fetch(ajaxUrl, {\n                        method: 'POST',\n                        body: formData\n                    })\n                    .then(res => res.json())\n                    .then(data => {\n                        nextBtn.disabled = false;\n                        if (data.success) {\n                            msgBox.className = 'success';\n                            msgBox.innerText = data.data.message;\n                            msgBox.style.display = 'block';\n                            document.getElementById('cmsb-multi-step-form').reset();\n                            setTimeout(() => {\n                                currentStep = 1;\n                                updateStepUI();\n                            }, 3000);\n                        } else {\n                            msgBox.className = 'error';\n                            msgBox.innerText = data.data.message || 'Error submitting form.';\n                            msgBox.style.display = 'block';\n                            nextBtn.innerText = 'Submit Booking Request';\n                        }\n                    })\n                    .catch(err => {\n                        nextBtn.disabled = false;\n                        nextBtn.innerText = 'Submit Booking Request';\n                        msgBox.className = 'error';\n                        msgBox.innerText = 'An error occurred. Please try again.';\n                        msgBox.style.display = 'block';\n                    });\n                }\n            });\n\n            prevBtn.addEventListener('click', function() {\n                if (currentStep > 1) {\n                    currentStep--;\n                    updateStepUI();\n                } else {\n                    if (confirm('Cancel booking request?')) {\n                        document.getElementById('cmsb-multi-step-form').reset();\n                        currentStep = 1;\n                        updateStepUI();\n                    }\n                }\n            });\n        });\n    <\/script>\n    [\/vc_column_text][\/vc_column][\/vc_row]\n","protected":false},"excerpt":{"rendered":"<p>[vc_row type=&#8221;full_width_background&#8221; full_screen_row_position=&#8221;middle&#8221; column_margin=&#8221;default&#8221; column_direction=&#8221;default&#8221; column_direction_tablet=&#8221;default&#8221; column_direction_phone=&#8221;default&#8221; bg_color=&#8221;#f7f9fe&#8221; scene_position=&#8221;center&#8221; top_padding=&#8221;70&#8243; bottom_padding=&#8221;70&#8243; text_color=&#8221;dark&#8221; text_align=&#8221;left&#8221; row_border_radius=&#8221;none&#8221; row_border_radius_applies=&#8221;bg&#8221; overflow=&#8221;visible&#8221; id=&#8221;reques-banner&#8221; overlay_strength=&#8221;0.3&#8243; gradient_direction=&#8221;left_to_right&#8221; shape_divider_position=&#8221;bottom&#8221; bg_image_animation=&#8221;none&#8221; gradient_type=&#8221;default&#8221; shape_type=&#8221;&#8221;][vc_column column_padding=&#8221;no-extra-padding&#8221; column_padding_tablet=&#8221;inherit&#8221; column_padding_phone=&#8221;inherit&#8221; column_padding_position=&#8221;all&#8221; column_element_direction_desktop=&#8221;default&#8221; column_element_spacing=&#8221;default&#8221; desktop_text_alignment=&#8221;default&#8221;&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-145","page","type-page","status-publish"],"_links":{"self":[{"href":"https:\/\/hexatechhub.com\/lem-electrical\/wp-json\/wp\/v2\/pages\/145","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hexatechhub.com\/lem-electrical\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/hexatechhub.com\/lem-electrical\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/hexatechhub.com\/lem-electrical\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/hexatechhub.com\/lem-electrical\/wp-json\/wp\/v2\/comments?post=145"}],"version-history":[{"count":2,"href":"https:\/\/hexatechhub.com\/lem-electrical\/wp-json\/wp\/v2\/pages\/145\/revisions"}],"predecessor-version":[{"id":147,"href":"https:\/\/hexatechhub.com\/lem-electrical\/wp-json\/wp\/v2\/pages\/145\/revisions\/147"}],"wp:attachment":[{"href":"https:\/\/hexatechhub.com\/lem-electrical\/wp-json\/wp\/v2\/media?parent=145"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}