1<!doctype html> 2<html lang="en" class="scroll-pt-28"> 3<head> 4<title>Water softener service & repairs near northern Wisconsin and central Minnesota</title> 5 6<meta charset="utf-8" /> 7<meta name="viewport" content="width=device-width, initial-scale=1.0" /> 8<meta name="application-name" content="Sterling Culligan Water" /> 9<meta name="description" content="Professional water softener service & repairs from installation to routine maintenance. Emergency service available. Schedule your appointment with Culligan in northern Wisconsin and central Minnesota." /> 10<meta name="robots" content="index, follow" /> 11<meta name="gtm-measurement-id" content="G-56Z5CKZLBL" /> 12 13 <meta name="facebook-domain-verification" content="qqszgyuokn80tgfsmhp5bdv90b3anc" /> 14 15<meta name="csrf-token" content="YKph1hhLDA8bZ27pF8jGMtEVuWVEXuSylIYJ3feK" /> 16<meta name="theme-color" content="#2968FE" /> 17<link rel="manifest" href="https://www.culliganh2o.com/manifest.json" /> 18 19 <link rel="canonical" href="https://www.culliganh2o.com/services/service-repairs" /> 20 21
22<script type="application/ld+json"> 23 { 24 "@context" : "https://schema.org", 25 "@type" : "WebSite", 26 "name" : "Sterling Culligan Water", 27 "url" : "https://www.culliganh2o.com/" 28 } 29</script>
29 30 31<!--fontawesome-->
32<script src="https://kit.fontawesome.com/5616631232.js" crossorigin="anonymous"></script>
32 33 34<!--compiled css--> 35<link rel="stylesheet" href="/css/app.css?id=ba49616160e71efacddafd92a95f9b28"> 36 37<!--extra css--> 38<link rel="icon" href="/images/favicons/favicon.ico" type="image/x-icon" /> 39 <link rel="apple-touch-icon" sizes="180x180" href="/images/favicons/apple-touch-icon.png"> 40 <link rel="icon" type="image/png" sizes="32x32" href="/images/favicons/favicon-32x32.png"> 41 <link rel="icon" type="image/png" sizes="16x16" href="/images/favicons/favicon-16x16.png"> 42 <link rel="manifest" href="/images/favicons/site.webmanifest"> 43 <link rel="mask-icon" href="/images/favicons/safari-pinned-tab.svg" color="#2968fe"> 44 <meta name="msapplication-TileColor" content="#da532c"> 45 46<!--google analytics-->
47<script>
vendor: 356 bytes, lines 47-52
47 48 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ 49 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), 50 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) 51 })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); 52 ga('create', '
52UA-20895835-1
vendor: 40 bytes, lines 52-53
52', 'auto'); 53 ga('send', 'pageview');
54</script>
vendor: 69 bytes, lines 54-56
54 55 56 <script async src="https://www.googletagmanager.com/gtag/js?id=
56G-56Z5CKZLBL
vendor: 16 bytes, lines 56-57
56"></script> 57
57<script> 58
vendor: 173 bytes, lines 58-63
58window.dataLayer = window.dataLayer || []; 59 function gtag(){ 60 dataLayer.push(arguments); 61 } 62 gtag('js', new Date()); 63 gtag('config', '
63G-56Z5CKZLBL
vendor: 8 bytes, lines 63-64
63'); 64
64</script>
64 65 66 67 68 69<!--google tag manager-->
70<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': 71 new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], 72 j=d.createElement(s),dl=l!=='dataLayer'?'&l='+l:'';j.async=true;j.src= 73 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); 74 })(window,document,'script','dataLayer','GTM-5Q5JHRW'); 75</script>
75 76 77 78<!--facebook pixel-->
79<script>
vendor: 436 bytes, lines 79-86
79 80 !function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod? 81 n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n; 82 n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0; 83 t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, 84 document,'script','https://connect.facebook.net/en_US/fbevents.js'); 85 86 fbq('init', '
861117998811575937
vendor: 34 bytes, lines 86-87
86'); 87 fbq('track', 'PageView');
88</script>
88 89 90 91<!--yelp pixel--> 92 93<!--ad-roll--> 94 95<!--stack-adapt pixel-->
96<script>!function(s,a,e,v,n,t,z){if(s.saq)return;n=s.saq=function(){n.callMethod?n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!s._saq)s._saq=n;n.push=n;n.loaded=!0;n.version='1.0';n.queue=[];t=a.createElement(e);t.async=!0;t.src=v;z=a.getElementsByTagName(e)[0];z.parentNode.insertBefore(t,z)}(window,document,'script','https://tags.srv.stackadapt.com/events.js');saq('ts', '5Oxt6sWjnGzPiIiD3QzgCQ');</script>
96 97<!--pinterest pixel--> 98 99<!--nextdoor pixel--> 100 101<!--calltrackingmetrics-->
102<script async src="//423343.tctm.xyz/t.js"></script>
102 103 104</head> 105<body style="min-width: 320px; "> 106 107 108 <div class="flex flex-col min-h-screen"> 109 110 <div 111 data-component="default.announcement" 112 class="odd:bg-mint even:bg-blue-500 odd:text-blue-800 even:text-white" 113 x-data="{ show: $persist(true).as('announcement-799').using(sessionStorage) }" 114 x-show="show" 115 x-collapse.duration.600 116 x-cloak 117 > 118 <div class="xl:container flex items-center px-2 md:px-4 py-2"> 119 120 121 <div class="grow text-center px-2 announcementBanner"><a href="/content/documents/pdf/2025-sterling-water-statements-and-invoices-update.pdf" target="_blank" class="text-blue-800">NEW: Important Changes to Deliveries, Statements and Invoices</a></div> 122 123 124 </div> 125 </div> 126 127 <div 128 data-component="default.announcement-offers" 129 class="odd:bg-mint even:bg-blue-500 odd:text-blue-800 even:text-white" 130 x-data="{ 131 selected: 0, 132 offers: JSON.parse('[\u0022Contact Culligan today to learn more about the hardness and TDS of your water.\u0022,\u0022Get started with Culligan water for as low as $39\\\/month!\u0022,\u0022We\\u0027ll inspect and check any brand water softener for only $79.95, including two bags of salt and water softener sanitization!\u0022]'), 133 announcementIntervalId: null 134 }" 135 x-init="announcementIntervalId = setInterval(() => {selected = (selected + 1) % offers.length}, 6000)" 136 x-on:mouseover="clearInterval(announcementIntervalId)" 137 x-on:mouseout="announcementIntervalId = setInterval(() => {selected = (selected + 1) % offers.length}, 6000)" 138 x-cloak 139 > 140 <div class="xl:container flex items-center px-2 md:px-4 py-2"> 141 142 <button 143 type="button" 144 class="px-2 w-8 cursor-pointer" 145 title="Previous Offer" 146 x-on:click="selected = (selected - 1 + offers.length) % offers.length" 147 > 148 <i class="fa-sharp fa-regular fa-arrow-left"></i> 149 </button> 150 151 <div class="grid grow text-center px-2"> 152 <div 153 class="row-span-full col-span-full announcementBanner" 154 x-show="selected === 0" 155 x-transition:enter="transition ease-in-out duration-500 delay-100" 156 x-transition:enter-start="opacity-0 -translate-x-4" 157 x-transition:enter-end="opacity-100 translate-x-0" 158 x-transition:leave="transition ease-out duration-300 delay-100" 159 x-transition:leave-start="opacity-100 translate-x-0" 160 x-transition:leave-end="opacity-0 translate-x-4" 161 > 162 <a 163 href="/services/culligan-coupons-specials" 164 class="text-sm hover:underline" 165 >Contact Culligan today to learn more about the hardness and TDS of your water.</a> 166 </div> 167 <div 168 class="row-span-full col-span-full announcementBanner" 169 x-show="selected === 1" 170 x-transition:enter="transition ease-in-out duration-500 delay-100" 171 x-transition:enter-start="opacity-0 -translate-x-4" 172 x-transition:enter-end="opacity-100 translate-x-0" 173 x-transition:leave="transition ease-out duration-300 delay-100" 174 x-transition:leave-start="opacity-100 translate-x-0" 175 x-transition:leave-end="opacity-0 translate-x-4" 176 > 177 <a 178 href="/services/culligan-coupons-specials" 179 class="text-sm hover:underline" 180 >Get started with Culligan water for as low as $39/month!</a> 181 </div> 182 <div 183 class="row-span-full col-span-full announcementBanner" 184 x-show="selected === 2" 185 x-transition:enter="transition ease-in-out duration-500 delay-100" 186 x-transition:enter-start="opacity-0 -translate-x-4" 187 x-transition:enter-end="opacity-100 translate-x-0" 188 x-transition:leave="transition ease-out duration-300 delay-100" 189 x-transition:leave-start="opacity-100 translate-x-0" 190 x-transition:leave-end="opacity-0 translate-x-4" 191 > 192 <a 193 href="/services/culligan-coupons-specials" 194 class="text-sm hover:underline" 195 >We'll inspect and check any brand water softener for only $79.95, including two bags of salt and water softener sanitization!</a> 196 </div> 197 </div> 198 199 <button 200 type="button" 201 class="px-2 w-8 cursor-pointer" 202 title="Next Offer" 203 x-on:click="selected = (selected + 1) % offers.length" 204 > 205 <i class="fa-sharp fa-regular fa-arrow-right"></i> 206 </button> 207 208 </div> 209 </div> 210 211 212 <!--mobile--> 213<div 214 data-component="flow.header-mobile" 215 class="sticky top-0 z-40 shadow-lg lg:hidden" 216> 217 <nav class="flex items-center justify-between bg-white p-2"> 218 <a 219 href="/" 220 > 221 <img 222 src="/images/logos/culligan_water_you_love.svg" 223 alt="Sterling Culligan Water" 224 class="hidden sm:block h-10" 225 /> 226 <img 227 src="/images/logos/logo.svg" 228 alt="Sterling Culligan Water" 229 class="sm:hidden h-10" 230 /> 231 </a> 232 233 <div class="flex items-center justify-between bg-white"> 234 <a 235 href="tel:8779841822" 236 class="text-2xl text-blue-500 font-bold px-2" 237 x-data="phone('8779841822', 'header')" 238 x-bind="clickToCall" 239 aria-label="Call dealer" 240 > 241 <i class="fa-light fa-phone"></i> 242 </a> 243 244 <div x-data="{ open: false }"> 245 <div class="fixed inset-0 bg-black bg-opacity-50 z-40 lg:hidden" x-cloak x-show="open"></div> 246 247 <div class="lg:relative lg:group z-50" x-data="{dealer: null, location_url: null}" x-on:dealer-updated="dealer = $event.detail.dealer; location_url = $event.detail.location_url;" role="menubar"> 248 <button type="button" class="text-blue-800 py-2 group-hover:text-blue-500 font-bold whitespace-nowrap cursor-pointer lg:hidden" x-on:click="open = !open" x-on:keydown.escape="open = false" role="menuitem" aria-label="Toggle Dealer Select"> 249 <i class="fa-solid fa-location-dot text-2xl text-blue-500 font-bold px-2"></i> 250 </button> 251 <button type="button" class="text-blue-800 py-2 group-hover:text-blue-500 font-bold whitespace-nowrap cursor-pointer hidden lg:block" 252 x-html="'<i class=\'fa-solid fa-location-dot pr-1\'></i>' + (dealer ? (dealer.city + ', ' + dealer.state) : 'Choose Dealer')" x-on:click="open = !open" x-on:keydown.escape="open = false" role="menuitem" aria-label="Toggle Dealer Select"> 253 <i class="fa-solid fa-location-dot pr-1"></i> 254 </button> 255 256 <div x-cloak x-show="open" x-on:mousedown.outside="open = false" class="absolute left-1/2 transform -translate-x-1/2 container w-72 sm:w-96 bg-gray-300 rounded-lg shadow-xl border border-gray-500 text-left z-50" 257 x-transition:enter="transition ease-out duration-200" 258 x-transition:enter-start="opacity-0 transform scale-90" 259 x-transition:enter-end="opacity-100 transform scale-100" 260 x-transition:leave="transition ease-in duration-150" 261 x-transition:leave-start="opacity-100 transform scale-100" 262 x-transition:leave-end="opacity-0 transform scale-90" 263 x-on:click.stop> 264 <div class="font-bold m-4" x-data="{ change: true }"> 265 <div class="mb-1">Select your dealer</div> 266 267 <div x-show="change" x-data="lead()" x-init="setValues(JSON.parse('{\u0022requireDealerUrl\u0022:true}'))"> 268 <!--postal_code--> 269 <div 270 class="mb-2" 271 x-bind:class="{'col-span-full': layout === 'inline'}" 272 > 273 <label 274 x-bind:for="makeId('postal_code')" 275 class="ml-3 mb-2 text-sm" 276 x-text="postalCodeName()" 277 ></label> 278 <input 279 name="postal_code" 280 type="text" 281 class="form-control rounded-full" 282 x-bind:class="validationClass('postalCode')" 283 x-bind:id="makeId('postal_code')" 284 x-bind:placeholder="postalCodeName()" 285 autocomplete="postal-code" 286 maxlength="7" 287 x-model="postalCode" 288 value="" 289 x-effect="if ((postalCode.length >= 5 && !(/^[a-z]/i.test(postalCode))) || (/^[a-z]/i.test(postalCode) && postalCode.replace(/\s+/g, '').length % 3 === 0)) { 290 searchDealers(); 291 }" 292 /> 293 </div> 294 295 <template x-if="selectedDealer"> 296 <div class="col-span-full bg-gray-200 rounded-lg p-3"> 297 <i class="fa-solid fa-map-marker"></i> Your dealer is <span x-text="selectedDealer.name"></span>. 298 </div> 299 </template> 300 301 <div 302 class="col-span-full bg-gray-200 rounded-xl p-3" 303 x-show="showBottledWaterInterest()" 304 > 305 <div class="mb-2">Are you interested in bottled water?</div> 306 <div> 307 <button 308 type="button" 309 class="btn btn-blue rounded-full" 310 x-on:click="updateBottledWaterInterest('yes')" 311 >Yes <i class="fa-solid fa-check"></i></button> 312 <button 313 type="button" 314 class="btn btn-blue rounded-full" 315 x-on:click="updateBottledWaterInterest('no')" 316 >No <i class="fa-solid fa-times"></i></button> 317 </div> 318 </div> 319 320 <div 321 class="col-span-full grid grid-cols-1 gap-2" 322 x-show="showDealerSelect()" 323 > 324 <template 325 x-for="dealer in filteredDealers()" 326 x-bind:key="dealer.id" 327 > 328 <div 329 class="bg-gray-100 hover:bg-gray-200 rounded-xl p-3" 330 x-bind:class="{ 'border-2 shadow' : dealer.preferred_dealer}" 331 > 332 <div class="flex items-center"> 333 <div class="grow"> 334 <h4 class="text-blue-500 text-lg" x-text="dealer.name"></h4> 335 <div x-text="dealer.city + ', ' + dealer.state"></div> 336 <div class="mt-1" x-show="dealer.preferred_dealer">
337 <span class="text-xs px-2 py-1 rounded-full bg-blue-500 text-blue-800">Suggested Dealer</span> 338 </div> 339 </div> 340 <div> 341 <button 342 type="button" 343 class="btn btn-blue rounded-full text-sm px-2 py-1 whitespace-nowrap" 344 x-on:click="selectDealer(dealer)" 345 >Select <i class="fa-solid fa-plus-circle"></i></button> 346 </div> 347 </div> 348 </div> 349 </template> 350 </div> 351 352 <div 353 class="col-span-full bg-blue-800 text-white font-bold p-2 rounded-lg" 354 x-show="showNoDealers()" 355 > 356 <i class="fa-solid fa-exclamation-circle mr-1"></i> 357 Our Culligan dealerships do not service your area. Visit <a x-on:click="logClickToCorporate()" x-bind:href="'https://www.culligan.com/dealer-locator/' + postalCode + '?interest=' + shortenedProductInterest() + '&utm_medium=referral&utm_source=kennedy'" rel="noopener noreferrer" class="underline">culligan.com</a> to view a complete list of dealers. 358 </div> 359 <a x-show="selectedDealer && !selectedDealer['landing_url'].includes(window.location.hostname)" class="my-2 w-full shadow-xl border border-blue-800 text-center btn btn-indigo rounded-full" x-bind:href="(selectedDealer?.landing_url ? selectedDealer.landing_url + '?dealer=' + selectedDealer.id + '' : '#')" target="_blank" rel="noopener"> 360 Dealer website <i class="fa-solid fa-external-link-square fa-fw mr-1"></i> 361 </a> 362 <button x-show="selectedDealer && selectedDealer['landing_url'].includes(window.location.hostname)" type="button" class="my-2 w-full shadow-xl border border-blue-800 text-center btn btn-indigo rounded-full" x-on:click="change = !change; setDealerInSession();"> 363 Select dealer 364 </button> 365 </div> 366 </div> 367 368 </div> 369 </div> 370</div> 371 372 <button 373 type="button" 374 class="px-2" 375 aria-expanded="false" 376 aria-label="Toggle Navigation" 377 x-data 378 x-on:click="$dispatch('toggle-mobile-nav')" 379 > 380 <i class="fa-solid fa-bars fa-fw text-blue-500 text-xl"></i> 381 </button> 382 </div> 383 </nav> 384 385</div> 386 387<!--desktop--> 388<div 389 data-component="flow.header-desktop" 390 class="sticky top-0 z-40 shadow-lg hidden lg:block" 391 x-data="expandable()" 392> 393 394 <!--top-line--> 395 <div class="bg-gray-300"> 396 <div class="2xl:container px-4 flex justify-between"> 397 <div class="py-2"> 398 <a 399 href="/" 400 class="text-blue-800 hover:text-blue-500 underline-offset-2 hover:underline font-semibold" 401 >Residential</a> 402 <span>|</span> 403 <a 404 href="https://sterlingwater.com/" 405 class="text-blue-800 hover:text-blue-500 underline-offset-2 hover:underline " 406 target="_blank" rel="noopener" 407 >Office <i class="fa-solid fa-up-right-from-square"></i></a> 408 <span>|</span> 409 <a 410 href="https://www.sterlingculliganwater.com/" 411 class="text-blue-800 hover:text-blue-500 underline-offset-2 hover:underline " 412 target="_blank" rel="noopener" 413 >Commercial <i class="fa-solid fa-up-right-from-square"></i></a> 414 </div> 415 <div class="flex space-x-4"> 416 <div x-data="{ open: false }"> 417 <div class="fixed inset-0 bg-black bg-opacity-50 z-40 lg:hidden" x-cloak x-show="open"></div> 418 419 <div class="lg:relative lg:group z-50" x-data="{dealer: null, location_url: null}" x-on:dealer-updated="dealer = $event.detail.dealer; location_url = $event.detail.location_url;" role="menubar"> 420 <button type="button" class="text-blue-800 py-2 group-hover:text-blue-500 font-bold whitespace-nowrap cursor-pointer lg:hidden" x-on:click="open = !open" x-on:keydown.escape="open = false" role="menuitem" aria-label="Toggle Dealer Select"> 421 <i class="fa-solid fa-location-dot text-2xl text-blue-500 font-bold px-2"></i> 422 </button> 423 <button type="button" class="text-blue-800 py-2 group-hover:text-blue-500 font-bold whitespace-nowrap cursor-pointer hidden lg:block" 424 x-html="'<i class=\'fa-solid fa-location-dot pr-1\'></i>' + (dealer ? (dealer.city + ', ' + dealer.state) : 'Choose Dealer')" x-on:click="open = !open" x-on:keydown.escape="open = false" role="menuitem" aria-label="Toggle Dealer Select"> 425 <i class="fa-solid fa-location-dot pr-1"></i> 426 </button> 427 428 <div x-cloak x-show="open" x-on:mousedown.outside="open = false" class="absolute left-1/2 transform -translate-x-1/2 container w-72 sm:w-96 bg-gray-300 rounded-lg shadow-xl border border-gray-500 text-left z-50" 429 x-transition:enter="transition ease-out duration-200" 430 x-transition:enter-start="opacity-0 transform scale-90" 431 x-transition:enter-end="opacity-100 transform scale-100" 432 x-transition:leave="transition ease-in duration-150" 433 x-transition:leave-start="opacity-100 transform scale-100" 434 x-transition:leave-end="opacity-0 transform scale-90" 435 x-on:click.stop> 436 <div class="font-bold m-4" x-data="{ change: true }"> 437 <div class="mb-1">Select your dealer</div> 438 439 <div x-show="change" x-data="lead()" x-init="setValues(JSON.parse('{\u0022requireDealerUrl\u0022:true}'))"> 440 <!--postal_code--> 441 <div 442 class="mb-2" 443 x-bind:class="{'col-span-full': layout === 'inline'}" 444 > 445 <label 446 x-bind:for="makeId('postal_code')" 447 class="ml-3 mb-2 text-sm" 448 x-text="postalCodeName()" 449 ></label> 450 <input 451 name="postal_code" 452 type="text" 453 class="form-control rounded-full" 454 x-bind:class="validationClass('postalCode')" 455 x-bind:id="makeId('postal_code')" 456 x-bind:placeholder="postalCodeName()" 457 autocomplete="postal-code" 458 maxlength="7" 459 x-model="postalCode" 460 value="" 461 x-effect="if ((postalCode.length >= 5 && !(/^[a-z]/i.test(postalCode))) || (/^[a-z]/i.test(postalCode) && postalCode.replace(/\s+/g, '').length % 3 === 0)) { 462 searchDealers(); 463 }" 464 /> 465 </div> 466 467 <template x-if="selectedDealer"> 468 <div class="col-span-full bg-gray-200 rounded-lg p-3"> 469 <i class="fa-solid fa-map-marker"></i> Your dealer is <span x-text="selectedDealer.name"></span>. 470 </div> 471 </template> 472 473 <div 474 class="col-span-full bg-gray-200 rounded-xl p-3" 475 x-show="showBottledWaterInterest()" 476 > 477 <div class="mb-2">Are you interested in bottled water?</div> 478 <div> 479 <button 480 type="button" 481 class="btn btn-blue rounded-full" 482 x-on:click="updateBottledWaterInterest('yes')" 483 >Yes <i class="fa-solid fa-check"></i></button> 484 <button 485 type="button" 486 class="btn btn-blue rounded-full" 487 x-on:click="updateBottledWaterInterest('no')" 488 >No <i class="fa-solid fa-times"></i></button> 489 </div> 490 </div> 491 492 <div 493 class="col-span-full grid grid-cols-1 gap-2" 494 x-show="showDealerSelect()" 495 > 496 <template 497 x-for="dealer in filteredDealers()" 498 x-bind:key="dealer.id" 499 > 500 <div 501 class="bg-gray-100 hover:bg-gray-200 rounded-xl p-3" 502 x-bind:class="{ 'border-2 shadow' : dealer.preferred_dealer}" 503 > 504 <div class="flex items-center"> 505 <div class="grow"> 506 <h4 class="text-blue-500 text-lg" x-text="dealer.name"></h4> 507 <div x-text="dealer.city + ', ' + dealer.state"></div> 508 <div class="mt-1" x-show="dealer.preferred_dealer">
509 <span class="text-xs px-2 py-1 rounded-full bg-blue-500 text-blue-800">Suggested Dealer</span> 510 </div> 511 </div> 512 <div> 513 <button 514 type="button" 515 class="btn btn-blue rounded-full text-sm px-2 py-1 whitespace-nowrap" 516 x-on:click="selectDealer(dealer)" 517 >Select <i class="fa-solid fa-plus-circle"></i></button> 518 </div> 519 </div> 520 </div> 521 </template> 522 </div> 523 524 <div 525 class="col-span-full bg-blue-800 text-white font-bold p-2 rounded-lg" 526 x-show="showNoDealers()" 527 > 528 <i class="fa-solid fa-exclamation-circle mr-1"></i> 529 Our Culligan dealerships do not service your area. Visit <a x-on:click="logClickToCorporate()" x-bind:href="'https://www.culligan.com/dealer-locator/' + postalCode + '?interest=' + shortenedProductInterest() + '&utm_medium=referral&utm_source=kennedy'" rel="noopener noreferrer" class="underline">culligan.com</a> to view a complete list of dealers. 530 </div> 531 <a x-show="selectedDealer && !selectedDealer['landing_url'].includes(window.location.hostname)" class="my-2 w-full shadow-xl border border-blue-800 text-center btn btn-indigo rounded-full" x-bind:href="(selectedDealer?.landing_url ? selectedDealer.landing_url + '?dealer=' + selectedDealer.id + '' : '#')" target="_blank" rel="noopener"> 532 Dealer website <i class="fa-solid fa-external-link-square fa-fw mr-1"></i> 533 </a> 534 <button x-show="selectedDealer && selectedDealer['landing_url'].includes(window.location.hostname)" type="button" class="my-2 w-full shadow-xl border border-blue-800 text-center btn btn-indigo rounded-full" x-on:click="change = !change; setDealerInSession();"> 535 Select dealer 536 </button> 537 </div> 538 </div> 539 540 </div> 541 </div> 542</div> 543 <div class="relative group" x-data x-bind="menu(true)" role="menubar"> 544 <button 545 type="button" 546 class="text-blue-800 group-hover:text-blue-500 py-2 font-semibold" 547 role="menuitem" 548 > 549 Current Customers 550 <i class="fa-solid fa-angle-down"></i> 551 </button> 552 <div class="absolute right-0 py-2 bg-gray-300 rounded-b-xl shadow-lg z-50" x-cloak x-transition x-show="$root.id === current"> 553 <a 554 href="https://portal.unco.mcgware.com/" 555 target="_blank" 556 rel="noopener" 557 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 558 >View or Pay Bill</a> 559 <a 560 href="/content/documents/pdf/sterling-billing-update-june-25(1).pdf" 561 target="_blank" 562 rel="noopener" 563 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 564 >Important Changes to Deliveries, Statements and Invoices</a> 565 <a 566 href="https://webapp.getthereferral.com//partnerPages.php?companyCode=44624" 567 target="_blank" 568 rel="noopener" 569 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 570 >Referral Program</a> 571 <a 572 href="/services/service-repairs" 573 target="_blank" 574 rel="noopener" 575 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 576 >Service & Repairs</a> 577 <a 578 href="/help-guides/bypass-videos" 579 target="_blank" 580 rel="noopener" 581 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 582 >
582Softener Bypass Videos</a> 583 <a 584 href="https://www.culligan.com/support/product-information/product-manuals" 585 target="_blank" 586 rel="noopener" 587 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 588 >Manuals - Softeners, Filters, ROs & Bottled Water</a> 589 <a 590 href="https://sterlingwater.com/product-catalog/" 591 target="_blank" 592 rel="noopener" 593 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 594 >Manuals - Bottleless Water Coolers</a> 595 <a 596 href="/contact-your-water-expert" 597 target="" 598 rel="" 599 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 600 >Contact</a> 601 </div> 602 </div> 603 <a 604 href="/services/culligan-coupons-specials" 605 target="" 606 rel="" 607 class="text-blue-800 hover:text-blue-500 underline-offset-2 py-2 font-semibold" 608 >Special Offers</a> 609 <a 610 href="tel:8779841822" 611 class="headerPhone px-4 py-2 font-bold text-blue-500 underline hover:no-underline whitespace-nowrap transition duration-200" 612 x-data="phone('8779841822', 'header')" 613 x-bind="clickToCall" 614 ><i class="fa-solid fa-phone mr-2 animate-wiggle text-blue-800"></i>877-984-1822</a> 615 </div> 616 </div> 617 </div> 618 619 <!--bottom-line--> 620 <div class="bg-gray-100 py-4"> 621 <div class="2xl:container px-4 flex items-center justify-between"> 622 623 <!--left--> 624 <div class="flex items-center"> 625 626 <!--logo--> 627 <a 628 href="/" 629 class="flex mr-6" 630 > 631 <img 632 src="/images/logos/culligan_water_you_love.svg" 633 alt="Sterling Culligan Water" 634 class="max-w-52 xl:max-w-72 max-h-[42px]" 635 /> 636 </a> 637 638 <!--menu--> 639 <a 640 href="https://portal.unco.mcgware.com" 641 target="_blank" 642 rel="noopener" 643 class="px-4 py-2 text-blue-800 hover:text-blue-500 font-bold whitespace-nowrap" 644 >Pay Bill Online</a> 645 <div class="relative group" x-data x-bind="menu" role="menubar"> 646 647 <button 648 type="button" 649 class="px-4 py-2 text-blue-800 group-hover:text-blue-500 font-bold whitespace-nowrap cursor-pointer" 650 aria-haspopup="true" 651 aria-expanded="false" 652 role="menuitem" 653 >Softeners & Filters</button> 654 655 <div class="hidden group-hover:block group-focus-within:block absolute py-1 bg-gray-100 rounded-b-lg shadow-xl" x-show="$root.i
655d === current"> 656 <a 657 href="/softeners-filters/water-softeners" 658 target="" 659 rel="" 660 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 661 >Water Softeners</a> 662 <a 663 href="/softeners-filters/whole-home-water-filters" 664 target="" 665 rel="" 666 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 667 >Whole Home Water Filters</a> 668 </div> 669 670 </div> 671 672 <div class="relative group" x-data x-bind="menu" role="menubar"> 673 674 <button 675 type="button" 676 class="px-4 py-2 text-blue-800 group-hover:text-blue-500 font-bold whitespace-nowrap cursor-pointer" 677 aria-haspopup="true" 678 aria-expanded="false" 679 role="menuitem" 680 >Drinking Water & Coolers</button> 681 682 <div class="hidden group-hover:block group-focus-within:block absolute py-1 bg-gray-100 rounded-b-lg shadow-xl" x-show="$root.id === current"> 683 <a 684 href="/drinking-water-coolers/reverse-osmosis-drinking-water-systems" 685 target="" 686 rel="" 687 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 688 >RO Drinking Water Systems</a> 689 <a 690 href="https://sterlingwater.com/" 691 target="_blank" 692 rel="noopener" 693 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 694 >Bottleless Coolers</a> 695 <a 696 href="/drinking-water-coolers/bottled-water-coolers" 697 target="" 698 rel="" 699 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 700 >Bottled Water & Coolers</a> 701 </div> 702 703 </div> 704 705 <div class="relative group" x-data x-bind="menu" role="menubar"> 706 707 <button 708 type="button" 709 class="px-4 py-2 text-blue-500 group-hover:text-blue-500 font-bold whitespace-nowrap cursor-pointer" 710 aria-haspopup="true" 711 aria-expanded="false" 712 role="menuitem" 713 >Services</button> 714 715 <div class="hidden group-hover:block group-focus-within:block absolute py-1 bg-gray-100 rounded-b-lg shadow-xl" x-show="$root.i
715d === current"> 716 <a 717 href="/services/water-testing" 718 target="" 719 rel="" 720 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 721 >Water Testing</a> 722 <a 723 href="/services/well-water-testing" 724 target="" 725 rel="" 726 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 727 >Well Water Testing</a> 728 <a 729 href="/water-solutions" 730 target="" 731 rel="" 732 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 733 >Water Quiz</a> 734 <a 735 href="/services/water-delivery" 736 target="" 737 rel="" 738 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 739 >Water Delivery</a> 740 <a 741 href="/services/salt-delivery" 742 target="" 743 rel="" 744 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 745 >Salt Delivery</a> 746 <a 747 href="/services/service-repairs" 748 target="" 749 rel="" 750 class="block px-6 py-2 whitespace-nowrap text-blue-500 hover:text-blue-500 hover:underline font-semibold" 751 >Service & Repairs</a> 752 <a 753 href="/services/chloride-reduction" 754 target="" 755 rel="" 756 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 757 >Chloride Reduction</a> 758 <a 759 href="/services/culligan-coupons-specials" 760 target="" 761 rel="" 762 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 763 >Coupons & Specials</a> 764 <a 765 href="/services/culligan-connected-home" 766 target="" 767 rel="" 768 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 769 >Culligan Connected Home</a> 770 </div> 771 772 </div> 773 774 <div class="relative group" x-data x-bind="menu" role="menubar"> 775 776 <button 777 type="button" 778 class="px-4 py-2 text-blue-800 group-hover:text-blue-500 font-bold whitespace-nowrap cursor-pointer" 779 aria-haspopup="true" 780 aria-expanded="false" 781 role="menuitem" 782 >About</button> 783 784 <div class="hidden group-hover:block group-focus-within:block absolute py-1 bg-gray-100 rounded-b-lg shadow-xl" x-show="$root.i
784d === current"> 785 <a 786 href="/locations/eau-claire-wi/1253" 787 target="" 788 rel="" 789 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 790 >Sterling Culligan Water of Eau Claire</a> 791 <a 792 href="/locations/rothschild-wi/1252" 793 target="" 794 rel="" 795 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 796 >Sterling Culligan Water of Rothschild</a> 797 <a 798 href="/locations/sauk-centre-mn/1088" 799 target="" 800 rel="" 801 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 802 >Sterling Culligan Water of Sauk Centre</a> 803 <a 804 href="/locations/waupaca-wi/1228" 805 target="" 806 rel="" 807 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 808 >Sterling Culligan Water of Waupaca</a> 809 <a 810 href="/about/sterling-history" 811 target="" 812 rel="" 813 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 814 >Sterling Water History</a> 815 <a 816 href="/about/subscribe-buy-finance" 817 target="" 818 rel="" 819 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 820 >Subscribe, Buy & Finance</a> 821 <a 822 href="/about/why-choose-culligan" 823 target="" 824 rel="" 825 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 826 >Why Choose Culligan?</a> 827 <a 828 href="/about/careers" 829 target="" 830 rel="" 831 class="block px-6 py-2 whitespace-nowrap text-blue-800 hover:text-blue-500 hover:underline font-semibold" 832 >Careers</a> 833 </div> 834 835 </div> 836 837 <a 838 href="/contact-your-water-expert" 839 target="" 840 rel="" 841 class="px-4 py-2 text-blue-800 hover:text-blue-500 font-bold whitespace-nowrap" 842 >Contact</a> 843 844 </div> 845 846 <!--right--> 847 <div> 848 <button 849 x-bind:id="'drawer_cta_desktop' ?? $id('cta')" 850 type="button"
851 class="btn btn-azure rounded-full md:text-2xl md:text-base" 852 x-data 853 854 x-on:click=" 855 $dispatch('update-contact', []); 856 $dispatch('toggle-drawer', { 857 heading: null, 858 body: null, 859 }); 860 " 861 >Get pricing</button> 862 863 </div> 864 865 </div> 866 </div> 867 868</div> 869 870 <main class="grow"> 871 872 <div><div 873 data-component="default.generic-hero" 874 class="relative mx-auto flex flex-col" 875> 876 877 <div class="xl:container -mt-5 sm:-mt-12 md:mt-0 px-4 pb-3 pb-3 md:pb-20 md:py-24 xl:py-36 order-1"> 878 <div class="bg-blue-500 rounded-3xl md:bg-transparent p-6 w-full md:w-6/12 space-y-3 md:space-y-5 text-center md:text-left"> 879 <h1 class="text-white text-xl md:text-3xl lg:text-4xl xl:text-5xl font-extrabold">Water softener service & repairs near northern Wisconsin and central Minnesota</h1> 880 <div class="text-white sm:text-lg md:text-2xl lg:text-3xl font-bold">Service that always exceeds expectation</div> 881 882 <button 883 x-bind:id="null ?? $id('cta')" 884 type="button" 885 class="btn btn-azure rounded-full md:text-2xl px-12 btn-white md:btn-azure" 886 x-data 887 888 x-on:click=" 889 $dispatch('update-contact', JSON.parse('{\u0022shown\u0022:{\u0022appointmentRequest\u0022:false,\u0022productInterest\u0022:false}}')); 890 $dispatch('toggle-modal', { 891 heading: 'Request service', 892 body: ' ', 893 }); 894 " 895 >Request service</button> 896 897 898 899 900 </div> 901 </div> 902 903 <picture class="md:absolute object-cover w-full h-full top-0 bottom-0 -z-10"> 904 <source 905 media="(min-width: 1280px)" 906 srcset="/content/images/culligan-softener-support-call.webp" 907 /> 908 <source 909 media="(min-width: 768px)" 910 srcset="/content/images/culligan-softener-support-call.webp" 911 /> 912 <img 913 src="/content/images/culligan-softener-support-call.webp" 914 alt="Culligan water expert waving from their van" 915 style="object-fit: cover; object-position: top; height: inherit; width: inherit;" 916 fetchpriority="high" 917 /> 918 </picture> 919 <div class="absolute top-0 left-0 w-full h-full md:bg-gradient-to-r from-slate-900/75 to-transparent -z-10"></div> 920 921</div> 922 923<div 924 data-component="default.side-by-side" 925 class="bg-gray-200" 926> 927 928 <div class="xl:container flex flex-col md:flex-row md:gap-12 items-center px-4 py-12"> 929 930 <div class="w-full md:w-auto md:basis-7/12 lg:basis-6/12 xl:basis-7/12 mt-8 md:mt-0 space-y-4 lg:space-y-8 order-1 "> 931 932 <h2 class="heading-1 squiggle squiggle-blue text-blue-800">Water softener repair & water system services</h2> 933 934 <div class="md:text-lg font-bold text-blue-800">Whether you need basic installation, repair or emergency service, your local, licensed (where applicable), insured and background-checked Culligan expert is here to help. We service most makes and models of equipment — even if it's not a Culligan water softener or filtration system.</div> 935 936 <div class="text-blue-800"><ul class="list-disc ml-5 grid grid-cols-1 md:grid-cols-2 gap-12"> 937 <li>Part replacement & repair</li> 938 <li>Salt bridge removal</li> 939 <li>Equipment installation & relocation</li> 940 <li>Emergency service for leaks, pressure issues, etc.</li> 941</ul></div> 942 943 </div> 944 945 <div class="w-full md:w-auto md:basis-5/12 lg:basis-6/12 xl:basis-5/12"> 946 947 <img 948 src="/images/themes/flow/side-by-side/repair-services.jpg" 949 alt="" 950 class="w-full rounded-3xl" 951 width="820" 952 height="660" 953 loading="lazy" 954 /> 955 956 </div> 957 958 </div> 959 960</div> 961 962<div 963 data-component="default.side-by-side" 964 class="bg-gray-200" 965> 966 967 <div class="xl:container flex flex-col md:flex-row md:gap-12 items-center px-4 py-12"> 968 969 <div class="w-full md:w-auto md:basis-7/12 lg:basis-6/12 xl:basis-7/12 mt-8 md:mt-0 space-y-4 lg:space-y-8 order-1 md:order-none"> 970 971 <h2 class="heading-1 squiggle squiggle-blue text-blue-800">Preventative water system maintenance services</h2> 972 973 <div class="md:text-lg font-bold text-blue-800">Your local Culligan water expert has the knowledge and expertise to keep your water softener or water filter running at peak performance.</div> 974 975 <div class="text-blue-800"><ul class="list-disc ml-5 grid grid-cols-1 md:grid-cols-2 gap-12"> 976 <li>Regular tune-ups, filter changes and sanitization</li> 977 <li>Reset timers, sensors and regeneration frequency</li> 978 <li>Monitor changing water conditions</li> 979 <li>Inspect water flow and check for salt bridging in tank</li> 980</ul></div> 981 982 </div> 983 984 <div class="w-full md:w-auto md:basis-5/12 lg:basis-6/12 xl:basis-5/12"> 985 986 <img 987 src="/content/images/ro-filter-service-26.jpg" 988 alt="" 989 class="w-full rounded-3xl" 990 width="820" 991 height="660" 992 loading="lazy" 993 /> 994 995 </div> 996 997 </div> 998 999</div> 1000 1001<div 1002 data-component="default.floating-bubble" 1003 class="relative mx-auto flex flex-col" 1004> 1005 1006 <div class="xl:container -mt-5 sm:-mt-12 md:mt-0 px-4 pb-3 md:pb-20 md:py-24 xl:py-36 order-1"> 1007 <div class="bg-white rounded-3xl p-6 w-full md:w-6/12 space-y-3 md:space-y-6 text-center"> 1008 <h2 class="text-blue-800 text-xl md:text-3xl lg:text-4xl font-bold">Service plans to suit your schedule</h2> 1009 <hr class="border" /> 1010 <div class="text-blue-800 sm:text-lg md:text-2xl font-medium">Never worry about your water filtration equipment again with a Culligan service plan. Covering maintenance, repairs and even salt delivery, they are the ultimate in convenience and reliability.</div> 1011 <button 1012 x-bind:id="null ?? $id('cta')" 1013 type="button"
1014 class="btn btn-azure rounded-full md:text-2xl font-medium md:text-xl" 1015 x-data 1016 1017 x-on:click=" 1018 $dispatch('update-contact', JSON.parse('{\u0022shown\u0022:{\u0022appointmentRequest\u0022:false,\u0022productInterest\u0022:false}}')); 1019 $dispatch('toggle-modal', { 1020 heading: null, 1021 body: null, 1022 }); 1023 " 1024 >Request service</button> 1025 1026 </div> 1027 </div> 1028 1029 <picture class="md:absolute object-cover w-full h-full top-0 bottom-0 -z-10"> 1030 <source 1031 media="(min-width: 1280px)" 1032 srcset="/images/themes/flow/floating-bubble/calendar.jpg" 1033 /> 1034 <source 1035 media="(min-width: 768px)" 1036 srcset="/images/themes/flow/floating-bubble/calendar.jpg" 1037 /> 1038 <img 1039 src="/images/themes/flow/floating-bubble/calendar.jpg" 1040 alt="" 1041 style="object-fit: inherit; height: inherit; width: inherit; " 1042 width="768" 1043 height="398" 1044 fetchpriority="high" 1045 /> 1046 </picture> 1047 1048</div> 1049 1050<div 1051 data-component="default.advantage-condensed" 1052 class="bg-blue-800" 1053 x-data="indicator()" 1054> 1055 1056 <div class="xl:container px-4 py-8 space-y-12"> 1057 1058 <div class="heading-1 text-white text-center">The Culligan advantage</div> 1059 1060 <div class="flex flex-nowrap md:grid grid-cols-4 gap-8 sm:gap-12 md:gap-6 items-center justify-items-center overflow-x-auto snap-x snap-mandatory scrollbar-hide md:px-4"> 1061 1062 <div class="md:hidden w-1/6 sm:w-1/4 shrink-0"> </div> 1063 1064 <div 1065 class="flex gap-4 justify-center items-center text-white w-2/3 sm:w-1/2 md:w-auto shrink-0 snap-center md:max-h-[114px] lg:max-h-[133px] xl:max-h-[152px]" 1066 x-bind="element(1)" 1067 > 1068 <img 1069 src="/images/themes/flow/advantage-condensed/100-guarantee.svg" 1070 alt="100% Guarantee" 1071 class="w-1/3" 1072 /> 1073 <div class="text-xl">100% Guarantee</div> 1074 </div> 1075 1076 <div 1077 class="flex gap-4 justify-center items-center text-white w-2/3 sm:w-1/2 md:w-auto shrink-0 snap-center md:max-h-[114px] lg:max-h-[133px] xl:max-h-[152px]" 1078 x-bind="element(2)" 1079 > 1080 <img 1081 src="/images/themes/flow/advantage-condensed/custom-water-solutions.svg" 1082 alt="Custom water solutions" 1083 /> 1084 <div class="text-xl">Local water experts</div> 1085 </div> 1086 1087 <div 1088 class="flex gap-4 justify-center items-center text-white w-2/3 sm:w-1/2 md:w-auto shrink-0 snap-center md:max-h-[114px] lg:max-h-[133px] xl:max-h-[152px]" 1089 x-bind="element(3)" 1090 > 1091 <img 1092 src="/images/themes/flow/advantage-condensed/local-water-experts.svg" 1093 alt="Local water experts" 1094 /> 1095 <div class="text-xl">Custom water solutions</div> 1096 </div> 1097 1098 <div 1099 class="flex gap-4 justify-center items-center text-white w-2/3 sm:w-1/2 md:w-auto shrink-0 snap-center md:max-h-[114px] lg:max-h-[133px] xl:max-h-[152px]" 1100 x-bind="element(4)" 1101 > 1102 <img 1103 src="/images/themes/flow/advantage-condensed/90-years.svg" 1104 alt="90+ years" 1105 class="w-1/3" 1106 /> 1107 <div class="text-xl">90+ years</div> 1108 </div> 1109 1110 <div class="md:hidden w-1/6 sm:w-1/4 shrink-0"> </div> 1111 1112 </div> 1113 1114 <div 1115 data-component="default.indicators" 1116 class="flex flex-nowrap gap-6 items-center justify-center md:hidden" 1117 > 1118 <div 1119 class="p-2 rounded-full transition" 1120 x-bind:class="positions.includes(1) ? 'scale-125 bg-white' : 'bg-blue-400 '" 1121 ></div> 1122 <div 1123 class="p-2 rounded-full transition" 1124 x-bind:class="positions.includes(2) ? 'scale-125 bg-white' : 'bg-blue-400 '" 1125 ></div> 1126 <div 1127 class="p-2 rounded-full transition" 1128 x-bind:class="positions.includes(3) ? 'scale-125 bg-white' : 'bg-blue-400 '" 1129 ></div> 1130 <div 1131 class="p-2 rounded-full transition" 1132 x-bind:class="positions.includes(4) ? 'scale-125 bg-white' : 'bg-blue-400 '" 1133 ></div> 1134 </div> 1135 1136 </div> 1137 1138</div> 1139 1140 1141<div 1142 data-component="default.form" 1143 class="bg-blue-500 text-white" 1144> 1145 1146 <div class="xl:container px-4 py-24 md:py-20 "> 1147 1148 <div class="space-y-6 text-center "> 1149 1150 <div class="text-3xl md:text-4xl font-bold">Request service or repairs from Culligan</div> 1151 1152 <div class="text-xl font-semibold"></div> 1153 1154 </div> 1155 1156 <div 1157 data-component="default.contact" 1158 class="text-white" 1159 class="text-blue-800" 1160 x-data="lead('form')" 1161 x-init=" 1162 setShown(JSON.parse('{\u0022productInterest\u0022:false,\u0022appointmentRequest\u0022:false}')); 1163 setRequired({}); 1164 setValues(JSON.parse('{\u0022prependMessage\u0022:\u0022\u0022,\u0022appendMessage\u0022:\u0022\u0022}')); 1165 loadPaidSearchData(null); 1166 " 1167 x-on:update-contact.window=" 1168 updateContact( 1169 $event.detail.identifier ?? 'hidden', 1170 $event.detail.shown ?? {}, 1171 $event.detail.required ?? {}, 1172 $event.detail.values ?? {}, 1173 ); 1174 " 1175> 1176 1177 <div x-show="submitStatus !== 'success' && submitStatus !== 'recaptcha_failure'"> 1178 1179 <form 1180 x-bind:id="makeId('contact')" 1181 method="post" 1182 novalidate="novalidate"
1183 x-on:submit.prevent="submitForm()" 1184 class="grid grid-cols-1 md:grid-cols-2 gap-x-4 gap-y-3" 1185 > 1186 1187 <!--hidden--> 1188 <input 1189 name="force_id" 1190 type="hidden" 1191 value="" 1192 /> 1193 1194 <div x-show="shownFields().customerType || shownFields().customerLocation" class="grid grid-cols-1 gap-x-4 gap-y-3 md:grid-cols-2 col-span-1 md:col-span-2"> 1195 <!--customer_type--> 1196 <div 1197 x-bind:class="{'col-span-full': layout === 'inline'}" 1198 x-show="shownFields().customerType" 1199 > 1200 <div class="items-center" x-bind:class="validationClass('customerType')"> 1201 <span x-show="requiredFields().customerType"> * </span> 1202 <span class="text-sm">Are you a new or current customer?</span> 1203 <template x-for="(key, value) in customerTypes"> 1204 <button 1205 type="button" 1206 class="btn rounded-full block mt-2" 1207 x-bind:class="isCustomerTypeSelected(value) ? 'btn-indigo' : 'btn-white-indigo'" 1208 x-on:click="customerType = value" 1209 > 1210 <span x-show="isCustomerTypeSelected(value)"><i class="fa-solid fa-circle-dot fa-fw"></i></span> 1211 <span x-show="!isCustomerTypeSelected(value)"><i class="fa-regular fa-circle fa-fw"></i></span> 1212 <span x-text="key" class="capitalize font-normal"></span> 1213 </button> 1214 </template> 1215 </div> 1216 <div 1217 x-show="showValidation('customerType')" 1218 x-cloak 1219 class="invalid-feedback" 1220 >Please select a customer type</div> 1221 </div> 1222 1223 <!--customer_location--> 1224 <div 1225 x-bind:class="{'col-span-full': layout === 'inline'}" 1226 x-show="shownFields().customerLocation" 1227 > 1228 <div class="items-center" x-bind:class="validationClass('customerLocation')"> 1229 <span x-show="requiredFields().customerLocation"> * </span> 1230 <span class="text-sm">Home or office use?</span> 1231 <template x-for="(key, value) in customerLocations"> 1232 <button 1233 type="button" 1234 name="customerLocation" 1235 class="btn rounded-full block mt-2" 1236 x-bind:class="isCustomerLocationSelected(value) ? 'btn-indigo' : 'btn-white-indigo'" 1237 x-on:click="customerLocation = value" 1238 > 1239 <span x-show="isCustomerLocationSelected(value)"><i class="fa-solid fa-circle-dot fa-fw"></i></span> 1240 <span x-show="!isCustomerLocationSelected(value)"><i class="fa-regular fa-circle fa-fw"></i></span> 1241 <span x-text="key" class="capitalize font-normal"></span> 1242 </button> 1243 </template> 1244 </div> 1245 <div 1246 x-show="showValidation('customerLocation')" 1247 x-cloak 1248 class="invalid-feedback" 1249 >Please select a customer location</div> 1250 </div> 1251 </div> 1252 1253 <!--first_name--> 1254 <div 1255 x-bind:class="{'col-span-full': layout === 'inline'}" 1256 > 1257 <label 1258 x-bind:for="makeId('first_name')" 1259 class="ml-3 mb-1 text-sm" 1260 ><span x-show="requiredFields().firstName"> * </span>First name</label> 1261 <input 1262 name="first_name" 1263 type="text" 1264 class="form-control rounded-full" 1265 x-bind:class="validationClass('firstName')" 1266 x-bind:id="makeId('first_name')" 1267 placeholder="First name" 1268 autocomplete="given-name" 1269 required 1270 x-model.debounce="firstName" 1271 value="" 1272 x-bind:disabled="showNoDealers()" 1273 /> 1274 <div 1275 x-show="showValidation('firstName')" 1276 x-cloak 1277 class="invalid-feedback" 1278 >Please enter your first name.</div> 1279 </div> 1280 1281 <!--last_name--> 1282 <div 1283 x-bind:class="{'col-span-full': layout === 'inline'}" 1284 > 1285 <label 1286 x-bind:for="makeId('last_name')" 1287 class="ml-3 mb-1 text-sm" 1288 ><span x-show="requiredFields().lastName"> * </span>Last name</label> 1289 <input 1290 name="last_name" 1291 type="text" 1292 class="form-control rounded-full" 1293 x-bind:class="validationClass('lastName')" 1294 x-bind:id="makeId('last_name')" 1295 placeholder="Last name" 1296 autocomplete="family-name" 1297 required 1298 x-model.debounce="lastName" 1299 value="" 1300 x-bind:disabled="showNoDealers()" 1301 /> 1302 <div 1303 x-show="showValidation('lastName')" 1304 x-cloak 1305 class="invalid-feedback" 1306 >Please enter your last name.</div> 1307 </div> 1308 1309 <!--company--> 1310 <div 1311 x-bind:class="{'col-span-full': layout === 'inline'}" 1312 x-show="shownFields().company" 1313 > 1314 <label 1315 x-bind:for="makeId('company')" 1316 class="ml-3 mb-1 text-sm" 1317 ><span x-show="requiredFields().company"> * </span>Company</label> 1318 <input 1319 name="company" 1320 type="text" 1321 class="form-control rounded-full" 1322 x-bind:class="validationClass('company')" 1323 x-bind:id="makeId('company')" 1324 placeholder="Company" 1325 autocomplete="given-name" 1326 required 1327 x-model.debounce="company" 1328 value="" 1329 x-bind:disabled="showNoDealers()" 1330 /> 1331 <div 1332 x-show="showValidation('company')" 1333 x-cloak 1334 class="invalid-feedback" 1335 >Please enter the name of your company.</div> 1336 </div> 1337 1338 <!--address--> 1339 <div 1340 x-bind:class="{'col-span-full': layout === 'inline'}" 1341 x-show="shownFields().address" 1342 > 1343 <label 1344 x-bind:for="makeId('address')" 1345 class="ml-3 mb-1 text-sm" 1346 ><span x-show="requiredFields().address"> * </span>Address</label> 1347 <input 1348 name="address" 1349 type="text" 1350 class="form-control rounded-full" 1351 x-bind:class="validationClass('address')" 1352 x-bind:id="makeId('address')" 1353 placeholder="Address" 1354 autocomplete="street-address" 1355 required 1356 x-model.debounce="address" 1357 value="" 1358 @places-loaded.window="initAutocomplete()" 1359 /> 1360 <div 1361 x-show="showValidation('address')" 1362 x-cloak 1363 class="invalid-feedback" 1364 >Please enter your address.</div> 1365 </div> 1366
1367 <!--street--> 1368 <div 1369 x-bind:class="{'col-span-full': layout === 'inline'}" 1370 x-show="shownFields().street" 1371 > 1372 <label 1373 x-bind:for="makeId('street')" 1374 class="ml-3 mb-1 text-sm" 1375 ><span x-show="requiredFields().street"> * </span>Street</label> 1376 <input 1377 name="street" 1378 type="text" 1379 class="form-control rounded-full" 1380 x-bind:class="validationClass('street')" 1381 x-bind:id="makeId('street')" 1382 placeholder="Street" 1383 autocomplete="street-address" 1384 required 1385 x-model.debounce="street" 1386 value="" 1387 x-bind:disabled="showNoDealers()" 1388 /> 1389 <div 1390 x-show="showValidation('street')" 1391 x-cloak 1392 class="invalid-feedback" 1393 >Please enter your street.</div> 1394 </div> 1395 1396 <!--city--> 1397 <div 1398 x-bind:class="{'col-span-full': layout === 'inline'}" 1399 x-show="shownFields().city" 1400 > 1401 <label 1402 x-bind:for="makeId('city')" 1403 class="ml-3 mb-1 text-sm" 1404 ><span x-show="requiredFields().city"> * </span>City</label> 1405 <input 1406 name="city" 1407 type="text" 1408 class="form-control rounded-full" 1409 x-bind:class="validationClass('city')" 1410 x-bind:id="makeId('city')" 1411 placeholder="City" 1412 autocomplete="city" 1413 required 1414 x-model.debounce="city" 1415 value="" 1416 x-bind:disabled="showNoDealers()" 1417 /> 1418 <div 1419 x-show="showValidation('city')" 1420 x-cloak 1421 class="invalid-feedback" 1422 >Please enter your city.</div> 1423 </div> 1424 1425 <!--state--> 1426 <div 1427 x-bind:class="{'col-span-full': layout === 'inline'}" 1428 x-show="shownFields().state" 1429 > 1430 <label 1431 x-bind:for="makeId('state')" 1432 class="ml-3 mb-1 text-sm" 1433 x-text="(requiredFields().state ? ' * ' : '') + stateName()" 1434 ></label> 1435 <select 1436 name="state" 1437 class="form-control rounded-full" 1438 x-bind:class="validationClass('state')" 1439 x-bind:id="makeId('state')" 1440 required 1441 x-model="state" 1442 x-bind:disabled="showNoDealers()" 1443 > 1444 <option disabled selected value="" x-text="stateName()"></option> 1445 <option 1446 value="AL" 1447 >Alabama</option> 1448 <option 1449 value="AK" 1450 >Alaska</option> 1451 <option 1452 value="AZ" 1453 >Arizona</option> 1454 <option 1455 value="AR" 1456 >Arkansas</option> 1457 <option 1458 value="CA" 1459 >California</option> 1460 <option 1461 value="CO" 1462 >Colorado</option> 1463 <option 1464 value="CT" 1465 >Connecticut</option> 1466 <option 1467 value="DE" 1468 >Delaware</option> 1469 <option 1470 value="DC" 1471 >District of Columbia</option> 1472 <option 1473 value="FL" 1474 >Florida</option> 1475 <option 1476 value="GA" 1477 >Georgia</option> 1478 <option 1479 value="HI" 1480 >Hawaii</option> 1481 <option 1482 value="ID" 1483 >Idaho</option> 1484 <option 1485 value="IL" 1486 >Illinois</option> 1487 <option 1488 value="IN" 1489 >Indiana</option> 1490 <option 1491 value="IA" 1492 >Iowa</option> 1493 <option 1494 value="KS" 1495 >Kansas</option> 1496 <option 1497 value="KY" 1498 >Kentucky</option> 1499 <option 1500 value="LA" 1501 >Louisiana</option> 1502 <option 1503 value="ME" 1504 >Maine</option> 1505 <option 1506 value="MD" 1507 >Maryland</option> 1508 <option 1509 value="MA" 1510 >Massachusetts</option> 1511 <option 1512 value="MI" 1513 >Michigan</option> 1514 <option 1515 value="MN" 1516 >Minnesota</option> 1517 <option 1518 value="MS" 1519 >Mississippi</option> 1520 <option 1521 value="MO" 1522 >Missouri</option> 1523 <option 1524 value="MT" 1525 >Montana</option> 1526 <option 1527 value="NE" 1528 >Nebraska</option> 1529 <option 1530 value="NV" 1531 >Nevada</option> 1532 <option 1533 value="NH" 1534 >New Hampshire</option> 1535 <option 1536 value="NJ" 1537 >New Jersey</option> 1538 <option 1539 value="NM" 1540 >New Mexico</option> 1541 <option 1542 value="NY" 1543 >New York</option> 1544 <option 1545 value="NC" 1546 >North Carolina</option> 1547 <option 1548 value="ND" 1549 >North Dakota</option> 1550 <option 1551 value="OH" 1552 >Ohio</option> 1553 <option 1554 value="OK" 1555 >Oklahoma</option> 1556 <option 1557 value="OR" 1558 >Oregon</option> 1559 <option 1560 value="PA" 1561 >Pennsylvania</option> 1562 <option 1563 value="RI" 1564 >Rhode Island</option> 1565 <option 1566 value="SC" 1567 >South Carolina</option> 1568 <option 1569 value="SD" 1570 >South Dakota</option> 1571 <option 1572 value="TN"
1573 >Tennessee</option> 1574 <option 1575 value="TX" 1576 >Texas</option> 1577 <option 1578 value="UT" 1579 >Utah</option> 1580 <option 1581 value="VT" 1582 >Vermont</option> 1583 <option 1584 value="VA" 1585 >Virginia</option> 1586 <option 1587 value="WA" 1588 >Washington</option> 1589 <option 1590 value="WV" 1591 >West Virginia</option> 1592 <option 1593 value="WI" 1594 >Wisconsin</option> 1595 <option 1596 value="WY" 1597 >Wyoming</option> 1598 <option 1599 value="PR" 1600 >Puerto Rico</option> 1601 </select> 1602 <div 1603 x-show="showValidation('state')" 1604 x-cloak 1605 class="invalid-feedback" 1606 >Please enter your state.</div> 1607 </div> 1608 1609 <!--postal_code--> 1610 <div 1611 x-bind:class="{'col-span-full': layout === 'inline'}" 1612 > 1613 <label 1614 x-bind:for="makeId('postal_code')" 1615 class="ml-3 mb-1 text-sm" 1616 x-text="(requiredFields().postalCode ? ' * ' : '') + postalCodeName()" 1617 ></label> 1618 <input 1619 name="postal_code" 1620 type="text" 1621 class="form-control rounded-full" 1622 x-bind:class="validationClass('postalCode')" 1623 x-bind:id="makeId('postal_code')" 1624 x-bind:placeholder="postalCodeName()" 1625 autocomplete="postal-code" 1626 required 1627 maxlength="7" 1628 x-model="postalCode" 1629 value="" 1630 x-on:change="searchDealers()" 1631 /> 1632 <div 1633 x-show="showValidation('postalCode')" 1634 x-cloak 1635 class="invalid-feedback" 1636 >Please enter your <span x-text="postalCodeName().toLowerCase()"></span>.</div> 1637 </div> 1638 1639 <template x-if="selectedDealer"> 1640 <div class="col-span-full bg-gray-200 rounded-lg p-3 text-blue-800"> 1641 <i class="fa-solid fa-map-marker"></i> Your dealer is <span x-text="selectedDealer.name"></span>. 1642 </div> 1643 </template> 1644 1645 <div 1646 class="col-span-full bg-gray-200 rounded-xl p-3 text-blue-800" 1647 x-show="showBottledWaterInterest()" 1648 > 1649 <div class="mb-2">Are you interested in bottled water?</div> 1650 <div> 1651 <button 1652 type="button" 1653 class="btn btn-blue rounded-full" 1654 x-on:click="updateBottledWaterInterest('yes')" 1655 x-bind:disabled="showNoDealers()" 1656 >Yes <i class="fa-solid fa-check"></i></button> 1657 <button 1658 type="button" 1659 class="btn btn-blue rounded-full" 1660 x-on:click="updateBottledWaterInterest('no')" 1661 x-bind:disabled="showNoDealers()" 1662 >No <i class="fa-solid fa-times"></i></button> 1663 </div> 1664 </div> 1665 1666 <div 1667 class="col-span-full grid grid-cols-1 gap-2 text-blue-800" 1668 x-show="showDealerSelect()" 1669 > 1670 <template 1671 x-for="dealer in filteredDealers()" 1672 x-bind:key="dealer.id" 1673 > 1674 <div 1675 class="bg-gray-100 hover:bg-gray-200 rounded-xl p-3" 1676 x-bind:class="{ 'border-2 shadow' : dealer.preferred_dealer}" 1677 > 1678 <div class="flex items-center"> 1679 <div class="grow"> 1680 <h4 class="text-blue-500 text-lg" x-text="dealer.name"></h4> 1681 <div x-text="dealer.city + ', ' + dealer.state"></div> 1682 <div class="mt-1" x-show="dealer.preferred_dealer">
1683 <span class="text-xs px-2 py-1 rounded-full bg-blue-500 text-blue-800">Suggested Dealer</span> 1684 </div> 1685 </div> 1686 <div> 1687 <button 1688 type="button" 1689 class="btn btn-blue rounded-full text-sm px-2 py-1 whitespace-nowrap" 1690 x-on:click="selectDealer(dealer)" 1691 >Select <i class="fa-solid fa-plus-circle"></i></button> 1692 </div> 1693 </div> 1694 </div> 1695 </template> 1696 </div> 1697 1698 <div 1699 class="col-span-full bg-blue-800 text-white font-bold p-2 rounded-lg text-blue-800" 1700 x-show="showNoDealers()" 1701 > 1702 <i class="fa-solid fa-exclamation-circle mr-1"></i> 1703 Our Culligan dealerships do not service your area. Visit <a x-on:click="logClickToCorporate()" x-bind:href="'https://www.culligan.com/dealer-locator/' + postalCode + '?interest=' + shortenedProductInterest() + '&utm_medium=referral&utm_source=kennedy'" rel="noopener noreferrer" class="underline">culligan.com</a> to view a complete list of dealers. 1704 </div> 1705 1706 <!--phone--> 1707 <div 1708 x-bind:class="{'col-span-full': layout === 'inline'}" 1709 x-show="shownFields().phone" 1710 > 1711 <label 1712 x-bind:for="makeId('phone')" 1713 class="ml-3 mb-1 text-sm" 1714 ><span x-show="requiredFields().phone"> * </span>Telephone</label> 1715 <input 1716 name="phone" 1717 type="text" 1718 class="form-control rounded-full" 1719 x-bind:class="validationClass('phone')" 1720 x-bind:id="makeId('phone')" 1721 x-mask="999-999-9999" 1722 placeholder="Telephone" 1723 autocomplete="tel-national" 1724 required 1725 x-model.debounce="phone" 1726 value="" 1727 x-bind:disabled="showNoDealers()" 1728 /> 1729 <div 1730 x-show="showValidation('phone')" 1731 x-cloak 1732 class="invalid-feedback" 1733 >Please enter your phone number.</div> 1734 </div> 1735 1736 <!--email--> 1737 <div 1738 x-bind:class="{'col-span-full': layout === 'inline'}" 1739 x-show="shownFields().email" 1740 > 1741 <label 1742 x-bind:for="makeId('email')" 1743 class="ml-3 mb-1 text-sm" 1744 ><span x-show="requiredFields().email"> * </span>Email</label> 1745 <input 1746 name="email" type="email" 1747 class="form-control rounded-full" 1748 x-bind:class="validationClass('email')" 1749 x-bind:id="makeId('email')" 1750 placeholder="Email" 1751 autocomplete="email" 1752 required 1753 x-model.debounce="email" 1754 value="" 1755 x-bind:disabled="showNoDealers()" 1756 /> 1757 <div 1758 x-show="showValidation('email')" 1759 x-cloak 1760 class="invalid-feedback" 1761 >Please enter your email.</div> 1762 </div> 1763 1764 <!--product_interest--> 1765 <div 1766 class="col-span-full" 1767 x-show="shownFields().productInterest" 1768 > 1769 <label 1770 x-bind:for="makeId('product_interest')" 1771 class="ml-3 mb-1 text-sm" 1772 ><span x-show="requiredFields().productInterest"> * </span>Product interest</label> 1773 <select 1774 name="product_interest" 1775 class="form-control rounded-full" 1776 x-bind:class="validationClass('productInterest')" 1777 x-bind:id="makeId('product_interest')" 1778 required 1779 x-model="productInterest" 1780 x-bind:disabled="showNoDealers()" 1781 > 1782 <option disabled selected value="">Product interest</option> 1783 <option 1784 value="water_softener" 1785 >Water Softening and Salt-Free Conditioner</option> 1786 <option 1787 value="drinking_water_system" 1788 >Drinking Water System</option> 1789 <option 1790 value="bottled_water" 1791 >Bottled Water</option> 1792 <option 1793 value="bottleless_coolers" 1794 >Bottleless Coolers</option> 1795 <option 1796 value="service" 1797 >Billing, Customer Service, Repair, Salt</option> 1798 <option 1799 value="commercial_and_industrial" 1800 >Commercial / Industrial</option> 1801 <option 1802 value="culligan_brand" 1803 >Other, Please Explain</option> 1804 </select> 1805 <div 1806 x-show="showValidation('productInterest')" 1807 x-cloak 1808 class="invalid-feedback" 1809 >Please select your interest.</div> 1810 </div> 1811 1812 <!--referral_source--> 1813 <div 1814 class="col-span-full" 1815 x-show="shownFields().referralSource" 1816 > 1817 <label 1818 x-bind:for="makeId('referral_source')" 1819 class="ml-3 mb-1 text-sm" 1820 ><span x-show="requiredFields().referralSource"> * </span>How did you hear about us?</label> 1821 <select 1822 name="referral_source" 1823 class="form-control rounded-full" 1824 x-bind:class="validationClass('referralSource')" 1825 x-bind:id="makeId('referral_source')" 1826 required 1827 x-model="referralSource" 1828 x-bind:disabled="showNoDealers()" 1829 > 1830 <option disabled selected value="">Referral Source</option> 1831 <template x-for="source in referral_sources"> 1832 <option 1833 x-bind:value="source" 1834 x-text="source" 1835 ></option> 1836 </template> 1837 </select> 1838 <div 1839 x-show="showValidation('referralSource')" 1840 x-cloak 1841 class="invalid-feedback" 1842 >Please select your referral source.</div> 1843 </div> 1844 1845 <!--delivery_type--> 1846 <div 1847 class="col-span-full" 1848 x-show="shownFields().deliveryType" 1849 > 1850 <div class="items-center space-x-2" x-bind:class="validationClass('deliveryType')">
1851 <span class="text-sm"><span x-show="requiredFields().deliveryType"> * </span>Delivery Type</span> 1852 <template x-for="value in deliveryTypes"> 1853 <button 1854 type="button" 1855 class="btn rounded-full" 1856 x-bind:class="isDeliveryTypeSelected(value) ? 'btn-indigo' : 'btn-white'" 1857 x-on:click="selectDeliveryType(value)" 1858 x-bind:disabled="showNoDealers()" 1859 > 1860 <span x-text="value" class="capitalize"></span> 1861 <span x-show="isDeliveryTypeSelected(value)"><i class="fa-solid fa-check-square fa-fw"></i></span> 1862 <span x-show="!isDeliveryTypeSelected(value)"><i class="fa-solid fa-square fa-fw"></i></span> 1863 </button> 1864 </template> 1865 </div> 1866 <div 1867 x-show="showValidation('deliveryType')" 1868 x-cloak 1869 class="invalid-feedback" 1870 >Select a valid delivery type.</div> 1871 </div> 1872 1873 <!--free_water_test--> 1874 <div 1875 class="col-span-full" 1876 x-show="shownFields().freeWaterTest" 1877 > 1878 <label 1879 x-bind:for="makeId('free_water_test_yes')" 1880 class="ml-3 mb-1 text-sm" 1881 ><span x-show="requiredFields().freeWaterTest"> * </span>Free water test</label> 1882 <div class="px-1 py-2" x-bind:class="validationClass('freeWaterTest')"> 1883 <input 1884 name="free_water_test" 1885 type="radio" 1886 x-bind:id="makeId('free_water_test_yes')" 1887 value="yes" 1888 x-model.debounce="freeWaterTest" 1889 /> 1890 <label 1891 x-bind:for="makeId('free_water_test_yes')" 1892 >Yes</label> 1893 <input 1894 name="free_water_test" 1895 type="radio" 1896 class="ml-2" 1897 x-bind:id="makeId('free_water_test_no')" 1898 value="no" 1899 x-model.debounce="freeWaterTest" 1900 x-bind:disabled="showNoDealers()" 1901 /> 1902 <label 1903 x-bind:for="makeId('free_water_test_no')" 1904 >No</label> 1905 </div> 1906 <div 1907 x-show="showValidation('freeWaterTest')" 1908 x-cloak 1909 class="invalid-feedback" 1910 >Please select if you would like a free water test.</div> 1911 </div> 1912 1913 <!--appointment_request--> 1914 <div 1915 class="col-span-full space-y-3" 1916 x-show="shownFields().appointmentRequest" 1917 > 1918 1919 <div> 1920 <input 1921 name="appointment_request" 1922 type="checkbox" 1923 class="rounded-md" 1924 x-bind:id="makeId('appointment_request')" 1925 value="" 1926 x-model="appointmentRequest" 1927 x-bind:disabled="showNoDealers() || (requiredFields().appointmentRequest && appointmentRequest)" 1928 /> 1929 <label 1930 x-bind:for="makeId('appointment_request')" 1931 ><span x-show="requiredFields().appointmentRequest"> * </span>Interested in an appointment?</label> 1932 </div> 1933 1934 <div 1935 class="space-y-3" 1936 x-show="appointmentRequest" 1937 > 1938 1939 <div> 1940 <div class="mb-1">Your Culligan professional will contact you to confirm your request.</div> 1941 <div>Your request is subject to availability, holidays and hours of operation.</div> 1942 </div> 1943 1944 <div x-show="shownFields().preferredTime"> 1945 <label 1946 x-bind:for="makeId('preferred_time')" 1947 class="ml-3 mb-1 text-sm" 1948 ><span x-show="requiredFields().preferredTime"> * </span>Preferred time</label> 1949 <select 1950 name="preferred_time" 1951 class="form-control rounded-full" 1952 x-bind:class="validationClass('preferredTime')" 1953 x-bind:id="makeId('preferred_time')" 1954 required 1955 x-model="preferredTime" 1956 x-bind:disabled="showNoDealers()" 1957 > 1958 <option disabled selected value="">Select a time</option> 1959 <template x-for="time in preferredTimes"> 1960 <option 1961 x-bind:value="time" 1962 x-text="time" 1963 ></option> 1964 </template> 1965 </select> 1966 <div 1967 x-show="showValidation('preferredTime')" 1968 x-cloak 1969 class="invalid-feedback" 1970 >Please select your preferred time.</div> 1971 </div> 1972 1973 <div x-show="shownFields().preferredDate"> 1974 <div 1975 class="ml-3 mb-1 text-sm block" 1976 ><span x-show="requiredFields().preferredDate"> * </span>Preferred date</div> 1977 <div 1978 class="form-control rounded-full" 1979 x-bind:class="validationClass('preferredDate')" 1980 > 1981 <input 1982 name="preferred_date" 1983 class="border-none p-0 w-11/12 focus:ring-0" 1984 placeholder="Select a date" 1985 x-ref="preferredDate" 1986 x-model="preferredDate" 1987 x-bind:disabled="showNoDealers()" 1988 /> 1989 </div> 1990 <div 1991 x-show="showValidation('preferredDate')" 1992 x-cloak 1993 class="invalid-feedback" 1994 >Please select your preferred date.</div> 1995 </div> 1996 1997 </div> 1998 1999 </div> 2000 2001 <!--message--> 2002 <div 2003 class="col-span-full" 2004 x-show="shownFields().message" 2005 > 2006 <label 2007 x-bind:for="makeId('message')" 2008 class="ml-3 mb-1 text-sm" 2009 ><span x-show="requiredFields().message"> * </span>Additional information</label> 2010 <textarea 2011 name="message" 2012 rows="5" 2013 class="form-control rounded-lg" 2014 x-bind:class="validationClass('message')" 2015 x-bind:id="makeId('message')" 2016 required 2017 x-model.debounce="message" 2018 placeholder="Add a message" 2019 x-bind:disabled="showNoDealers()" 2020 ></textarea> 2021 <div 2022 x-show="showValidation('message')" 2023 x-cloak 2024 class="invalid-feedback" 2025 >Add a message</div> 2026 </div> 2027 2028 <!--nurture--> 2029 <div 2030 class="col-span-full" 2031 x-show="showNurture()" 2032 > 2033 <div> 2034 <input 2035 name="nurture" 2036 type="checkbox" 2037 x-bind:id="makeId('nurture')" 2038 x-model.debounce="nurture" 2039 />
2040 <span x-show="requiredFields().nurture"> * </span> 2041 <label 2042 x-bind:for="makeId('nurture')" 2043 class="ml-3 mb-1 text-sm" 2044 x-html="nurture_title" 2045 ></label> 2046 </div> 2047 <div class="text-xs" x-html="nurture_body"></div> 2048 <div 2049 x-show="showValidation('nurture')" 2050 x-cloak 2051 class="invalid-feedback" 2052 >Please agree to continue.</div> 2053 </div> 2054 2055 <!--disclaimer--> 2056 <div 2057 class="col-span-full" 2058 x-show="shownFields().disclaimer && requiredFields().phone" 2059 > 2060 <div class="text-xs" x-html="disclaimer"></div> 2061 </div> 2062 2063 <!--recaptcha--> 2064 <div 2065 class="col-span-full" 2066 > 2067 <div class="text-xs"> 2068 This site is protected by reCAPTCHA and the Google 2069 <a href="https://policies.google.com/privacy">Privacy Policy</a> and 2070 <a href="https://policies.google.com/terms">Terms of Service</a> apply. 2071 </div> 2072 </div> 2073 2074 <!--submit--> 2075 <div class="col-span-full"> 2076 <button 2077 type="submit" 2078 x-bind:id="makeId('submit')" 2079 class="btn btn-white-blue rounded-full" 2080 x-bind:class="{'opacity-60' : submitStatus === 'in progress'}" 2081 x-bind:style="showNoDealers() ? 'pointer-events: none' : ''" 2082 x-bind:disabled="showNoDealers()" 2083 >Submit <span x-show="hasLeadInSession">Again</span> 2084 <span x-show="submitStatus !== 'in progress'"><i class="fa-sharp fa-regular fa-arrow-right ml-1"></i></span> 2085 <span x-show="submitStatus === 'in progress'"><i class="fa-solid fa-spinner fa-fw fa-spin"></i></span> 2086 </button> 2087 </div> 2088 2089 </form> 2090 2091 </div> 2092 2093 <template x-if="submitStatus === 'success' && (typeof show === 'undefined' || show)"> 2094 2095 <div class="pt-3 pb-5 border-b border-gray-500"> 2096 <div class="text-blue-800 mb-3"> 2097 <div class="text-3xl">Thank you for contacting us.</div> 2098 <div class="text-lg">One of our local water experts will contact you shortly.</div> 2099 </div> 2100 <div class="aspect-w-16 aspect-h-9"> 2101 <iframe 2102 src="https://fast.wistia.net/embed/iframe/mvbxtgs846?videoFoam=true" 2103 title="Culligan-Thank-You Video" 2104 allow="autoplay; fullscreen" 2105 allowtransparency="true" 2106 allowfullscreen 2107 width="100%" 2108 height="100%" 2109 ></iframe> 2110 </div> 2111 </div> 2112 2113 </template> 2114 2115 <template x-if="submitStatus === 'recaptcha_failure' && (typeof show === 'undefined' || show)"> 2116 2117 <div class="pt-3 pb-5 border-b border-gray-500"> 2118 <div class="text-blue-800 mb-3"> 2119 <div class="text-2xl">We ran into an issue submitting your form, please call 2120 <a 2121 href="tel:8663304482" 2122 class="headerPhone text-2xl text-blue-500 font-bold underline" 2123 x-data="phone('8663304482', 'recaptcha_fail')" 2124 x-bind="clickToCall" 2125 > 2126 866-330-4482 2127 </a> 2128 to connect with your Culligan Dealer.</div> 2129 </div> 2130 </div> 2131 2132 </template> 2133 2134</div> 2135 2136 </div> 2137 2138</div> 2139</div> 2140 2141 </main> 2142 2143 <footer 2144 data-component="flow.footer" 2145 class="bg-blue-800" 2146> 2147 2148 <div class="2xl:container px-4 py-8 space-y-6 relative"> 2149 2150 <div class="grid grid-cols-1 md:grid-cols-2 xl:grid-cols-4 gap-6 items-center"> 2151 2152 <div class="col-span-1 md:col-span-2 text-left"> 2153 <a href="/"> 2154 <img 2155 src="/images/logos/logo-white.svg" 2156 alt="Culligan" 2157 class="w-32 md:w-56" 2158 loading="lazy" 2159 /> 2160 </a> 2161 </div> 2162 2163 <div class="col-span-1 text-left"> 2164 2165 <div class="grid grid-cols-1 gap-3"> 2166 <div class="text-white font-bold"></div> 2167 <div class="text-white text-sm">Discover the perfect solution for your water needs with our Culligan experts. Not sure where to start? Take our <strong>Water Quiz</strong> to get personalized recommendations, or schedule your free in-home water test today.</div> 2168 </div> 2169 </div> 2170 2171 <div class="col-span-1 text-left md:text-center"> 2172 2173 <a 2174 x-data 2175 x-bind:id="null ?? $id('cta')" 2176 href="/water-solutions"
2177 class="btn btn-azure rounded-full md:text-2xl px-4 btn-white md:text-base" 2178 target="_self" 2179 >Take water quiz</a> 2180 2181 2182 </div> 2183 2184 </div> 2185 2186 <hr class="bg-slate-500" /> 2187 2188 <div class="grid grid-cols-1 md:grid-cols-2 xl:grid-cols-4 gap-6"> 2189 2190 <div class="md:col-span-2 xl:col-span-3"> 2191 2192 <div 2193 data-component="flow.footer-links" 2194 class="grid grid-cols-1 sm:grid-cols-3 gap-6" 2195> 2196 2197 <div class="space-y-4"> 2198 <div class="text-white font-bold text-lg">Current Customers</div> 2199 <a 2200 href="https://portal.unco.mcgware.com/" 2201 target="_blank" 2202 rel="noopener" 2203 class="block text-white hover:underline transition duration-500" 2204 aria-label="Opens in new tab" 2205 >View or Pay Bill</a> 2206 <a 2207 href="/content/documents/pdf/sterling-billing-update-june-25(1).pdf" 2208 target="_blank" 2209 rel="noopener" 2210 class="block text-white hover:underline transition duration-500" 2211 aria-label="Opens in new tab" 2212 >Important Changes to Deliveries, Statements and Invoices</a> 2213 <a 2214 href="https://webapp.getthereferral.com//partnerPages.php?companyCode=44624" 2215 target="_blank" 2216 rel="noopener" 2217 class="block text-white hover:underline transition duration-500" 2218 aria-label="Opens in new tab" 2219 >Referral Program</a> 2220 <a 2221 href="/services/service-repairs" 2222 target="_blank" 2223 rel="noopener" 2224 class="block text-white hover:underline transition duration-500" 2225 aria-label="Opens in new tab" 2226 >Service & Repairs</a> 2227 <a 2228 href="/help-guides/bypass-videos" 2229 target="_blank" 2230 rel="noopener" 2231 class="block text-white hover:underline transition duration-500" 2232 aria-label="Opens in new tab" 2233 >Softener Bypass Videos</a> 2234 <a 2235 href="https://www.culligan.com/support/product-information/product-manuals" 2236 target="_blank" 2237 rel="noopener" 2238 class="block text-white hover:underline transition duration-500" 2239 aria-label="Opens in new tab" 2240 >Manuals - Softeners, Filters, ROs & Bottled Water</a> 2241 <a 2242 href="https://sterlingwater.com/product-catalog/" 2243 target="_blank" 2244 rel="noopener" 2245 class="block text-white hover:underline transition duration-500" 2246 aria-label="Opens in new tab" 2247 >Manuals - Bottleless Water Coolers</a> 2248 <a 2249 href="/contact-your-water-expert" 2250 target="" 2251 rel="" 2252 class="block text-white hover:underline transition duration-500" 2253 aria-label="Opens in same tab" 2254 >Contact</a> 2255 </div> 2256 <div class="space-y-4"> 2257 <div class="text-white font-bold text-lg">Services</div> 2258 <a 2259 href="/services/water-testing" 2260 target="" 2261 rel="" 2262 class="block text-white hover:underline transition duration-500" 2263 aria-label="Opens in same tab" 2264 >Water Testing</a> 2265 <a 2266 href="/water-solutions" 2267 target="" 2268 rel="" 2269 class="block text-white hover:underline transition duration-500" 2270 aria-label="Opens in same tab" 2271 >Water Problems Quiz</a> 2272 <a 2273 href="/services/well-water-testing" 2274 target="" 2275 rel="" 2276 class="block text-white hover:underline transition duration-500" 2277 aria-label="Opens in same tab" 2278 >Well Water Testing</a> 2279 <a 2280 href="/water-solutions" 2281 target="" 2282 rel="" 2283 class="block text-white hover:underline transition duration-500" 2284 aria-label="Opens in same tab" 2285 >Water Quiz</a> 2286 <a 2287 href="/services/water-delivery" 2288 target="" 2289 rel="" 2290 class="block text-white hover:underline transition duration-500" 2291 aria-label="Opens in same tab" 2292 >Water Delivery</a> 2293 <a 2294 href="/services/salt-delivery" 2295 target="" 2296 rel="" 2297 class="block text-white hover:underline transition duration-500" 2298 aria-label="Opens in same tab" 2299 >Salt Delivery</a> 2300 <a 2301 href="/services/service-repairs" 2302 target="" 2303 rel="" 2304 class="block text-white hover:underline transition duration-500" 2305 aria-label="Opens in same tab" 2306 >Service & Repairs</a> 2307 <a
2308 href="/services/chloride-reduction" 2309 target="" 2310 rel="" 2311 class="block text-white hover:underline transition duration-500" 2312 aria-label="Opens in same tab" 2313 >Chloride Reduction</a> 2314 <a 2315 href="/services/culligan-coupons-specials" 2316 target="" 2317 rel="" 2318 class="block text-white hover:underline transition duration-500" 2319 aria-label="Opens in same tab" 2320 >Coupons & Specials</a> 2321 <a 2322 href="/services/culligan-connected-home" 2323 target="" 2324 rel="" 2325 class="block text-white hover:underline transition duration-500" 2326 aria-label="Opens in same tab" 2327 >Culligan Connected Home</a> 2328 </div> 2329 <div class="space-y-4"> 2330 <div class="text-white font-bold text-lg">Water Problems</div> 2331 <a 2332 href="/water-problems/water-contaminants-101" 2333 target="" 2334 rel="" 2335 class="block text-white hover:underline transition duration-500" 2336 aria-label="Opens in same tab" 2337 >Water Contaminants</a> 2338 <a 2339 href="/water-problems/perfluorinated-chemicals" 2340 target="" 2341 rel="" 2342 class="block text-white hover:underline transition duration-500" 2343 aria-label="Opens in same tab" 2344 >PFAS</a> 2345 <a 2346 href="/water-problems/lead-contamination" 2347 target="" 2348 rel="" 2349 class="block text-white hover:underline transition duration-500" 2350 aria-label="Opens in same tab" 2351 >Lead Contamination</a> 2352 <a 2353 href="/water-problems/hard-water" 2354 target="" 2355 rel="" 2356 class="block text-white hover:underline transition duration-500" 2357 aria-label="Opens in same tab" 2358 >Hard Water</a> 2359 <a 2360 href="/water-problems/smelly-water" 2361 target="" 2362 rel="" 2363 class="block text-white hover:underline transition duration-500" 2364 aria-label="Opens in same tab" 2365 >Smelly Water</a> 2366 <a 2367 href="/water-problems/bad-tasting-water" 2368 target="" 2369 rel="" 2370 class="block text-white hover:underline transition duration-500" 2371 aria-label="Opens in same tab" 2372 >Bad Tasting Water</a> 2373 <a 2374 href="/water-problems/high-iron-water" 2375 target="" 2376 rel="" 2377 class="block text-white hover:underline transition duration-500" 2378 aria-label="Opens in same tab" 2379 >High Iron Water</a> 2380 </div> 2381 2382</div> 2383 2384 </div> 2385 2386 <div class="space-y-4"> 2387 2388 <div class="text-white font-bold text-lg font-bold">Contact Us</div> 2389 2390 <div class="flex items-center gap-2 text-white"> 2391 <i aria-hidden="true" class="fa-solid fa-envelope fa-fw"></i> 2392 <a 2393 href="/contact-your-water-expert" 2394 class="block text-xl hover:underline font-bold" 2395 >Contact Us</a> 2396 </div> 2397 2398 <div class="flex items-center gap-2 text-white"> 2399 <i aria-hidden="true" class="fa-solid fa-phone fa-fw animate-wiggle"></i> 2400 <a 2401 href="tel:8779841822" 2402 class="footerPhone block text-xl hover:underline font-bold" 2403 x-data="phone('8779841822', 'footer')" 2404 x-bind="clickToCall" 2405 >877-984-1822</a> 2406 </div> 2407 2408 <div class="flex gap-3 text-white"> 2409 <a
2410 href="https://www.facebook.com/SterlingCulliganWater" 2411 target="_blank" 2412 rel="noopener" 2413 title="Facebook" 2414 aria-label="Facebook" 2415 > 2416 <i class="fa-brands fa-facebook text-lg hover:text-[#4267B2] transition duration-500"></i> 2417 <span class="sr-only">Facebook</span> 2418 </a> 2419 <a 2420 href="https://www.instagram.com/sterlingculliganwater/" 2421 target="_blank" 2422 rel="noopener" 2423 title="Instagram" 2424 aria-label="Instagram" 2425 > 2426 <i class="fa-brands fa-instagram text-lg hover:text-[#5851DB] transition duration-500"></i> 2427 <span class="sr-only">Instagram</span> 2428 </a> 2429 </div> 2430 2431 <div 2432 data-component="default.links-sidebar-bottom" 2433></div> 2434 2435 </div> 2436 2437 </div> 2438 2439 <hr class="bg-slate-500" /> 2440 2441 <div> 2442 <span class="text-white font-bold">Locations in:</span> 2443 <a 2444 href="https://www.culliganh2o.com/locations/sauk-centre-mn/1088?dealer=1088" 2445 class="underline text-white" 2446 > 2447 Sauk Centre MN 2448 </a> 2449 <span class="text-white"> | </span> 2450 <a 2451 href="https://www.culliganh2o.com/locations/eau-claire-wi/1253?dealer=1253" 2452 class="underline text-white" 2453 > 2454 Eau Claire WI 2455 </a> 2456 <span class="text-white"> | </span> 2457 <a 2458 href="https://www.culliganh2o.com/locations/rothschild-wi/1252?dealer=1252" 2459 class="underline text-white" 2460 > 2461 Rothschild WI 2462 </a> 2463 <span class="text-white"> | </span> 2464 <a 2465 href="https://www.culliganh2o.com/locations/waupaca-wi/1228?dealer=1228" 2466 class="underline text-white" 2467 > 2468 Waupaca WI 2469 </a> 2470 <span class="text-white"></span> 2471 </div> 2472 2473 <div> 2474 <span class="text-white font-bold">Proudly serving:</span> 2475 <span class="text-white">Eau Claire WI <span>|</span> Wausau WI <span>|</span> Stevens Point WI <span>|</span> Marshfield WI <span>|</span> Wisconsin Rapids WI <span>|</span> Willmar MN <span>|</span> Menomonie WI <span>|</span> Chippewa Falls WI <span>|</span> Mosinee WI <span>|</span> Sauk Centre MN <span>|</span> Little Falls MN <span>|</span> Long Prairie MN <span>|</span> Antigo WI</span> 2476 </div> 2477 2478 <hr class="bg-slate-500" /> 2479 2480 <div class="flex flex-wrap gap-2"> 2481 <div class="text-white font-bold">©2026 Culligan. All Rights Reserved.</div> 2482 <div> 2483 <a 2484 href="/privacy-policy" 2485 class="text-white hover:underline" 2486 >Privacy Policy</a> 2487 <span class="text-white">|</span> 2488 <a 2489 href="/site-structure" 2490 class="text-white hover:underline" 2491 >Sitemap</a> 2492 <span class="text-white">|</span> 2493 <a 2494 href="/accessibility-statement" 2495 class="text-white hover:underline" 2496 >Accessibility</a> 2497 </div> 2498 </div> 2499 2500 </div> 2501 2502</footer> 2503 2504 </div> 2505 2506 <div 2507 data-component="default.overlay" 2508 class="fixed inset-0 bg-blue-800/50 backdrop-blur-sm z-50 flex overscroll-none" 2509 x-data="{show: false}" 2510 x-show="show" 2511 x-cloak 2512 x-on:toggle-overlay.window="show = $event.detail" 2513 x-transition:enter="transition ease-out duration-200" 2514 x-transition:enter-start="opacity-0" 2515 x-transition:enter-end="opacity-100" 2516 x-transition:leave="transition ease-in duration-200" 2517 x-transition:leave-start="opacity-100" 2518 x-transition:leave-end="opacity-0" 2519> 2520 <div 2521 data-component="default.mobile-nav" 2522 class="absolute top-0 right-0 h-full overflow-y-auto overscroll-contain bg-white py-2 max-w-full w-[450px]" 2523 aria-label="Mobile Navigation" 2524 aria-modal="true" 2525 role="dialog" 2526 x-data="{ 2527 show: false 2528 }" 2529 x-show="show" 2530 x-cloak 2531 x-on:toggle-mobile-nav.window="show = !show; $dispatch('toggle-overlay', show)" 2532 x-on:click.outside="show = false; $dispatch('toggle-overlay', false)" 2533 x-on:keyup.escape="show = false; $dispatch('toggle-overlay', false)" 2534 x-transition:enter="transition ease-out duration-500" 2535 x-transition:enter-start="translate-x-[500px]" 2536 x-transition:enter-end="translate-x-0" 2537 x-transition:leave="transition ease-in duration-200" 2538 x-transition:leave-start="translate-x-0" 2539 x-transition:leave-end="translate-x-[500px]" 2540 x-trap.noscroll.inert.noreturn="show" 2541> 2542 2543<nav class="flex items-center justify-between bg-white p-2"> 2544 <a 2545 href="/" 2546 > 2547 <img 2548 src="/images/logos/culligan_water_you_love.svg" 2549 alt="Sterling Culligan Water" 2550 class="hidden sm:block h-10" 2551 /> 2552 <img 2553 src="/images/logos/logo.svg" 2554 alt="Sterling Culligan Water" 2555 class="sm:hidden h-10" 2556 /> 2557 </a> 2558 2559 <button 2560 type="button" 2561 class="px-2" 2562 aria-expanded="false" 2563 aria-label="Close Mobile Navigation" 2564 x-data 2565 x-on:click="show = false; $dispatch('toggle-overlay', false)" 2566 > 2567 <i class="fa-regular fa-x fa-2x text-blue-500 text-xl"></i> 2568 </button> 2569</nav> 2570 2571 <nav 2572 aria-label="Main Navigation" 2573 x-cloak 2574 x-data="accordion()" 2575 > 2576 2577 2578 <a 2579 href="https://portal.unco.mcgware.com" 2580 target="_blank" 2581 rel="noopener" 2582 class="block text-blue-800 text-lg font-medium px-6 py-3" 2583 >Pay Bill Online <i class="fa-solid fa-up-right-from-square fa-xs"></i></a> 2584 <div> 2585 <button 2586 type="button" 2587 class="flex gap-6 justify-between items-center w-full text-left text-blue-800 text-lg font-medium px-6 py-3" 2588 x-bind="trigger('Softeners & Filters')" 2589 > 2590 Softeners & Filters 2591 <i class="fa-solid fa-angle-up ml-1" x-show="isActive('Softeners & Filters')"></i> 2592 <i class="fa-solid fa-angle-down ml-1" x-show="!isActive('Softeners & Filters')"></i> 2593 </button> 2594 <div 2595 class="pt-1 pb-3 px-10 space-y-3" 2596 x-bind="panel('Softeners & Filters')" 2597 x-cloak 2598 > 2599 <a 2600 href="/softeners-filters/water-softeners" 2601 target="" 2602 rel="" 2603 class="block text-blue-800 text-lg" 2604 >
2604Water Softeners </a> 2605 <a 2606 href="/softeners-filters/whole-home-water-filters" 2607 target="" 2608 rel="" 2609 class="block text-blue-800 text-lg" 2610 >Whole Home Water Filters </a> 2611 </div> 2612 </div> 2613 <div> 2614 <button 2615 type="button" 2616 class="flex gap-6 justify-between items-center w-full text-left text-blue-800 text-lg font-medium px-6 py-3" 2617 x-bind="trigger('Drinking Water & Coolers')" 2618 > 2619 Drinking Water & Coolers 2620 <i class="fa-solid fa-angle-up ml-1" x-show="isActive('Drinking Water & Coolers')"></i> 2621 <i class="fa-solid fa-angle-down ml-1" x-show="!isActive('Drinking Water & Coolers')"></i> 2622 </button> 2623 <div 2624 class="pt-1 pb-3 px-10 space-y-3" 2625 x-bind="panel('Drinking Water & Coolers')" 2626 x-cloak 2627 > 2628 <a 2629 href="/drinking-water-coolers/reverse-osmosis-drinking-water-systems" 2630 target="" 2631 rel="" 2632 class="block text-blue-800 text-lg" 2633 >RO Drinking Water Systems </a> 2634 <a 2635 href="https://sterlingwater.com/" 2636 target="_blank" 2637 rel="noopener" 2638 class="block text-blue-800 text-lg" 2639 >Bottleless Coolers <i class="fa-solid fa-up-right-from-square fa-xs"></i></a> 2640 <a 2641 href="/drinking-water-coolers/bottled-water-coolers" 2642 target="" 2643 rel="" 2644 class="block text-blue-800 text-lg" 2645 >Bottled Water & Coolers </a> 2646 </div> 2647 </div> 2648 <div> 2649 <button 2650 type="button" 2651 class="flex gap-6 justify-between items-center w-full text-left text-blue-800 text-lg font-medium px-6 py-3" 2652 x-bind="trigger('Services')" 2653 > 2654 Services 2655 <i class="fa-solid fa-angle-up ml-1" x-show="isActive('Services')"></i> 2656 <i class="fa-solid fa-angle-down ml-1" x-show="!isActive('Services')"></i> 2657 </button> 2658 <div 2659 class="pt-1 pb-3 px-10 space-y-3" 2660 x-bind="panel('Services')" 2661 x-cloak 2662 > 2663 <a 2664 href="/services/water-testing" 2665 target="" 2666 rel="" 2667 class="block text-blue-800 text-lg" 2668 >Water Testing </a> 2669 <a 2670 href="/services/well-water-testing" 2671 target="" 2672 rel="" 2673 class="block text-blue-800 text-lg" 2674 >Well Water Testing </a> 2675 <a 2676 href="/water-solutions" 2677 target="" 2678 rel="" 2679 class="block text-blue-800 text-lg" 2680 >Water Quiz </a> 2681 <a 2682 href="/services/water-delivery" 2683 target="" 2684 rel="" 2685 class="block text-blue-800 text-lg" 2686 >
2686Water Delivery </a> 2687 <a 2688 href="/services/salt-delivery" 2689 target="" 2690 rel="" 2691 class="block text-blue-800 text-lg" 2692 >Salt Delivery </a> 2693 <a 2694 href="/services/service-repairs" 2695 target="" 2696 rel="" 2697 class="block text-blue-800 text-lg" 2698 >Service & Repairs </a> 2699 <a 2700 href="/services/chloride-reduction" 2701 target="" 2702 rel="" 2703 class="block text-blue-800 text-lg" 2704 >Chloride Reduction </a> 2705 <a 2706 href="/services/culligan-coupons-specials" 2707 target="" 2708 rel="" 2709 class="block text-blue-800 text-lg" 2710 >Coupons & Specials </a> 2711 <a 2712 href="/services/culligan-connected-home" 2713 target="" 2714 rel="" 2715 class="block text-blue-800 text-lg" 2716 >Culligan Connected Home </a> 2717 </div> 2718 </div> 2719 <div> 2720 <button 2721 type="button" 2722 class="flex gap-6 justify-between items-center w-full text-left text-blue-800 text-lg font-medium px-6 py-3" 2723 x-bind="trigger('About')" 2724 > 2725 About 2726 <i class="fa-solid fa-angle-up ml-1" x-show="isActive('About')"></i> 2727 <i class="fa-solid fa-angle-down ml-1" x-show="!isActive('About')"></i> 2728 </button> 2729 <div 2730 class="pt-1 pb-3 px-10 space-y-3" 2731 x-bind="panel('About')" 2732 x-cloak 2733 > 2734 <a 2735 href="/locations/eau-claire-wi/1253" 2736 target="" 2737 rel="" 2738 class="block text-blue-800 text-lg" 2739 >Sterling Culligan Water of Eau Claire </a> 2740 <a 2741 href="/locations/rothschild-wi/1252" 2742 target="" 2743 rel="" 2744 class="block text-blue-800 text-lg" 2745 >Sterling Culligan Water of Rothschild </a> 2746 <a 2747 href="/locations/sauk-centre-mn/1088" 2748 target="" 2749 rel="" 2750 class="block text-blue-800 text-lg" 2751 >Sterling Culligan Water of Sauk Centre </a> 2752 <a 2753 href="/locations/waupaca-wi/1228" 2754 target="" 2755 rel="" 2756 class="block text-blue-800 text-lg" 2757 >Sterling Culligan Water of Waupaca </a> 2758 <a 2759 href="/about/sterling-history" 2760 target="" 2761 rel="" 2762 class="block text-blue-800 text-lg" 2763 >Sterling Water History </a> 2764 <a 2765 href="/about/subscribe-buy-finance" 2766 target="" 2767 rel="" 2768 class="block text-blue-800 text-lg" 2769 >Subscribe, Buy & Finance </a> 2770 <a 2771 href="/about/why-choose-culligan" 2772 target="" 2773 rel="" 2774 class="block text-blue-800 text-lg" 2775 >Why Choose Culligan? </a> 2776 <a 2777 href="/about/careers" 2778 target="" 2779 rel="" 2780 class="block text-blue-800 text-lg" 2781 >Careers </a> 2782 </div> 2783 </div> 2784 <a 2785 href="/contact-your-water-expert" 2786 target="" 2787 rel="" 2788 class="block text-blue-800 text-lg font-medium px-6 py-3" 2789 >Contact </a> 2790 2791 <hr class="my-6" /> 2792 2793 2794 <div> 2795 <button 2796 type="button" 2797 class="flex gap-6 justify-between items-center w-full text-left text-blue-800 text-lg font-medium px-6 py-3" 2798 x-bind="trigger('Current Customers')" 2799 > 2800 Current Customers 2801 <i class="fa-solid fa-angle-up ml-1" x-show="isActive('Current Customers')"></i> 2802 <i class="fa-solid fa-angle-down ml-1" x-show="!isActive('Current Customers')"></i> 2803 </button> 2804 <div 2805 class="pt-1 pb-3 px-10 space-y-3" 2806 x-bind="panel('Current Customers')" 2807 x-cloak 2808 > 2809 <a 2810 href="https://portal.unco.mcgware.com/" 2811 target="_blank" 2812 rel="noopener" 2813 class="block text-blue-800 text-lg" 2814 >View or Pay Bill <i class="fa-solid fa-up-right-from-square fa-xs"></i></a> 2815 <a 2816 href="/content/documents/pdf/sterling-billing-update-june-25(1).pdf" 2817 target="_blank" 2818 rel="noopener" 2819 class="block text-blue-800 text-lg" 2820 >Important Changes to Deliveries, Statements and Invoices </a> 2821 <a 2822 href="https://webapp.getthereferral.com//partnerPages.php?companyCode=44624" 2823 target="_blank" 2824 rel="noopener" 2825 class="block text-blue-800 text-lg" 2826 >Referral Program <i class="fa-solid fa-up-right-from-square fa-xs"></i></a> 2827 <a 2828 href="/services/service-repairs" 2829 target="_blank" 2830 rel="noopener" 2831 class="block text-blue-800 text-lg" 2832 >Service & Repairs </a> 2833 <a 2834 href="/help-guides/bypass-videos" 2835 target="_blank" 2836 rel="noopener" 2837 class="block text-blue-800 text-lg" 2838 >
2838Softener Bypass Videos </a> 2839 <a 2840 href="https://www.culligan.com/support/product-information/product-manuals" 2841 target="_blank" 2842 rel="noopener" 2843 class="block text-blue-800 text-lg" 2844 >Manuals - Softeners, Filters, ROs & Bottled Water <i class="fa-solid fa-up-right-from-square fa-xs"></i></a> 2845 <a 2846 href="https://sterlingwater.com/product-catalog/" 2847 target="_blank" 2848 rel="noopener" 2849 class="block text-blue-800 text-lg" 2850 >Manuals - Bottleless Water Coolers <i class="fa-solid fa-up-right-from-square fa-xs"></i></a> 2851 <a 2852 href="/contact-your-water-expert" 2853 target="" 2854 rel="" 2855 class="block text-blue-800 text-lg" 2856 >Contact </a> 2857 </div> 2858 </div> 2859 <a 2860 href="/services/culligan-coupons-specials" 2861 target="" 2862 rel="" 2863 class="block text-blue-800 text-lg font-medium px-6 py-3" 2864 >Special Offers </a> 2865 2866 <button 2867 x-bind:id="'drawer_cta_mobile' ?? $id('cta')" 2868 type="button" 2869 class="btn btn-azure rounded-full md:text-2xl md:text-base my-4 block justify-between items-center w-11/12 mx-auto text-center" 2870 x-data 2871 2872 x-on:click=" 2873 $dispatch('update-contact', []); 2874 $dispatch('toggle-drawer', { 2875 heading: null, 2876 body: null, 2877 }); 2878 " 2879 >Get pricing</button> 2880 2881 2882 2883 </nav> 2884 2885 2886 <hr class="my-6" /> 2887 2888 <h2 2889 class="text-blue-800 text-lg font-semibold pb-3 px-6" 2890 >Switch Sites</h2> 2891 2892 <nav 2893 aria-label="Site Navigation" 2894 class="px-6 space-y-3" 2895 > 2896 2897 2898 <a 2899 href="/" 2900 target="" 2901 rel="" 2902 class="block text-blue-800" 2903 > 2904 Residential 2905 </a> 2906 2907 2908 <a 2909 href="https://sterlingwater.com/" 2910 target="_blank" 2911 rel="noopener" 2912 class="block text-blue-800" 2913 > 2914 Office 2915 <i class="fa-solid fa-up-right-from-square ml-1"></i> 2916 </a> 2917 2918 2919 <a 2920 href="https://www.sterlingculliganwater.com/" 2921 target="_blank" 2922 rel="noopener" 2923 class="block text-blue-800" 2924 > 2925 Commercial 2926 <i class="fa-solid fa-up-right-from-square ml-1"></i> 2927 </a> 2928 2929 2930 </nav> 2931 2932 2933</div> 2934 <div 2935 data-component="default.drawer" 2936 aria-describedby="drawerDescription" 2937 aria-modal="true" 2938 class="absolute top-0 right-0 h-full overflow-y-auto overscroll-contain bg-white px-4 sm:px-6 md:px-8 py-12 sm:py-16 md:py-20 w-[568px] max-w-full" 2939 role="dialog" 2940 tabindex="-1" 2941 x-bind:aria-label="heading" 2942 x-data="{ 2943 show: false, 2944 heading: 'Get pricing \u0026 special offers', 2945 body: 'Call \u003Ca href=\u0022tel:+18779841822\u0022 class=\u0022formPhone text-blue-800 font-bold underline hover:no-underline\u0022\u003E877-984-1822\u003C\/a\u003E or fill out the form to get a custom water solution.', 2946 }" 2947 x-init="$watch('show', value => $dispatch('toggle-overlay', value)); " 2948 x-show="show" 2949 x-cloak 2950 x-on:toggle-drawer.window=" 2951 show = !show; 2952 $event.detail.heading ? heading = $event.detail.heading : null; 2953 $event.detail.body ? body = $event.detail.body : null; 2954 " 2955 x-on:click.outside="show = false" 2956 x-on:keyup.escape="show = false" 2957 x-transition:enter="transition ease-out duration-500" 2958 x-transition:enter-start="translate-x-[500px]" 2959 x-transition:enter-end="translate-x-0" 2960 x-transition:leave="transition ease-in duration-200" 2961 x-transition:leave-start="translate-x-0" 2962 x-transition:leave-end="translate-x-[500px]" 2963 x-trap.noscroll.inert.noreturn="show" 2964> 2965
2966 <div class="space-y-4 sm:space-y-6 md:space-y-8" 2967 x-on:click.stop 2968 > 2969 2970 <h2 2971 class="text-2xl sm:text-3xl md:text-4xl text-blue-800 font-bold" 2972 x-text="heading" 2973 ></h2> 2974 2975 <div 2976 id="drawerDescription" 2977 class="text-base sm:text-lg md:text-xl text-blue-800 font-semibold" 2978 x-html="body" 2979 ></div> 2980 2981 <div 2982 data-component="default.contact" 2983 2984 class="text-blue-800" 2985 x-data="lead('drawer')" 2986 x-init=" 2987 setShown({}); 2988 setRequired({}); 2989 setValues(JSON.parse('{\u0022prependMessage\u0022:\u0022\u0022,\u0022appendMessage\u0022:\u0022\u0022}')); 2990 loadPaidSearchData(null); 2991 " 2992 x-on:update-contact.window=" 2993 updateContact( 2994 $event.detail.identifier ?? 'hidden', 2995 $event.detail.shown ?? {}, 2996 $event.detail.required ?? {}, 2997 $event.detail.values ?? {}, 2998 ); 2999 " 3000> 3001 3002 <div x-show="submitStatus !== 'success' && submitStatus !== 'recaptcha_failure'"> 3003 3004 <form 3005 x-bind:id="makeId('contact')" 3006 method="post" 3007 novalidate="novalidate" 3008 x-on:submit.prevent="submitForm()" 3009 class="grid grid-cols-1 md:grid-cols-2 gap-x-4 gap-y-3" 3010 > 3011 3012 <!--hidden--> 3013 <input 3014 name="force_id" 3015 type="hidden" 3016 value="" 3017 /> 3018 3019 <div x-show="shownFields().customerType || shownFields().customerLocation" class="grid grid-cols-1 gap-x-4 gap-y-3 md:grid-cols-2 col-span-1 md:col-span-2"> 3020 <!--customer_type--> 3021 <div 3022 x-bind:class="{'col-span-full': layout === 'inline'}" 3023 x-show="shownFields().customerType" 3024 > 3025 <div class="items-center" x-bind:class="validationClass('customerType')"> 3026 <span x-show="requiredFields().customerType"> * </span> 3027 <span class="text-sm">Are you a new or current customer?</span> 3028 <template x-for="(key, value) in customerTypes"> 3029 <button 3030 type="button" 3031 class="btn rounded-full block mt-2" 3032 x-bind:class="isCustomerTypeSelected(value) ? 'btn-indigo' : 'btn-white-indigo'" 3033 x-on:click="customerType = value" 3034 > 3035 <span x-show="isCustomerTypeSelected(value)"><i class="fa-solid fa-circle-dot fa-fw"></i></span> 3036 <span x-show="!isCustomerTypeSelected(value)"><i class="fa-regular fa-circle fa-fw"></i></span> 3037 <span x-text="key" class="capitalize font-normal"></span> 3038 </button> 3039 </template> 3040 </div> 3041 <div 3042 x-show="showValidation('customerType')" 3043 x-cloak 3044 class="invalid-feedback" 3045 >Please select a customer type</div> 3046 </div> 3047 3048 <!--customer_location--> 3049 <div 3050 x-bind:class="{'col-span-full': layout === 'inline'}" 3051 x-show="shownFields().customerLocation" 3052 > 3053 <div class="items-center" x-bind:class="validationClass('customerLocation')"> 3054 <span x-show="requiredFields().customerLocation"> * </span> 3055 <span class="text-sm">Home or office use?</span> 3056 <template x-for="(key, value) in customerLocations"> 3057 <button 3058 type="button" 3059 name="customerLocation" 3060 class="btn rounded-full block mt-2" 3061 x-bind:class="isCustomerLocationSelected(value) ? 'btn-indigo' : 'btn-white-indigo'" 3062 x-on:click="customerLocation = value" 3063 >
3064 <span x-show="isCustomerLocationSelected(value)"><i class="fa-solid fa-circle-dot fa-fw"></i></span> 3065 <span x-show="!isCustomerLocationSelected(value)"><i class="fa-regular fa-circle fa-fw"></i></span> 3066 <span x-text="key" class="capitalize font-normal"></span> 3067 </button> 3068 </template> 3069 </div> 3070 <div 3071 x-show="showValidation('customerLocation')" 3072 x-cloak 3073 class="invalid-feedback" 3074 >Please select a customer location</div> 3075 </div> 3076 </div> 3077 3078 <!--first_name--> 3079 <div 3080 x-bind:class="{'col-span-full': layout === 'inline'}" 3081 > 3082 <label 3083 x-bind:for="makeId('first_name')" 3084 class="ml-3 mb-1 text-sm" 3085 ><span x-show="requiredFields().firstName"> * </span>First name</label> 3086 <input 3087 name="first_name" 3088 type="text" 3089 class="form-control rounded-full" 3090 x-bind:class="validationClass('firstName')" 3091 x-bind:id="makeId('first_name')" 3092 placeholder="First name" 3093 autocomplete="given-name" 3094 required 3095 x-model.debounce="firstName" 3096 value="" 3097 x-bind:disabled="showNoDealers()" 3098 /> 3099 <div 3100 x-show="showValidation('firstName')" 3101 x-cloak 3102 class="invalid-feedback" 3103 >Please enter your first name.</div> 3104 </div> 3105 3106 <!--last_name--> 3107 <div 3108 x-bind:class="{'col-span-full': layout === 'inline'}" 3109 > 3110 <label 3111 x-bind:for="makeId('last_name')" 3112 class="ml-3 mb-1 text-sm" 3113 ><span x-show="requiredFields().lastName"> * </span>Last name</label> 3114 <input 3115 name="last_name" 3116 type="text" 3117 class="form-control rounded-full" 3118 x-bind:class="validationClass('lastName')" 3119 x-bind:id="makeId('last_name')" 3120 placeholder="Last name" 3121 autocomplete="family-name" 3122 required 3123 x-model.debounce="lastName" 3124 value="" 3125 x-bind:disabled="showNoDealers()" 3126 /> 3127 <div 3128 x-show="showValidation('lastName')" 3129 x-cloak 3130 class="invalid-feedback" 3131 >Please enter your last name.</div> 3132 </div> 3133 3134 <!--company--> 3135 <div 3136 x-bind:class="{'col-span-full': layout === 'inline'}" 3137 x-show="shownFields().company" 3138 > 3139 <label 3140 x-bind:for="makeId('company')" 3141 class="ml-3 mb-1 text-sm" 3142 ><span x-show="requiredFields().company"> * </span>Company</label> 3143 <input 3144 name="company" 3145 type="text" 3146 class="form-control rounded-full" 3147 x-bind:class="validationClass('company')" 3148 x-bind:id="makeId('company')" 3149 placeholder="Company" 3150 autocomplete="given-name" 3151 required 3152 x-model.debounce="company" 3153 value="" 3154 x-bind:disabled="showNoDealers()" 3155 /> 3156 <div 3157 x-show="showValidation('company')" 3158 x-cloak 3159 class="invalid-feedback" 3160 >Please enter the name of your company.</div> 3161 </div> 3162 3163 <!--address--> 3164 <div 3165 x-bind:class="{'col-span-full': layout === 'inline'}" 3166 x-show="shownFields().address" 3167 > 3168 <label 3169 x-bind:for="makeId('address')" 3170 class="ml-3 mb-1 text-sm" 3171 ><span x-show="requiredFields().address"> * </span>Address</label> 3172 <input 3173 name="address" 3174 type="text" 3175 class="form-control rounded-full" 3176 x-bind:class="validationClass('address')" 3177 x-bind:id="makeId('address')" 3178 placeholder="Address" 3179 autocomplete="street-address" 3180 required 3181 x-model.debounce="address" 3182 value="" 3183 @places-loaded.window="initAutocomplete()" 3184 /> 3185 <div 3186 x-show="showValidation('address')" 3187 x-cloak 3188 class="invalid-feedback" 3189 >Please enter your address.</div> 3190 </div> 3191
3192 <!--street--> 3193 <div 3194 x-bind:class="{'col-span-full': layout === 'inline'}" 3195 x-show="shownFields().street" 3196 > 3197 <label 3198 x-bind:for="makeId('street')" 3199 class="ml-3 mb-1 text-sm" 3200 ><span x-show="requiredFields().street"> * </span>Street</label> 3201 <input 3202 name="street" 3203 type="text" 3204 class="form-control rounded-full" 3205 x-bind:class="validationClass('street')" 3206 x-bind:id="makeId('street')" 3207 placeholder="Street" 3208 autocomplete="street-address" 3209 required 3210 x-model.debounce="street" 3211 value="" 3212 x-bind:disabled="showNoDealers()" 3213 /> 3214 <div 3215 x-show="showValidation('street')" 3216 x-cloak 3217 class="invalid-feedback" 3218 >Please enter your street.</div> 3219 </div> 3220 3221 <!--city--> 3222 <div 3223 x-bind:class="{'col-span-full': layout === 'inline'}" 3224 x-show="shownFields().city" 3225 > 3226 <label 3227 x-bind:for="makeId('city')" 3228 class="ml-3 mb-1 text-sm" 3229 ><span x-show="requiredFields().city"> * </span>City</label> 3230 <input 3231 name="city" 3232 type="text" 3233 class="form-control rounded-full" 3234 x-bind:class="validationClass('city')" 3235 x-bind:id="makeId('city')" 3236 placeholder="City" 3237 autocomplete="city" 3238 required 3239 x-model.debounce="city" 3240 value="" 3241 x-bind:disabled="showNoDealers()" 3242 /> 3243 <div 3244 x-show="showValidation('city')" 3245 x-cloak 3246 class="invalid-feedback" 3247 >Please enter your city.</div> 3248 </div> 3249 3250 <!--state--> 3251 <div 3252 x-bind:class="{'col-span-full': layout === 'inline'}" 3253 x-show="shownFields().state" 3254 > 3255 <label 3256 x-bind:for="makeId('state')" 3257 class="ml-3 mb-1 text-sm" 3258 x-text="(requiredFields().state ? ' * ' : '') + stateName()" 3259 ></label> 3260 <select 3261 name="state" 3262 class="form-control rounded-full" 3263 x-bind:class="validationClass('state')" 3264 x-bind:id="makeId('state')" 3265 required 3266 x-model="state" 3267 x-bind:disabled="showNoDealers()" 3268 > 3269 <option disabled selected value="" x-text="stateName()"></option> 3270 <option 3271 value="AL" 3272 >Alabama</option> 3273 <option 3274 value="AK" 3275 >Alaska</option> 3276 <option 3277 value="AZ" 3278 >Arizona</option> 3279 <option 3280 value="AR" 3281 >Arkansas</option> 3282 <option 3283 value="CA" 3284 >California</option> 3285 <option 3286 value="CO" 3287 >Colorado</option> 3288 <option 3289 value="CT" 3290 >Connecticut</option> 3291 <option 3292 value="DE" 3293 >Delaware</option> 3294 <option 3295 value="DC" 3296 >District of Columbia</option> 3297 <option 3298 value="FL" 3299 >Florida</option> 3300 <option 3301 value="GA" 3302 >Georgia</option> 3303 <option 3304 value="HI" 3305 >Hawaii</option> 3306 <option 3307 value="ID" 3308 >Idaho</option> 3309 <option 3310 value="IL" 3311 >Illinois</option> 3312 <option 3313 value="IN" 3314 >Indiana</option> 3315 <option 3316 value="IA" 3317 >Iowa</option> 3318 <option 3319 value="KS" 3320 >Kansas</option> 3321 <option 3322 value="KY" 3323 >Kentucky</option> 3324 <option 3325 value="LA" 3326 >Louisiana</option> 3327 <option 3328 value="ME" 3329 >Maine</option> 3330 <option 3331 value="MD" 3332 >Maryland</option> 3333 <option 3334 value="MA" 3335 >Massachusetts</option> 3336 <option 3337 value="MI" 3338 >Michigan</option> 3339 <option 3340 value="MN" 3341 >Minnesota</option> 3342 <option 3343 value="MS" 3344 >Mississippi</option> 3345 <option 3346 value="MO" 3347 >Missouri</option> 3348 <option 3349 value="MT" 3350 >Montana</option> 3351 <option 3352 value="NE" 3353 >Nebraska</option> 3354 <option 3355 value="NV" 3356 >Nevada</option> 3357 <option 3358 value="NH" 3359 >New Hampshire</option> 3360 <option 3361 value="NJ" 3362 >New Jersey</option> 3363 <option 3364 value="NM" 3365 >New Mexico</option> 3366 <option 3367 value="NY" 3368 >New York</option> 3369 <option 3370 value="NC" 3371 >North Carolina</option> 3372 <option 3373 value="ND" 3374 >North Dakota</option> 3375 <option 3376 value="OH" 3377 >Ohio</option> 3378 <option 3379 value="OK" 3380 >Oklahoma</option> 3381 <option 3382 value="OR" 3383 >Oregon</option> 3384 <option 3385 value="PA" 3386 >Pennsylvania</option> 3387 <option 3388 value="RI" 3389 >Rhode Island</option> 3390 <option 3391 value="SC" 3392 >South Carolina</option> 3393 <option 3394 value="SD" 3395 >South Dakota</option> 3396 <option 3397 value="TN"
3398 >Tennessee</option> 3399 <option 3400 value="TX" 3401 >Texas</option> 3402 <option 3403 value="UT" 3404 >Utah</option> 3405 <option 3406 value="VT" 3407 >Vermont</option> 3408 <option 3409 value="VA" 3410 >Virginia</option> 3411 <option 3412 value="WA" 3413 >Washington</option> 3414 <option 3415 value="WV" 3416 >West Virginia</option> 3417 <option 3418 value="WI" 3419 >Wisconsin</option> 3420 <option 3421 value="WY" 3422 >Wyoming</option> 3423 <option 3424 value="PR" 3425 >Puerto Rico</option> 3426 </select> 3427 <div 3428 x-show="showValidation('state')" 3429 x-cloak 3430 class="invalid-feedback" 3431 >Please enter your state.</div> 3432 </div> 3433 3434 <!--postal_code--> 3435 <div 3436 x-bind:class="{'col-span-full': layout === 'inline'}" 3437 > 3438 <label 3439 x-bind:for="makeId('postal_code')" 3440 class="ml-3 mb-1 text-sm" 3441 x-text="(requiredFields().postalCode ? ' * ' : '') + postalCodeName()" 3442 ></label> 3443 <input 3444 name="postal_code" 3445 type="text" 3446 class="form-control rounded-full" 3447 x-bind:class="validationClass('postalCode')" 3448 x-bind:id="makeId('postal_code')" 3449 x-bind:placeholder="postalCodeName()" 3450 autocomplete="postal-code" 3451 required 3452 maxlength="7" 3453 x-model="postalCode" 3454 value="" 3455 x-on:change="searchDealers()" 3456 /> 3457 <div 3458 x-show="showValidation('postalCode')" 3459 x-cloak 3460 class="invalid-feedback" 3461 >Please enter your <span x-text="postalCodeName().toLowerCase()"></span>.</div> 3462 </div> 3463 3464 <template x-if="selectedDealer"> 3465 <div class="col-span-full bg-gray-200 rounded-lg p-3 text-blue-800"> 3466 <i class="fa-solid fa-map-marker"></i> Your dealer is <span x-text="selectedDealer.name"></span>. 3467 </div> 3468 </template> 3469 3470 <div 3471 class="col-span-full bg-gray-200 rounded-xl p-3 text-blue-800" 3472 x-show="showBottledWaterInterest()" 3473 > 3474 <div class="mb-2">Are you interested in bottled water?</div> 3475 <div> 3476 <button 3477 type="button" 3478 class="btn btn-blue rounded-full" 3479 x-on:click="updateBottledWaterInterest('yes')" 3480 x-bind:disabled="showNoDealers()" 3481 >Yes <i class="fa-solid fa-check"></i></button> 3482 <button 3483 type="button" 3484 class="btn btn-blue rounded-full" 3485 x-on:click="updateBottledWaterInterest('no')" 3486 x-bind:disabled="showNoDealers()" 3487 >No <i class="fa-solid fa-times"></i></button> 3488 </div> 3489 </div> 3490 3491 <div 3492 class="col-span-full grid grid-cols-1 gap-2 text-blue-800" 3493 x-show="showDealerSelect()" 3494 > 3495 <template 3496 x-for="dealer in filteredDealers()" 3497 x-bind:key="dealer.id" 3498 > 3499 <div 3500 class="bg-gray-100 hover:bg-gray-200 rounded-xl p-3" 3501 x-bind:class="{ 'border-2 shadow' : dealer.preferred_dealer}" 3502 > 3503 <div class="flex items-center"> 3504 <div class="grow"> 3505 <h4 class="text-blue-500 text-lg" x-text="dealer.name"></h4> 3506 <div x-text="dealer.city + ', ' + dealer.state"></div> 3507 <div class="mt-1" x-show="dealer.preferred_dealer">
3508 <span class="text-xs px-2 py-1 rounded-full bg-blue-500 text-blue-800">Suggested Dealer</span> 3509 </div> 3510 </div> 3511 <div> 3512 <button 3513 type="button" 3514 class="btn btn-blue rounded-full text-sm px-2 py-1 whitespace-nowrap" 3515 x-on:click="selectDealer(dealer)" 3516 >Select <i class="fa-solid fa-plus-circle"></i></button> 3517 </div> 3518 </div> 3519 </div> 3520 </template> 3521 </div> 3522 3523 <div 3524 class="col-span-full bg-blue-800 text-white font-bold p-2 rounded-lg text-blue-800" 3525 x-show="showNoDealers()" 3526 > 3527 <i class="fa-solid fa-exclamation-circle mr-1"></i> 3528 Our Culligan dealerships do not service your area. Visit <a x-on:click="logClickToCorporate()" x-bind:href="'https://www.culligan.com/dealer-locator/' + postalCode + '?interest=' + shortenedProductInterest() + '&utm_medium=referral&utm_source=kennedy'" rel="noopener noreferrer" class="underline">culligan.com</a> to view a complete list of dealers. 3529 </div> 3530 3531 <!--phone--> 3532 <div 3533 x-bind:class="{'col-span-full': layout === 'inline'}" 3534 x-show="shownFields().phone" 3535 > 3536 <label 3537 x-bind:for="makeId('phone')" 3538 class="ml-3 mb-1 text-sm" 3539 ><span x-show="requiredFields().phone"> * </span>Telephone</label> 3540 <input 3541 name="phone" 3542 type="text" 3543 class="form-control rounded-full" 3544 x-bind:class="validationClass('phone')" 3545 x-bind:id="makeId('phone')" 3546 x-mask="999-999-9999" 3547 placeholder="Telephone" 3548 autocomplete="tel-national" 3549 required 3550 x-model.debounce="phone" 3551 value="" 3552 x-bind:disabled="showNoDealers()" 3553 /> 3554 <div 3555 x-show="showValidation('phone')" 3556 x-cloak 3557 class="invalid-feedback" 3558 >Please enter your phone number.</div> 3559 </div> 3560 3561 <!--email--> 3562 <div 3563 x-bind:class="{'col-span-full': layout === 'inline'}" 3564 x-show="shownFields().email" 3565 > 3566 <label 3567 x-bind:for="makeId('email')" 3568 class="ml-3 mb-1 text-sm" 3569 ><span x-show="requiredFields().email"> * </span>Email</label> 3570 <input 3571 name="email" type="email" 3572 class="form-control rounded-full" 3573 x-bind:class="validationClass('email')" 3574 x-bind:id="makeId('email')" 3575 placeholder="Email" 3576 autocomplete="email" 3577 required 3578 x-model.debounce="email" 3579 value="" 3580 x-bind:disabled="showNoDealers()" 3581 /> 3582 <div 3583 x-show="showValidation('email')" 3584 x-cloak 3585 class="invalid-feedback" 3586 >Please enter your email.</div> 3587 </div> 3588 3589 <!--product_interest--> 3590 <div 3591 class="col-span-full" 3592 x-show="shownFields().productInterest" 3593 > 3594 <label 3595 x-bind:for="makeId('product_interest')" 3596 class="ml-3 mb-1 text-sm" 3597 ><span x-show="requiredFields().productInterest"> * </span>Product interest</label> 3598 <select 3599 name="product_interest" 3600 class="form-control rounded-full" 3601 x-bind:class="validationClass('productInterest')" 3602 x-bind:id="makeId('product_interest')" 3603 required 3604 x-model="productInterest" 3605 x-bind:disabled="showNoDealers()" 3606 > 3607 <option disabled selected value="">Product interest</option> 3608 <option 3609 value="water_softener" 3610 >Water Softening and Salt-Free Conditioner</option> 3611 <option 3612 value="drinking_water_system" 3613 >Drinking Water System</option> 3614 <option 3615 value="bottled_water" 3616 >Bottled Water</option> 3617 <option 3618 value="bottleless_coolers" 3619 >Bottleless Coolers</option> 3620 <option 3621 value="service" 3622 >Billing, Customer Service, Repair, Salt</option> 3623 <option 3624 value="commercial_and_industrial" 3625 >Commercial / Industrial</option> 3626 <option 3627 value="culligan_brand" 3628 >Other, Please Explain</option> 3629 </select> 3630 <div 3631 x-show="showValidation('productInterest')" 3632 x-cloak 3633 class="invalid-feedback" 3634 >Please select your interest.</div> 3635 </div> 3636 3637 <!--referral_source--> 3638 <div 3639 class="col-span-full" 3640 x-show="shownFields().referralSource" 3641 > 3642 <label 3643 x-bind:for="makeId('referral_source')" 3644 class="ml-3 mb-1 text-sm" 3645 ><span x-show="requiredFields().referralSource"> * </span>How did you hear about us?</label> 3646 <select 3647 name="referral_source" 3648 class="form-control rounded-full" 3649 x-bind:class="validationClass('referralSource')" 3650 x-bind:id="makeId('referral_source')" 3651 required 3652 x-model="referralSource" 3653 x-bind:disabled="showNoDealers()" 3654 > 3655 <option disabled selected value="">Referral Source</option> 3656 <template x-for="source in referral_sources"> 3657 <option 3658 x-bind:value="source" 3659 x-text="source" 3660 ></option> 3661 </template> 3662 </select> 3663 <div 3664 x-show="showValidation('referralSource')" 3665 x-cloak 3666 class="invalid-feedback" 3667 >Please select your referral source.</div> 3668 </div> 3669 3670 <!--delivery_type--> 3671 <div 3672 class="col-span-full" 3673 x-show="shownFields().deliveryType" 3674 > 3675 <div class="items-center space-x-2" x-bind:class="validationClass('deliveryType')">
3676 <span class="text-sm"><span x-show="requiredFields().deliveryType"> * </span>Delivery Type</span> 3677 <template x-for="value in deliveryTypes"> 3678 <button 3679 type="button" 3680 class="btn rounded-full" 3681 x-bind:class="isDeliveryTypeSelected(value) ? 'btn-indigo' : 'btn-white'" 3682 x-on:click="selectDeliveryType(value)" 3683 x-bind:disabled="showNoDealers()" 3684 > 3685 <span x-text="value" class="capitalize"></span> 3686 <span x-show="isDeliveryTypeSelected(value)"><i class="fa-solid fa-check-square fa-fw"></i></span> 3687 <span x-show="!isDeliveryTypeSelected(value)"><i class="fa-solid fa-square fa-fw"></i></span> 3688 </button> 3689 </template> 3690 </div> 3691 <div 3692 x-show="showValidation('deliveryType')" 3693 x-cloak 3694 class="invalid-feedback" 3695 >Select a valid delivery type.</div> 3696 </div> 3697 3698 <!--free_water_test--> 3699 <div 3700 class="col-span-full" 3701 x-show="shownFields().freeWaterTest" 3702 > 3703 <label 3704 x-bind:for="makeId('free_water_test_yes')" 3705 class="ml-3 mb-1 text-sm" 3706 ><span x-show="requiredFields().freeWaterTest"> * </span>Free water test</label> 3707 <div class="px-1 py-2" x-bind:class="validationClass('freeWaterTest')"> 3708 <input 3709 name="free_water_test" 3710 type="radio" 3711 x-bind:id="makeId('free_water_test_yes')" 3712 value="yes" 3713 x-model.debounce="freeWaterTest" 3714 /> 3715 <label 3716 x-bind:for="makeId('free_water_test_yes')" 3717 >Yes</label> 3718 <input 3719 name="free_water_test" 3720 type="radio" 3721 class="ml-2" 3722 x-bind:id="makeId('free_water_test_no')" 3723 value="no" 3724 x-model.debounce="freeWaterTest" 3725 x-bind:disabled="showNoDealers()" 3726 /> 3727 <label 3728 x-bind:for="makeId('free_water_test_no')" 3729 >No</label> 3730 </div> 3731 <div 3732 x-show="showValidation('freeWaterTest')" 3733 x-cloak 3734 class="invalid-feedback" 3735 >Please select if you would like a free water test.</div> 3736 </div> 3737 3738 <!--appointment_request--> 3739 <div 3740 class="col-span-full space-y-3" 3741 x-show="shownFields().appointmentRequest" 3742 > 3743 3744 <div> 3745 <input 3746 name="appointment_request" 3747 type="checkbox" 3748 class="rounded-md" 3749 x-bind:id="makeId('appointment_request')" 3750 value="" 3751 x-model="appointmentRequest" 3752 x-bind:disabled="showNoDealers() || (requiredFields().appointmentRequest && appointmentRequest)" 3753 /> 3754 <label 3755 x-bind:for="makeId('appointment_request')" 3756 ><span x-show="requiredFields().appointmentRequest"> * </span>Interested in an appointment?</label> 3757 </div> 3758 3759 <div 3760 class="space-y-3" 3761 x-show="appointmentRequest" 3762 > 3763 3764 <div> 3765 <div class="mb-1">Your Culligan professional will contact you to confirm your request.</div> 3766 <div>Your request is subject to availability, holidays and hours of operation.</div> 3767 </div> 3768 3769 <div x-show="shownFields().preferredTime"> 3770 <label 3771 x-bind:for="makeId('preferred_time')" 3772 class="ml-3 mb-1 text-sm" 3773 ><span x-show="requiredFields().preferredTime"> * </span>Preferred time</label> 3774 <select 3775 name="preferred_time" 3776 class="form-control rounded-full" 3777 x-bind:class="validationClass('preferredTime')" 3778 x-bind:id="makeId('preferred_time')" 3779 required 3780 x-model="preferredTime" 3781 x-bind:disabled="showNoDealers()" 3782 > 3783 <option disabled selected value="">Select a time</option> 3784 <template x-for="time in preferredTimes"> 3785 <option 3786 x-bind:value="time" 3787 x-text="time" 3788 ></option> 3789 </template> 3790 </select> 3791 <div 3792 x-show="showValidation('preferredTime')" 3793 x-cloak 3794 class="invalid-feedback" 3795 >Please select your preferred time.</div> 3796 </div> 3797 3798 <div x-show="shownFields().preferredDate"> 3799 <div 3800 class="ml-3 mb-1 text-sm block" 3801 ><span x-show="requiredFields().preferredDate"> * </span>Preferred date</div> 3802 <div 3803 class="form-control rounded-full" 3804 x-bind:class="validationClass('preferredDate')" 3805 > 3806 <input 3807 name="preferred_date" 3808 class="border-none p-0 w-11/12 focus:ring-0" 3809 placeholder="Select a date" 3810 x-ref="preferredDate" 3811 x-model="preferredDate" 3812 x-bind:disabled="showNoDealers()" 3813 /> 3814 </div> 3815 <div 3816 x-show="showValidation('preferredDate')" 3817 x-cloak 3818 class="invalid-feedback" 3819 >Please select your preferred date.</div> 3820 </div> 3821 3822 </div> 3823 3824 </div> 3825 3826 <!--message--> 3827 <div 3828 class="col-span-full" 3829 x-show="shownFields().message" 3830 > 3831 <label 3832 x-bind:for="makeId('message')" 3833 class="ml-3 mb-1 text-sm" 3834 ><span x-show="requiredFields().message"> * </span>Additional information</label> 3835 <textarea 3836 name="message" 3837 rows="5" 3838 class="form-control rounded-lg" 3839 x-bind:class="validationClass('message')" 3840 x-bind:id="makeId('message')" 3841 required 3842 x-model.debounce="message" 3843 placeholder="Add a message" 3844 x-bind:disabled="showNoDealers()" 3845 ></textarea> 3846 <div 3847 x-show="showValidation('message')" 3848 x-cloak 3849 class="invalid-feedback" 3850 >Add a message</div> 3851 </div> 3852 3853 <!--nurture--> 3854 <div 3855 class="col-span-full" 3856 x-show="showNurture()" 3857 > 3858 <div> 3859 <input 3860 name="nurture" 3861 type="checkbox" 3862 x-bind:id="makeId('nurture')" 3863 x-model.debounce="nurture" 3864 />
3865 <span x-show="requiredFields().nurture"> * </span> 3866 <label 3867 x-bind:for="makeId('nurture')" 3868 class="ml-3 mb-1 text-sm" 3869 x-html="nurture_title" 3870 ></label> 3871 </div> 3872 <div class="text-xs" x-html="nurture_body"></div> 3873 <div 3874 x-show="showValidation('nurture')" 3875 x-cloak 3876 class="invalid-feedback" 3877 >Please agree to continue.</div> 3878 </div> 3879 3880 <!--disclaimer--> 3881 <div 3882 class="col-span-full" 3883 x-show="shownFields().disclaimer && requiredFields().phone" 3884 > 3885 <div class="text-xs" x-html="disclaimer"></div> 3886 </div> 3887 3888 <!--recaptcha--> 3889 <div 3890 class="col-span-full" 3891 > 3892 <div class="text-xs"> 3893 This site is protected by reCAPTCHA and the Google 3894 <a href="https://policies.google.com/privacy">Privacy Policy</a> and 3895 <a href="https://policies.google.com/terms">Terms of Service</a> apply. 3896 </div> 3897 </div> 3898 3899 <!--submit--> 3900 <div class="col-span-full"> 3901 <button 3902 type="submit" 3903 x-bind:id="makeId('submit')" 3904 class="btn btn-white-blue rounded-full" 3905 x-bind:class="{'opacity-60' : submitStatus === 'in progress'}" 3906 x-bind:style="showNoDealers() ? 'pointer-events: none' : ''" 3907 x-bind:disabled="showNoDealers()" 3908 >Submit <span x-show="hasLeadInSession">Again</span> 3909 <span x-show="submitStatus !== 'in progress'"><i class="fa-sharp fa-regular fa-arrow-right ml-1"></i></span> 3910 <span x-show="submitStatus === 'in progress'"><i class="fa-solid fa-spinner fa-fw fa-spin"></i></span> 3911 </button> 3912 </div> 3913 3914 </form> 3915 3916 </div> 3917 3918 <template x-if="submitStatus === 'success' && (typeof show === 'undefined' || show)"> 3919 3920 <div class="pt-3 pb-5 border-b border-gray-500"> 3921 <div class="text-blue-800 mb-3"> 3922 <div class="text-3xl">Thank you for contacting us.</div> 3923 <div class="text-lg">One of our local water experts will contact you shortly.</div> 3924 </div> 3925 <div class="aspect-w-16 aspect-h-9"> 3926 <iframe 3927 src="https://fast.wistia.net/embed/iframe/mvbxtgs846?videoFoam=true" 3928 title="Culligan-Thank-You Video" 3929 allow="autoplay; fullscreen" 3930 allowtransparency="true" 3931 allowfullscreen 3932 width="100%" 3933 height="100%" 3934 ></iframe> 3935 </div> 3936 </div> 3937 3938 </template> 3939 3940 <template x-if="submitStatus === 'recaptcha_failure' && (typeof show === 'undefined' || show)"> 3941 3942 <div class="pt-3 pb-5 border-b border-gray-500"> 3943 <div class="text-blue-800 mb-3"> 3944 <div class="text-2xl">We ran into an issue submitting your form, please call 3945 <a 3946 href="tel:8663304482" 3947 class="headerPhone text-2xl text-blue-500 font-bold underline" 3948 x-data="phone('8663304482', 'recaptcha_fail')" 3949 x-bind="clickToCall" 3950 > 3951 866-330-4482 3952 </a> 3953 to connect with your Culligan Dealer.</div> 3954 </div> 3955 </div> 3956 3957 </template> 3958 3959</div> 3960 3961 </div> 3962 3963 <button 3964 type="button" 3965 class="absolute top-4 right-4" 3966 aria-label="Close dialog" 3967 x-on:click="show = false;" 3968 > 3969 <i class="fa-solid fa-times fa-fw fa-2x text-blue-800 cursor-pointer"></i> 3970 </button> 3971 3972</div> 3973 <div 3974 data-component="default.modal"
3975 aria-describedby="modalDescription" 3976 aria-modal="true" 3977 class="container flex flex-col" 3978 role="dialog" 3979 tabindex="-1" 3980 x-bind:aria-label="heading" 3981 x-data="{ 3982 show: false, 3983 heading: 'Get pricing & special offers', 3984 body: '' 3985 }" 3986 x-init="$watch('show', value => $dispatch('toggle-overlay', value)); " 3987 x-show="show" 3988 x-cloak 3989 x-on:toggle-modal.window=" 3990 show = !show; 3991 $event.detail.heading ? heading = $event.detail.heading : null; 3992 $event.detail.body ? body = $event.detail.body : null; 3993 " 3994 x-on:click.outside="show = false" 3995 x-on:keyup.escape="show = false" 3996 x-transition:enter="transition ease-out duration-500" 3997 x-transition:enter-start="scale-90 opacity-90" 3998 x-transition:enter-end="scale-100 opacity-100" 3999 x-transition:leave="transition ease-in duration-200" 4000 x-transition:leave-start="scale-100 opacity-100" 4001 x-transition:leave-end="scale-90 opacity-90" 4002 x-trap.noscroll.inert.noreturn="show" 4003> 4004 4005 <div class="min-h-full sm:min-h-0 w-full bg-white sm:rounded-3xl relative drop-shadow-2xl sm:mx-auto overflow-y-auto overscroll-contain px-4 sm:px-6 md:px-8 py-10 sm:p-12 sm:my-12"> 4006 4007 <div class="space-y-4 sm:space-y-6 md:space-y-8"> 4008 4009 <h2 4010 class="text-2xl sm:text-3xl md:text-4xl text-blue-800 font-bold" 4011 x-html="heading" 4012 ></h2> 4013 4014 <div 4015 id="modalDescription" 4016 class="text-base sm:text-lg md:text-xl text-blue-800 font-semibold" 4017 x-html="body" 4018 aria-label="Modal Description" 4019 ></div> 4020 4021 <div 4022 data-component="default.contact" 4023 4024 class="text-blue-800" 4025 x-data="lead('modal')" 4026 x-init=" 4027 setShown({}); 4028 setRequired({}); 4029 setValues(JSON.parse('{\u0022prependMessage\u0022:\u0022\u0022,\u0022appendMessage\u0022:\u0022\u0022}')); 4030 loadPaidSearchData(null); 4031 " 4032 x-on:update-contact.window=" 4033 updateContact( 4034 $event.detail.identifier ?? 'hidden', 4035 $event.detail.shown ?? {}, 4036 $event.detail.required ?? {}, 4037 $event.detail.values ?? {}, 4038 ); 4039 " 4040> 4041 4042 <div x-show="submitStatus !== 'success' && submitStatus !== 'recaptcha_failure'"> 4043 4044 <form 4045 x-bind:id="makeId('contact')" 4046 method="post" 4047 novalidate="novalidate" 4048 x-on:submit.prevent="submitForm()" 4049 class="grid grid-cols-1 md:grid-cols-2 gap-x-4 gap-y-3" 4050 > 4051 4052 <!--hidden--> 4053 <input 4054 name="force_id" 4055 type="hidden" 4056 value="" 4057 /> 4058 4059 <div x-show="shownFields().customerType || shownFields().customerLocation" class="grid grid-cols-1 gap-x-4 gap-y-3 md:grid-cols-2 col-span-1 md:col-span-2"> 4060 <!--customer_type--> 4061 <div 4062 x-bind:class="{'col-span-full': layout === 'inline'}" 4063 x-show="shownFields().customerType" 4064 > 4065 <div class="items-center" x-bind:class="validationClass('customerType')"> 4066 <span x-show="requiredFields().customerType"> * </span> 4067 <span class="text-sm">Are you a new or current customer?</span> 4068 <template x-for="(key, value) in customerTypes"> 4069 <button 4070 type="button" 4071 class="btn rounded-full block mt-2" 4072 x-bind:class="isCustomerTypeSelected(value) ? 'btn-indigo' : 'btn-white-indigo'" 4073 x-on:click="customerType = value" 4074 > 4075 <span x-show="isCustomerTypeSelected(value)"><i class="fa-solid fa-circle-dot fa-fw"></i></span> 4076 <span x-show="!isCustomerTypeSelected(value)"><i class="fa-regular fa-circle fa-fw"></i></span> 4077 <span x-text="key" class="capitalize font-normal"></span> 4078 </button> 4079 </template> 4080 </div> 4081 <div 4082 x-show="showValidation('customerType')" 4083 x-cloak 4084 class="invalid-feedback" 4085 >Please select a customer type</div> 4086 </div> 4087 4088 <!--customer_location--> 4089 <div 4090 x-bind:class="{'col-span-full': layout === 'inline'}" 4091 x-show="shownFields().customerLocation" 4092 > 4093 <div class="items-center" x-bind:class="validationClass('customerLocation')">
4094 <span x-show="requiredFields().customerLocation"> * </span> 4095 <span class="text-sm">Home or office use?</span> 4096 <template x-for="(key, value) in customerLocations"> 4097 <button 4098 type="button" 4099 name="customerLocation" 4100 class="btn rounded-full block mt-2" 4101 x-bind:class="isCustomerLocationSelected(value) ? 'btn-indigo' : 'btn-white-indigo'" 4102 x-on:click="customerLocation = value" 4103 > 4104 <span x-show="isCustomerLocationSelected(value)"><i class="fa-solid fa-circle-dot fa-fw"></i></span> 4105 <span x-show="!isCustomerLocationSelected(value)"><i class="fa-regular fa-circle fa-fw"></i></span> 4106 <span x-text="key" class="capitalize font-normal"></span> 4107 </button> 4108 </template> 4109 </div> 4110 <div 4111 x-show="showValidation('customerLocation')" 4112 x-cloak 4113 class="invalid-feedback" 4114 >Please select a customer location</div> 4115 </div> 4116 </div> 4117 4118 <!--first_name--> 4119 <div 4120 x-bind:class="{'col-span-full': layout === 'inline'}" 4121 > 4122 <label 4123 x-bind:for="makeId('first_name')" 4124 class="ml-3 mb-1 text-sm" 4125 ><span x-show="requiredFields().firstName"> * </span>First name</label> 4126 <input 4127 name="first_name" 4128 type="text" 4129 class="form-control rounded-full" 4130 x-bind:class="validationClass('firstName')" 4131 x-bind:id="makeId('first_name')" 4132 placeholder="First name" 4133 autocomplete="given-name" 4134 required 4135 x-model.debounce="firstName" 4136 value="" 4137 x-bind:disabled="showNoDealers()" 4138 /> 4139 <div 4140 x-show="showValidation('firstName')" 4141 x-cloak 4142 class="invalid-feedback" 4143 >Please enter your first name.</div> 4144 </div> 4145 4146 <!--last_name--> 4147 <div 4148 x-bind:class="{'col-span-full': layout === 'inline'}" 4149 > 4150 <label 4151 x-bind:for="makeId('last_name')" 4152 class="ml-3 mb-1 text-sm" 4153 ><span x-show="requiredFields().lastName"> * </span>Last name</label> 4154 <input 4155 name="last_name" 4156 type="text" 4157 class="form-control rounded-full" 4158 x-bind:class="validationClass('lastName')" 4159 x-bind:id="makeId('last_name')" 4160 placeholder="Last name" 4161 autocomplete="family-name" 4162 required 4163 x-model.debounce="lastName" 4164 value="" 4165 x-bind:disabled="showNoDealers()" 4166 /> 4167 <div 4168 x-show="showValidation('lastName')" 4169 x-cloak 4170 class="invalid-feedback" 4171 >Please enter your last name.</div> 4172 </div> 4173 4174 <!--company--> 4175 <div 4176 x-bind:class="{'col-span-full': layout === 'inline'}" 4177 x-show="shownFields().company" 4178 > 4179 <label 4180 x-bind:for="makeId('company')" 4181 class="ml-3 mb-1 text-sm" 4182 ><span x-show="requiredFields().company"> * </span>Company</label> 4183 <input 4184 name="company" 4185 type="text" 4186 class="form-control rounded-full" 4187 x-bind:class="validationClass('company')" 4188 x-bind:id="makeId('company')" 4189 placeholder="Company" 4190 autocomplete="given-name" 4191 required 4192 x-model.debounce="company" 4193 value="" 4194 x-bind:disabled="showNoDealers()" 4195 /> 4196 <div 4197 x-show="showValidation('company')" 4198 x-cloak 4199 class="invalid-feedback" 4200 >Please enter the name of your company.</div> 4201 </div> 4202 4203 <!--address--> 4204 <div 4205 x-bind:class="{'col-span-full': layout === 'inline'}" 4206 x-show="shownFields().address" 4207 > 4208 <label 4209 x-bind:for="makeId('address')" 4210 class="ml-3 mb-1 text-sm" 4211 ><span x-show="requiredFields().address"> * </span>Address</label> 4212 <input 4213 name="address" 4214 type="text" 4215 class="form-control rounded-full" 4216 x-bind:class="validationClass('address')" 4217 x-bind:id="makeId('address')" 4218 placeholder="Address" 4219 autocomplete="street-address" 4220 required 4221 x-model.debounce="address" 4222 value="" 4223 @places-loaded.window="initAutocomplete()" 4224 /> 4225 <div 4226 x-show="showValidation('address')" 4227 x-cloak 4228 class="invalid-feedback" 4229 >Please enter your address.</div> 4230 </div> 4231
4232 <!--street--> 4233 <div 4234 x-bind:class="{'col-span-full': layout === 'inline'}" 4235 x-show="shownFields().street" 4236 > 4237 <label 4238 x-bind:for="makeId('street')" 4239 class="ml-3 mb-1 text-sm" 4240 ><span x-show="requiredFields().street"> * </span>Street</label> 4241 <input 4242 name="street" 4243 type="text" 4244 class="form-control rounded-full" 4245 x-bind:class="validationClass('street')" 4246 x-bind:id="makeId('street')" 4247 placeholder="Street" 4248 autocomplete="street-address" 4249 required 4250 x-model.debounce="street" 4251 value="" 4252 x-bind:disabled="showNoDealers()" 4253 /> 4254 <div 4255 x-show="showValidation('street')" 4256 x-cloak 4257 class="invalid-feedback" 4258 >Please enter your street.</div> 4259 </div> 4260 4261 <!--city--> 4262 <div 4263 x-bind:class="{'col-span-full': layout === 'inline'}" 4264 x-show="shownFields().city" 4265 > 4266 <label 4267 x-bind:for="makeId('city')" 4268 class="ml-3 mb-1 text-sm" 4269 ><span x-show="requiredFields().city"> * </span>City</label> 4270 <input 4271 name="city" 4272 type="text" 4273 class="form-control rounded-full" 4274 x-bind:class="validationClass('city')" 4275 x-bind:id="makeId('city')" 4276 placeholder="City" 4277 autocomplete="city" 4278 required 4279 x-model.debounce="city" 4280 value="" 4281 x-bind:disabled="showNoDealers()" 4282 /> 4283 <div 4284 x-show="showValidation('city')" 4285 x-cloak 4286 class="invalid-feedback" 4287 >Please enter your city.</div> 4288 </div> 4289 4290 <!--state--> 4291 <div 4292 x-bind:class="{'col-span-full': layout === 'inline'}" 4293 x-show="shownFields().state" 4294 > 4295 <label 4296 x-bind:for="makeId('state')" 4297 class="ml-3 mb-1 text-sm" 4298 x-text="(requiredFields().state ? ' * ' : '') + stateName()" 4299 ></label> 4300 <select 4301 name="state" 4302 class="form-control rounded-full" 4303 x-bind:class="validationClass('state')" 4304 x-bind:id="makeId('state')" 4305 required 4306 x-model="state" 4307 x-bind:disabled="showNoDealers()" 4308 > 4309 <option disabled selected value="" x-text="stateName()"></option> 4310 <option 4311 value="AL" 4312 >Alabama</option> 4313 <option 4314 value="AK" 4315 >Alaska</option> 4316 <option 4317 value="AZ" 4318 >Arizona</option> 4319 <option 4320 value="AR" 4321 >Arkansas</option> 4322 <option 4323 value="CA" 4324 >California</option> 4325 <option 4326 value="CO" 4327 >Colorado</option> 4328 <option 4329 value="CT" 4330 >Connecticut</option> 4331 <option 4332 value="DE" 4333 >Delaware</option> 4334 <option 4335 value="DC" 4336 >District of Columbia</option> 4337 <option 4338 value="FL" 4339 >Florida</option> 4340 <option 4341 value="GA" 4342 >Georgia</option> 4343 <option 4344 value="HI" 4345 >Hawaii</option> 4346 <option 4347 value="ID" 4348 >Idaho</option> 4349 <option 4350 value="IL" 4351 >Illinois</option> 4352 <option 4353 value="IN" 4354 >Indiana</option> 4355 <option 4356 value="IA" 4357 >Iowa</option> 4358 <option 4359 value="KS" 4360 >Kansas</option> 4361 <option 4362 value="KY" 4363 >Kentucky</option> 4364 <option 4365 value="LA" 4366 >Louisiana</option> 4367 <option 4368 value="ME" 4369 >Maine</option> 4370 <option 4371 value="MD" 4372 >Maryland</option> 4373 <option 4374 value="MA" 4375 >Massachusetts</option> 4376 <option 4377 value="MI" 4378 >Michigan</option> 4379 <option 4380 value="MN" 4381 >Minnesota</option> 4382 <option 4383 value="MS" 4384 >Mississippi</option> 4385 <option 4386 value="MO" 4387 >Missouri</option> 4388 <option 4389 value="MT" 4390 >Montana</option> 4391 <option 4392 value="NE" 4393 >Nebraska</option> 4394 <option 4395 value="NV" 4396 >Nevada</option> 4397 <option 4398 value="NH" 4399 >New Hampshire</option> 4400 <option 4401 value="NJ" 4402 >New Jersey</option> 4403 <option 4404 value="NM" 4405 >New Mexico</option> 4406 <option 4407 value="NY" 4408 >New York</option> 4409 <option 4410 value="NC" 4411 >North Carolina</option> 4412 <option 4413 value="ND" 4414 >North Dakota</option> 4415 <option 4416 value="OH" 4417 >Ohio</option> 4418 <option 4419 value="OK" 4420 >Oklahoma</option> 4421 <option 4422 value="OR" 4423 >Oregon</option> 4424 <option 4425 value="PA" 4426 >Pennsylvania</option> 4427 <option 4428 value="RI" 4429 >Rhode Island</option> 4430 <option 4431 value="SC" 4432 >South Carolina</option> 4433 <option 4434 value="SD" 4435 >South Dakota</option> 4436 <option 4437 value="TN"
4438 >Tennessee</option> 4439 <option 4440 value="TX" 4441 >Texas</option> 4442 <option 4443 value="UT" 4444 >Utah</option> 4445 <option 4446 value="VT" 4447 >Vermont</option> 4448 <option 4449 value="VA" 4450 >Virginia</option> 4451 <option 4452 value="WA" 4453 >Washington</option> 4454 <option 4455 value="WV" 4456 >West Virginia</option> 4457 <option 4458 value="WI" 4459 >Wisconsin</option> 4460 <option 4461 value="WY" 4462 >Wyoming</option> 4463 <option 4464 value="PR" 4465 >Puerto Rico</option> 4466 </select> 4467 <div 4468 x-show="showValidation('state')" 4469 x-cloak 4470 class="invalid-feedback" 4471 >Please enter your state.</div> 4472 </div> 4473 4474 <!--postal_code--> 4475 <div 4476 x-bind:class="{'col-span-full': layout === 'inline'}" 4477 > 4478 <label 4479 x-bind:for="makeId('postal_code')" 4480 class="ml-3 mb-1 text-sm" 4481 x-text="(requiredFields().postalCode ? ' * ' : '') + postalCodeName()" 4482 ></label> 4483 <input 4484 name="postal_code" 4485 type="text" 4486 class="form-control rounded-full" 4487 x-bind:class="validationClass('postalCode')" 4488 x-bind:id="makeId('postal_code')" 4489 x-bind:placeholder="postalCodeName()" 4490 autocomplete="postal-code" 4491 required 4492 maxlength="7" 4493 x-model="postalCode" 4494 value="" 4495 x-on:change="searchDealers()" 4496 /> 4497 <div 4498 x-show="showValidation('postalCode')" 4499 x-cloak 4500 class="invalid-feedback" 4501 >Please enter your <span x-text="postalCodeName().toLowerCase()"></span>.</div> 4502 </div> 4503 4504 <template x-if="selectedDealer"> 4505 <div class="col-span-full bg-gray-200 rounded-lg p-3 text-blue-800"> 4506 <i class="fa-solid fa-map-marker"></i> Your dealer is <span x-text="selectedDealer.name"></span>. 4507 </div> 4508 </template> 4509 4510 <div 4511 class="col-span-full bg-gray-200 rounded-xl p-3 text-blue-800" 4512 x-show="showBottledWaterInterest()" 4513 > 4514 <div class="mb-2">Are you interested in bottled water?</div> 4515 <div> 4516 <button 4517 type="button" 4518 class="btn btn-blue rounded-full" 4519 x-on:click="updateBottledWaterInterest('yes')" 4520 x-bind:disabled="showNoDealers()" 4521 >Yes <i class="fa-solid fa-check"></i></button> 4522 <button 4523 type="button" 4524 class="btn btn-blue rounded-full" 4525 x-on:click="updateBottledWaterInterest('no')" 4526 x-bind:disabled="showNoDealers()" 4527 >No <i class="fa-solid fa-times"></i></button> 4528 </div> 4529 </div> 4530 4531 <div 4532 class="col-span-full grid grid-cols-1 gap-2 text-blue-800" 4533 x-show="showDealerSelect()" 4534 > 4535 <template 4536 x-for="dealer in filteredDealers()" 4537 x-bind:key="dealer.id" 4538 > 4539 <div 4540 class="bg-gray-100 hover:bg-gray-200 rounded-xl p-3" 4541 x-bind:class="{ 'border-2 shadow' : dealer.preferred_dealer}" 4542 > 4543 <div class="flex items-center"> 4544 <div class="grow"> 4545 <h4 class="text-blue-500 text-lg" x-text="dealer.name"></h4> 4546 <div x-text="dealer.city + ', ' + dealer.state"></div> 4547 <div class="mt-1" x-show="dealer.preferred_dealer">
4548 <span class="text-xs px-2 py-1 rounded-full bg-blue-500 text-blue-800">Suggested Dealer</span> 4549 </div> 4550 </div> 4551 <div> 4552 <button 4553 type="button" 4554 class="btn btn-blue rounded-full text-sm px-2 py-1 whitespace-nowrap" 4555 x-on:click="selectDealer(dealer)" 4556 >Select <i class="fa-solid fa-plus-circle"></i></button> 4557 </div> 4558 </div> 4559 </div> 4560 </template> 4561 </div> 4562 4563 <div 4564 class="col-span-full bg-blue-800 text-white font-bold p-2 rounded-lg text-blue-800" 4565 x-show="showNoDealers()" 4566 > 4567 <i class="fa-solid fa-exclamation-circle mr-1"></i> 4568 Our Culligan dealerships do not service your area. Visit <a x-on:click="logClickToCorporate()" x-bind:href="'https://www.culligan.com/dealer-locator/' + postalCode + '?interest=' + shortenedProductInterest() + '&utm_medium=referral&utm_source=kennedy'" rel="noopener noreferrer" class="underline">culligan.com</a> to view a complete list of dealers. 4569 </div> 4570 4571 <!--phone--> 4572 <div 4573 x-bind:class="{'col-span-full': layout === 'inline'}" 4574 x-show="shownFields().phone" 4575 > 4576 <label 4577 x-bind:for="makeId('phone')" 4578 class="ml-3 mb-1 text-sm" 4579 ><span x-show="requiredFields().phone"> * </span>Telephone</label> 4580 <input 4581 name="phone" 4582 type="text" 4583 class="form-control rounded-full" 4584 x-bind:class="validationClass('phone')" 4585 x-bind:id="makeId('phone')" 4586 x-mask="999-999-9999" 4587 placeholder="Telephone" 4588 autocomplete="tel-national" 4589 required 4590 x-model.debounce="phone" 4591 value="" 4592 x-bind:disabled="showNoDealers()" 4593 /> 4594 <div 4595 x-show="showValidation('phone')" 4596 x-cloak 4597 class="invalid-feedback" 4598 >Please enter your phone number.</div> 4599 </div> 4600 4601 <!--email--> 4602 <div 4603 x-bind:class="{'col-span-full': layout === 'inline'}" 4604 x-show="shownFields().email" 4605 > 4606 <label 4607 x-bind:for="makeId('email')" 4608 class="ml-3 mb-1 text-sm" 4609 ><span x-show="requiredFields().email"> * </span>Email</label> 4610 <input 4611 name="email" type="email" 4612 class="form-control rounded-full" 4613 x-bind:class="validationClass('email')" 4614 x-bind:id="makeId('email')" 4615 placeholder="Email" 4616 autocomplete="email" 4617 required 4618 x-model.debounce="email" 4619 value="" 4620 x-bind:disabled="showNoDealers()" 4621 /> 4622 <div 4623 x-show="showValidation('email')" 4624 x-cloak 4625 class="invalid-feedback" 4626 >Please enter your email.</div> 4627 </div> 4628 4629 <!--product_interest--> 4630 <div 4631 class="col-span-full" 4632 x-show="shownFields().productInterest" 4633 > 4634 <label 4635 x-bind:for="makeId('product_interest')" 4636 class="ml-3 mb-1 text-sm" 4637 ><span x-show="requiredFields().productInterest"> * </span>Product interest</label> 4638 <select 4639 name="product_interest" 4640 class="form-control rounded-full" 4641 x-bind:class="validationClass('productInterest')" 4642 x-bind:id="makeId('product_interest')" 4643 required 4644 x-model="productInterest" 4645 x-bind:disabled="showNoDealers()" 4646 > 4647 <option disabled selected value="">Product interest</option> 4648 <option 4649 value="water_softener" 4650 >Water Softening and Salt-Free Conditioner</option> 4651 <option 4652 value="drinking_water_system" 4653 >Drinking Water System</option> 4654 <option 4655 value="bottled_water" 4656 >Bottled Water</option> 4657 <option 4658 value="bottleless_coolers" 4659 >Bottleless Coolers</option> 4660 <option 4661 value="service" 4662 >Billing, Customer Service, Repair, Salt</option> 4663 <option 4664 value="commercial_and_industrial" 4665 >Commercial / Industrial</option> 4666 <option 4667 value="culligan_brand" 4668 >Other, Please Explain</option> 4669 </select> 4670 <div 4671 x-show="showValidation('productInterest')" 4672 x-cloak 4673 class="invalid-feedback" 4674 >Please select your interest.</div> 4675 </div> 4676 4677 <!--referral_source--> 4678 <div 4679 class="col-span-full" 4680 x-show="shownFields().referralSource" 4681 > 4682 <label 4683 x-bind:for="makeId('referral_source')" 4684 class="ml-3 mb-1 text-sm" 4685 ><span x-show="requiredFields().referralSource"> * </span>How did you hear about us?</label> 4686 <select 4687 name="referral_source" 4688 class="form-control rounded-full" 4689 x-bind:class="validationClass('referralSource')" 4690 x-bind:id="makeId('referral_source')" 4691 required 4692 x-model="referralSource" 4693 x-bind:disabled="showNoDealers()" 4694 > 4695 <option disabled selected value="">Referral Source</option> 4696 <template x-for="source in referral_sources"> 4697 <option 4698 x-bind:value="source" 4699 x-text="source" 4700 ></option> 4701 </template> 4702 </select> 4703 <div 4704 x-show="showValidation('referralSource')" 4705 x-cloak 4706 class="invalid-feedback" 4707 >Please select your referral source.</div> 4708 </div> 4709 4710 <!--delivery_type--> 4711 <div 4712 class="col-span-full" 4713 x-show="shownFields().deliveryType" 4714 > 4715 <div class="items-center space-x-2" x-bind:class="validationClass('deliveryType')">
4716 <span class="text-sm"><span x-show="requiredFields().deliveryType"> * </span>Delivery Type</span> 4717 <template x-for="value in deliveryTypes"> 4718 <button 4719 type="button" 4720 class="btn rounded-full" 4721 x-bind:class="isDeliveryTypeSelected(value) ? 'btn-indigo' : 'btn-white'" 4722 x-on:click="selectDeliveryType(value)" 4723 x-bind:disabled="showNoDealers()" 4724 > 4725 <span x-text="value" class="capitalize"></span> 4726 <span x-show="isDeliveryTypeSelected(value)"><i class="fa-solid fa-check-square fa-fw"></i></span> 4727 <span x-show="!isDeliveryTypeSelected(value)"><i class="fa-solid fa-square fa-fw"></i></span> 4728 </button> 4729 </template> 4730 </div> 4731 <div 4732 x-show="showValidation('deliveryType')" 4733 x-cloak 4734 class="invalid-feedback" 4735 >Select a valid delivery type.</div> 4736 </div> 4737 4738 <!--free_water_test--> 4739 <div 4740 class="col-span-full" 4741 x-show="shownFields().freeWaterTest" 4742 > 4743 <label 4744 x-bind:for="makeId('free_water_test_yes')" 4745 class="ml-3 mb-1 text-sm" 4746 ><span x-show="requiredFields().freeWaterTest"> * </span>Free water test</label> 4747 <div class="px-1 py-2" x-bind:class="validationClass('freeWaterTest')"> 4748 <input 4749 name="free_water_test" 4750 type="radio" 4751 x-bind:id="makeId('free_water_test_yes')" 4752 value="yes" 4753 x-model.debounce="freeWaterTest" 4754 /> 4755 <label 4756 x-bind:for="makeId('free_water_test_yes')" 4757 >Yes</label> 4758 <input 4759 name="free_water_test" 4760 type="radio" 4761 class="ml-2" 4762 x-bind:id="makeId('free_water_test_no')" 4763 value="no" 4764 x-model.debounce="freeWaterTest" 4765 x-bind:disabled="showNoDealers()" 4766 /> 4767 <label 4768 x-bind:for="makeId('free_water_test_no')" 4769 >No</label> 4770 </div> 4771 <div 4772 x-show="showValidation('freeWaterTest')" 4773 x-cloak 4774 class="invalid-feedback" 4775 >Please select if you would like a free water test.</div> 4776 </div> 4777 4778 <!--appointment_request--> 4779 <div 4780 class="col-span-full space-y-3" 4781 x-show="shownFields().appointmentRequest" 4782 > 4783 4784 <div> 4785 <input 4786 name="appointment_request" 4787 type="checkbox" 4788 class="rounded-md" 4789 x-bind:id="makeId('appointment_request')" 4790 value="" 4791 x-model="appointmentRequest" 4792 x-bind:disabled="showNoDealers() || (requiredFields().appointmentRequest && appointmentRequest)" 4793 /> 4794 <label 4795 x-bind:for="makeId('appointment_request')" 4796 ><span x-show="requiredFields().appointmentRequest"> * </span>Interested in an appointment?</label> 4797 </div> 4798 4799 <div 4800 class="space-y-3" 4801 x-show="appointmentRequest" 4802 > 4803 4804 <div> 4805 <div class="mb-1">Your Culligan professional will contact you to confirm your request.</div> 4806 <div>Your request is subject to availability, holidays and hours of operation.</div> 4807 </div> 4808 4809 <div x-show="shownFields().preferredTime"> 4810 <label 4811 x-bind:for="makeId('preferred_time')" 4812 class="ml-3 mb-1 text-sm" 4813 ><span x-show="requiredFields().preferredTime"> * </span>Preferred time</label> 4814 <select 4815 name="preferred_time" 4816 class="form-control rounded-full" 4817 x-bind:class="validationClass('preferredTime')" 4818 x-bind:id="makeId('preferred_time')" 4819 required 4820 x-model="preferredTime" 4821 x-bind:disabled="showNoDealers()" 4822 > 4823 <option disabled selected value="">Select a time</option> 4824 <template x-for="time in preferredTimes"> 4825 <option 4826 x-bind:value="time" 4827 x-text="time" 4828 ></option> 4829 </template> 4830 </select> 4831 <div 4832 x-show="showValidation('preferredTime')" 4833 x-cloak 4834 class="invalid-feedback" 4835 >Please select your preferred time.</div> 4836 </div> 4837 4838 <div x-show="shownFields().preferredDate"> 4839 <div 4840 class="ml-3 mb-1 text-sm block" 4841 ><span x-show="requiredFields().preferredDate"> * </span>Preferred date</div> 4842 <div 4843 class="form-control rounded-full" 4844 x-bind:class="validationClass('preferredDate')" 4845 > 4846 <input 4847 name="preferred_date" 4848 class="border-none p-0 w-11/12 focus:ring-0" 4849 placeholder="Select a date" 4850 x-ref="preferredDate" 4851 x-model="preferredDate" 4852 x-bind:disabled="showNoDealers()" 4853 /> 4854 </div> 4855 <div 4856 x-show="showValidation('preferredDate')" 4857 x-cloak 4858 class="invalid-feedback" 4859 >Please select your preferred date.</div> 4860 </div> 4861 4862 </div> 4863 4864 </div> 4865 4866 <!--message--> 4867 <div 4868 class="col-span-full" 4869 x-show="shownFields().message" 4870 > 4871 <label 4872 x-bind:for="makeId('message')" 4873 class="ml-3 mb-1 text-sm" 4874 ><span x-show="requiredFields().message"> * </span>Additional information</label> 4875 <textarea 4876 name="message" 4877 rows="5" 4878 class="form-control rounded-lg" 4879 x-bind:class="validationClass('message')" 4880 x-bind:id="makeId('message')" 4881 required 4882 x-model.debounce="message" 4883 placeholder="Add a message" 4884 x-bind:disabled="showNoDealers()" 4885 ></textarea> 4886 <div 4887 x-show="showValidation('message')" 4888 x-cloak 4889 class="invalid-feedback" 4890 >Add a message</div> 4891 </div> 4892 4893 <!--nurture--> 4894 <div 4895 class="col-span-full" 4896 x-show="showNurture()" 4897 > 4898 <div> 4899 <input 4900 name="nurture" 4901 type="checkbox" 4902 x-bind:id="makeId('nurture')" 4903 x-model.debounce="nurture" 4904 />
4905 <span x-show="requiredFields().nurture"> * </span> 4906 <label 4907 x-bind:for="makeId('nurture')" 4908 class="ml-3 mb-1 text-sm" 4909 x-html="nurture_title" 4910 ></label> 4911 </div> 4912 <div class="text-xs" x-html="nurture_body"></div> 4913 <div 4914 x-show="showValidation('nurture')" 4915 x-cloak 4916 class="invalid-feedback" 4917 >Please agree to continue.</div> 4918 </div> 4919 4920 <!--disclaimer--> 4921 <div 4922 class="col-span-full" 4923 x-show="shownFields().disclaimer && requiredFields().phone" 4924 > 4925 <div class="text-xs" x-html="disclaimer"></div> 4926 </div> 4927 4928 <!--recaptcha--> 4929 <div 4930 class="col-span-full" 4931 > 4932 <div class="text-xs"> 4933 This site is protected by reCAPTCHA and the Google 4934 <a href="https://policies.google.com/privacy">Privacy Policy</a> and 4935 <a href="https://policies.google.com/terms">Terms of Service</a> apply. 4936 </div> 4937 </div> 4938 4939 <!--submit--> 4940 <div class="col-span-full"> 4941 <button 4942 type="submit" 4943 x-bind:id="makeId('submit')" 4944 class="btn btn-white-blue rounded-full" 4945 x-bind:class="{'opacity-60' : submitStatus === 'in progress'}" 4946 x-bind:style="showNoDealers() ? 'pointer-events: none' : ''" 4947 x-bind:disabled="showNoDealers()" 4948 >Submit <span x-show="hasLeadInSession">Again</span> 4949 <span x-show="submitStatus !== 'in progress'"><i class="fa-sharp fa-regular fa-arrow-right ml-1"></i></span> 4950 <span x-show="submitStatus === 'in progress'"><i class="fa-solid fa-spinner fa-fw fa-spin"></i></span> 4951 </button> 4952 </div> 4953 4954 </form> 4955 4956 </div> 4957 4958 <template x-if="submitStatus === 'success' && (typeof show === 'undefined' || show)"> 4959 4960 <div class="pt-3 pb-5 border-b border-gray-500"> 4961 <div class="text-blue-800 mb-3"> 4962 <div class="text-3xl">Thank you for contacting us.</div> 4963 <div class="text-lg">One of our local water experts will contact you shortly.</div> 4964 </div> 4965 <div class="aspect-w-16 aspect-h-9"> 4966 <iframe 4967 src="https://fast.wistia.net/embed/iframe/mvbxtgs846?videoFoam=true" 4968 title="Culligan-Thank-You Video" 4969 allow="autoplay; fullscreen" 4970 allowtransparency="true" 4971 allowfullscreen 4972 width="100%" 4973 height="100%" 4974 ></iframe> 4975 </div> 4976 </div> 4977 4978 </template> 4979 4980 <template x-if="submitStatus === 'recaptcha_failure' && (typeof show === 'undefined' || show)"> 4981 4982 <div class="pt-3 pb-5 border-b border-gray-500"> 4983 <div class="text-blue-800 mb-3"> 4984 <div class="text-2xl">We ran into an issue submitting your form, please call 4985 <a 4986 href="tel:8663304482" 4987 class="headerPhone text-2xl text-blue-500 font-bold underline" 4988 x-data="phone('8663304482', 'recaptcha_fail')" 4989 x-bind="clickToCall" 4990 > 4991 866-330-4482 4992 </a> 4993 to connect with your Culligan Dealer.</div> 4994 </div> 4995 </div> 4996 4997 </template> 4998 4999</div> 5000 5001 </div> 5002 5003 <button 5004 type="button" 5005 class="absolute top-4 right-4" 5006 x-on:click="show = false" 5007 aria-label="Close dialog" 5008 > 5009 <i class="fa-solid fa-times fa-fw fa-2x text-blue-800 cursor-pointer"></i> 5010 </button> 5011 5012 </div> 5013 5014</div> 5015</div> 5016 5017 5018 5019<!--prescripts--> 5020<noscript> 5021 <iframe src="https://www.googletagmanager.com/ns.html?id=GTM-5Q5JHRW" height="0" width="0" style="display:none; visibility:hidden; "></iframe> 5022</noscript> 5023<noscript> 5024 <img alt="" height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=1117998811575937&ev=PageView&noscript=1" /> 5025</noscript> 5026 5027<!--global-->
5028<script> 5029 window.domain = JSON.parse('{\u0022id\u0022:121,\u0022country\u0022:\u0022US\u0022,\u0022form_customization\u0022:{}}'); 5030 window.page = JSON.parse('{\u0022override\u0022:null,\u0022product_interest\u0022:\u0022service\u0022}'); 5031 window.recaptchaKey = '6Ley0ykrAAAAAGgyZ1YnF5kup5NHkCJ8ABETUm73'; 5032</script>
5032 5033 5034<!--app-->
5035<script src="/js/app.js?id=0cd5fc53585cfb0b948d59095d48da38"></script>
5035 5036 5037<!--domain--> 5038<!-- The custom js for the footer -->
5039<script type='text/javascript'> 5040 window.__lo_site_id = 67126; 5041 window.__lo_disable_flash = true; 5042 (function () { 5043 var wa = document.createElement('script'); 5044 wa.type = 'text/javascript'; 5045 wa.async = true; 5046 wa.src = 'https://d10lpsik1i8c69.cloudfront.net/w.js'; 5047 var s = document.getElementsByTagName('script')[0]; 5048 s.parentNode.insertBefore(wa, s); 5049 })(); 5050</script>
5050 5051 5052<!-- Start of LiveChat (www.livechatinc.com) code -->
5053<script> 5054window.__lc = window.__lc || {}; 5055window.__lc.license = 10055243; 5056(function() { 5057 var lc = document.createElement('script'); lc.type = 'text/javascript'; lc.async = true; 5058 lc.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'cdn.livechatinc.com/tracking.js'; 5059 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(lc, s); 5060})(); 5061</script>
5061 5062<noscript> 5063 <a href="https://www.livechatinc.com/chat-with/10055243/">Chat with us</a>, 5064 powered by <a href="https://www.livechatinc.com/?welcome" rel="noopener" target="_blank">LiveChat</a> 5065</noscript> 5066<!-- End of LiveChat code --> 5067 5068<!--google map & places-->
5069<script> 5070 // dispatch event to run on forms to initialize autocomplete 5071 function initAutocomplete() { 5072 window.dispatchEvent(new Event('places-loaded')); 5073 5074 //load map if on page with map 5075 if (typeof initMap === "function"){ 5076 initMap(); 5077 } 5078 } 5079</script>
vendor: 1 bytes, line 5079
5079
5080<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyBvRl0Of-mP1q5_Y683XSRw_0EWvuRLpXo&libraries=places&callback=initAutocomplete" async defer></script>
5080 5081 5082<!--postscripts--> 5083 5084<!--recaptcha-->
vendor: 61 bytes, lines 5084-5085
5084 5085<script src="https://www.google.com/recaptcha/api.js?render=
50856Ley0ykrAAAAAGgyZ1YnF5kup5NHkCJ8ABETUm73
vendor: 13 bytes, lines 5085-5086
5085"></script> 5086
5087</body> 5088</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.