# Google Ads for Home Improvement Contractors

> Google Ads for remodelers and window, door, deck, and basement contractors: booked-estimate tracking, sharp negatives, service-area targeting, and LSA.

- URL: https://www.netembark.com/ppc/home-improvement/
- Published: 2026-10-12
- Updated: 2026-10-13
- Author: Gary Pyatigorsky

---

/* ---- inner-page additions (.ne-page) ---- */ .ne-page{overflow-x:clip} .ne-page section.slight{background:#fff} .ne-page section.sice{background:#EEF5FB} .ne-page section.smid{background:#D6E6F5} .ne-page section.sdark{background:#44566B;color:#fff} .ne-page .sdark h2,.ne-page .sdark h3:not(.card h3):not(.ctitle){color:#fff} .ne-page .sdark .eyebrow{color:#BFDCF4} .ne-page .sdark .lead,.ne-page .sdark\>.wrap\>div\>p,.ne-page .sdark .split p{color:#E6EDF4} .ne-page .sdark .checks li{color:#F2F6FA} .ne-page .sdark .checks li:before{background:#7EB6E3;color:#3C3C3B} .ne-page .sdark .card{border-color:transparent} .ne-page .sdark .card h3{color:#3C3C3B} .ne-page .phero{min-height:560px;padding:96px 0 88px} .ne-page .phero .htext{max-width:820px} .ne-page .phero h1{font-size:clamp(34px,4.6vw,56px)} .ne-page .split.rev\>div:first-child{order:2} .ne-page .split .media img{border-radius:22px;box-shadow:0 24px 50px rgba(60,60,59,.18);aspect-ratio:4/3;object-fit:cover;width:100%} .ne-page .split p+p{margin-top:14px} .ne-page .split .lead+.checks{margin-top:22px} .ne-page .grid5.c2{grid-template-columns:repeat(2,1fr)} .ne-page .grid5.c4{grid-template-columns:repeat(4,1fr)} .ne-page .grid5.c5{grid-template-columns:repeat(5,1fr);gap:18px} .ne-page .grid5.c5 .card{padding:26px 20px} .ne-page .grid5.c5 .card h3{font-size:18px} .ne-page .imgband{background:linear-gradient(180deg,#44566B 0 50%,#fff 50% 100%);padding:0} .ne-page .imgband.flip{background:linear-gradient(180deg,#fff 0 50%,#44566B 50% 100%)} .ne-page .imgband.ice{background:linear-gradient(180deg,#EEF5FB 0 50%,#fff 50% 100%)} .ne-page .imgband figure{position:relative;border-radius:24px;overflow:hidden;box-shadow:0 30px 60px rgba(60,60,59,.22);background:#EEF5FB} .ne-page .imgband img{width:100%;height:clamp(220px,32vw,420px);object-fit:cover} .ne-page .imgband figcaption{position:absolute;left:20px;bottom:20px;right:20px;max-width:560px;background:rgba(60,60,59,.82);color:#fff;font-weight:600;font-size:15px;padding:12px 18px;border-radius:12px} .ne-page .vsec .yt{position:relative;max-width:880px;margin:36px auto 0;aspect-ratio:16/9;border-radius:22px;overflow:hidden;background:#3C3C3B;box-shadow:0 30px 60px rgba(60,60,59,.22);cursor:pointer} .ne-page .vsec .yt img{width:100%;height:100%;object-fit:cover;opacity:.9} .ne-page .vsec .yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0} .ne-page .ytplay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:88px;height:62px;background:none;border:0;cursor:pointer;transition:transform .2s} .ne-page .yt:hover .ytplay{transform:translate(-50%,-50%) scale(1.08)} .ne-page .ytplay svg{width:100%;height:100%} .ne-page .vnote{margin-top:16px;font-size:15px} .ne-page .vnote a{color:#2F7BBD;font-weight:600} .ne-page .journey{list-style:none;position:relative;margin-top:28px;display:grid;gap:14px} .ne-page .journey li{display:grid;grid-template-columns:44px 1fr;column-gap:14px;align-items:center;background:#fff;border:1px solid #D5E5F3;border-radius:14px;padding:12px 16px;animation:jstep 6s infinite;animation-delay:calc(var(--i)*1.2s)} .ne-page .journey li small{grid-column:2;color:#55595E;font-size:14px;line-height:1.4} .ne-page .journey li b{font-family:Montserrat,sans-serif;color:#3C3C3B} .ne-page .adot{grid-row:span 2;width:40px;height:40px;border-radius:50%;background:#EEF5FB;color:#2F7BBD;font:800 16px Montserrat,sans-serif;display:grid;place-items:center;border:2px solid #7EB6E3} @keyframes jstep{0%,100%{box-shadow:none;border-color:#D5E5F3}8%,18%{box-shadow:0 10px 26px rgba(47,123,189,.22);border-color:#2F7BBD}} .ne-page .journey .pulse{display:none} .ne-page .aframe{background:#fff;border-radius:22px;box-shadow:0 24px 50px rgba(60,60,59,.14);padding:18px 22px 22px;position:relative;overflow:hidden} .ne-page .abar{display:flex;gap:6px;margin-bottom:16px} .ne-page .abar span{width:11px;height:11px;border-radius:50%;background:#D5E5F3} .ne-page .abar span:first-child{background:#FBBC04} .ne-page .abars{height:240px;display:flex;align-items:flex-end;gap:4%;padding:0 4px;border-bottom:2px solid #E3EAF3} .ne-page .abars i{flex:1;height:calc(var(--h)*1%);background:linear-gradient(180deg,#7EB6E3,#2F7BBD);border-radius:8px 8px 0 0;transform-origin:bottom;animation:agrow 4.8s ease-in-out infinite;animation-delay:var(--d)} @keyframes agrow{0%{transform:scaleY(.15)}35%,80%{transform:scaleY(1)}100%{transform:scaleY(.15)}} .ne-page .aline{position:absolute;left:22px;right:22px;top:46px;height:220px;pointer-events:none} .ne-page .aline svg{width:100%;height:100%} .ne-page .aline path{fill:none;stroke:#FBBC04;stroke-width:4;stroke-linecap:round;stroke-dasharray:420;stroke-dashoffset:420;animation:adraw 4.8s ease-in-out infinite;vector-effect:non-scaling-stroke} @keyframes adraw{0%{stroke-dashoffset:420}40%,85%{stroke-dashoffset:0}100%{stroke-dashoffset:420}} .ne-page .acap{font-size:12px;color:#55595E;margin-top:10px;text-align:right} .ne-page .kpis.k4{grid-template-columns:repeat(4,1fr)} .ne-page .vlinks{margin-top:28px;display:flex;gap:12px 28px;justify-content:center;flex-wrap:wrap} .ne-page .vlinks a{color:#fff;font-weight:700;border-bottom:2px solid #7EB6E3} .ne-page .quotes.qn2{grid-template-columns:repeat(2,1fr);max-width:900px;margin-left:auto;margin-right:auto} .ne-page .quotes.qn1{grid-template-columns:1fr;max-width:640px;margin-left:auto;margin-right:auto} .ne-page .rv .rating .stars{letter-spacing:1px} .ne-page .faqs.sice{background:#EEF5FB} .ne-page .faqs.sice .faq{background:#fff} .ne-page .partners-sec .badges{margin-top:28px} .ne-page .chips{list-style:none;display:flex;flex-wrap:wrap;gap:10px;margin:22px 0 28px} .ne-page .chips li{border:1px solid #C3D7EA;background:#fff;border-radius:999px;padding:7px 16px;font-weight:600;font-size:14px;color:#3C3C3B} .ne-page .sdark .chips li{background:transparent;border-color:rgba(255,255,255,.4);color:#fff} .ne-page .terms{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;text-align:left} .ne-page .term{background:#fff;border-radius:18px;padding:26px;border:1px solid #C3D7EA} .ne-page .term b{display:block;font:800 28px Montserrat,sans-serif;color:#2F7BBD;margin-bottom:6px} .ne-page .term p{color:#3F4A56;font-size:16px} .ne-page .roadmap{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:44px;text-align:left;counter-reset:r} .ne-page .rphase{background:#fff;border:1px solid #E3EAF3;border-top:5px solid #7EB6E3;border-radius:18px;padding:26px 22px} .ne-page .rphase:nth-child(4){border-top-color:#FBBC04} .ne-page .rphase .when{font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;color:#2F7BBD} .ne-page .rphase h3{font-size:19px;margin:6px 0 10px} .ne-page .rphase ul{padding-left:18px;color:#55595E;font-size:15px} .ne-page .rphase li{margin-bottom:6px} .ne-page .partner-note{margin-top:22px;padding:18px 20px;border-left:4px solid #FBBC04;background:rgba(255,255,255,.7);border-radius:10px;font-size:16px;color:#3C3C3B} .ne-page .cgrid{display:grid;grid-template-columns:1.25fr .9fr;gap:40px;align-items:start} .ne-page .cform{background:#fff;border:1px solid #E3EAF3;border-radius:22px;padding:32px;box-shadow:0 24px 50px rgba(60,60,59,.1)} .ne-page .cform h2{font-size:28px} .ne-page .cform .fgrid2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:18px 0} .ne-page .cform .fld{display:flex;flex-direction:column;gap:6px} .ne-page .cform .full{grid-column:1/-1} .ne-page .cform label{font-weight:600;font-size:14px;color:#3C3C3B} .ne-page .cform input,.ne-page .cform textarea{font:16px Inter,sans-serif;padding:12px 14px;border:1px solid #C9D6E3;border-radius:10px;width:100%;background:#fff} .ne-page .cform input:focus,.ne-page .cform textarea:focus{outline:3px solid #7EB6E3;border-color:#2F7BBD} .ne-page .cform textarea{min-height:120px;resize:vertical} .ne-page .cform .btn-submit{width:100%;font-size:17px;padding:16px} .ne-page .cform .small{font-size:13.5px;color:#55595E;margin-top:10px} .ne-page .cinfo{display:grid;gap:16px} .ne-page .ci{background:#fff;border:1px solid #C3D7EA;border-radius:18px;padding:22px 24px;display:flex;gap:16px;align-items:flex-start} .ne-page .ci .icon{flex:none;width:48px;height:48px;margin:0} .ne-page .ci .icon svg{width:22px;height:22px} .ne-page .ci b{display:block;font-family:Montserrat,sans-serif;color:#3C3C3B} .ne-page .ci a{color:#2F7BBD;font-weight:700;font-size:18px} .ne-page .ci p{color:#55595E;font-size:15px} .ne-page .mnav{display:none} .ne-page .mnav:not(\[hidden\]){display:flex;flex-direction:column;gap:4px;padding:10px 24px 20px;background:#fff;border-top:1px solid #E3EAF3} .ne-page .mnav a{padding:10px 0;font-weight:600;border-bottom:1px solid #EEF2F6} .ne-page .mnav a.btn{border:0;margin-top:10px;text-align:center} .ne-page .burger{cursor:pointer;color:#3C3C3B} @media(min-width:981px){.ne-page .mnav{display:none!important}} @media(max-width:1100px){.ne-page .grid5.c5{grid-template-columns:repeat(3,1fr)}.ne-page .roadmap{grid-template-columns:1fr 1fr}} @media(max-width:980px){.ne-page .grid5.c4,.ne-page .kpis.k4{grid-template-columns:1fr 1fr}.ne-page .split.rev\>div:first-child{order:0}.ne-page .cgrid{grid-template-columns:1fr}.ne-page .terms{grid-template-columns:1fr}.ne-page .quotes.qn2{grid-template-columns:1fr}} @media(max-width:600px){.ne-page .phero{min-height:auto;padding:56px 0 48px}.ne-page .grid5.c2,.ne-page .grid5.c4,.ne-page .grid5.c5,.ne-page .roadmap{grid-template-columns:1fr}.ne-page .cform{padding:22px}.ne-page .cform .fgrid2{grid-template-columns:1fr}.ne-page .abars{height:180px}.ne-page .aline{height:160px}.ne-page .imgband figcaption{position:static;border-radius:0;max-width:none}.ne-page .kpis.k4{grid-template-columns:1fr 1fr}} @media(prefers-reduced-motion:reduce){.ne-page .journey li,.ne-page .abars i,.ne-page .aline path{animation:none}.ne-page .aline path{stroke-dashoffset:0}} .ne-page .cbadges{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:0 0 26px} .ne-page .cbadges img{height:72px;width:auto;border-radius:10px} .ne-page .cbadges img.mlogo{height:30px} .ne-page .sdark .wcard h3{color:#3C3C3B} .ne-page .imgband.graphic img{object-fit:contain;height:auto;max-height:440px;background:#EEF5FB} .ne-page .imgband.graphic figcaption{position:static;max-width:none;border-radius:0;text-align:center;background:#3C3C3B} .ne-page .sdark .card .checks li{color:#3C3C3B} .ne-page .sdark .card .checks li:before{background:#2F7BBD;color:#fff} .ne-page .sdark .card p{color:#55595E} .ne-page .phero .hbg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0} .ne-page a.btn\[href="/contact-us/"\],.ne-page .band a.btn\[href="/contact-us/"\]{background:#FBBC04;color:#3C3C3B;border:0;font-weight:800} .ne-page a.btn\[href="/contact-us/"\]:hover{background:#E0A800;color:#3C3C3B} .ne-page .casetabs{flex-wrap:wrap;justify-content:center;border-radius:22px;max-width:100%} .ne-page .gform_wrapper{margin:18px 0 0} .ne-page .gform_wrapper .gfield{margin-bottom:14px} .ne-page .gform_wrapper .gfield_label,.ne-page .gform_wrapper label{font:600 14px Inter,sans-serif;color:#3C3C3B;margin-bottom:6px;display:block} .ne-page .gform_wrapper input:not(\[type=submit\]):not(\[type=checkbox\]):not(\[type=radio\]),.ne-page .gform_wrapper textarea,.ne-page .gform_wrapper select{font:16px Inter,sans-serif;padding:12px 14px!important;border:1px solid #C9D6E3!important;border-radius:10px!important;width:100%!important;background:#fff;box-shadow:none} .ne-page .gform_wrapper input:focus,.ne-page .gform_wrapper textarea:focus{outline:3px solid #7EB6E3;border-color:#2F7BBD!important} .ne-page .gform_wrapper .gform_footer input\[type=submit\],.ne-page .gform_wrapper .gform_footer button,.ne-page .gform_wrapper .gform_button{width:100%;background:#FBBC04!important;color:#3C3C3B!important;border:0!important;border-radius:999px!important;padding:16px!important;font:800 17px Inter,sans-serif!important;cursor:pointer} .ne-page .gform_wrapper .gform_button:hover{background:#E0A800!important} .ne-page .gform_wrapper .gfield_required{color:#2F7BBD} .ne-page .gform_wrapper .validation_message{color:#B3261E;font-size:14px}

@media(max-width:700px){.ne-page .plist{display:flex !important;flex-direction:column !important;align-items:flex-start !important;justify-content:flex-start !important;width:max-content;max-width:100%;margin-left:auto !important;margin-right:auto !important;gap:18px}.ne-page .plist li{justify-content:flex-start !important;width:100%;margin:0 !important}.ne-page .plist .pmark{width:32px;flex:0 0 32px;display:inline-flex;justify-content:center}} .ne-page header .logo img{height:62px !important}.ne-page header.shrink .logo img{height:46px !important}@media(max-width:700px){.ne-page header .logo img{height:50px !important}.ne-page header.shrink .logo img{height:42px !important}} .ne-page .sdark .step p,.ne-page .sdark .steps p,.ne-page .sdark \> .wrap \> p,.ne-page .sdark .center \> p{color:#E6EEF6 !important}.ne-page .sdark .step h3{color:#fff !important} .ne-page .wcard h3{color:#3C3C3B !important}.ne-page .sdark .partner-note,.ne-page .sdark .partner-note b{color:#E6EEF6 !important} /* medical pages */ .ne-page .wrap.narrow2{max-width:920px;margin-left:auto!important;margin-right:auto!important} .ne-page .msec h2{margin-bottom:18px} .ne-page .mbody p,.ne-page .mtext p{margin:0 0 14px} .ne-page .mbody h3,.ne-page .mtext h3{margin:22px 0 8px} .ne-page .mbody .checks,.ne-page .mtext .checks{margin:6px 0 18px} .ne-page .mcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;margin-top:26px} .ne-page .mcards .card{padding:28px 26px} .ne-page .mcards .card p,.ne-page .mcards .card li{font-size:15.5px;color:#55595E} .ne-page .mcards .card h3{font-size:19px;margin:0 0 10px} .ne-page .tscroll{overflow-x:auto;margin:10px 0 22px;-webkit-overflow-scrolling:touch} .ne-page .tscroll .mtable{min-width:520px} .ne-page .note.legal{background:#FFF8E1;border-left:4px solid #FBBC04;padding:12px 16px;border-radius:8px;color:#3C3C3B;font-size:14.5px} .ne-page .msec a:not(.btn),.ne-page .mtext a:not(.btn){color:#1F5F99;text-decoration:underline} @media(max-width:700px){.ne-page .mcards{grid-template-columns:1fr}.ne-page .mcards .card{padding:22px 18px}} .ne-page .mtable td{color:#3C3C3B}.ne-page .mtable td.good{color:#1F5F99}

.ne-page .burger{min-width:48px;min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0;margin-right:-8px;color:#3C3C3B;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;position:relative;z-index:5}@media(min-width:981px){.ne-page .burger{display:none!important}} /* Brands we've worked with: original client logo grid */ .ne-page .clogos{background:#fff;border-top:1px solid #E6ECF2} .ne-page .clogos .lead{margin-left:auto;margin-right:auto} .ne-page .lgrid{list-style:none;margin:36px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px} .ne-page .lgrid li{margin:0;padding:14px 12px;height:96px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #E6ECF2;border-radius:10px;transition:border-color .25s,box-shadow .25s} .ne-page .lgrid img{display:block;max-width:100%;max-height:64px;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.72;transition:filter .3s,opacity .3s} .ne-page .lgrid li:hover{border-color:#C9D6E3;box-shadow:0 6px 18px rgba(31,95,153,.10)} .ne-page .lgrid li:hover img,.ne-page .lgrid li:focus-within img{filter:none;opacity:1} @media(hover:none){.ne-page .lgrid img{filter:none;opacity:1}} @media(max-width:1100px){.ne-page .lgrid{grid-template-columns:repeat(5,minmax(0,1fr))}} @media(max-width:700px){.ne-page .lgrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:24px}.ne-page .lgrid li{height:72px;padding:8px 6px}.ne-page .lgrid img{max-height:48px}} .ne-page header a.btn\[href="/contact-us/"\]{white-space:nowrap !important}@media(max-width:600px){.ne-page header a.btn\[href="/contact-us/"\]{font-size:13px !important;padding:8px 14px !important;line-height:1.2 !important}}@media(max-width:360px){.ne-page header a.btn\[href="/contact-us/"\]{font-size:12px !important;padding:7px 11px !important}} @media(max-width:700px){.ne-page .lgrid{display:grid !important;grid-auto-flow:column !important;grid-template-rows:repeat(3,auto) !important;grid-template-columns:none !important;grid-auto-columns:31% !important;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;gap:10px !important;padding-bottom:10px;scrollbar-width:thin}.ne-page .lgrid li{scroll-snap-align:start}}

/* ---- sticky header: phone + Book a call always visible (nav.py) ---- */ .ne-page header{position:fixed !important;top:0;left:0;right:0;width:100%;box-sizing:border-box;z-index:999 !important;background:#fff;transition:box-shadow .2s,padding .2s} .ne-page .topbar{display:none !important} /* fixed (not sticky): Betheme sets body{overflow-x:hidden} ul\>li{position:relative}} @media(min-width:981px) and (max-width:1280px){.ne-page header nav.mainnav ul{gap:14px;font-size:14px}.ne-page header .wrap{gap:14px}} @media(min-width:981px) and (max-width:1100px){.ne-page header nav.mainnav ul{gap:11px;font-size:13.5px}.ne-page header a.btn.hide-m{padding:10px 16px !important;font-size:14px !important}} .ne-page .hasdd{display:flex;align-items:center;gap:2px} .ne-page .ddbtn{background:none;border:0;padding:6px 4px;cursor:pointer;color:inherit;display:inline-flex;align-items:center;border-radius:4px} .ne-page .ddbtn .chev,.ne-page .maccbtn .chev{transition:transform .2s} .ne-page .hasdd.open .ddbtn .chev{transform:rotate(180deg)}.ne-page .hasdd.open\>.ddtop{color:#2F7BBD} .ne-page .ddpanel{position:absolute;top:100%;left:50%;transform:translate(-50%,8px);padding-top:16px;opacity:0;visibility:hidden;transition:opacity .18s,transform .18s,visibility 0s .18s;z-index:1000;white-space:normal} .ne-page .hasdd.open .ddpanel{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .18s,transform .18s} .ne-page .ddin{width:760px;min-height:430px;position:relative;background:#fff;border-radius:14px;box-shadow:0 18px 50px rgba(60,60,59,.18),0 2px 8px rgba(60,60,59,.08);border-top:4px solid #7EB6E3;padding:16px 0;text-align:left} .ne-page ul.ddlist{display:block !important;width:260px;list-style:none;margin:0;padding:0 0 0 12px;font-size:14.5px !important;border-right:1px solid #E3EAF3} .ne-page .ddlist\>li{display:block} .ne-page .ddindlink{display:flex !important;justify-content:space-between;align-items:center;padding:9px 14px;margin-right:12px;border-radius:8px;color:#3C3C3B !important;font-weight:600} .ne-page .ddarr{font-size:18px;color:#7EB6E3} .ne-page .ddind.act\>.ddindlink,.ne-page .ddindlink:hover,.ne-page .ddindlink:focus-visible{background:#EEF5FB;color:#2F7BBD !important} .ne-page .ddind.act .ddarr{color:#2F7BBD} .ne-page .ddsub{display:none;position:absolute;left:272px;right:0;top:16px;padding:6px 26px 10px} .ne-page .ddind.act\>.ddsub{display:block} .ne-page .ddsubhead{display:block;font-family:Montserrat,sans-serif;font-weight:800;font-size:16px;color:#2F7BBD !important;padding:4px 10px 10px;border-bottom:1px solid #E3EAF3;margin-bottom:8px} .ne-page .ddsub ul{display:grid !important;grid-template-columns:1fr 1fr;gap:2px 14px !important;list-style:none;margin:0;padding:0} .ne-page .ddsub ul a{display:block;padding:9px 10px;border-radius:8px;color:#3C3C3B;font-weight:500;font-size:14px} .ne-page .ddsub ul a:hover,.ne-page .ddsub ul a:focus-visible{background:#EEF5FB;color:#2F7BBD} .ne-page .ddallrow{margin-top:8px;padding:8px 14px 0;border-top:1px solid #E3EAF3;margin-right:12px} .ne-page .ddall{font-weight:700;font-size:14px;color:#2F7BBD !important} .ne-page .macc{border-bottom:1px solid #EEF2F6} .ne-page .maccbtn{width:100%;min-height:48px;display:flex;justify-content:space-between;align-items:center;background:none;border:0;padding:10px 0;font:inherit;font-weight:600;color:#3C3C3B;cursor:pointer;text-align:left} .ne-page .maccbtn\[aria-expanded="true"\]{color:#2F7BBD}.ne-page .maccbtn\[aria-expanded="true"\] .chev{transform:rotate(180deg)} .ne-page .macclist{display:flex;flex-direction:column;padding:0 0 8px 14px;border-left:3px solid #7EB6E3;margin:0 0 10px 2px} .ne-page .macclist\[hidden\]{display:none} .ne-page .mnav .macclist a{min-height:48px;display:flex;align-items:center;font-weight:500;font-size:15px;border-bottom:1px solid #F2F5F8} .ne-page .mnav a.btn{min-height:48px;display:flex !important;align-items:center;justify-content:center} .ne-page .mnav .macclist a.mall{font-weight:700;color:#2F7BBD;border-bottom:0} .ne-page .macc2{border-bottom:1px solid #F2F5F8} .ne-page .maccbtn2{font-size:15px;font-weight:600;padding:10px 4px 10px 0} .ne-page .macclist2{border-left-color:#2F7BBD;margin:0 0 6px 0;padding-left:12px} .ne-page .mnav .macclist2 a.mall{border-bottom:1px solid #F2F5F8} .ne-page .mnav .macclist2 a{font-size:14.5px}

[![Netembark](https://www.netembark.com/wp-content/uploads/2026/10/netembark-logo.png)](https://www.netembark.com/)

[(800) 707-2697](tel:+18007072697)
 [Book a call](https://www.netembark.com/contact-us/)

![](https://www.netembark.com/wp-content/uploads/2026/10/home-digital-marketing-analytics-1.webp)

Home improvement · Google Premier Partner

# Google Ads for Home Improvement Contractors

A full remodel and a quick drywall-patch question can start with the same search words. Netembark builds Google Ads campaigns for home improvement contractors that tell those two people apart, keep spending inside the area your crews actually cover, and report on booked estimates and signed jobs, not just form fills.

[Book a call](https://www.netembark.com/contact-us/)See case studies

Google Premier Partner 2023Month-to-monthSame-day reply

4.9Google rating

As featured in![Forbes](https://www.netembark.com/wp-content/uploads/2026/10/forbes-logo.svg)

[![Expertise.com Best Advertising Agencies in Newark](https://www.netembark.com/wp-content/uploads/2026/10/BestAgenciesNewark.jpg)](https://www.expertise.com/nj/newark/advertising-agencies)
 [![Google Premier Partner 2023](https://www.netembark.com/wp-content/uploads/2026/10/premier-badge-2023.svg)](https://www.google.com/partners/agency?id=5349039247)

![Facebook Certified Digital Marketing Associate](https://www.netembark.com/wp-content/uploads/2026/10/facebook-badge.png)

![Facebook Certified Creative Strategy Professional](https://www.netembark.com/wp-content/uploads/2026/10/facebook-certified-creative-strategy-professional.png)

Home improvement contractors

## How do home improvement contractors get better leads from Google Ads?

**Optimize for booked estimates and signed jobs instead of raw leads. Google’s bidding chases whatever you tell it is a conversion, so if every form fill counts the same, it will find you more cheap, unqualified form fills.**

High-ticket home improvement has three problems most other local businesses don’t:

- **Long, uneven sales cycles.** A deck or kitchen can take weeks from first click to signed contract. Bidding needs that later signal.
- **Big gaps in lead value.** A full-frame window replacement for a whole house and a single foggy-glass repair are both “window leads.”
- **Lots of look-alike intent.** DIY research, product shopping at big-box stores, job seekers, and renters all use contractor vocabulary.

The fix is structural: tight keyword themes per service, landing pages per service, qualifying questions on the form (project type, rough size, timeline, own or rent), and conversion data that separates a booked estimate from a tire-kicker.

[Book a call](https://www.netembark.com/contact-us/)

![Netembark strategists planning a home improvement Google Ads campaign](https://www.netembark.com/wp-content/uploads/2026/10/ppc-campaign-strategy-1.webp)

Home improvement contractors

## Which home improvement trades do we build campaigns for?

**We have detailed playbooks for six trades. Each one has different search behavior, different negatives, and a different Local Services Ads situation.**

| Trade | What makes it different | Playbook |
| --- | --- | --- |
| Kitchen remodeling | Long consideration, design consultations, cabinet and countertop shoppers to filter out | [Google Ads for kitchen remodelers](https://www.netembark.com/ppc/home-improvement/kitchen-remodeling/) |
| Bathroom renovation | One-day bath franchises, tub-to-shower and accessibility projects, restroom-rental confusion | [Google Ads for bathroom remodelers](https://www.netembark.com/ppc/home-improvement/bathroom-renovation/) |
| Basement finishing | Finishing vs. waterproofing vs. flood cleanup, square-footage cost searches, renters searching “basement apartment” | [Google Ads for basement finishing companies](https://www.netembark.com/ppc/home-improvement/basement-finishing/) |
| Doors | Entry, patio, storm, and interior doors vs. garage doors (Advanced Verification) and locks (locksmith rules) | [Google Ads for door companies](https://www.netembark.com/ppc/home-improvement/door-companies/) |
| Windows | In-home sales appointments, “Microsoft Windows” and window-cleaning noise, expired federal tax-credit messaging | [Google Ads for window companies](https://www.netembark.com/ppc/home-improvement/window-companies/) |
| Decks | Strong build season, composite brand searches, and the word “deck” meaning cards, boats, and game consoles | [Google Ads for deck builders](https://www.netembark.com/ppc/home-improvement/deck-builders/) |

## Numbers Don’t Lie!

**$40M+**Google Ads spend managed

**18**years in business

**1,000+**happy customers

**1M+**conversions

**4.9★**Google rating

**Up to 6x**ROAS*

- Since 2009
- Fortune 5000 Company
- Top 1% of digital marketing agencies

[Book a call](https://www.netembark.com/contact-us/)

* Best result in an e-commerce Google Ads account; results vary by account. See case studies

Home improvement contractors

## How should contractors handle cost and financing searches?

**Treat cost searches as early-stage research worth a modest bid and a helpful landing page, and treat financing as a policy-sensitive message: accurate, disclosed, and written so it doesn’t pull your ads into Google’s consumer-finance targeting limits by accident.**

### Project-size and cost searches

Searches like “cost to finish a 1,000 sq ft basement,” “kitchen remodel cost,” or “how much is a 16×20 composite deck” tell you two useful things: the person is planning a real project, and they’ve told you its rough size. They’re usually earlier in the process than “kitchen remodeler near me.” We put them in their own ad groups, send them to a page with honest price-range guidance in the contractor’s own numbers, and judge them on booked estimates over a longer window, not same-week calls.

### Financing searches and financing ad copy

“Kitchen remodel financing” and “windows with no money down” are high-intent for many homeowners. Three cautions apply:

- **Google’s targeting rules.** Ads that promote credit fall under Google’s [Consumer finance](https://support.google.com/adspolicy/answer/16700846) rules in the US and Canada: no targeting by gender, age, parental status, marital status, or ZIP code. Google [enforces this by reviewing the ad creative](https://support.google.com/google-ads/answer/9997419) and notes that advertisers whose business isn’t credit can still get labeled. A contractor whose headline is all about the loan can be swept in. If that happens and your campaign uses ZIP targeting, switch to radius or city targeting, or rewrite the creative so it sells the project.
- **Federal credit-advertising rules.** Under [Regulation Z §1026.24](https://www.consumerfinance.gov/rules-policy/regulations/1026/24/), certain “triggering terms” (a down payment amount, the number of payments or repayment period, a payment amount, or a finance charge) require additional disclosures, including the APR. “Financing available” is generally safer ad copy than “$99/month.” Confirm specifics with counsel and the lender.
- **Offer accuracy.** Google’s [Misrepresentation policy](https://support.google.com/adspolicy/answer/6020955) covers offers that aren’t actually available. Keep promotional terms on the landing page current and end dates enforced.

Home improvement contractors

## What negative keywords should a contractor start with?

**Start with DIY and how-to terms, job-seeker terms, big-box retailer names, retail product terms, and rental terms, then refine weekly from the search terms report. Some “obvious” negatives, like “cheap,” are judgment calls.**

| Theme | Starter negatives (adjust per trade) | Notes |
| --- | --- | --- |
| DIY / how-to | diy, how to, yourself, tutorial, youtube, video, plans, kit | Keep “cost” and “ideas” out of this list; those can be real buyers |
| Jobs | jobs, hiring, careers, salary, apprentice, license class, school | Job seekers use your exact trade words |
| Big-box retail | home depot, lowes, lowe’s, menards, ikea | Big-box stores sell products *and* installation; block them unless you’re a dealer-installer for that store |
| Retail products | for sale, parts, hardware, replacement handle, wholesale | Varies a lot by trade; see each playbook |
| Rental | for rent, apartment, equipment rental, tool rental | Use phrase negatives, not a bare “rental,” so you don’t block landlords renovating rental properties |
| Price | cheap, free | “Free estimate” searches can be good; “free” in other contexts usually isn’t. Test “cheap” before blocking if the client does budget work |

Negative keywords work differently from regular keywords. You need to add plurals and synonyms yourself ([Google’s guide](https://support.google.com/google-ads/answer/2453972)). We pair them with exact and phrase match on the positive side ([keyword matching options](https://support.google.com/google-ads/answer/7478529)) and only open up broad match once offline conversions are training the bidding.

Home improvement contractors

## How far should a contractor’s service-area radius go?

**Draw the area your crews will actually drive to for a job of that size, target people located there, and exclude everything else. Bigger jobs justify a bigger radius; small repairs don’t.**

- Use location targeting by radius, city, or county ([geographic targeting](https://support.google.com/google-ads/answer/2453995)) and set location options to **Presence** (“people in or regularly in your targeted locations”) rather than “Presence or interest” ([advanced location options](https://support.google.com/google-ads/answer/1722038)). Otherwise someone three states away reading about your town can trigger your ad.
- Match radius to job size: a full kitchen or whole-house window project may justify a wider area than a single door install.
- Exclude areas your crews avoid (across a bridge, a city with permit headaches) and adjust bids for the areas that close best.
- If your ads get labeled under Google’s consumer-finance rules (above), ZIP code targeting isn’t allowed in the US and Canada; radius and city targeting still are ([restricted targeting](https://support.google.com/adspolicy/answer/143465)).

[Book a call](https://www.netembark.com/contact-us/)

![Google Ads reporting dashboard showing booked estimates](https://www.netembark.com/wp-content/uploads/2026/10/ppc-roi-reporting-1.webp)

Home improvement contractors

## How do you track calls and booked estimates back to Google Ads?

**Track calls and forms as leads, then send the outcomes (estimate booked, estimate completed, job sold, with value) back to Google Ads through offline conversion import or enhanced conversions for leads, so bidding optimizes for revenue instead of volume.**

- **Calls.** Use Google’s [call conversion tracking](https://support.google.com/google-ads/answer/6100664) for calls from ads and from your website, with a minimum call length that filters out wrong numbers. A call tracking platform with dynamic number insertion adds recordings and source detail; its qualified calls can be imported too.
- **Forms.** Capture the click ID (GCLID) in a hidden field and store it with the lead in your CRM.
- **Outcomes.** As each lead moves through *estimate booked → estimate completed → sold*, upload those stages as separate conversion actions with values ([offline conversion imports](https://support.google.com/google-ads/answer/2998031)). [Enhanced conversions for leads](https://support.google.com/google-ads/answer/15713840) matches hashed email or phone instead of the click ID and is often easier to keep running.
- **Windows.** Set conversion windows long enough for your sales cycle. Google allows [up to 90 days](https://support.google.com/google-ads/answer/3123169) depending on the source.
- **Plumbing.** Google says that starting June 15, 2026, offline conversion and enhanced-conversions-for-leads uploads move to the Data Manager API. Any custom integration built on the old Google Ads API upload path needs to be checked.

Once “sold job with value” is flowing, bidding can target the work you want (for example, full remodels over small repairs) instead of whatever converts cheapest.

Netembark imports booked estimates and won jobs into Google Ads as offline conversions ([offline conversion imports](https://support.google.com/google-ads/answer/2998031)), so the account is judged on real outcomes.

Home improvement contractors

## Should contractors run Local Services Ads, Search ads, or both?

**Usually both, if your trade is eligible. Local Services Ads charge for leads and show the Google Verified badge; Search ads give you control over keywords, ad copy, landing pages, and which services you push.**

Google’s [Local Services Ads category list for the US](https://support.google.com/localservices/answer/6224841?co=GENIE.CountryCode%3DUS) currently includes kitchen remodeling, bathroom remodeling, general contractor, carpenters, handyman, window repair services, garage door services, and locksmiths, among others. Google says advertisers “pay only for leads related to your business,” and businesses go through category-specific screening such as business and owner checks, insurance, and state licenses where applicable ([screening requirements](https://support.google.com/localservices/answer/12174778?co=GENIE.CountryCode%3DUS)). Availability varies by market. Use Google’s eligibility check for the actual service area.

**Netembark manages Local Services Ads** alongside Search: onboarding and screening paperwork, business profile, job types and service areas, budget, reviewing leads and sending lead feedback, review requests, and pausing when the schedule is full. LSA and Search leads are reported side by side, and we check for the same homeowner showing up in both.

Where they overlap, we keep Search focused on the high-value services and the searches LSA doesn’t cover well (specific products, project sizes, financing), and we watch for the two channels competing for the same lead.

[Book a call](https://www.netembark.com/contact-us/)

![Contractor campaign analytics on a laptop](https://www.netembark.com/wp-content/uploads/2026/10/ppc-analytics-laptop-1.webp)

## Want booked estimates, not just clicks?

Request a free Google Ads audit from a Google Premier Partner team. Call (800) 707-2697 or book a call; we reply the same business day.

[Book a call](https://www.netembark.com/contact-us/)[(800) 707-2697](tel:+18007072697)

Home improvement contractors

## Do garage door companies and locksmiths need extra Google verification?

**Yes. In the US, garage door services must complete Google’s Advanced Verification before their ads can run, and so must locksmiths in the US and Canada. That applies to both Google Ads and Local Services Ads.**

Google’s [Advanced Verification policies](https://support.google.com/adspolicy/answer/7167922) list garage door services (United States) and locksmith services (United States, Canada). The process combines a review of the Google Ads account, public records like business registrations and licenses, and a video interview. Until it’s complete, ads [won’t show on searches related to those services](https://support.google.com/google-ads/answer/7167635). Google also says [pre-badge Local Services Ads](https://support.google.com/localservices/answer/6224841?co=GENIE.CountryCode%3DUS) aren’t available for garage door services or locksmiths. A door company that also does garage doors or lock work should plan for this before launch. See the [door companies playbook](https://www.netembark.com/ppc/home-improvement/door-companies/).

Home improvement contractors

## How should seasonality change a contractor’s budget?

**Plan budgets around each trade’s season using the client’s own lead history, and use Google’s seasonality adjustments only for short events, not whole seasons.**

Deck building, exterior doors, and windows tend to follow the weather in many markets, and interior projects like basements can be steadier. But the only numbers worth planning on are the client’s own leads and search terms from prior years. Google’s [seasonality adjustments](https://support.google.com/google-ads/answer/10369906) are designed for short events of 1–7 days and may not work as well beyond 14 days. For a full season, change budgets and targets instead. Keep crew capacity in the loop: there’s no point buying leads in a month when the schedule is already full.

Home improvement contractors

## Is Performance Max a good fit for contractors?

**Sometimes, but not first. Performance Max can find cheap, low-quality form fills on Display and YouTube inventory, so run it only after offline conversion data is feeding Google Ads, with negatives and exclusions in place.**

- **Negatives only cover part of it.** Performance Max now supports campaign-level negative keywords, but they apply to [Search and Shopping inventory only](https://support.google.com/google-ads/answer/15726455). They don’t filter Display, YouTube, or other placements.
- **Optimize to qualified outcomes.** Point it at “estimate booked” or “sold job” conversions, not every form fill.
- **Control the landing pages.** Review URL settings so it doesn’t send traffic to careers pages or blog posts.
- **Watch for spam.** Add form validation and qualifying questions, and judge PMax on downstream results.

Home improvement contractors

## Can contractors use remarketing and Customer Match?

**Generally yes. Home improvement isn’t one of Google’s sensitive interest categories, so remarketing and Customer Match are normally available. Two exceptions matter: financing-led ads and accessibility projects framed around health.**

- Ads labeled under [Consumer finance](https://support.google.com/adspolicy/answer/16700846) lose demographic and ZIP targeting in the US and Canada.
- Google’s [Health category](https://support.google.com/adspolicy/answer/16701855) includes disabilities and chronic conditions. An ad for a walk-in tub framed around a medical condition can lose access to advertiser-curated audiences like remarketing lists and Customer Match.
- Home improvement ads aren’t “Housing” ads by default. Google’s housing restrictions cover [homes for sale or rent and services enabling them](https://support.google.com/adspolicy/answer/16701755), and its FAQ lists home design services as an example that [may not be restricted](https://support.google.com/adspolicy/answer/9997418).
- Customer Match has its own [policy requirements](https://support.google.com/adspolicy/answer/6299717), including how the customer data was collected.

Uploading past customers as an exclusion list is a quick win: it stops paying for clicks from people who already hired you.

Home improvement contractors

## How does Netembark run home improvement campaigns?

- **Audit and tracking first.** Calls, forms, click-ID capture, and booked estimates and won jobs imported into Google Ads as offline conversions.
- **Service-by-service structure.** Separate campaigns or ad groups for the jobs you want most, with matching landing pages ([web design](https://www.netembark.com/webdesign/)).
- **Negatives and geography** set before launch, then reviewed weekly.
- **Local Services Ads management** alongside Search where the trade is eligible, with Advanced Verification planned for garage door and locksmith work.
- **Bidding on booked and sold jobs** once enough outcome data exists, with Performance Max tested only after that.
- **Reporting** on cost per booked estimate and revenue by service, not just cost per lead.

Netembark is a Google Premier Partner (2023) headquartered in Freehold, NJ, with additional offices serving clients in New York and Florida. [See our credentials](https://www.netembark.com/about-us/).

Want leads that turn into estimates? **[Request a Google Ads audit →](https://www.netembark.com/contact-us/)** or call [(800) 707-2697](tel:+18007072697).

*This page is general information about advertising platform policies. It isn’t legal advice. Financing ads, contractor licensing, and home-improvement advertising rules vary by state, so confirm specifics with qualified counsel.*

Results · case studies

## Real campaigns, real numbers

Four Netembark Google Ads accounts: e-commerce and lead generation. Pick a case study.

### Rug Engine, e-commerce Google Ads

Steady, profitable online sales from Google Ads on a modest monthly budget.

**5.1x**ROAS, last 90 days*revenue ÷ ad spend*

**94**orders in 90 days*tracked in Google Ads*

**4.4x**ROAS over 12 months*Oct 2025–Sep 2026*

**5.9x**peak month*May 2026*

**Monthly ad spend vs revenue**Ad spend Revenue

Google Ads data. 90-day figures: Jul 14–Oct 11, 2026. Monthly chart: Oct 2025–Sep 2026. Results vary by account.

### Hudson Pro Ortho, Google Ads lead generation

One month vs. the prior month: more patient leads at a lower cost per lead, on less total spend.

**161**conversions (leads)*+14.2% vs prior month*

**$71.29**cost per conversion*down from $87.78*

**13.08%**conversion rate*+22.8% vs prior month*

| Metric | Current month | vs prior |
| --- | --- | --- |
| Impressions | 33,651 | -11.69% |
| Clicks | 1,231 | -7.02% |
| CTR | 3.66% | +5.28% |
| Cost | $11,477.12 | -7.27% |
| Avg. CPC | $9.32 | – |
| Conv. rate | 13.08% | +22.81% |
| Conversions | 161 | +14.18% |
| Cost / conv. | $71.29 | -18.79% |

Prior-month values are calculated from the reported % change.

### Avant Dermatology & Aesthetics, Google Ads lead generation

Patient leads for a dermatology and aesthetics practice at a low cost per conversion.

**182**conversions*September 2026*

**15.52%**conversion rate*all campaigns*

**$14.12**cost per conversion*all campaigns*

| Metric (Sep 1–30, 2026) | Value |
| --- | --- |
| Impressions | 21,012 |
| Clicks | 1,172 |
| Avg. CPC | $2.19 |
| Cost | $2,571.64 |
| Conversions | 182 |
| Phone conversions | 114 |
| Conv. rate | 15.52% |
| Cost / conv. | $14.12 |

Source: Netembark monthly Google Ads report, Key Insights (All Campaigns), September 2026.

### Noor Dermatology, Google Ads lead generation

Steady patient inquiries for a dermatology practice from Google Search.

**142**conversions*September 2026*

**7.23%**conversion rate*all campaigns*

**$22.74**cost per conversion*all campaigns*

| Metric (Sep 1–30, 2026) | Value |
| --- | --- |
| Impressions | 31,066 |
| Clicks | 1,964 |
| Avg. CPC | $1.64 |
| Cost | $3,229.16 |
| Conversions | 142 |
| Phone conversions | 86 |
| Conv. rate | 7.23% |
| Cost / conv. | $22.74 |

Source: Netembark monthly Google Ads report, Key Insights (All Campaigns), September 2026.

[Google Ads for home improvement contractors →](https://www.netembark.com/ppc/home-improvement/) [PPC management →](https://www.netembark.com/ppc/)

Home improvement

## Google Ads playbooks by trade

[Home improvement contractorsGoogle Ads hub](https://www.netembark.com/ppc/home-improvement/)[Kitchen remodelersGoogle Ads playbook](https://www.netembark.com/ppc/home-improvement/kitchen-remodeling/)[Bathroom remodelersGoogle Ads playbook](https://www.netembark.com/ppc/home-improvement/bathroom-renovation/)[Basement finishingGoogle Ads playbook](https://www.netembark.com/ppc/home-improvement/basement-finishing/)[Window companiesGoogle Ads playbook](https://www.netembark.com/ppc/home-improvement/window-companies/)[Door companiesGoogle Ads playbook](https://www.netembark.com/ppc/home-improvement/door-companies/)[Deck buildersGoogle Ads playbook](https://www.netembark.com/ppc/home-improvement/deck-builders/)[Home improvement marketingSEO, social & more](https://www.netembark.com/industries/home-improvement/)

Certifications & partnerships

## Work with a certified team

[![Google Premier Partner 2023](https://www.netembark.com/wp-content/uploads/2026/10/premier-badge-2023.svg)**Google Premier Partner**2023 · view verified profile](https://www.google.com/partners/agency?id=5349039247)

![Meta](https://www.netembark.com/wp-content/uploads/2026/10/meta-logo.svg)**Meta Business Partner**All 6 Meta certifications

![Microsoft Advertising](https://www.netembark.com/wp-content/uploads/2026/10/microsoft-advertising-logo.png)**Microsoft Advertising Partner**Bing search ads

- Featured in Forbes
- Expertise.com Best Advertising Agencies in Newark
- Fortune 5000 Company
- Top 1% of digital marketing agencies
- Since 2009

FAQ

## Frequently asked questions

What's the best Google Ads campaign type for home improvement contractors?

For most contractors, Search campaigns built on exact and phrase match keywords for specific services and locations are the core. Add Local Services Ads where the trade is eligible in your market. Test Performance Max only after booked-estimate and sold-job data is being imported into Google Ads.

How do contractors stop getting junk leads from Google Ads?

Block DIY, job-seeker, big-box retail, product, and rental searches with negative keywords. Target people located in your service area. Add qualifying questions to forms. Then import booked estimates and sold jobs as conversions so bidding learns which clicks turn into real work.

Do garage door companies need special verification to advertise on Google?

Yes. In the United States, garage door services must pass Google's Advanced Verification before ads can show on related searches, in both Google Ads and Local Services Ads. Locksmiths in the US and Canada need it too. The process includes a review of public business records and a video interview.

Can contractors mention financing in Google Ads?

Yes, if the offer is real and accurately described. Ads that focus on credit can be labeled under Google's consumer finance rules, which block targeting by age, gender, parental status, marital status, and ZIP code in the US and Canada. Specific payment terms can also trigger federal credit-advertising disclosure rules, so check with counsel.

Should contractors run Local Services Ads and Search ads at the same time?

Usually, if the trade is eligible. Local Services Ads charge for leads and show the Google Verified badge. Search ads add control over keywords, ad copy, landing pages, and which services get budget. Eligibility and job types vary by category and market, so check Google's eligibility tool first. Netembark manages Local Services Ads alongside Search campaigns.

How do you track which Google Ads clicks turn into booked estimates?

Capture the Google click ID or the lead's email and phone with each call or form, record outcomes in your CRM, and upload estimate-booked, estimate-completed, and sold-job events back to Google Ads through offline conversion import or enhanced conversions for leads. Set conversion windows to match the sales cycle.

Can home improvement companies use remarketing?

Generally yes, because home improvement isn't a Google sensitive interest category. The exceptions are ads focused on financing, which can fall under consumer finance targeting limits, and ads framed around disabilities or health conditions, which fall in Google's Health category and can't use remarketing lists or Customer Match.

## Ready for more booked estimates?

Book a call with our home improvement Google Ads team at (800) 707-2697. Paid ads are month to month, and we reply the same business day.

[Book a call](https://www.netembark.com/contact-us/)[(800) 707-2697](tel:+18007072697)

(function(){var R=document.querySelector('.ne-page');if(!R)return; R.querySelectorAll('.hasdd').forEach(function(li){var b=li.querySelector('.ddbtn'),t=null; function set(o){clearTimeout(t);li.classList.toggle('open',o);b.setAttribute('aria-expanded',o)} li.addEventListener('mouseenter',function(){if(matchMedia('(min-width:981px)').matches)set(true)}); li.addEventListener('mouseleave',function(){clearTimeout(t);t=setTimeout(function(){set(false)},250)}); b.addEventListener('click',function(e){e.preventDefault();set(!li.classList.contains('open'))}); li.addEventListener('focusin',function(){set(true)}); li.addEventListener('focusout',function(e){if(!li.contains(e.relatedTarget))set(false)}); li.addEventListener('keydown',function(e){if(e.key==='Escape'&&li.classList.contains('open')){set(false);li.querySelector('.ddtop').focus();e.stopPropagation()}});}); var H=R.querySelector('header');if(H){var ab=document.body.classList.contains('admin-bar'); var hh=function(){if(!H.classList.contains('shrink'))R.style.setProperty('--ne-hh',H.offsetHeight+'px')}; var f=function(){H.classList.toggle('shrink',scrollY\>40); var A=document.getElementById('wpadminbar');if(ab&&A){H.style.top=Math.max(0,Math.round(A.getBoundingClientRect().bottom))+'px'}else H.style.top=''}; addEventListener('scroll',f,{passive:true});addEventListener('resize',function(){f();hh()});hh();f();addEventListener('load',function(){hh();f()})} R.querySelectorAll('.ddind').forEach(function(r){function act(){r.parentNode.querySelectorAll('.ddind').forEach(function(x){x.classList.toggle('act',x===r)})} r.addEventListener('mouseenter',act);r.addEventListener('focusin',act)}); R.querySelectorAll('.maccbtn').forEach(function(b){var l=document.getElementById(b.getAttribute('aria-controls')); b.addEventListener('click',function(){var o=b.getAttribute('aria-expanded')!=='true';b.setAttribute('aria-expanded',o);l.hidden=!o})}); })();

---

Site index for agents: https://www.netembark.com/llms.txt
