1<!doctype html > 2<html xmlns="http://www.w3.org/1999/xhtml" lang="en" 3 class="ios-preview-native-scroll"> 4<head> 5 <meta charset="utf-8"> 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
45<script type="text/javascript"> 46 window._currentDevice = 'desktop'; 47 window.Parameters = window.Parameters || { 48 HomeUrl: 'https://www.hardyqualityair.com/', 49 50 SystemID: 'US_DIRECT_PRODUCTION', 51 SiteAlias: '4dc87d15', 52 SiteType: atob('RFVEQU9ORQ=='), 53 PublicationDate: 'Mar 24, 2026', 54 ExternalUid: 'qsaltbinhz4yw9ld', 55 IsSiteMultilingual: false, 56 InitialPostAlias: '', 57 InitialPostPageUuid: '', 58 InitialDynamicItem: '', 59 DynamicPageInfo: { 60 isDynamicPage: false, 61 base64JsonRowData: 'null', 62 }, 63 InitialPageAlias: 'hvac-service-coupons', 64 InitialPageUuid: 'd38e81df45c84bd499f872c1920f60a4', 65 InitialPageId: '30095333', 66 InitialEncodedPageAlias: 'aHZhYy1zZXJ2aWNlLWNvdXBvbnM=', 67 InitialHeaderUuid: 'bead610a08eb4539946956a3549cdb0a', 68 CurrentPageUrl: '', 69 IsCurrentHomePage: false, 70 AllowAjax: false, 71 AfterAjaxCommand: null, 72 HomeLinkText: 'Back To Home', 73 UseGalleryModule: false, 74 CurrentThemeName: 'Layout Theme', 75 ThemeVersion: '500000', 76 DefaultPageAlias: '', 77 RemoveDID: true, 78 WidgetStyleID: null, 79 IsHeaderFixed: false, 80 IsHeaderSkinny: false, 81 IsBfs: true, 82 StorePageAlias: 'null', 83 StorePagesUrls: 'e30=', 84 IsNewStore: 'false', 85 StorePath: '', 86 StoreId: 'null', 87 StoreVersion: 0, 88 StoreBaseUrl: '', 89 StoreCleanUrl: true, 90 StoreDisableScrolling: true, 91 IsStoreSuspended: false, 92 HasCustomDomain: true, 93 SimpleSite: false, 94 showCookieNotification: false, 95 cookiesNotificationMarkup: 'null', 96 translatedPageUrl: '', 97 isFastMigrationSite: false, 98 sidebarPosition: 'NA', 99 currentLanguage: 'en', 100 currentLocale: 'en', 101 NavItems: '{}', 102 errors: { 103 general: 'There was an error connecting to the page.<br/> Make sure you are not offline.', 104 password: 'Incorrect name/password combination', 105 tryAgain: 'Try again' 106 }, 107 108 mapConsent: { 109 message: 'This content is served by a third party, {0}. If enabled, {0} may collect information about your activity.', 110 enable: 'Enable' 111 }, 112 NavigationAreaParams: { 113 ShowBackToHomeOnInnerPages: true, 114 NavbarSize: 4, 115 NavbarLiveHomePage: 'https://www.hardyqualityair.com/', 116 BlockContainerSelector: '.dmBody', 117 NavbarSelector: '#dmNav:has(a)', 118 SubNavbarSelector: '#subnav_main' 119 }, 120 hasCustomCode: true, 121 planID: '1681', 122 customTemplateId: 'null', 123 siteTemplateId: 'null', 124 productId: 'DM_DIRECT', 125 disableTracking: false, 126 pageType: 'FROM_SCRATCH', 127 isRuntimeServer: true, 128 isInEditor: false, 129 isInPreview: false, 130 hasNativeStore: false, 131 defaultLang: 'en', 132 hamburgerMigration: null, 133 isFlexSite: false 134 }; 135 136 window.Parameters.LayoutID = {}; 137 window.Parameters.LayoutID[window._currentDevice] = 6; 138 window.Parameters.LayoutVariationID = {}; 139 window.Parameters.LayoutVariationID[window._currentDevice] = 5; 140</script>
140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163<!-- Injecting site-wide to the head --> 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181
182<script type="text/javascript" id="d_track_campaign"> 183 (function() { 184 if (!window.location.search) { 185 return; 186 } 187 const cleanParams = window.location.search.substring(1); // Strip ? 188 const queryParams = cleanParams.split('&'); 189 190 const expires = 'expires=' + new Date().getTime() + 24 * 60 * 60 * 1000; 191 const domain = 'domain=' + window.location.hostname; 192 const path = "path=/"; 193 194 queryParams.forEach((param) => { 195 const [key, value = ''] = param.split('='); 196 if (key.startsWith('utm_')) { 197 const cookieName = "_dm_rt_" + key.substring(4); 198 const cookie = cookieName + "=" + value; 199 const joined = [cookie, expires, domain, path].join(";"); 200 document.cookie = joined; 201 } 202 }); 203 }()); 204</script>
vendor: 1 bytes, line 204
204
205<script type="text/javascript" id="d_track_referrer"> 206 (function() { 207 const cookieName = '_dm_entry_referrer'; 208 const referrer = document.referrer; 209 if (!referrer) { 210 return; 211 } 212 let referrerOrigin; 213 try { 214 referrerOrigin = new URL(referrer).origin; 215 } catch (e) { 216 return; 217 } 218 // 'null' is what an opaque origin (sandboxed iframe, file://) serializes to. 219 if (!referrerOrigin || referrerOrigin === 'null' || referrerOrigin === window.location.origin) { 220 return; 221 } 222 try { 223 const existing = document.cookie 224 .split('; ') 225 .find((candidate) => candidate.indexOf(cookieName + '=') === 0); 226 if (existing && decodeURIComponent(existing.slice(cookieName.length + 1))) { 227 return; 228 } 229 // No expiry: session-scoped, matching the _dm_rt_ cookies above that a submission 230 // reads alongside this one (session-scoped in practice â see FBN-5389). 231 const secure = window.location.protocol === 'https:' ? ';Secure' : ''; 232 document.cookie = cookieName + '=' + encodeURIComponent(referrerOrigin) 233 + ';path=/;SameSite=Lax' + secure; 234 } catch (e) { 235 return; 236 } 237 }()); 238</script>
238 239
240<script type="text/javascript" > 241 var _dm_gaq = {}; 242 var _gaq = _gaq || []; 243 var _dm_insite = []; 244</script>
244 245 246 247 248
249<script> 250 const siteGoogleAnalyticsTagIds = ['G-NNBL77XTHG']; 251 (function (w, i, g) { w[g] = w[g] || []; if (typeof w[g].push == 'function') w[g].push.apply(w[g], i) }) 252 (window, siteGoogleAnalyticsTagIds, 'google_tags_first_party'); 253</script>
vendor: 1 bytes, line 253
253
254<script async src="/dnc17plhbz-4dc87d15/xPzvslakn0W5356T2zrPnPOB8LE"></script>
254 255
256<script type="text/javascript" id="d_track_ga"> 257 window.dataLayer = window.dataLayer || []; 258 _dm_gaq.siteAlias = '4dc87d15'; 259 _dm_gaq.externalGaqID = 'non-empty'; 260 261 function gtag() { dataLayer.push(arguments); } 262 263 function pushInsiteImpressions(id) { 264 _dm_insite.forEach((rule) => { 265 _dm_gaq.pushEvent(id, 'insite_impression', 'insite', rule.ruleType + '__' + rule.ruleId); 266 }); 267 } 268 269 _dm_gaq.pushEvent = function(trackingId, event, category, label, value, additionalParams = {}) { 270 const eventProps = { 271 event_category: category, 272 event_label: label, 273 value, 274 ...additionalParams 275 }; 276 gtag('event', event, eventProps); 277 } 278 279 gtag('js', new Date()) 280 281 282gtag('set', 'developer_id.dMDU5Nj', true); 283gtag('set', 'developer_id.dYmRlZG', true); 284gtag('set', 'developer_id.dMWY5NG', true); 285gtag('config', 'G-NNBL77XTHG', { 286 'send_page_view': false, 287 'linker': { 288 'domains': ['www.hardyqualityair.com'] 289 } 290}); 291 292 _dm_gaq.pushEvent('', 'page_view'); 293 294 pushInsiteImpressions(_dm_gaq.externalGaqID); 295</script>
295 296 297 298 299 300 301<!-- End Injecting site-wide to the head --> 302 303<!-- Inject secured cdn script --> 304 305 306<!-- ========= Meta Tags ========= -->
307<script> 308 try { 309 if ( 310 navigator.serviceWorker && 311 navigator.serviceWorker.getRegistrations && 312 location.protocol === 'https:' 313 ) { 314 // remove all service workers 315 navigator.serviceWorker 316 .getRegistrations() 317 .then(function (registrations) { 318 if (registrations && registrations.length) { 319 console.log('unregistering service workers'); 320 registrations.forEach(function (registration) { 321 registration.unregister(); 322 }); 323 } 324 }); 325 // clear caches 326 if (caches) { 327 caches.keys().then(function (keyList) { 328 if (keyList && keyList.length) { 329 console.log('deleting caches'); 330 keyList.forEach(function (key) { 331 if (key && key.indexOf('druntime') === 0) { 332 caches.delete(key); 333 } 334 }); 335 } 336 }); 337 } 338 } 339} catch (err) { 340 // not a secured location 341} 342</script>
342 343 344 345 346<link rel="canonical" href="https://www.hardyqualityair.com/hvac-service-coupons"> 347 348<meta id="view" name="viewport" content="initial-scale=1, minimum-scale=1, maximum-scale=5, viewport-fit=cover"> 349 350<meta name="apple-mobile-web-app-capable" content="yes"> 351 352<!--Add favorites icons--> 353 354<link rel="apple-touch-icon" 355 href="https://irp.cdn-website.com/4dc87d15/dms3rep/multi/hardy-quality-air-favi.png"/> 356 357<link rel="icon" type="image/x-icon" href="https://irp.cdn-website.com/4dc87d15/site_favicon_16_1717101730637.ico"/> 358 359<!-- End favorite icons --> 360<link rel="preconnect" href="https://irp.cdn-website.com"/> 361<link rel="preconnect" href="https://irp.cdn-website.com" crossorigin/> 362<link rel="preconnect" href="https://static.cdn-website.com"/> 363 364 365 366<!-- render the required CSS and JS in the head section -->
367<script id='d-js-dmapi'> 368 window.SystemID = 'US_DIRECT_PRODUCTION'; 369 370 if (!window.dmAPI) { 371 window.dmAPI = { 372 registerExternalRuntimeComponent: function () { 373 }, 374 getCurrentDeviceType: function () { 375 return window._currentDevice; 376 }, 377 runOnReady: (ns, fn) => { 378 const safeFn = dmAPI.toSafeFn(fn); 379 ns = ns || 'global_' + Math.random().toString(36).slice(2, 11); 380 const eventName = 'afterAjax.' + ns; 381 382 if (document.readyState === 'complete') { 383 $.DM.events.off(eventName).on(eventName, safeFn); 384 setTimeout(function () { 385 safeFn({ 386 isAjax: false, 387 }); 388 }, 0); 389 } else { 390 window?.waitForDeferred?.('dmAjax', () => { 391 $.DM.events.off(eventName).on(eventName, safeFn); 392 safeFn({ 393 isAjax: false, 394 }); 395 }); 396 } 397 }, 398 toSafeFn: (fn) => { 399 if (fn?.safe) { 400 return fn; 401 } 402 const safeFn = function (...args) { 403 try { 404 return fn?.apply(null, args); 405 } catch (e) { 406 console.log('function failed ' + e.message); 407 } 408 }; 409 safeFn.safe = true; 410 return safeFn; 411 } 412 }; 413 } 414 415 if (!window.requestIdleCallback) { 416 window.requestIdleCallback = function (fn) { 417 setTimeout(fn, 0); 418 } 419 } 420</script>
420 421 422<!-- loadCSS function header.jsp--> 423 424 425 426 427 428
429<script id="d-js-load-css"> 430/** 431 * There are a few <link> tags with CSS resource in them that are preloaded in the page 432 * in each of those there is a "onload" handler which invokes the loadCSS callback 433 * defined here. 434 * We are monitoring 3 main CSS files - the runtime, the global and the page. 435 * When each load we check to see if we can append them all in a batch. If threre 436 * is no page css (which may happen on inner pages) then we do not wait for it 437 */ 438(function () { 439 let cssLinks = {}; 440 function loadCssLink(link) { 441 link.onload = null; 442 link.rel = "stylesheet"; 443 link.type = "text/css"; 444 } 445 446 function checkCss() { 447 const pageCssLink = document.querySelector("[id*='CssLink']"); 448 const widgetCssLink = document.querySelector("[id*='widgetCSS']"); 449 450 if (cssLinks && cssLinks.runtime && cssLinks.global && (!pageCssLink || cssLinks.page) && (!widgetCssLink || cssLinks.widget)) { 451 const storedRuntimeCssLink = cssLinks.runtime; 452 const storedPageCssLink = cssLinks.page; 453 const storedGlobalCssLink = cssLinks.global; 454 const storedWidgetCssLink = cssLinks.widget; 455 456 storedGlobalCssLink.disabled = true; 457 loadCssLink(storedGlobalCssLink); 458 459 if (storedPageCssLink) { 460 storedPageCssLink.disabled = true; 461 loadCssLink(storedPageCssLink); 462 } 463 464 if(storedWidgetCssLink) { 465 storedWidgetCssLink.disabled = true; 466 loadCssLink(storedWidgetCssLink); 467 } 468 469 storedRuntimeCssLink.disabled = true; 470 loadCssLink(storedRuntimeCssLink); 471 472 requestAnimationFrame(() => { 473 setTimeout(() => { 474 storedRuntimeCssLink.disabled = false; 475 storedGlobalCssLink.disabled = false; 476 if (storedPageCssLink) { 477 storedPageCssLink.disabled = false; 478 } 479 if (storedWidgetCssLink) { 480 storedWidgetCssLink.disabled = false; 481 } 482 // (SUP-4179) Clear the accumulated cssLinks only when we're 483 // sure that the document has finished loading and the document 484 // has been parsed. 485 if(document.readyState === 'interactive') { 486 cssLinks = null; 487 } 488 }, 0); 489 }); 490 } 491 } 492 493 494 function loadCSS(link) { 495 try { 496 var urlParams = new URLSearchParams(window.location.search); 497 var noCSS = !!urlParams.get("nocss"); 498 var cssTimeout = urlParams.get("cssTimeout") || 0; 499 500 if (noCSS) { 501 return; 502 } 503 if (link.href && link.href.includes("d-css-runtime")) { 504 cssLinks.runtime = link; 505 checkCss(); 506 } else if (link.id === "siteGlobalCss") { 507 cssLinks.global = link; 508 checkCss(); 509 } 510 511 else if (link.id && link.id.includes("CssLink")) { 512 cssLinks.page = link; 513 checkCss(); 514 } else if (link.id && link.id.includes("widgetCSS")) { 515 cssLinks.widget = link; 516 checkCss(); 517 } 518 519 else { 520 requestIdleCallback(function () { 521 window.setTimeout(function () { 522 loadCssLink(link); 523 }, parseInt(cssTimeout, 10)); 524 }); 525 } 526 } catch (e) { 527 throw e 528 } 529 } 530 window.loadCSS = window.loadCSS || loadCSS; 531})(); 532</script>
532 533 534 535
536<script data-role="deferred-init" type="text/javascript"> 537 /* usage: window.getDeferred(<deferred name>).resolve() or window.getDeferred(<deferred name>).promise.then(...)*/ 538 function Def() { 539 this.promise = new Promise((function (a, b) { 540 this.resolve = a, this.reject = b 541 }).bind(this)) 542 } 543 544 const defs = {}; 545 window.getDeferred = function (a) { 546 return null == defs[a] && (defs[a] = new Def), defs[a] 547 } 548 window.waitForDeferred = function (b, a, c) { 549 let d = window?.getDeferred?.(b); 550 d 551 ? d.promise.then(a) 552 : c && ["complete", "interactive"].includes(document.readyState) 553 ? setTimeout(a, 1) 554 : c 555 ? document.addEventListener("DOMContentLoaded", a) 556 : console.error(`Deferred does not exist`); 557 }; 558</script>
558 559<style id="forceCssIncludes"> 560 /* This file is auto-generated from a `scss` file with the same name */ 561 562.videobgwrapper{overflow:hidden;position:absolute;z-index:0;width:100%;height:100%;top:0;left:0;pointer-events:none;border-radius:inherit}.videobgframe{position:absolute;width:101%;height:100%;top:50%;left:50%;transform:translateY(-50%) translateX(-50%);object-fit:fill}#dm video.videobgframe{margin:0}@media (max-width:767px){.dmRoot .dmPhotoGallery.newPhotoGallery:not(.photo-gallery-done){min-height:80vh}}@media (min-width:1025px){.dmRoot .dmPhotoGallery.newPhotoGallery:not(.photo-gallery-done){min-height:45vh}}@media (min-width:768px) and (max-width:1024px){.responsiveTablet .dmPhotoGallery.newPhotoGallery:not(.photo-gallery-done){min-height:45vh}}#dm [data-show-on-page-only]{display:none!important}#dmRoot div.stickyHeaderFix div.site_content{margin-top:0!important}#dmRoot div.stickyHeaderFix div.hamburger-header-container{position:relative}@media (min-width:768px) and (max-width:1024px){.responsiveTablet #dm .dmInner .hide-for-medium,[data-hidden-on-tablet]{display:none!important}} 563 564 565</style> 566<style id="cssVariables" type="text/css"> 567 :root { 568 --color_1: rgba(204, 0, 0, 1); 569 --color_2: rgba(9, 96, 132, 1); 570 --color_3: rgba(0,0,0,1); 571 --color_4: rgba(255,255,255,1); 572 --color_5: rgba(0,0,0,0); 573 --color_6: rgba(51,51,51,1); 574} 575</style> 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601<!-- Google Fonts Include --> 602 603 604 605 606 607 608 609 610 611 612 613 614 615<!-- loadCSS function fonts.jsp--> 616 617 618 619<link type="text/css" rel="stylesheet" href="https://irp.cdn-website.com/fonts/css2?family=Roboto:wght@100;300;400;500;700;900&family=Montserrat:[email protected]&family=Cabin:[email protected]&family=Poppins:wght@100;200;300;400;500;600;700;800;900&family=Inter:[email protected]&family=Pacifico:wght@400&family=Oswald:[email protected]&family=Source+Sans+Pro:wght@200;300;400;600;700;900&family=Open+Sans:[email protected]&subset=latin-ext&display=swap" /> 620 621 622 623 624 625<!-- RT CSS Include d-css-runtime-desktop-one-package-structured-global--> 626<link rel="stylesheet" type="text/css" href="https://static.cdn-website.com/mnlt/production/6807/_dm/s/rt/dist/css/d-css-runtime-desktop-one-package-structured-global.min.css" /> 627 628<!-- End of RT CSS Include --> 629 630<link type="text/css" rel="stylesheet" href="https://irp.cdn-website.com/WIDGET_CSS/8e7f2b44b79533d33e6c1a47f7a0cee3.css" id="widgetCSS" /> 631 632<!-- Support `img` size attributes --> 633<style>img[width][height] { 634 height: auto; 635}</style> 636 637<!-- Support showing sticky element on page only --> 638<style> 639 body[data-page-alias="hvac-service-coupons"] #dm [data-show-on-page-only="hvac-service-coupons"] { 640 display: block !important; 641 } 642</style> 643 644<!-- This is populated in Ajax navigation --> 645<style id="pageAdditionalWidgetsCss" type="text/css"> 646</style> 647 648 649 650 651<!-- Site CSS --> 652<link type="text/css" rel="stylesheet" href="https://irp.cdn-website.com/4dc87d15/files/4dc87d15_1.min.css?v=32" id="siteGlobalCss" /> 653 654 655 656<style id="customWidgetStyle" type="text/css"> 657 658</style> 659<style id="innerPagesStyle" type="text/css"> 660 661</style> 662 663 664<style 665 id="additionalGlobalCss" type="text/css" 666> 667</style> 668 669<style id="pagestyle" type="text/css"> 670 *#dm *.dmBody a.span.textonly 671{ 672 color:rgb(255,255,255) !important; 673} 674*#dm *.dmBody div.dmform-error 675{ 676 font-style:normal !important; 677} 678*#dm *.dmBody div.dmforminput textarea 679{ 680 font-style:italic !important; 681} 682*#dm *.dmBody div.dmforminput *.fileUploadLink 683{ 684 font-style:italic !important; 685} 686*#dm *.dmBody div.checkboxwrapper span 687{ 688 font-style:italic !important; 689} 690*#dm *.dmBody div.radiowrapper span 691{ 692 font-style:italic !important; 693} 694*#dm *.dmBody nav.u_1144820115 695{ 696 color:black !important; 697} 698*#dm *.dmBody div.u_1855357593 699{ 700 border-color:var(--color_2) !important; 701 border-width:5px !important; 702 border-style:solid !important; 703 background-color:rgba(233, 231, 231, 1) !important; 704} 705 706</style> 707 708<style id="pagestyleDevice" type="text/css"> 709 *#dm *.d-page-1716942098 DIV.dmInner 710{ 711 background-repeat:no-repeat !important; 712 background-size:cover !important; 713 background-attachment:fixed !important; 714 background-position:50% 50% !important; 715} 716*#dm *.d-page-1716942098 DIV#dmSlideRightNavRight 717{ 718 background-repeat:no-repeat !important; 719 background-image:none !important; 720 background-size:cover !important; 721 background-attachment:fixed !important; 722 background-position:50% 50% !important; 723} 724*#dm *.dmBody div.u_1855357593 725{ 726 margin-left:0px !important; 727 padding-top:20px !important; 728 padding-left:0px !important; 729 padding-bottom:20px !important; 730 margin-top:8px !important; 731 margin-bottom:8px !important; 732 margin-right:0px !important; 733 padding-right:0px !important; 734} 735*#dm *.dmBody div.u_1243667655 736{ 737 margin-left:0px !important; 738 padding-top:34px !important; 739 padding-left:40px !important; 740 padding-bottom:34px !important; 741 margin-top:0px !important; 742 margin-bottom:0px !important; 743 padding-right:40px !important; 744 margin-right:0px !important; 745 float:none !important; 746 top:0 !important; 747 left:0 !important; 748 width:auto !important; 749 position:relative !important; 750 height:auto !important; 751 max-width:100% !important; 752 min-width:0 !important; 753 text-align:center !important; 754 min-height:auto !important; 755} 756 757</style> 758 759<!-- Flex Sections CSS --> 760 761 762 763 764 765 766 767<style id="globalFontSizeStyle" type="text/css"> 768 .font-size-20, .size-20, .size-20 > font { font-size: 20px !important; } 769</style> 770<style id="pageFontSizeStyle" type="text/css"> 771</style> 772 773 774 775 776<style id="hideAnimFix"> 777 .dmDesktopBody:not(.editGrid) [data-anim-desktop]:not([data-anim-desktop='none']), .dmDesktopBody:not(.editGrid) [data-anim-extended] { 778 visibility: hidden; 779 } 780 781 .dmDesktopBody:not(.editGrid) .dmNewParagraph[data-anim-desktop]:not([data-anim-desktop='none']), .dmDesktopBody:not(.editGrid) .dmNewParagraph[data-anim-extended] { 782 visibility: hidden !important; 783 } 784 785 #dmRoot:not(.editGrid) .flex-element [data-anim-extended] { 786 visibility: hidden; 787 } 788 789</style> 790 791 792 793 794<style id="fontFallbacks"> 795 @font-face { 796 font-family: "Roboto Fallback"; 797 src: local('Arial'); 798 ascent-override: 92.6709%; 799 descent-override: 24.3871%; 800 size-adjust: 100.1106%; 801 line-gap-override: 0%; 802 }@font-face { 803 font-family: "Montserrat Fallback"; 804 src: local('Arial'); 805 ascent-override: 84.9466%; 806 descent-override: 22.0264%; 807 size-adjust: 113.954%; 808 line-gap-override: 0%; 809 }@font-face { 810 font-family: "Cabin Fallback"; 811 src: local('Arial'); 812 ascent-override: 101.7818%; 813 descent-override: 26.3684%; 814 size-adjust: 94.8106%; 815 line-gap-override: 0%; 816 }@font-face { 817 font-family: "Poppins Fallback"; 818 src: local('Arial'); 819 ascent-override: 92.326%; 820 descent-override: 30.7753%; 821 line-gap-override: 8.793%; 822 size-adjust: 113.7274%; 823}@font-face { 824 font-family: "Inter Fallback"; 825 src: local('Arial'); 826 ascent-override: 90.199%; 827 descent-override: 22.4836%; 828 size-adjust: 107.4014%; 829 line-gap-override: 0%; 830 }@font-face { 831 font-family: "Pacifico Fallback"; 832 src: local('Arial'); 833 ascent-override: 140.9687%; 834 descent-override: 49.0091%; 835 size-adjust: 92.4319%; 836 line-gap-override: 0%; 837 }@font-face { 838 font-family: "Arial Fallback"; 839 src: local('Arial'); 840 line-gap-override: 0%; 841 }@font-face { 842 font-family: "Oswald Fallback"; 843 src: local('Arial'); 844 ascent-override: 145.0682%; 845 descent-override: 35.1423%; 846 size-adjust: 82.2372%; 847 line-gap-override: 0%; 848 }@font-face { 849 font-family: "Open Sans Fallback"; 850 src: local('Arial'); 851 ascent-override: 101.1768%; 852 descent-override: 27.7323%; 853 size-adjust: 105.6416%; 854 line-gap-override: 0%; 855 } 856</style> 857 858 859<!-- End render the required css and JS in the head section --> 860 861 862 863 864 865 866 867 868<meta property="og:type" content="website"> 869<meta property="og:url" content="https://www.hardyqualityair.com/hvac-service-coupons"> 870 871 <title> 872 HVAC Coupons | Watsonville, CA | Hardy Quality Air 873 </title> 874 <meta name="description" content="Hardy Quality Air offers discounts for their commercial and residential HVAC services in Watsonville, CA. Click here to download our latest coupon. 875"/> 876 877 <meta name="twitter:card" content="summary"/> 878 <meta name="twitter:title" content="HVAC Coupons | Watsonville, CA | Hardy Quality Air"/> 879 <meta name="twitter:description" content="Hardy Quality Air offers discounts for their commercial and residential HVAC services in Watsonville, CA. Click here to download our latest coupon. 880"/> 881 <meta name="twitter:image" content="https://irp.cdn-website.com/4dc87d15/dms3rep/multi/opt/hardy-quality-air-opengraph-1920w.png"/> 882 <meta property="og:description" content="Hardy Quality Air offers discounts for their commercial and residential HVAC services in Watsonville, CA. Click here to download our latest coupon. 883"/> 884 <meta property="og:title" content="HVAC Coupons | Watsonville, CA | Hardy Quality Air"/> 885 <meta property="og:image" content="https://irp.cdn-website.com/4dc87d15/dms3rep/multi/opt/hardy-quality-air-opengraph-1920w.png"/> 886 887 888 889 890<!-- SYS- VVNfRElSRUNUX1BST0RVQ1RJT04= --> 891</head> 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913<body id="dmRoot" data-page-alias="hvac-service-coupons" class="dmRoot dmDesktopBody fix-mobile-scrolling addCanvasBorder dmResellerSite dmLargeBody responsiveTablet " 914 style="padding:0;margin:0;" 915 916 > 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932<!-- ========= Site Content ========= --> 933<div id="dm" class='dmwr'> 934 935 <div class="dm_wrapper standard-var5 widgetStyle-3 standard"> 936 <div dmwrapped="true" id="1901957768" class="dm-home-page" themewaschanged="true"> <div dmtemplateid="Hamburger" data-responsive-name="ResponsiveDesktopTopTabletHamburger" class="runtime-module-container dm-bfs dm-layout-sec hasAnimations rows-1200 dmPageBody d-page-1716942098 inputs-css-clean dmFreeHeader" id="dm-outer-wrapper" data-page-class="1716942098" data-soch="true" data-background-parallax-selector=".dmHomeSection1, .dmSectionParallex"> <div id="dmStyle_outerContainer" class="dmOuter"> <div id="dmStyle_innerContainer" class="dmInner" data-auto="page-inner"> <div class="dmLayoutWrapper standard-var dmStandardDesktop"> <div id="site_content"> <div class="p_hfcontainer showOnMedium"> <div id="hamburger-drawer" class="hamburger-drawer layout-drawer" layout="2fef9973807a46bbbdad5938e9d68e93===header" data-origin="side" data-auto-height="true"> <div class="u_1800828510 dmRespRow middleDrawerRow" style="text-align: center;" id="1800828510"> <div class="dmRespColsWrapper" id="1738736659"> <div class="u_1318873771 dmRespCol small-12 medium-12 large-12 empty-column" id="1318873771"></div> 937</div> 938</div> 939 <div class="u_1395747260 dmRespRow" style="text-align: center;" id="1395747260"> <div class="dmRespColsWrapper" id="1839967244"> <div class="u_1877900321 dmRespCol small-12 medium-12 large-12" id="1877900321"> <div class="u_1439075705 align-center text-align-center dmSocialHub gapSpacing" id="1439075705" dmle_extension="social_hub" data-element-type="social_hub" wr="true" networks="" icon="true" surround="true" adwords=""> <div class="socialHubWrapper"> <div class="socialHubInnerDiv " data-auto="social-hub-inner"> <a href="https://facebook.com/HardyQualityAir" target="_blank" dm_dont_rewrite_url="true" aria-label="facebook" onclick="dm_gaq_push_event &&
939 dm_gaq_push_event('socialLink', 'click', 'Facebook')"> <span class="dmSocialFacebook dm-social-icons-facebook oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 940</a> 941 <a href="https://instagram.com/hardyqualityair" target="_blank" dm_dont_rewrite_url="true" aria-label="instagram" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'Instagram')"> <span class="dmSocialInstagram dm-social-icons-instagram oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 942</a> 943 <a href="https://yelp.com/biz/hardy-quality-air-watsonville" target="_blank" dm_dont_rewrite_url="true" aria-label="yelp" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'Yelp')"> <span class="dmSocialYelp dm-social-icons-yelp oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 944</a> 945 <a href="https://www.google.com/maps/place/Hardy+Quality+Air,+Inc./@36.9329245,-121.789167,17z/data=!3m1!4b1!4m6!3m5!1s0x808e1a19f9248019:0x4fd93d0b19efd4ed!8m2!3d36.9329245!4d-121.7865921!16s%2Fg%2F1tfw3810?entry=ttu" target="_blank" dm_dont_rewrite_url="true" aria-label="google_my_business" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'GoogleMyBusiness')"> <span class="dmSocialGoogleMyBusiness dm-social-icons-google-my-business oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 946</a> 947</div> 948</div> 949</div> 950 <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1902036149"><p style=""><span style="display: unset; color: var(--color_4);">License #702286</span></p></div> 951 <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1423940061"><p><a href="mailto:[email protected]" type="email" style="font-weight: bold; display: unset; color: var(--color_4);">[email protected]</a></p></div> 952 <nav class="u_1441420454 effect-bottom2 main-navigation unifiednav dmLinksMenu" data-auto="links-menu" role="navigation" layout-main="vertical_nav_layout_1" layout-sub="" data-show-vertical-sub-items="SHOW" id="1441420454" dmle_extension="onelinksmenu" data-element-type="onelinksmenu" data-nav-structure="VERTICAL" wr="true" icon="true" surround="true" navigation-id="unifiedNav"> <ul role="menubar" class="unifiednav__container unav-top " data-auto="navigation-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101359117 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 953 Home 954 " data-auto="page-text-style">Home<span class="icon icon-angle-down"></span> 955</span> 956</a> 957</li> 958 <li role="menuitem" aria-haspopup="true" aria-expanded="false" data-sub-nav-menu="true" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="#" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101754361 unifiednav__item_has-sub-nav" target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 959 Services 960 " data-auto="page-text-style">Services<span class="icon icon-angle-down"></span> 961</span> 962</a> 963 <ul role="menu" class="unifiednav__container unifiednav__container_sub-nav unav-sub" data-depth="0" data-auto="sub-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/residential-heating-air-services" class="unifiednav__item unav-item dmUDNavigationItem_010101588828 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 964 Residential Heating and Air 965 " data-auto="page-text-style">Residential Heating and Air<span class="icon icon-angle-right"></span> 966</span> 967</a> 968</li> 969 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/commercial-heating-air-services" class="unifiednav__item unav-item dmUDNavigationItem_010101218919 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 970 Commercial Heating and Air 971 " data-auto="page-text-style">
971Commercial Heating and Air<span class="icon icon-angle-right"></span> 972</span> 973</a> 974</li> 975 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/radiant-heating-installation" class="unifiednav__item unav-item dmUDNavigationItem_010101587147 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 976 Radiant Heating 977 " data-auto="page-text-style">Radiant Heating<span class="icon icon-angle-right"></span> 978</span> 979</a> 980</li> 981 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/air-duct-cleanouts" class="unifiednav__item unav-item dmUDNavigationItem_010101964774 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 982 Indoor Air Quality 983 " data-auto="page-text-style">Indoor Air Quality<span class="icon icon-angle-right"></span> 984</span> 985</a> 986</li> 987 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/heating-air-maintenance-programs" class="unifiednav__item unav-item dmUDNavigationItem_0101013284 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 988 Maintenance Programs 989 " data-auto="page-text-style">Maintenance Programs<span class="icon icon-angle-right"></span> 990</span> 991</a> 992</li> 993</ul> 994</li> 995 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/about-heating-air-technicians" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_01010155978 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 996 About 997 " data-auto="page-text-style">About<span class="icon icon-angle-down"></span> 998</span> 999</a> 1000</li> 1001 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/heating-air-technician-employment" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101333229 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1002 Employment 1003 " data-auto="page-text-style">Employment<span class="icon icon-angle-down"></span> 1004</span> 1005</a> 1006</li> 1007 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/heating-air-client-testimonials" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101945569 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1008 Testimonials 1009 " data-auto="page-text-style">Testimonials<span class="icon icon-angle-down"></span> 1010</span> 1011</a> 1012</li> 1013 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/hvac-service-coupons" class="unifiednav__item unav-item unav-top-item dmNavItemSelected dmUDNavigationItem_010101577818 " target="" data-target-page-alias="" aria-current="page" data-auto="selected-page"> <span class="nav-item-text " data-link-text=" 1014 Coupons 1015 " data-auto="page-text-style">Coupons<span class="icon icon-angle-down"></span> 1016</span> 1017</a> 1018</li> 1019 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/heating-air-project-portfolio" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101503822 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1020 Photo Gallery 1021 " data-auto="page-text-style">Photo Gallery<span class="icon icon-angle-down"></span> 1022</span> 1023</a> 1024</li> 1025 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/contact-heating-air-technicians" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101105170 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1026 Contact Us 1027 " data-auto="page-text-style">Contact Us<span class="icon icon-angle-down"></span> 1028</span> 1029</a> 1030</li> 1031</ul> 1032</nav> 1033</div> 1034</div> 1035</div> 1036 <div class="u_1846443827 dmRespRow" style="text-align: center;" id="1846443827"> <div class="dmRespColsWrapper" id="1747556286"> <div class="u_1610285358 dmRespCol small-12 medium-12 large-12 empty-column" id="1610285358"></div> 1037</div> 1038</div> 1039</div> 1040 <div class="layout-drawer-overlay" id="layout-drawer-overlay"></div> 1041</div> 1042 <div class="site_content"> <div id="hamburger-header-container" class="showOnMedium hamburger-header-container p_hfcontainer"> <div id="hamburger-header" class="hamburger-header p_hfcontainer" layout="44dc38f951e9489490b055748e10ba9f===header"> <div class="dmRespRow u_1952433659" id="1952433659"> <div class="dmRespColsWrapper" id="1911582166"> <div class="u_1312948605 dmRespCol small-12 large-4 medium-4" id="1312948605"> <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1958508074" style="transition: opacity 1s ease-in-out 0s;"><p class="text-align-center"><a href="https://maps.app.goo.gl/7sFEXJxqACFubzpCA" target="_blank" runtime_url="https://maps.app.goo.gl/7sFEXJxqACFubzpCA" type="url" style="display: unset; font-weight: bold;">400 Airport Blvd.</a> 1043</p><p class="text-align-center"><a href="https://maps.app.goo.gl/7sFEXJxqACFubzpCA" target="_blank" runtime_url="https://maps.app.goo.gl/7sFEXJxqACFubzpCA" type="url" style="display: unset; font-weight: bold;"><span class="ql-cursor"></span>Watsonville, CA 95076</a></p></div> 1044</div> 1045 <div class="u_1718191550 dmRespCol small-12 large-4 medium-4" id="1718191550"> <div class="u_1849850151 imageWidget align-center" data-element-type="image" data-widget-type="image" id="1849850151"> <a href="/" id="1874313505"><img src="https://irp.cdn-website.com/4dc87d15/dms3rep/multi/opt/hardy-quality-air-logo-1920w.png" id="1604219896" class="" data-dm-image-path="https://irp.cdn-website.com/4dc87d15/dms3rep/multi/hardy-quality-air-logo.png" width="227" height="150" alt="Hardy Quality Air Inc." title="Hardy Quality Air Inc." onerror="handleImageLoadError(this)"/></a> 1046</div> 1047</div> 1048 <div class="u_1377465637 dmRespCol small-12 large-4 medium-4" id="1377465637"> <a data-display-type="block" class="u_1714295180 align-center dmButtonLink dmWidget dmWwr default dmOnlyButton dmDefaultGradient" file="false" href="tel:(831) 722-3242" data-element-type="dButtonLinkId" id="1714295180" data-buttonstyle="FLAT_ROUND_ICON" icon-name="dm-icon-phone"> <span class="iconBg" aria-hidden="true" id="1154032621"> <span class="icon hasFontIconstar hasFontIcon dm-icon-phone" id="1587691406"></span> 1049</span> 1050 <span class="text" id="1240051581">(831) 722-3242</span> 1051</a> 1052</div> 1053</div> 1054</div> 1055</div> 1056</div> 1057 <button class="showOnMedium layout-drawer-hamburger hamburger-on-header" id="layout-drawer-hamburger" data-auto="layout-drawer-hamburger" aria-label="menu" aria-controls="hamburger-drawer" aria-expanded="false"> <span class="hamburger__slice"></span> 1058 <span class="hamburger__slice"></span> 1059 <span class="hamburger__slice"></span> 1060</button> 1061 <div class="dmHeaderContainer fHeader d-header-wrapper showOnLarge"> <div id="hcontainer" class="u_hcontainer dmHeader p_hfcontainer" freeheader="true" headerlayout="696" layout="7621f7e0002549258c16efb7610abc8f===header" data-auto="header"> <div dm:templateorder="85" class="dmHeaderResp dmHeaderStack noSwitch" id="1709005236"> <div class="dmRespRow u_1335333849" id="1335333849"> <div class="dmRespColsWrapper" id="1491113492"> <div class="u_1499683011 dmRespCol large-4 medium-4 small-12" id="1499683011"> <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1620477754" style="transition: opacity 1s ease-in-out 0s;"><p><a href="https://maps.app.goo.gl/7sFEXJxqACFubzpCA" target="_blank" runtime_url="https://maps.app.goo.gl/7sFEXJxqACFubzpCA" type="url" style="font-weight: bold; display: unset;">400 Airport Blvd.</a> 1062</p><p><a href="https://maps.app.goo.gl/7sFEXJxqACFubzpCA" target="_blank" runtime_url="https://maps.app.goo.gl/7sFEXJxqACFubzpCA" type="url" style="font-weight: bold; display: unset;"><span class="ql-cursor"></span>Watsonville, CA 95076</a></p></div> 1063 <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1893319164"><p><a href="mailto:[email protected]" target="_blank" type="email" style="font-weight: bold; display: unset;">[email protected]</a></p></div> 1064 <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1163908737"><p><span style="display: unset;">License #702286</span></p></div> 1065</div> 1066 <div class="u_1002568859 dmRespCol small-12 large-4 medium-4" id="1002568859"> <div class="u_1554900195 imageWidget align-center" data-element-type="image" data-widget-type="image" id="1554900195"> <a href="/" id="1887539600"><img src="https://irp.cdn-website.com/4dc87d15/dms3rep/multi/opt/hardy-quality-air-logo-1920w.png" id="1701686163" class="" data-dm-image-path="https://irp.cdn-website.com/4dc87d15/dms3rep/multi/hardy-quality-air-logo.png" width="227" height="150" alt="Hardy Quality Air Inc." title="Hardy Quality Air Inc." onerror="handleImageLoadError(this)"/></a> 1067</div> 1068</div>
1069 <div class="u_1497172589 dmRespCol small-12 large-4 medium-4" id="1497172589"> <div class="u_1698993300 align-center text-align-center dmSocialHub gapSpacing" id="1698993300" dmle_extension="social_hub" data-element-type="social_hub" wr="true" networks="" icon="true" surround="true" adwords=""> <div class="socialHubWrapper"> <div class="socialHubInnerDiv " data-auto="social-hub-inner"> <a href="https://facebook.com/HardyQualityAir" target="_blank" dm_dont_rewrite_url="true" aria-label="facebook" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'Facebook')"> <span class="dmSocialFacebook dm-social-icons-facebook oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 1070</a> 1071 <a href="https://instagram.com/hardyqualityair" target="_blank" dm_dont_rewrite_url="true" aria-label="instagram" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'Instagram')"> <span class="dmSocialInstagram dm-social-icons-instagram oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 1072</a> 1073 <a href="https://yelp.com/biz/hardy-quality-air-watsonville" target="_blank" dm_dont_rewrite_url="true" aria-label="yelp" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'Yelp')"> <span class="dmSocialYelp dm-social-icons-yelp oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 1074</a> 1075 <a href="https://www.google.com/maps/place/Hardy+Quality+Air,+Inc./@36.9329245,-121.789167,17z/data=!3m1!4b1!4m6!3m5!1s0x808e1a19f9248019:0x4fd93d0b19efd4ed!8m2!3d36.9329245!4d-121.7865921!16s%2Fg%2F1tfw3810?entry=ttu" target="_blank" dm_dont_rewrite_url="true" aria-label="google_my_business" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'GoogleMyBusiness')"> <span class="dmSocialGoogleMyBusiness dm-social-icons-google-my-business oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 1076</a> 1077</div> 1078</div> 1079</div> 1080 <a data-display-type="block" class="u_1227873732 align-center dmButtonLink dmWidget dmWwr default dmOnlyButton dmDefaultGradient" file="false" href="tel:(831) 722-3242" data-element-type="dButtonLinkId" id="1227873732" data-buttonstyle="FLAT_ROUND_ICON" icon-name="dm-icon-phone"> <span class="iconBg" aria-hidden="true" id="1101901695"> <span class="icon hasFontIconstar hasFontIcon dm-icon-phone" id="1361696799"></span> 1081</span> 1082 <span class="text" id="1562710256">(831) 722-3242</span> 1083</a> 1084</div> 1085</div> 1086</div> 1087 <div class="dmRespRow u_1157018264 fullBleedChanged fullBleedMode" id="1157018264"> <div class="dmRespColsWrapper" id="1123266849"> <div class="dmRespCol large-12 medium-12 small-12" id="1590346887"> <nav class="u_1794684237 effect-background main-navigation unifiednav dmLinksMenu" data-auto="links-menu" role="navigation" layout-main="horizontal_nav_layout_1" layout-sub="submenu_horizontal_1" data-show-vertical-sub-items="HOVER" id="1794684237" dmle_extension="onelinksmenu" data-element-type="onelinksmenu" data-logo-src="" alt="" data-nav-structure="HORIZONTAL" wr="true" icon="true" surround="true" adwords="" navigation-id="unifiedNav"> <ul role="menubar" class="unifiednav__container unav-top " data-auto="navigation-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101359117 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1088 Home 1089 " data-auto="page-text-style">Home<span class="icon icon-angle-down"></span> 1090</span> 1091</a> 1092</li> 1093 <li role="menuitem" aria-haspopup="true" aria-expanded="false" data-sub-nav-menu="true" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="#" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101754361 unifiednav__item_has-sub-nav" target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1094 Services 1095 " data-auto="page-text-style">Services<span class="icon icon-angle-down"></span> 1096</span> 1097</a> 1098 <ul role="menu" class="unifiednav__container unifiednav__container_sub-nav unav-sub" data-depth="0" data-auto="sub-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/residential-heating-air-services" class="unifiednav__item unav-item dmUDNavigationItem_010101588828 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1099 Residential Heating and Air 1100 " data-auto="page-text-style">
1100Residential Heating and Air<span class="icon icon-angle-right"></span> 1101</span> 1102</a> 1103</li> 1104 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/commercial-heating-air-services" class="unifiednav__item unav-item dmUDNavigationItem_010101218919 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1105 Commercial Heating and Air 1106 " data-auto="page-text-style">Commercial Heating and Air<span class="icon icon-angle-right"></span> 1107</span> 1108</a> 1109</li> 1110 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/radiant-heating-installation" class="unifiednav__item unav-item dmUDNavigationItem_010101587147 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1111 Radiant Heating 1112 " data-auto="page-text-style">Radiant Heating<span class="icon icon-angle-right"></span> 1113</span> 1114</a> 1115</li> 1116 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/air-duct-cleanouts" class="unifiednav__item unav-item dmUDNavigationItem_010101964774 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1117 Indoor Air Quality 1118 " data-auto="page-text-style">Indoor Air Quality<span class="icon icon-angle-right"></span> 1119</span> 1120</a> 1121</li> 1122 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/heating-air-maintenance-programs" class="unifiednav__item unav-item dmUDNavigationItem_0101013284 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1123 Maintenance Programs 1124 " data-auto="page-text-style">Maintenance Programs<span class="icon icon-angle-right"></span> 1125</span> 1126</a> 1127</li> 1128</ul> 1129</li> 1130 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/about-heating-air-technicians" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_01010155978 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1131 About 1132 " data-auto="page-text-style">About<span class="icon icon-angle-down"></span> 1133</span> 1134</a> 1135</li> 1136 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/heating-air-technician-employment" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101333229 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1137 Employment 1138 " data-auto="page-text-style">Employment<span class="icon icon-angle-down"></span> 1139</span> 1140</a> 1141</li> 1142 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/heating-air-client-testimonials" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101945569 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1143 Testimonials 1144 " data-auto="page-text-style">Testimonials<span class="icon icon-angle-down"></span> 1145</span> 1146</a> 1147</li> 1148 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/hvac-service-coupons" class="unifiednav__item unav-item unav-top-item dmNavItemSelected dmUDNavigationItem_010101577818 " target="" data-target-page-alias="" aria-current="page" data-auto="selected-page"> <span class="nav-item-text " data-link-text=" 1149 Coupons 1150 " data-auto="page-text-style">Coupons<span class="icon icon-angle-down"></span> 1151</span> 1152</a> 1153</li> 1154 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/heating-air-project-portfolio" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101503822 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1155 Photo Gallery 1156 " data-auto="page-text-style">Photo Gallery<span class="icon icon-angle-down"></span> 1157</span> 1158</a> 1159</li> 1160 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/contact-heating-air-technicians" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101105170 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1161 Contact Us 1162 " data-auto="page-text-style">Contact Us<span class="icon icon-angle-down"></span> 1163</span> 1164</a> 1165</li> 1166</ul> 1167</nav> 1168</div> 1169</div> 1170</div> 1171</div> 1172</div> 1173</div> 1174 <div dmwrapped="true" id="dmFirstContainer" class="dmBody u_dmStyle_template_hvac-service-coupons dm-home-page" themewaschanged="true"> <div id="allWrapper" class="allWrapper" data-auto="all-wrapper"><!-- navigation placeholders -->
1174 <div id="dm_content" class="dmContent" role="main"> <div dm:templateorder="170" class="dmHomeRespTmpl mainBorder dmRespRowsWrapper dmFullRowRespTmpl" id="1716942098"> <div class="u_1243667655 dmRespRow" style="text-align: center;" id="1243667655"> <div class="dmRespColsWrapper" id="1173148036"> <div class="dmRespCol small-12 u_1620106714 medium-12 large-12" id="1620106714"> <div class="dmNewParagraph u_1855357593" data-element-type="paragraph" data-version="5" id="1855357593" style="transition: opacity 1s ease-in-out 0s;"> <h2 class="text-align-center"><span style="display: initial;">$30 Off Maintenance</span></h2> 1175<p class="text-align-center"><span style="display: initial;"><br/></span></p><p class="text-align-center"><span style="display: initial;">*If booked between 5/15/24 and 9/15/24</span></p></div> 1176</div> 1177</div> 1178</div> 1179</div> 1180</div> 1181</div> 1182</div> 1183 <div class="dmFooterContainer"> <div id="fcontainer" class="u_fcontainer f_hcontainer dmFooter p_hfcontainer"> <div dm:templateorder="250" class="dmFooterResp generalFooter" id="1943048428"> <div class="dmRespRow u_1494886769" id="1494886769"> <div class="dmRespColsWrapper" id="1155337015"> <div class="dmRespCol large-12 medium-12 small-12" id="1750016403"> <nav class="u_1356749155 effect-bottom2 hide-for-small main-navigation unifiednav dmLinksMenu" data-auto="links-menu" role="navigation" layout-main="horizontal_nav_layout_1" layout-sub="submenu_horizontal_1" data-show-vertical-sub-items="HOVER" id="1356749155" dmle_extension="onelinksmenu" data-element-type="onelinksmenu" data-logo-src="" alt="" data-nav-structure="HORIZONTAL" wr="true" icon="true" surround="true" adwords="" navigation-id="unifiedNav"> <ul role="menubar" class="unifiednav__container unav-top " data-auto="navigation-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101359117 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1184 Home 1185 " data-auto="page-text-style">Home<span class="icon icon-angle-down"></span> 1186</span> 1187</a> 1188</li> 1189 <li role="menuitem" aria-haspopup="true" aria-expanded="false" data-sub-nav-menu="true" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="#" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101754361 unifiednav__item_has-sub-nav" target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1190 Services 1191 " data-auto="page-text-style">Services<span class="icon icon-angle-down"></span> 1192</span> 1193</a> 1194 <ul role="menu" class="unifiednav__container unifiednav__container_sub-nav unav-sub" data-depth="0" data-auto="sub-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/residential-heating-air-services" class="unifiednav__item unav-item dmUDNavigationItem_010101588828 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1195 Residential Heating and Air 1196 " data-auto="page-text-style">Residential Heating and Air<span class="icon icon-angle-right"></span> 1197</span> 1198</a> 1199</li> 1200 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/commercial-heating-air-services" class="unifiednav__item unav-item dmUDNavigationItem_010101218919 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1201 Commercial Heating and Air 1202 " data-auto="page-text-style">Commercial Heating and Air<span class="icon icon-angle-right"></span> 1203</span> 1204</a> 1205</li> 1206 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/radiant-heating-installation" class="unifiednav__item unav-item dmUDNavigationItem_010101587147 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1207 Radiant Heating 1208 " data-auto="page-text-style">Radiant Heating<span class="icon icon-angle-right"></span> 1209</span> 1210</a> 1211</li> 1212 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/air-duct-cleanouts" class="unifiednav__item unav-item dmUDNavigationItem_010101964774 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1213 Indoor Air Quality 1214 " data-auto="page-text-style">
1214Indoor Air Quality<span class="icon icon-angle-right"></span> 1215</span> 1216</a> 1217</li> 1218 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/heating-air-maintenance-programs" class="unifiednav__item unav-item dmUDNavigationItem_0101013284 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1219 Maintenance Programs 1220 " data-auto="page-text-style">Maintenance Programs<span class="icon icon-angle-right"></span> 1221</span> 1222</a> 1223</li> 1224</ul> 1225</li> 1226 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/about-heating-air-technicians" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_01010155978 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1227 About 1228 " data-auto="page-text-style">About<span class="icon icon-angle-down"></span> 1229</span> 1230</a> 1231</li> 1232 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/heating-air-technician-employment" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101333229 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1233 Employment 1234 " data-auto="page-text-style">Employment<span class="icon icon-angle-down"></span> 1235</span> 1236</a> 1237</li> 1238 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/heating-air-client-testimonials" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101945569 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1239 Testimonials 1240 " data-auto="page-text-style">Testimonials<span class="icon icon-angle-down"></span> 1241</span> 1242</a> 1243</li> 1244 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/hvac-service-coupons" class="unifiednav__item unav-item unav-top-item dmNavItemSelected dmUDNavigationItem_010101577818 " target="" data-target-page-alias="" aria-current="page" data-auto="selected-page"> <span class="nav-item-text " data-link-text=" 1245 Coupons 1246 " data-auto="page-text-style">Coupons<span class="icon icon-angle-down"></span> 1247</span> 1248</a> 1249</li> 1250 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/heating-air-project-portfolio" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101503822 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1251 Photo Gallery 1252 " data-auto="page-text-style">Photo Gallery<span class="icon icon-angle-down"></span> 1253</span> 1254</a> 1255</li> 1256 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/contact-heating-air-technicians" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101105170 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 1257 Contact Us 1258 " data-auto="page-text-style">Contact Us<span class="icon icon-angle-down"></span> 1259</span> 1260</a> 1261</li> 1262</ul> 1263</nav> 1264 <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1819566978"><p class="m-text-align-left text-align-center"><span style="display: unset; color: var(--color_4); font-weight: bold;">License #702286</span></p></div> 1265 <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1093354018"><p class="m-text-align-left text-align-center"><span style="display: unset; color: var(--color_4); font-weight: normal;">Licensed and Insured</span></p></div> 1266 <div class="dmRespRow u_1864247739" id="1864247739"> <div class="dmRespColsWrapper" id="1969719327"> <div class="dmRespCol small-12 medium-6 large-6" id="1326272423"> <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1952521443" style="transition: opacity 1s ease-in-out 0s;"><p class="text-align-center size-20 m-size-18 m-text-align-left"><span class="font-size-20 m-font-size-18" style="display: unset; font-weight: bold; color: var(--color_4);" m-font-size-set="true">Contact Information</span></p></div> 1267 <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1458564892"><p class="text-align-center m-text-align-left"><span class="" style="color: var(--color_4); display: unset;"><span style="color: var(--color_4); display: unset;">Phone:</span> 1268</span><a href="tel:(831) 722-3242" target="_blank" type="call" style="color: var(--color_4); display: unset; font-weight: bold;">(831) 722-3242</a></p></div> 1269 <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1151111257"><p class="m-text-align-left text-align-center"><span class="" style="display: unset; color: var(--color_4);"><span style="display: unset; color: var(--color_4);">
1269Email:</span> 1270</span><a href="mailto:[email protected]" target="_blank" type="email" style="display: unset; color: var(--color_4); font-weight: bold;">[email protected]</a></p></div> 1271 <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1278735314"><p class="text-align-center m-text-align-left"><span style="color: var(--color_4); display: unset;">Address: 400 Airport Blvd. Watsonville, CA 95076</span></p></div> 1272</div> 1273 <div class="dmRespCol small-12 medium-6 large-6" id="1342583505"> <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1874054741" style="transition: opacity 1s ease-in-out 0s;"><p class="text-align-center size-20 m-text-align-left m-size-18"><span class="font-size-20 m-font-size-18" style="color: var(--color_4); font-weight: bold; display: unset;" m-font-size-set="true">Business Hours</span></p></div> 1274 <div class="u_1368362160 default dmHoursOfOperation" id="1368362160" dmle_extension="open_hours" data-element-type="open_hours" time_format="12" wr="true" lang="" displaytitle="false" forcedisplay="false" icon="true" surround="true" adwords=""> <dl class="open-hours-data"> <div class="open-hours-item"> <dt day="0">Mon - Fri</dt> 1275 <dd> <time>7:30 am</time> 1276- <time>4:30 pm</time> 1277</dd> 1278</div> 1279 <div class="open-hours-item"> <dt day="5">Sat - Sun</dt> 1280 <dd>Appointment Only</dd> 1281</div> 1282</dl> 1283</div> 1284 <div class="u_1348805941 align-center text-align-center dmSocialHub gapSpacing" id="1348805941" dmle_extension="social_hub" data-element-type="social_hub" wr="true" networks="" icon="true" surround="true" adwords=""> <div class="socialHubWrapper"> <div class="socialHubInnerDiv " data-auto="social-hub-inner"> <a href="https://facebook.com/HardyQualityAir" target="_blank" dm_dont_rewrite_url="true" aria-label="facebook" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'Facebook')"> <span class="dmSocialFacebook dm-social-icons-facebook oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 1285</a> 1286 <a href="https://instagram.com/hardyqualityair" target="_blank" dm_dont_rewrite_url="true" aria-label="instagram" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'Instagram')"> <span class="dmSocialInstagram dm-social-icons-instagram oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 1287</a> 1288 <a href="https://yelp.com/biz/hardy-quality-air-watsonville" target="_blank" dm_dont_rewrite_url="true" aria-label="yelp" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'Yelp')"> <span class="dmSocialYelp dm-social-icons-yelp oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 1289</a> 1290 <a href="https://www.google.com/maps/place/Hardy+Quality+Air,+Inc./@36.9329245,-121.789167,17z/data=!3m1!4b1!4m6!3m5!1s0x808e1a19f9248019:0x4fd93d0b19efd4ed!8m2!3d36.9329245!4d-121.7865921!16s%2Fg%2F1tfw3810?entry=ttu" target="_blank" dm_dont_rewrite_url="true" aria-label="google_my_business" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'GoogleMyBusiness')"> <span class="dmSocialGoogleMyBusiness dm-social-icons-google-my-business oneIcon socialHubIcon style6" aria-hidden="true" data-hover-effect=""></span> 1291</a> 1292</div> 1293</div> 1294</div> 1295 <div class="u_1090882158 widget-b80a9d hide-for-medium hide-for-large dmCustomWidget" data-lazy-load="true" data-title="" id="1090882158" dmle_extension="custom_extension" data-element-type="custom_extension" icon="false" surround="false" data-widget-id="b80a9dfa6b544a12aea2a86f748d9032" data-widget-version="22" data-widget-config="eyJuZXdMb2dvcyI6dHJ1ZSwiY2FyZExpc3QiOlt7InBheW1lbnRNZXRob2QiOiIxX3Zpc2EifSx7InBheW1lbnRNZXRob2QiOiIyX21hc3Rlcl9jYXJkIn0seyJwYXltZW50TWV0aG9kIjoiM19kaXNjb3ZlciJ9LHsicGF5bWVudE1ldGhvZCI6IjRfYW1lcmljYW5fZXhwcmVzcyJ9LHsicGF5bWVudE1ldGhvZCI6IjZfY2FzaCJ9LHsicGF5bWVudE1ldGhvZCI6IjdfcGVyc29uYWxfY2hlY2sifV0sImRpcmVjdGlvbiI6InJvdyIsImFsaWduIjoibGVmdCJ9"> <div class="cardList row left"> <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/visa.png" alt="Visa Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1296 <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/mastercard.png" alt="MasterCard Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1297 <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/discover.png" alt="Discover Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1298 <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/amex.png" alt="American Express Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1299 <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/cash.png" alt="Cash Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1300 <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/check.png" alt="Check Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1301</div> 1302</div> 1303 <div class="u_1235621695 widget-b80a9d hide-for-small dmCustomWidget" data-lazy-load="true" data-title="" id="1235621695" dmle_extension="custom_extension" data-element-type="custom_extension" icon="false" surround="false" data-widget-id="b80a9dfa6b544a12aea2a86f748d9032" data-widget-version="22" data-widget-config="eyJuZXdMb2dvcyI6dHJ1ZSwiY2FyZExpc3QiOlt7InBheW1lbnRNZXRob2QiOiIxX3Zpc2EifSx7InBheW1lbnRNZXRob2QiOiIyX21hc3Rlcl9jYXJkIn0seyJwYXltZW50TWV0aG9kIjoiM19kaXNjb3ZlciJ9LHsicGF5bWVudE1ldGhvZCI6IjRfYW1lcmljYW5fZXhwcmVzcyJ9LHsicGF5bWVudE1ldGhvZCI6IjZfY2FzaCJ9LHsicGF5bWVudE1ldGhvZCI6IjdfcGVyc29uYWxfY2hlY2sifV0sImRpcmVjdGlvbiI6InJvdyIsImFsaWduIjoiY2VudGVyIn0="> <div class="cardList row center"> <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/visa.png" alt="Visa Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1304 <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/mastercard.png" alt="MasterCard Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1305 <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/discover.png" alt="Discover Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1306 <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/amex.png" alt="American Express Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1307 <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/cash.png" alt="Cash Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1308 <div class="cardItem" style="width:56px !important;height:37px !important;"><img src="https://cdn.website.thryv.com/-resellers-preview/_widget_builder_files/check.png" alt="Check Payment Accepted" onerror="handleImageLoadError(this)"/></div> 1309</div> 1310</div> 1311</div> 1312</div> 1313</div> 1314 <div class="dmDividerWrapper clearfix u_1679529797" data-element-type="dDividerId" data-layout="divider-style-1" data-widget-version="2" id="1679529797"><hr class="dmDivider" style="border-width:2px; border-top-style:solid; color:grey;" id="1639754528"/></div> 1315 <div class="u_1770605580 widget-d3c663 dmCustomWidget" data-lazy-load="" data-title="" id="1770605580" dmle_extension="custom_extension" data-element-type="custom_extension" icon="false" surround="false" data-widget-id="d3c66308b2ae4c2eb8bccd831a63a3d8" data-widget-version="79" data-widget-config="eyJpbnRlZ3JhdGlvbl9pZCI6bnVsbCwiY3VzdG9tTGlua3MiOnRydWUsInRvdUxpbmsiOnsidmFsdWUiOiJ0L3RvdS1hbmQtcHJpdmFjeSNUT1UiLCJsYWJlbCI6IlRPVSIsInR5cGUiOiJhbmNob3IiLCJocmVmIjoiL3QvdG91LWFuZC1wcml2YWN5I1RPVSIsInJhd191cmwiOiIvc2l0ZS80ZGM4N2QxNS90L3RvdS1hbmQtcHJpdmFjeT9uZWU9dHJ1ZSZlZD10cnVlJnNob3dPcmlnaW5hbD10cnVlJnByZXZpZXc9dHJ1ZSZkbV90cnlfbW9kZT10cnVlJmRtX2NoZWNrU3luYz0xI1RPVSJ9LCJwcExpbmsiOnsidmFsdWUiOiJ0L3RvdS1hbmQtcHJpdmFjeSNQUCIsImxhYmVsIjoiUFAiLCJ0eXBlIjoiYW5jaG9yIiwiaHJlZiI6Ii90L3RvdS1hbmQtcHJpdmFjeSNQUCIsInJhd191cmwiOiIvc2l0ZS80ZGM4N2QxNS90L3RvdS1hbmQtcHJpdmFjeT9uZWU9dHJ1ZSZlZD10cnVlJnNob3dPcmlnaW5hbD10cnVlJnByZXZpZXc9dHJ1ZSZkbV90cnlfbW9kZT10cnVlJmRtX2NoZWNrU3luYz0xI1BQIn0sImJjV2lkZ2V0c0xlZnQiOmZhbHNlLCJ3ZWJjaGF0IjpmYWxzZX0=">Content, including images, displayed on this website is protected by copyright laws. Downloading, republication, retransmission or reproduction of content on this website is strictly prohibited. <a value="t/tou-and-privacy#TOU" label="TOU" type="anch
1315or" href="/t/tou-and-privacy#TOU" raw_url="/site/4dc87d15/t/tou-and-privacy?nee=true&ed=true&showOriginal=true&preview=true&dm_try_mode=true&dm_checkSync=1#TOU">Terms of Use</a>| <a value="t/tou-and-privacy#PP" label="PP" type="anchor" href="/t/tou-and-privacy#PP" raw_url="/site/4dc87d15/t/tou-and-privacy?nee=true&ed=true&showOriginal=true&preview=true&dm_try_mode=true&dm_checkSync=1#PP">Privacy Policy</a> 1316 <style>.dm-social-icons-google-my-business:before { 1317 content: '' !important; 1318}</style> 1319 <div data-inject="tmc-inject"></div> 1320</div> 1321</div> 1322</div> 1323</div> 1324</div> 1325 <div id="1236746004" dmle_extension="powered_by" data-element-type="powered_by" icon="true" surround="false"></div> 1326</div> 1327</div> 1328</div> 1329</div> 1330</div> 1331</div> 1332</div> 1333</div> 1334</div> 1335 1336 </div> 1337</div> 1338<!-- Add full CSS and Javascript before the close tag of the body if needed --> 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377<!-- ========= JS Section ========= -->
1378<script> 1379 var isWLR = true; 1380 1381 window.customWidgetsFunctions = {}; 1382 window.customWidgetsStrings = {}; 1383 window.collections = {}; 1384 window.currentLanguage = "ENGLISH" 1385 window.isSitePreview = false; 1386</script>
1386 1387 1388 1389
1390<script> 1391 window.customWidgetsFunctions["b80a9dfa6b544a12aea2a86f748d9032~22"] = function (element, data, api) { 1392 null 1393 }; 1394</script>
1394 1395
1396<script> 1397 window.customWidgetsFunctions["d3c66308b2ae4c2eb8bccd831a63a3d8~79"] = function (element, data, api) { 1398 if (data.config.webchat){ 1399 1400let thryvId = dmAPI.getSiteExternalId(); 1401var integrationId = data.config.integration_id; 1402 1403 1404setTimeout(() => { 1405 1406 !(function (o, p, s, e, c) { 1407 var i, 1408 a, 1409 h, 1410 u = [], 1411 d = []; 1412 function t() { 1413 var t = "You must provide a supported major version."; 1414 try { 1415 if (!c) throw new Error(t); 1416 var e, 1417 n = "https://cdn.smooch.io/", 1418 r = "smooch"; 1419 if ((e = "string" == typeof this.response ? JSON.parse(this.response) : this.response).url) { 1420 var o = p.getElementsByTagName("script")[0], 1421 s = p.createElement("script"); 1422 s.async = !0; 1423 var i = c.match(/([0-9]+).?([0-9]+)?.?([0-9]+)?/), 1424 a = i && i[1]; 1425 if (i && i[3]) s.src = n + r + "." + c + ".min.js"; 1426 else { 1427 if (!(4 <= a && e["v" + a])) throw new Error(t); 1428 s.src = e["v" + a]; 1429 } 1430 o.parentNode.insertBefore(s, o); 1431 } 1432 } catch (e) { 1433 e.message === t && console.error(e); 1434 } 1435 } 1436 (o[s] = { 1437 init: function () { 1438 i = arguments; 1439 var t = { 1440 then: function (e) { 1441 return d.push({ type: "t", next: e }), t; 1442 }, 1443 catch: function (e) { 1444 return d.push({ type: "c", next: e }), t; 1445 }, 1446 }; 1447 return t; 1448 }, 1449 on: function () { 1450 u.push(arguments); 1451 }, 1452 render: function () { 1453 a = arguments; 1454 }, 1455 destroy: function () { 1456 h = arguments; 1457 }, 1458 }), 1459 (o.__onWebMessengerHostReady__ = function (e) { 1460 if ((delete o.__onWebMessengerHostReady__, (o[s] = e), i)) 1461 for (var t = e.init.apply(e, i), n = 0; n < d.length; n++) { 1462 var r = d[n]; 1463 t = "t" === r.type ? t.then(r.next) : t.catch(r.next); 1464 } 1465 a && e.render.apply(e, a), h && e.destroy.apply(e, h); 1466 for (n = 0; n < u.length; n++) e.on.apply(e, u[n]); 1467 }); 1468 var n = new XMLHttpRequest(); 1469 n.addEventListener("load", t), n.open("GET", "https://" + e + ".webloader.smooch.io/", !0), (n.responseType = "json"), n.send(); 1470 })(window, document, "Smooch", integrationId, "5"); 1471 setTimeout(() => { 1472 const delegate = { 1473 beforeSend(message, data) { 1474 const urlParams = new URLSearchParams(window.location.search); 1475 const utm_ci = urlParams.get('utm_ci'); 1476 const utm_channel = urlParams.get('utm_channel'); 1477 const utm_ad = urlParams.get('utm_ad'); 1478 const utm_cm = urlParams.get('utm_cm'); 1479 1480 if (utm_ci && utm_channel && utm_ad && utm_cm) { 1481 message.metadata = { 1482 utm_ci, 1483 utm_channel, 1484 utm_ad, 1485 utm_cm 1486 }; 1487 } 1488 1489 return message; 1490 } 1491 }; 1492 Smooch.init({ 1493 integrationId: integrationId, 1494 delegate: delegate, 1495 menuItems: {}, 1496 prechatCapture: { 1497 enabled: true, 1498 enableEmailLinking: true, 1499 fields: [ 1500 { 1501 type: 'email', 1502 name: 'email', 1503 label: 'Email', 1504 placeholder: '[email protected]' 1505 }, 1506 { 1507 type: 'text', 1508 name: 'phone', 1509 label: 'Phone', 1510 placeholder: '555-555-5555' 1511 }, 1512 { 1513 type: 'text', 1514 name: 'first_name', 1515 label: 'First Name', 1516 placeholder: 'first name' 1517 }, 1518 { 1519 type: 'text', 1520 name: 'last_name', 1521 label: 'Last Name', 1522 placeholder: 'last name' 1523 } 1524 ] 1525 }, 1526 customText: { 1527 prechatCaptureGreetingText: 1528 "Hi there,\n\nBefore you begin, please note that a transcript of this chat may be retained.\n\nTo start off, we'd like to know a little bit about you. \n\n By providing your email and mobile number via this chat, you consent to our Terms of Use and Privacy Policy (found in the footer of this site) and to us sending emails and text messages or placing voice calls to you for advertising and marketing purposes. Giving this consent is not required as a condition of purchasing any goods or services." 1529 }, 1530 }).then( 1531 function () { 1532 console.log("Script Ran for Sunshine"); 1533 }, 1534 function (err) { 1535 console.log("Script Error for Sunshine"); 1536 } 1537 ); 1538 }, 3000) 1539 }, 5000); 1540 1541} 1542 1543 // Find the span elements with the specified classes 1544var spans = document.querySelectorAll('.dmSocialGoogleMyBusiness.dm-social-icons-google-my-business'); 1545 1546 1547// Loop through each found span element 1548spans.forEach(function(span) { 1549 // Replace inner HTML with SVG code of legal-approved GMB 1550 span.innerHTML = '<svg height="2185" width="2500" xmlns="http://www.w3.org/2000/svg" viewBox="0 0.43 1064 928.69"><linearGradient id="a" x1="0%" x2="99.999%" y1="49.999%" y2="49.999%"><stop offset=".03" stop-color="#4079d8"/><stop offset="1" stop-color="#4989f5"/></linearGradient><g fill="none" fill-rule="evenodd"><g fill-rule="nonzero"><rect fill="#4989f5" height="696.14" rx="36.88" width="931" x="53.45" y="232.98"/><path d="M936.81 227.75H100.06c-25.92 0-46.09 200.6-46.09 226.52L512.2 929.12h424.61c26-.071 47.059-21.13 47.13-47.13V274.87c-.077-25.996-21.134-47.049-47.13-47.12z" fill="url(#a)"/><path d="M266.03 349.56h266V.44H305.86z" fill="#3c4ba6"/><path d="M798.03 349.56h-266V.44H758.2zM984.45 66.62l.33 1.19c-.08-.42-.24
1550-.81-.33-1.19z" fill="#7babf7"/><path d="M984.78 67.8l-.33-1.19C976.017 27.993 941.837.455 902.31.43H758.2L798 349.56h266z" fill="#3f51b5"/><path d="M79.61 66.62l-.33 1.19c.08-.42.24-.81.33-1.19z" fill="#7babf7"/><path d="M79.27 67.8l.33-1.19C88.033 27.993 122.213.455 161.74.43h144.12L266 349.56H0z" fill="#7babf7"/></g><path d="M266.48 349.47c0 73.412-59.513 132.925-132.925 132.925S.63 422.882.63 349.47z" fill="#709be0"/><path d="M532.33 349.47c0 73.412-59.513 132.925-132.925 132.925S266.48 422.882 266.48 349.47z" fill="#3c4ba6"/><path d="M798.18 349.47c0 73.412-59.513 132.925-132.925 132.925S532.33 422.882 532.33 349.47z" fill="#709be0"/><path d="M1064 349.47c0 73.412-59.513 132.925-132.925 132.925S798.15 422.882 798.15 349.47z" fill="#3c4ba6"/><path d="M931.08 709.6c-.47-6.33-1.25-12.11-2.36-19.49h-145c0 20.28 0 42.41-.08 62.7h84a73.05 73.05 0 0 1-30.75 46.89s0-.35-.06-.36a88 88 0 0 1-34 13.27 99.85 99.85 0 0 1-36.79-.16 91.9 91.9 0 0 1-34.31-14.87 95.72 95.72 0 0 1-33.73-43.1c-.52-1.35-1-2.71-1.49-4.09v-.15l.13-.1a93 93 0 0 1-.05-59.84A96.27 96.27 0 0 1 718.9 654c23.587-24.399 58.829-33.576 91.32-23.78a83 83 0 0 1 33.23 19.56l28.34-28.34c5-5.05 10.19-9.94 15-15.16a149.78 149.78 0 0 0-49.64-30.74 156.08 156.08 0 0 0-103.83-.91c-1.173.4-2.34.817-3.5 1.25A155.18 155.18 0 0 0 646 651a152.61 152.61 0 0 0-13.42 38.78c-16.052 79.772 32.623 158.294 111.21 179.4 25.69 6.88 53 6.71 78.89.83a139.88 139.88 0 0 0 63.14-32.81c18.64-17.15 32-40 39-64.27a179 179 0 0 0 6.26-63.33z" fill="#fff" fill-rule="nonzero"/></g></svg>'; 1551}); 1552 }; 1553</script>
1553 1554 1555
1556<script type="text/javascript"> 1557 1558 var d_version = "production_6807"; 1559 var build = "2026-09-29T12_50_38"; 1560 window['v' + 'ersion'] = d_version; 1561 1562 function buildEditorParent() { 1563 window.isMultiScreen = true; 1564 window.editorParent = {}; 1565 window.previewParent = {}; 1566 window.assetsCacheQueryParam = "?version=2026-09-29T12_50_38"; 1567 try { 1568 var _p = window.parent; 1569 if (_p && _p.document && _p.$ && _p.$.dmfw) { 1570 window.editorParent = _p; 1571 } else if (_p.isSitePreview) { 1572 window.previewParent = _p; 1573 } 1574 } catch (e) { 1575 1576 } 1577 } 1578 1579 buildEditorParent(); 1580</script>
1580 1581 1582 1583<!-- Load jQuery --> 1584
1585<script type="text/javascript" id='d-js-jquery' 1586 src="https://static.cdn-website.com/libs/jquery/jquery-3.7.0.min.js"></script>
1586 1587 1588<!-- End Load jQuery --> 1589 1590 1591<!-- Injecting site-wide before scripts --> 1592 1593<!-- End Injecting site-wide to the head --> 1594 1595 1596
1597<script> 1598 var _jquery = window.$; 1599 1600 var jqueryAliases = ['$', 'jquery', 'jQuery']; 1601 1602 jqueryAliases.forEach((alias) => { 1603 Object.defineProperty(window, alias, { 1604 get() { 1605 return _jquery; 1606 }, 1607 set() { 1608 console.warn("Trying to over-write the global jquery object!"); 1609 } 1610 }); 1611 }); 1612 window.jQuery.migrateMute = true; 1613</script>
1613 1614 1615 1616 1617
1618<script> 1619 window.cookiesNotificationMarkupPreview = 'null'; 1620</script>
1620 1621 1622<!-- HEAD RT JS Include -->
1623<script id='d-js-params'> 1624 window.INSITE = window.INSITE || {}; 1625 window.INSITE.device = "desktop"; 1626 1627 window.rtCommonProps = {}; 1628 rtCommonProps["rt.ajax.ajaxScriptsFix"] =true; 1629 rtCommonProps["rt.pushnotifs.sslframe.encoded"] = 'aHR0cHM6Ly97c3ViZG9tYWlufS5wdXNoLW5vdGlmcy5jb20='; 1630 rtCommonProps["runtimecollector.url"] = 'https://rtc.multiscreensite.com'; 1631 rtCommonProps["performance.tabletPreview.removeScroll"] = 'false'; 1632 rtCommonProps["inlineEditGrid.snap"] =true; 1633 rtCommonProps["popup.insite.cookie.ttl"] = '0.5'; 1634 rtCommonProps["rt.pushnotifs.force.button"] =true; 1635 rtCommonProps["common.mapbox.token"] = 'pk.eyJ1IjoiZGFubnliMTIzIiwiYSI6ImNqMGljZ256dzAwMDAycXBkdWxwbDgzeXYifQ.Ck5P-0NKPVKAZ6SH98gxxw'; 1636 rtCommonProps["common.mapbox.js.override"] =false; 1637 rtCommonProps["common.here.appId"] = 'iYvDjIQ2quyEu0rg0hLo'; 1638 rtCommonProps["common.here.appCode"] = '1hcIxLJcbybmtBYTD9Z1UA'; 1639 rtCommonProps["isCoverage.test"] =false; 1640 rtCommonProps["ecommerce.ecwid.script"] = 'https://app.multiscreenstore.com/script.js'; 1641 rtCommonProps["common.resources.dist.cdn"] =true; 1642 rtCommonProps["common.build.dist.folder"] = 'production/6807'; 1643 rtCommonProps["common.resources.cdn.host"] = 'https://static.cdn-website.com'; 1644 rtCommonProps["common.resources.folder"] = 'https://static.cdn-website.com/mnlt/production/6807'; 1645 rtCommonProps["common.fonts.api.v2.url"] = 'https://irp.cdn-website.com/fonts/css2?family='; 1646 rtCommonProps["feature.flag.runtime.backgroundSlider.preload.slowly"] =true; 1647 rtCommonProps["feature.flag.runtime.newAnimation.enabled"] =true; 1648 rtCommonProps["feature.flag.runtime.newAnimation.jitAnimation.enabled"] =true; 1649 rtCommonProps["feature.flag.sites.google.analytics.gtag"] =true; 1650 rtCommonProps["feature.flag.runOnReadyNewTask"] =true; 1651 rtCommonProps["isAutomation.test"] =false; 1652 rtCommonProps["booking.cal.api.domain"] = 'api.cal.com'; 1653 1654 1655 rtCommonProps['common.mapsProvider'] = 'mapbox'; 1656 1657 rtCommonProps['common.mapsProvider.version'] = '0.52.0'; 1658 rtCommonProps['common.geocodeProvider'] = 'mapbox'; 1659 rtCommonProps['server.for.resources'] = ''; 1660 rtCommonProps['feature.flag.lazy.widgets'] = true; 1661 rtCommonProps['feature.flag.single.wow'] = false; 1662 rtCommonProps['feature.flag.disallowPopupsInEditor'] = true; 1663 rtCommonProps['feature.flag.mark.anchors'] = true; 1664 rtCommonProps['captcha.public.key'] = '6LffcBsUAAAAAMU-MYacU-6QHY4iDtUEYv_Ppwlz'; 1665 rtCommonProps['captcha.invisible.public.key'] = '6LeiWB8UAAAAAHYnVJM7_-7ap6bXCUNGiv7bBPME'; 1666 rtCommonProps["images.sizes.small"] =160; 1667 rtCommonProps["images.sizes.mobile"] =640; 1668 rtCommonProps["images.sizes.tablet"] =1280; 1669 rtCommonProps["images.sizes.desktop"] =1920; 1670 rtCommonProps["modules.resources.cdn"] =true; 1671 rtCommonProps["import.images.storage.imageCDN"] = 'https://irp.cdn-website.com/'; 1672 rtCommonProps["feature.flag.runtime.inp.threshold"] =150; 1673 rtCommonProps["feature.flag.performance.logs"] =false; 1674 rtCommonProps["site.widget.form.captcha.type"] = 'g_recaptcha'; 1675 rtCommonProps["friendly.captcha.site.key"] = 'FCMGSQG9GVNMFS8K'; 1676 rtCommonProps["cookiebot.mapbox.consent.category"] = 'marketing'; 1677 rtCommonProps["termly.mapbox.consent.category"] = 'performance'; 1678 // feature flags that's used out of runtime module (in legacy files) 1679 rtCommonProps["platform.monolith.personalization.dateTimeCondition.popupMsgAction.moveToclient.enabled"] =true; 1680 1681 window.rtFlags = {}; 1682 rtFlags["unsuspendEcwidStoreOnRuntime.enabled"] =true; 1683 rtFlags["scripts.widgetCount.enabled"] =true; 1684 rtFlags["fnb.animations.tracking.enabled"] =true; 1685 rtFlags["ecom.ecwidNewUrlStructure.enabled"] = false; 1686 rtFlags["ecom.ecwid.accountPage.emptyBaseUrl.enabled"] = true; 1687 rtFlags["ecom.ecwid.accountPage.repeatOrderRedirect.enabled"] = false; 1688 rtFlags["ecom.ecwid.pages.links.disable.listeners"] = true; 1689 rtFlags["ecom.ecwid.storefrontV3.enabled"] = false; 1690 rtFlags["ecom.monolith.legacy.js.api.disabled.for.new.sites"] = false; 1691 rtFlags["geocode.search.localize"] =false; 1692 rtFlags["feature.flag.runtime.newAnimation.asyncInit.setTimeout.enabled"] =false; 1693 rtFlags["twitter.heightLimit.enabled"] = true; 1694 rtFlags["runtime.lottieOverflow"] =false; 1695 rtFlags["runtime.monitoring.sentry.ignoreErrors"] = ""; 1696 rtFlags["streamline.monolith.personalization.supportMultipleConditions.enabled"] =false; 1697 rtFlags["flex.animation.design.panel.layout"] =true; 1698 rtFlags["runtime.cwv.report.cls.enabled"] =false; 1699 rtFlags["runtime.cwv.report.lcp.enabled"] =false; 1700 rtFlags["runtime.lcp.preload.selfheal.enabled"] =true; 1701 rtFlags["runtime.lcp.preload.bootstrap.enabled"] =true; 1702 rtFlags["runtime.lcp.preload.monitor.enabled"] =false; 1703 rtFlags["runtime.customwidget.heightpin.enabled"] =true; 1704 rtFlags["runtime.video.widget.lazy.enabled"] =true; 1705 rtFlags["contact.form.useActiveForm"] =true; 1706 rtFlags["contact.form.custom.errors.enabled"] =false; 1707 rtFlags["runtime.ssr.productStore.internal.observer"] =true;
1708 rtFlags["runtime.ssr.productCustomizations"] =true; 1709 rtFlags["runtime.ssr.runtime.filter-sort.newFilterSortWidgetWithOptions.enabled"] =true; 1710 rtFlags["runtime.ssr.ssrSlider.jumpThreshold.enabled"] =true; 1711 rtFlags["editor.widget.form.a11y"] =true; 1712</script>
vendor: 1 bytes, line 1712
1712
1713<script src="https://static.cdn-website.com/mnlt/production/6807/_dm/s/rt/dist/scripts/d-js-one-runtime-unified-desktop.min.js" id="d-js-core"></script>
1713 1714 1715<!-- End of HEAD RT JS Include --> 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727
1727<script src="https://static.cdn-website.com/mnlt/production/6807/_dm/s/rt/dist/scripts/d-js-jquery-migrate.min.js" ></script>
1727 1728 1729 1730 1731 1732
1733<script> 1734 1735 $(window).bind("orientationchange", function (e) { 1736 $.layoutManager.initLayout(); 1737 1738 }); 1739 $(document).resize(function () { 1740 1741 }); 1742</script>
1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761
1762<script type="text/javascript" id="d_track_sp"> 1763 ;(function(p,l,o,w,i,n,g){if(!p[i]){p.GlobalSnowplowNamespace=p.GlobalSnowplowNamespace||[]; 1764 p.GlobalSnowplowNamespace.push(i);p[i]=function(){(p[i].q=p[i].q||[]).push(arguments) 1765 };p[i].q=p[i].q||[];n=l.createElement(o);g=l.getElementsByTagName(o)[0];n.async=1; 1766 n.src=w;g.parentNode.insertBefore(n,g)}}(window,document,"script","//d32hwlnfiv2gyn.cloudfront.net/sp-2.0.0-dm-0.1.min.js","snowplow")); 1767 window.dmsnowplow = window.snowplow; 1768 1769 dmsnowplow('newTracker', 'cf', 'd32hwlnfiv2gyn.cloudfront.net', { // Initialise a tracker 1770 appId: '4dc87d15' 1771 }); 1772 1773 // snowplow queries element styles so we wait until CSS calculations are done. 1774 requestAnimationFrame(() => { 1775 dmsnowplow('trackPageView'); 1776 _dm_insite.forEach((rule) => { 1777 // Specifically in popup only the client knows if it is shown or not so we don't always want to track its impression here 1778 // the tracking is in popup.js 1779 if (rule.actionName !== "popup") { 1780 dmsnowplow('trackStructEvent', 'insite', 'impression', rule.ruleType, rule.ruleId); 1781 } 1782 window?.waitForDeferred?.('dmAjax', () => { 1783 $.DM.events.trigger('event-ruleTriggered', {value: rule}); 1784 }); 1785 }); 1786 }); 1787</script>
1787 1788 1789 1790 1791<div style="display:none;" id="P6iryBW0Wu"></div> 1792 1793<!-- photoswipe markup --> 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803<!-- Root element of PhotoSwipe. Must have class pswp. --> 1804<div class="pswp" tabindex="-1" role="dialog" aria-hidden="true"> 1805 1806 <!-- Background of PhotoSwipe. 1807 It's a separate element as animating opacity is faster than rgba(). --> 1808 <div class="pswp__bg"></div> 1809 1810 <!-- Slides wrapper with overflow:hidden. --> 1811 <div class="pswp__scroll-wrap"> 1812 1813 <!-- Container that holds slides. 1814 PhotoSwipe keeps only 3 of them in the DOM to save memory. 1815 Don't modify these 3 pswp__item elements, data is added later on. --> 1816 <div class="pswp__container"> 1817 <div class="pswp__item"></div> 1818 <div class="pswp__item"></div> 1819 <div class="pswp__item"></div> 1820 </div> 1821 1822 <!-- Default (PhotoSwipeUI_Default) interface on top of sliding area. Can be changed. --> 1823 <div class="pswp__ui pswp__ui--hidden"> 1824 1825 <div class="pswp__top-bar"> 1826 1827 <!-- Controls are self-explanatory. Order can be changed. --> 1828 1829 <div class="pswp__counter"></div> 1830 1831 <button class="pswp__button pswp__button--close" data-auto="pswp-close" title="Close (Esc)"></button> 1832 1833 <button class="pswp__button pswp__button--share" data-auto="pswp-share" title="Share"></button> 1834 1835 <button class="pswp__button pswp__button--fs" title="Toggle fullscreen"></button> 1836 1837 <button class="pswp__button pswp__button--zoom" title="Zoom in/out"></button> 1838 1839 <!-- Preloader demo http://codepen.io/dimsemenov/pen/yyBWoR --> 1840 <!-- element will get class pswp__preloader--active when preloader is running --> 1841 <div class="pswp__preloader"> 1842 <div class="pswp__preloader__icn"> 1843 <div class="pswp__preloader__cut"> 1844 <div class="pswp__preloader__donut"></div> 1845 </div> 1846 </div> 1847 </div> 1848 </div> 1849 1850 <div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap"> 1851 <div class="pswp__share-tooltip"></div> 1852 </div> 1853 1854 <button class="pswp__button pswp__button--arrow--left" title="Previous (arrow left)"> 1855 </button> 1856 1857 <button class="pswp__button pswp__button--arrow--right" title="Next (arrow right)"> 1858 </button> 1859 1860 <div class="pswp__caption"> 1861 <div class="pswp__caption__center"></div> 1862 </div> 1863 1864 </div> 1865 1866 </div> 1867 1868</div> 1869<div id="fb-root" 1870 data-locale="en"></div> 1871<!-- Alias: 4dc87d15 --> 1872<div class="dmPopupMask" id="dmPopupMask"></div> 1873<div id="dmPopup" class="dmPopup" data-auto="popup"> 1874 <div class="dmPopupCloseWrapper"> <div class="dmPopupClose dm-common-icons-close oneIcon" data-auto="popup-close" onclick="dmHidePopup(event);"></div> </div> 1875 <div class="dmPopupTitle"> <span></span> Share by:</div> 1876 <div class="data"></div> 1877</div>
1877<script id="d_track_personalization"> 1878 window?.waitForDeferred?.('dmAjax', () => { 1879 // Collects client data and updates cookies used by smart sites 1880 window.expireDays = 365; 1881 window.visitLength = 30 * 60000; 1882 $.setCookie("dm_timezone_offset", (new Date()).getTimezoneOffset(), window.expireDays); 1883 setSmartSiteCookiesInternal("dm_this_page_view","dm_last_page_view","dm_total_visits","dm_last_visit"); 1884 }); 1885</script>
vendor: 1 bytes, line 1885
1885
1886<script type="text/javascript"> 1887 1888 Parameters.NavigationAreaParams.MoreButtonText = 'MORE'; 1889 1890 Parameters.NavigationAreaParams.LessButtonText = 'LESS'; 1891 Parameters.HomeLinkText = 'Home'; 1892 </script>
1892 1893<!-- End Script tags --> 1894<!-- Begin Body End Markup -->
1895<script src="//mpactions.superpages.com/actionthru/js/dxmscript.min.js" type="text/javascript"> 1896</script>
1896 1897<div data-inject="thryv_mc_tag"> 1898
1898<script type="text/javascript"> 1899//<![CDATA[ 1900 1901 var utag_data = {}; 1902 (function(a,b,c,d){ 1903 a='https://tags.tiqcdn.com/utag/marketingcenter/common/prod/utag.js'; 1904 b=document;c='script';d=b.createElement(c);d.src=a;d.type='text/java'+c;d.async=true; 1905 a=b.getElementsByTagName(c)[0];a.parentNode.insertBefore(d,a); 1906 })(); 1907 1908//]]> 1909 </script>
1909 1910</div> 1911<div data-inject="heat_map_script_tag"> 1912</div> 1913<!-- End Body End Markup --> 1914<!-- Site Wide Html Markup --> 1915<!-- Site Wide Html Markup --> 1916<!-- Begin Product Custom HTML Markup -->
1917<script type="text/javascript" charset="utf-8"> 1918document.addEventListener("DOMContentLoaded", () => { 1919 var _extID; 1920 var _device = 'desktop'; 1921 var _plan = window.Parameters.planID; 1922 //set the external ID, if the site is fast migrated or normal site 1923 if (typeof(dmAPI) === 'object') { 1924 _extID = dmAPI.getSiteExternalId() 1925 } else if (typeof(siteDetails) === 'object') { 1926 _extID = siteDetails.ExternalUid; 1927 } else { 1928 _extID = false; 1929 } 1930 //if site is normal site & mobile visitor 1931 if(typeof($.layoutDevice) !== "undefined") { 1932 if($.layoutDevice.type === "mobile") { 1933 _device = 'mobile'; 1934 } 1935 } else if(typeof(camilyo.platform)){ 1936 _device = camilyo.platform.toLowerCase(); 1937 } 1938 //if site has an external ID set, load floating widgets 1939 if (_extID && _plan === "1280") { 1940 window.liveSiteAsyncInit = function() { 1941 LiveSite.init({ 1942 id: _extID, 1943 mode: _device 1944 }); 1945 }; 1946 (function(d, s, id) { 1947 var js, fjs = d.getElementsByTagName(s)[0], 1948 p = "https://", 1949 r = Math.floor(new Date().getTime() / 1000000); 1950 if (d.getElementById(id)) { return; } 1951 js = d.createElement(s); 1952 js.id = id; 1953 js.src = p + "widgets.vcdnita.com/assets/livesite.js?" + r; 1954 fjs.parentNode.insertBefore(js, fjs); 1955 }(document, "script", "livesite-jssdk")); 1956 if(window.flexSite && window.top !== window) { 1957 function isMobile() { 1958 return $.layoutDevice && $.layoutDevice.type === 'mobile'; 1959 } 1960 let isMobileValue = isMobile(); 1961 window.addEventListener('resize', () => { 1962 const currentIsMobileValue = isMobile(); 1963 if(isMobileValue !== currentIsMobileValue){ 1964 window.location.reload(); 1965 } 1966 }); 1967 } 1968 } else { 1969 console.log("ExternalID/vID has not been added to site") 1970 } 1971}) 1972</script>
1972 1973<!-- End Product Custom HTML Markup --> 1974</body> 1975</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.