{"id":24161,"date":"2025-11-07T16:36:37","date_gmt":"2025-11-07T16:36:37","guid":{"rendered":"https:\/\/www.windownation.com\/locations\/new-jersey\/"},"modified":"2026-09-17T21:23:05","modified_gmt":"2026-09-17T21:23:05","slug":"new-jersey","status":"publish","type":"nbly_state","link":"https:\/\/www.windownation.com\/locations\/new-jersey\/","title":{"rendered":"New Jersey"},"content":{"rendered":"    <section class=\"wp-block-wn-state-intro\">\n        <div class=\"wn-state-intro-copy\">\n            <h1>Window Replacement Experts in New Jersey<\/h1>\n            <div class=\"wn-state-intro-text\"><p>From frosty mornings to humid summer afternoons, New Jersey\u2019s changing seasons can reveal the shortcomings of aging windows. Explore window replacement in New Jersey with Window Nation to find options that support indoor comfort and complement your home\u2019s style. Whether you\u2019re updating a brick Colonial or refreshing a contemporary home, replacement windows can help reduce drafts, improve energy efficiency, and brighten your living spaces. Make your next home improvement a chance to bring together lasting visual appeal and everyday comfort.<\/p>\n<\/div>\n        <\/div>\n        <div class=\"wn-state-search\">\n            <form class=\"wn-state-search-form\" action=\"https:\/\/www.windownation.com\/locations\/\" method=\"get\">\n                <label for=\"wn-state-zip-1\">Find Your Local Window Nation:<\/label>\n                <input id=\"wn-state-zip-1\" name=\"zip\" type=\"text\" inputmode=\"numeric\" autocomplete=\"postal-code\" pattern=\"[0-9]{5}\" maxlength=\"5\" placeholder=\"Enter your zip code\" title=\"Please enter a 5-digit ZIP code.\" required>\n                <button class=\"primary-btn\" type=\"submit\">Search<\/button>\n                <p class=\"wn-state-search-status\" role=\"status\" aria-live=\"polite\"><\/p>\n            <\/form>\n        <\/div>\n    <\/section>\n    \n\n<section class=\"wp-block-wn-state-cities\"><h2>Cities Served in New Jersey<\/h2><div class=\"wn-state-cities-layout\"><div class=\"wn-state-cities-list\"><ul><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/basking-ridge\/\">Basking Ridge<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/berkeley-heights\/\">Berkeley Heights<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/bridgewater\/\">Bridgewater<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/camden\/\">Camden<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/cedar-grove\/\">Cedar Grove<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/cherry-hill-township\/\">Cherry Hill Township<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/cliffside-park\/\">Cliffside Park<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/cranford\/\">Cranford<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/denville\/\">Denville<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/deptford-township\/\">Deptford Township<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/dumont\/\">Dumont<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/east-hanover\/\">East Hanover<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/edgewater\/\">Edgewater<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/englewood\/\">Englewood<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/evesham-township\/\">Evesham Township<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/fair-lawn\/\">Fair Lawn<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/florham-park\/\">Florham Park<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/fort-lee\/\">Fort Lee<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/franklin-lakes\/\">Franklin Lakes<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/glassboro\/\">Glassboro<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/glen-rock\/\">Glen Rock<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/hillsdale\/\">Hillsdale<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/hoboken\/\">Hoboken<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/livingston\/\">Livingston<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/madison\/\">Madison<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/mahwah\/\">Mahwah<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/maplewood\/\">Maplewood<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/martinsville\/\">Martinsville<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/metuchen\/\">Metuchen<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/middletown-township\/\">Middletown Township<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/millburn\/\">Millburn<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/montclair\/\">Montclair<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/morristown\/\">Morristown<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/mount-laurel-township\/\">Mount Laurel Township<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/new-milford\/\">New Milford<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/new-providence\/\">New Providence<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/north-jersey\/\">North Jersey<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/oakland\/\">Oakland<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/palisades-park\/\">Palisades Park<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/paramus\/\">Paramus<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/pennsauken-township\/\">Pennsauken Township<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/pequannock\/\">Pequannock<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/pompton-plains\/\">Pompton Plains<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/ramsey\/\">Ramsey<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/randolph\/\">Randolph<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/ridgefield\/\">Ridgefield<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/ridgewood\/\">Ridgewood<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/ringwood\/\">Ringwood<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/river-edge\/\">River Edge<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/rutherford\/\">Rutherford<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/scotch-plains\/\">Scotch Plains<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/short-hills\/\">Short Hills<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/south-orange\/\">South Orange<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/springfield\/\">Springfield<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/summit\/\">Summit<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/teaneck\/\">Teaneck<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/tenafly\/\">Tenafly<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/trenton\/\">Trenton<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/upper-montclair\/\">Upper Montclair<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/verona\/\">Verona<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/vineland\/\">Vineland<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/warren\/\">Warren<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/washington-township\/\">Washington Township<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/wayne\/\">Wayne<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/weehawken\/\">Weehawken<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/west-orange\/\">West Orange<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/westfield\/\">Westfield<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/westwood\/\">Westwood<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/whippany\/\">Whippany<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/winslow-township\/\">Winslow Township<\/a><\/li><li><a href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/wyckoff\/\">Wyckoff<\/a><\/li><\/ul><\/div><img class=\"wn-state-cities-image\" src=\"https:\/\/www.windownation.com\/locations\/wp-content\/plugins\/window-nation-blocks\/build\/state-cities\/assets\/cities-served-home.webp\" alt=\"Blue house with large illuminated windows at dusk\" width=\"640\" height=\"640\" loading=\"lazy\" decoding=\"async\"><\/div><\/section>\n\n\n<section class=\"wp-block-wn-mini-cta\"><div class=\"wn-block-container\"><div class=\"wn-mini-cta-content\"><h2>Save 50% on all windows<\/h2><p>And save even more with 0% interest for 60 months!<\/p><\/div><div class=\"wn-cta-buttons\">\n<div class=\"wp-block-wn-cta-button\"><a class=\"secondary-btn\" href=\"#request-quote\" data-quote-link=\"true\"><span>Get a Quote<\/span><\/a><\/div>\n<\/div><\/div><\/section>\n\n\n<section class=\"wp-block-nbly-locations-original wn-state-showrooms\"><h2>Window Nation Showrooms in New Jersey<\/h2><div class=\"wn-block-container\"><div class=\"wp-block-nbly-locations-original-list\"><ul class=\"location-list\"><li class=\"location-item\">\n                <h4 class=\"location-title\">Window Nation Cherry Hill\/Philly<\/h4>\n                <div class=\"wn-review-stars\">\n                <div class=\"wn-review-stars-container stars-full\" style=\"width:95px\">\n                    <span class=\"wn-review-star\">\u2605<\/span>\n                    <span class=\"wn-review-star\">\u2605<\/span>\n                    <span class=\"wn-review-star\">\u2605<\/span>\n                    <span class=\"wn-review-star\">\u2605<\/span>\n                    <span class=\"wn-review-star\">\u2605<\/span>\n                <\/div>\n                <div class=\"wn-review-stars-container stars-empty\">\n                    <span class=\"wn-review-star\">\u2606<\/span>\n                    <span class=\"wn-review-star\">\u2606<\/span>\n                    <span class=\"wn-review-star\">\u2606<\/span>\n                    <span class=\"wn-review-star\">\u2606<\/span>\n                    <span class=\"wn-review-star\">\u2606<\/span>\n                <\/div>\n            <\/div>\n                <p>\n                    9256 Commerce Highway<br \/>\n                    Pennsauken, NJ 08110<br \/>\n                    (856) 566-7200\n                <\/p>\n                <a class=\"primary-btn\" href=\"https:\/\/www.windownation.com\/locations\/pennsylvania\/philadelphia\/\">Learn More<\/a>\n                <a class=\"primary-btn call-us\" href=\"tel:8565667200\">Call Us&nbsp;<\/a>\n            <\/li><li class=\"location-item\">\n                <h4 class=\"location-title\">Window Nation Whippany<\/h4>\n                <div class=\"wn-review-stars\">\n                <div class=\"wn-review-stars-container stars-full\" style=\"width:97px\">\n                    <span class=\"wn-review-star\">\u2605<\/span>\n                    <span class=\"wn-review-star\">\u2605<\/span>\n                    <span class=\"wn-review-star\">\u2605<\/span>\n                    <span class=\"wn-review-star\">\u2605<\/span>\n                    <span class=\"wn-review-star\">\u2605<\/span>\n                <\/div>\n                <div class=\"wn-review-stars-container stars-empty\">\n                    <span class=\"wn-review-star\">\u2606<\/span>\n                    <span class=\"wn-review-star\">\u2606<\/span>\n                    <span class=\"wn-review-star\">\u2606<\/span>\n                    <span class=\"wn-review-star\">\u2606<\/span>\n                    <span class=\"wn-review-star\">\u2606<\/span>\n                <\/div>\n            <\/div>\n                <p>\n                    156 Algonquin Pkwy<br \/>\n                    Whippany, NJ 07981<br \/>\n                    (862) 201-3299\n                <\/p>\n                <a class=\"primary-btn\" href=\"https:\/\/www.windownation.com\/locations\/new-jersey\/north-jersey\/\">Learn More<\/a>\n                <a class=\"primary-btn call-us\" href=\"tel:8622013299\">Call Us&nbsp;<\/a>\n            <\/li><\/ul><\/div><div class=\"wp-block-nbly-locations-original-map\"><div id=\"map\" role=\"presentation\"><\/div>\n                    <script>\n                        (g=>{var h,a,k,p=\"The Google Maps JavaScript API\",c=\"google\",l=\"importLibrary\",q=\"__ib__\",m=document,b=window;b=b[c]||(b[c]={});var d=b.maps||(b.maps={}),r=new Set,e=new URLSearchParams,u=()=>h||(h=new Promise(async(f,n)=>{await (a=m.createElement(\"script\"));e.set(\"libraries\",[...r]+\"\");for(k in g)e.set(k.replace(\/[A-Z]\/g,t=>\"_\"+t[0].toLowerCase()),g[k]);e.set(\"callback\",c+\".maps.\"+q);a.src=`https:\/\/maps.${c}apis.com\/maps\/api\/js?`+e;d[q]=f;a.onerror=()=>h=n(Error(p+\" could not load.\"));a.nonce=m.querySelector(\"script[nonce]\")?.nonce||\"\";m.head.append(a)}));d[l]?console.warn(p+\" only loads once. Ignoring:\",g):d[l]=(f,...n)=>r.add(f)&&u().then(()=>d[l](f,...n))})({\n                            key: \"AIzaSyAgutGJdUeN8A3K5pre71IrumEAXexIeKI\",\n                            v: \"weekly\",\n                        });\n                    <\/script>\n                    <script src=\"https:\/\/unpkg.com\/@googlemaps\/markerclusterer\/dist\/index.min.js\"><\/script>\n                    <script>\n                        var map;\n                        async function initMap() {\n                            const { Map, InfoWindow } = await google.maps.importLibrary(\"maps\");\n                            const { AdvancedMarkerElement, PinElement } = await google.maps.importLibrary(\"marker\",);\n                            map = new google.maps.Map(document.getElementById(\"map\"), {\n                                zoom: 3,\n                                center: { lat: -28.024, lng: 140.887 },\n                                streetViewControl: false,\n                                fullscreenControl: false,\n                                mapTypeControl: false,\n                                mapId: \"fe7cac85af94d16c\",\n                            });\n                            \n                            const stateName = \"New Jersey\";\n                            if (!stateName) map.addListener(\"idle\", () => {\n                                var bounds = map.getBounds();\n                                let markerList = [];\n                                for (var i = 0; i < markers.length; i++) {\n                                    if (bounds.contains(markers[i].position) === true) {\n                                        locations.map((location, j) => {\n                                            if (markers[i].zIndex == location.id) {\n                                                console.log(location.title + \" \" + location.phone);\n                                                markerList.push({title:markers[i].title, url:location.url, address:location.address, phone:location.phone, phone_formatted:location.phone_formatted, reviews:location.reviews});\n                                            }\n                                        });\n                                    }\n                                }\n                                nblyBuildList(markerList);\n                            });\n\n                            const infoWindow = new google.maps.InfoWindow({\n                                content: \"\",\n                                disableAutoPan: true,\n                            });\n                            \n                            const locations = [{\"id\":27,\"title\":\"Window Nation Cherry Hill\\\/Philly\",\"address\":\"9256 Commerce Highway\\u003Cbr \\\/\\u003EPennsauken, NJ 08110\",\"phone\":\"8565667200\",\"phone_formatted\":\"(856) 566-7200\",\"url\":\"https:\\\/\\\/www.windownation.com\\\/locations\\\/pennsylvania\\\/philadelphia\\\/\",\"lat\":39.954,\"lng\":-75.061,\"reviews\":\"\\u003Cdiv class=\\u0022wn-review-stars\\u0022\\u003E\\n                \\u003Cdiv class=\\u0022wn-review-stars-container stars-full\\u0022 style=\\u0022width:95px\\u0022\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2605\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2605\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2605\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2605\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2605\\u003C\\\/span\\u003E\\n                \\u003C\\\/div\\u003E\\n                \\u003Cdiv class=\\u0022wn-review-stars-container stars-empty\\u0022\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2606\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2606\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2606\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2606\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2606\\u003C\\\/span\\u003E\\n                \\u003C\\\/div\\u003E\\n            \\u003C\\\/div\\u003E\"},{\"id\":31,\"title\":\"Window Nation Whippany\",\"address\":\"156 Algonquin Pkwy\\u003Cbr \\\/\\u003EWhippany, NJ 07981\",\"phone\":\"8622013299\",\"phone_formatted\":\"(862) 201-3299\",\"url\":\"https:\\\/\\\/www.windownation.com\\\/locations\\\/new-jersey\\\/north-jersey\\\/\",\"lat\":40.825,\"lng\":-74.402,\"reviews\":\"\\u003Cdiv class=\\u0022wn-review-stars\\u0022\\u003E\\n                \\u003Cdiv class=\\u0022wn-review-stars-container stars-full\\u0022 style=\\u0022width:97px\\u0022\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2605\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2605\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2605\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2605\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2605\\u003C\\\/span\\u003E\\n                \\u003C\\\/div\\u003E\\n                \\u003Cdiv class=\\u0022wn-review-stars-container stars-empty\\u0022\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2606\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2606\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2606\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2606\\u003C\\\/span\\u003E\\n                    \\u003Cspan class=\\u0022wn-review-star\\u0022\\u003E\\u2606\\u003C\\\/span\\u003E\\n                \\u003C\\\/div\\u003E\\n            \\u003C\\\/div\\u003E\"}]\n                            const markers = locations.map((position, i) => {\n                                const markerImg = document.createElement(\"img\");\n                                markerImg.src = \"https:\/\/www.windownation.com\/locations\/wp-content\/themes\/window-nation\/brands\/wn\/images\/map-view.svg\";\n                                markerImg.setAttribute(\"height\", \"30px\");\n                                markerImg.setAttribute(\"width\", \"30px\");\n                                const _marker = new google.maps.LatLng(position.lat, position.lng); \n                                const marker = new google.maps.marker.AdvancedMarkerElement({\n                                    position: _marker,\n                                    content: markerImg,\n                                    title: position.title,\n                                    zIndex: position.id\n                                });\n\n                                marker.addListener(\"gmp-click\", () => {\n                                    infoWindow.setContent(\"<div class='modal-body'><div class='modal-heading'>\" + position.title + \"<\/div><div class='modal-text'>\" + position.address + \"<\/div><div class='modal-cta'><a href='tel:\" + position.phone + \"'>\" + position.phone_formatted + \"<\/a><a href='\" + position.url + \"'>Learn More<\/a><\/div><\/div>\");\n                                    infoWindow.open(map, marker);\n                                    map.setCenter(marker.position);\n                                });\n                            \n                                return marker;\n                            });\n\n                            const svg = window.btoa(`<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" height=\"32\" width=\"32\"><circle class=\"c\" cx=\"16\" cy=\"16\" r=\"14\" fill=\"none\" stroke=\"#005BA7\" stroke-width=\"3\"\/><circle class=\"d\" cx=\"16\" cy=\"16\" r=\"5\" fill=\"#005BA7\" stroke=\"#005BA7\" stroke-width=\"10\"\/><\/svg>`);\n                            const renderer = {\n                                render: ({ count, position }) =>\n                                    new google.maps.Marker({\n                                        label: { text: String(count), color: \"#ffffff\", fontSize: \"13px\", fontWeight: \"600\" },\n                                        icon: {\n                                            url: `data:image\/svg+xml;base64,${svg}`,\n                                            scaledSize: new google.maps.Size(32, 32),\n                                        },\n                                        position,\n                                        zIndex: Number(google.maps.Marker.MAX_ZINDEX) + count,\n                                    })\n                            };\n\n                        const markerCluster = new markerClusterer.MarkerClusterer({ markers, map, renderer });\n\n                        let bounds = new google.maps.LatLngBounds();\n                        locations.forEach(function(LatLng) {\n                            bounds.extend(LatLng);\n                        });\n                        \n                        if (locations.length) map.fitBounds(bounds);\n                        if (markers.length == 1 && !stateName)\n                            map.setOptions({maxZoom: 9});\n                        if (stateName) {\n                            const stateBounds = {\"east\":-73.9025,\"north\":41.3599,\"south\":38.9939,\"west\":-75.562};\n                            if (stateBounds) {\n                                map.fitBounds(stateBounds, 24);\n                            } else if (locations.length === 1) {\n                                map.setZoom(8);\n                            }\n                        }\n                        }\n\n                        initMap().then(() => {\n                            const zip = new URLSearchParams(window.location.search).get(\"zip\") || \"\";\n                            if (!\"New Jersey\" && \/^[0-9]{5}$\/.test(zip)) {\n                                jQuery(() => {\n                                    jQuery(\"#location-search\").val(zip);\n                                    jQuery(\".nbly-do-find-location\").trigger(\"click\");\n                                });\n                            }\n                        });\n\n                        function nblyBuildList(markerList) {\n                            let list_contents = \"\";\n                            for (var i = 0; i < markerList.length; i++) {\n                                list_contents = list_contents + nblyBuildListItem(markerList[i]);\n                            }\n                            jQuery(\".location-list\").html(list_contents);\n                            if (markerList.length == 1) { \n                                jQuery(\".location-total-text span\").html(markerList.length + \" location found\");\n                            } else {\n                                jQuery(\".location-total-text span\").html(markerList.length + \" locations found\");\n                            }\n                        }\n\n                        function nblyBuildListItem(obj) {\n                            return \"<li class='location-item'><h4 class='location-title'>\" + obj.title + \"<\/h4> \" + obj.reviews + \"<p>\" + obj.address + \"<br \/>\" + obj.phone_formatted + \"<\/p><a class='primary-btn' a href='\" + obj.url + \"'>Learn More<\/a><\/li>\";\n                        }\n                    <\/script><\/div><\/div><\/section>\n\n    <section class=\"wp-block-wn-schedule-service wp-block-wn-schedule-service--landing\">\n        <div class=\"service-form-container\">\n            <div class=\"service-form\">\n                                    <h2>Get Your Free Estimate<\/h2>\n                                                <form class=\"wn-schedule-service-form\" name=\"homepageForm\" id=\"wn-schedule-service-2\" data-msevent=\"form_submitted\" data-mscategory=\"form_submitted\" data-msaction=\"form submission\" data-thank-you-url=\"\">\n                    <div>\n                        <div>\n                            <label for=\"wn-schedule-service-2-first-name\">First Name*<\/label>\n                            <input type=\"text\" id=\"wn-schedule-service-2-first-name\" data-wn=\"req-first-name\" placeholder=\"First Name*\" autocomplete=\"given-name\" maxlength=\"30\" pattern=\"[A-Za-z]+\" required>\n                        <\/div>\n                        <div>\n                            <label for=\"wn-schedule-service-2-last-name\">Last Name*<\/label>\n                            <input type=\"text\" id=\"wn-schedule-service-2-last-name\" data-wn=\"req-last-name\" placeholder=\"Last Name*\" autocomplete=\"family-name\" maxlength=\"50\" pattern=\"[A-Za-z]+\" required>\n                        <\/div>\n                    <\/div>\n                    <div>\n                        <div class=\"form-wide\">\n                            <label for=\"wn-schedule-service-2-email\">Email*<\/label>\n                            <input type=\"email\" id=\"wn-schedule-service-2-email\" data-wn=\"req-email\" placeholder=\"Email*\" autocomplete=\"email\" inputmode=\"email\" required>\n                        <\/div>\n                    <\/div>\n                    <div>\n                        <div>\n                            <label for=\"wn-schedule-service-2-phone\">Phone Number*<\/label>\n                            <input type=\"tel\" id=\"wn-schedule-service-2-phone\" data-wn=\"req-phone\" placeholder=\"Phone Number*\" autocomplete=\"tel\" inputmode=\"tel\" maxlength=\"14\" required pattern=\"\\([0-9]{3}\\) [0-9]{3}-[0-9]{4}\" title=\"Please enter a 10-digit phone number.\">\n                        <\/div>\n                        <div>\n                            <label for=\"wn-schedule-service-2-postal-code\">ZIP Code*<\/label>\n                            <input type=\"text\" id=\"wn-schedule-service-2-postal-code\" data-wn=\"req-postal-code\" placeholder=\"ZIP Code*\" autocomplete=\"postal-code\" inputmode=\"numeric\" maxlength=\"5\" required pattern=\"[0-9]{5}\" title=\"Please enter a 5-digit ZIP code.\">\n                        <\/div>\n                    <\/div>\n                                            <label class=\"service-form-consent\">\n                            <input type=\"checkbox\" name=\"consent\" required>\n                            <span>By submitting this form, you are giving your express written consent without obligation for Window Nation to contact you regarding our services using e-mail, phone, or text, including automated technology for calls and\/or texts to the mobile number(s) provided. For more details, including how to opt out, read our <a href=\"https:\/\/www.windownation.com\/privacy-policy\" target=\"_blank\">privacy policy<\/a>.<\/span>\n                        <\/label>\n                                        <button type=\"submit\" class=\"primary-btn wn-schedule-service\" title=\"Submit\">Submit<\/button>\n                                    <\/form>\n            <\/div>\n            <div class=\"service-form-success\">\n                <h2>Thank you for contacting us!<\/h2>\n                <p><\/p>\n            <\/div>\n        <\/div>\n    <\/section>\n    ","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-24161","nbly_state","type-nbly_state","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.windownation.com\/locations\/wp-json\/wp\/v2\/nbly_state\/24161","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.windownation.com\/locations\/wp-json\/wp\/v2\/nbly_state"}],"about":[{"href":"https:\/\/www.windownation.com\/locations\/wp-json\/wp\/v2\/types\/nbly_state"}],"author":[{"embeddable":true,"href":"https:\/\/www.windownation.com\/locations\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.windownation.com\/locations\/wp-json\/wp\/v2\/comments?post=24161"}],"version-history":[{"count":2,"href":"https:\/\/www.windownation.com\/locations\/wp-json\/wp\/v2\/nbly_state\/24161\/revisions"}],"predecessor-version":[{"id":41135,"href":"https:\/\/www.windownation.com\/locations\/wp-json\/wp\/v2\/nbly_state\/24161\/revisions\/41135"}],"wp:attachment":[{"href":"https:\/\/www.windownation.com\/locations\/wp-json\/wp\/v2\/media?parent=24161"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}