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.fullservicegaragedoors.net/', 49 50 SystemID: 'US_HIBU_PRODUCTION', 51 SiteAlias: 'a18e963a07b74c3894ec4c687e53ed93', 52 SiteType: atob('RFVEQU9ORQ=='), 53 PublicationDate: 'Jul 08, 2026', 54 ExternalUid: '57669846', 55 IsSiteMultilingual: false, 56 InitialPostAlias: '', 57 InitialPostPageUuid: '', 58 InitialDynamicItem: '', 59 DynamicPageInfo: { 60 isDynamicPage: false, 61 base64JsonRowData: 'null', 62 }, 63 InitialPageAlias: 'home', 64 InitialPageUuid: '45e1b8d766bb4a04be5d23427e7219f4', 65 InitialPageId: '114658869', 66 InitialEncodedPageAlias: 'aG9tZQ==', 67 InitialHeaderUuid: 'c4da5a55cef642e39aea36e7d7a82729', 68 CurrentPageUrl: '', 69 IsCurrentHomePage: true, 70 AllowAjax: false, 71 AfterAjaxCommand: null, 72 HomeLinkText: 'Back To Home', 73 UseGalleryModule: false, 74 CurrentThemeName: 'Layout Theme', 75 ThemeVersion: '38280', 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.fullservicegaragedoors.net/', 116 BlockContainerSelector: '.dmBody', 117 NavbarSelector: '#dmNav:has(a)', 118 SubNavbarSelector: '#subnav_main' 119 }, 120 hasCustomCode: true, 121 planID: '753', 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<meta name="google-site-verification" content="KKpVpTdj9h4M7aMtzb32k-mUvF-0lF4mEoSwBS9o6Gw" data-swh-uuid="53f077a64f624f589e63df9dcae921ac"/> 167 168 169 170<!-- End Injecting site-wide to the head --> 171 172 173 174 175
176<script> 177 function toHash(str) { 178 var hash = 5381, i = str.length; 179 while (i) { 180 hash = hash * 33 ^ str.charCodeAt(--i) 181 } 182 return hash >>> 0 183 } 184</script>
vendor: 1 bytes, line 184
184
185<script> 186 (function (global) { 187 //const cacheKey = global.cacheKey; 188 const isOffline = 'onLine' in navigator && navigator.onLine === false; 189 const hasServiceWorkerSupport = 'serviceWorker' in navigator; 190 if (isOffline) { 191 console.log('offline mode'); 192 } 193 if (!hasServiceWorkerSupport) { 194 console.log('service worker is not supported'); 195 } 196 if (hasServiceWorkerSupport && !isOffline) { 197 window.addEventListener('load', function () { 198 const serviceWorkerPath = '/runtime-service-worker.js?v=3'; 199 navigator.serviceWorker 200 .register(serviceWorkerPath, { scope: './' }) 201 .then( 202 function (registration) { 203 // Registration was successful 204 console.log( 205 'ServiceWorker registration successful with scope: ', 206 registration.scope 207 ); 208 }, 209 function (err) { 210 // registration failed :( 211 console.log('ServiceWorker registration failed: ', err); 212 } 213 ) 214 .catch(function (err) { 215 console.log(err); 216 }); 217 }); 218 219 // helper function to refresh the page 220 var refreshPage = (function () { 221 var refreshing; 222 return function () { 223 if (refreshing) return; 224 // prevent multiple refreshes 225 var refreshkey = 'refreshed' + location.href; 226 var prevRefresh = localStorage.getItem(refreshkey); 227 if (prevRefresh) { 228 localStorage.removeItem(refreshkey); 229 if (Date.now() - prevRefresh < 30000) { 230 return; // dont go into a refresh loop 231 } 232 } 233 refreshing = true; 234 localStorage.setItem(refreshkey, Date.now()); 235 console.log('refereshing page'); 236 window.location.reload(); 237 }; 238 })(); 239 240 function messageServiceWorker(data) { 241 return new Promise(function (resolve, reject) { 242 if (navigator.serviceWorker.controller) { 243 var worker = navigator.serviceWorker.controller; 244 var messageChannel = new MessageChannel(); 245 messageChannel.port1.onmessage = replyHandler; 246 worker.postMessage(data, [messageChannel.port2]); 247 function replyHandler(event) { 248 resolve(event.data); 249 } 250 } else { 251 resolve(); 252 } 253 }); 254 } 255 } 256})(window); 257</script>
257 258 259 260 261<link rel="canonical" href="http://www.fullservicegaragedoors.net/"> 262 263<meta id="view" name="viewport" content="initial-scale=1, minimum-scale=1, maximum-scale=5, viewport-fit=cover"> 264<meta name="dm:lcp-preload" content="dm:lcp-frozen"> 265<meta name="apple-mobile-web-app-capable" content="yes"> 266 267 268 269<link rel="icon" type="image/x-icon" href="https://cdn.hibuwebsites.com/a18e963a07b74c3894ec4c687e53ed93/site_favicon_16_1762463992970.ico"/> 270 271 272<link rel="preconnect" href="https://le-cdn.hibuwebsites.com"/> 273<link rel="preconnect" href="https://cdn.hibuwebsites.com" crossorigin/> 274<link rel="preconnect" href="https://static-res-cdn.websites.hibu.com"/> 275<link rel="preconnect" href="https://cdn.hibuwebsites.com"/> 276 277 278 279
280<script id='d-js-dmapi'> 281 window.SystemID = 'US_HIBU_PRODUCTION'; 282 283 if (!window.dmAPI) { 284 window.dmAPI = { 285 registerExternalRuntimeComponent: function () { 286 }, 287 getCurrentDeviceType: function () { 288 return window._currentDevice; 289 }, 290 runOnReady: (ns, fn) => { 291 const safeFn = dmAPI.toSafeFn(fn); 292 ns = ns || 'global_' + Math.random().toString(36).slice(2, 11); 293 const eventName = 'afterAjax.' + ns; 294 295 if (document.readyState === 'complete') { 296 $.DM.events.off(eventName).on(eventName, safeFn); 297 setTimeout(function () { 298 safeFn({ 299 isAjax: false, 300 }); 301 }, 0); 302 } else { 303 window?.waitForDeferred?.('dmAjax', () => { 304 $.DM.events.off(eventName).on(eventName, safeFn); 305 safeFn({ 306 isAjax: false, 307 }); 308 }); 309 } 310 }, 311 toSafeFn: (fn) => { 312 if (fn?.safe) { 313 return fn; 314 } 315 const safeFn = function (...args) { 316 try { 317 return fn?.apply(null, args); 318 } catch (e) { 319 console.log('function failed ' + e.message); 320 } 321 }; 322 safeFn.safe = true; 323 return safeFn; 324 } 325 }; 326 } 327 328 if (!window.requestIdleCallback) { 329 window.requestIdleCallback = function (fn) { 330 setTimeout(fn, 0); 331 } 332 } 333</script>
333 334 335 336 337 338 339 340 341
342<script id="d-js-load-css"> 343/** 344 * There are a few <link> tags with CSS resource in them that are preloaded in the page 345 * in each of those there is a "onload" handler which invokes the loadCSS callback 346 * defined here. 347 * We are monitoring 3 main CSS files - the runtime, the global and the page. 348 * When each load we check to see if we can append them all in a batch. If threre 349 * is no page css (which may happen on inner pages) then we do not wait for it 350 */ 351(function () { 352 let cssLinks = {}; 353 function loadCssLink(link) { 354 link.onload = null; 355 link.rel = "stylesheet"; 356 link.type = "text/css"; 357 } 358 359 function checkCss() { 360 const pageCssLink = document.querySelector("[id*='CssLink']"); 361 const widgetCssLink = document.querySelector("[id*='widgetCSS']"); 362 363 if (cssLinks && cssLinks.runtime && cssLinks.global && (!pageCssLink || cssLinks.page) && (!widgetCssLink || cssLinks.widget)) { 364 const storedRuntimeCssLink = cssLinks.runtime; 365 const storedPageCssLink = cssLinks.page; 366 const storedGlobalCssLink = cssLinks.global; 367 const storedWidgetCssLink = cssLinks.widget; 368 369 storedGlobalCssLink.disabled = true; 370 loadCssLink(storedGlobalCssLink); 371 372 if (storedPageCssLink) { 373 storedPageCssLink.disabled = true; 374 loadCssLink(storedPageCssLink); 375 } 376 377 if(storedWidgetCssLink) { 378 storedWidgetCssLink.disabled = true; 379 loadCssLink(storedWidgetCssLink); 380 } 381 382 storedRuntimeCssLink.disabled = true; 383 loadCssLink(storedRuntimeCssLink); 384 385 requestAnimationFrame(() => { 386 setTimeout(() => { 387 storedRuntimeCssLink.disabled = false; 388 storedGlobalCssLink.disabled = false; 389 if (storedPageCssLink) { 390 storedPageCssLink.disabled = false; 391 } 392 if (storedWidgetCssLink) { 393 storedWidgetCssLink.disabled = false; 394 } 395 // (SUP-4179) Clear the accumulated cssLinks only when we're 396 // sure that the document has finished loading and the document 397 // has been parsed. 398 if(document.readyState === 'interactive') { 399 cssLinks = null; 400 } 401 }, 0); 402 }); 403 } 404 } 405 406 407 function loadCSS(link) { 408 try { 409 var urlParams = new URLSearchParams(window.location.search); 410 var noCSS = !!urlParams.get("nocss"); 411 var cssTimeout = urlParams.get("cssTimeout") || 0; 412 413 if (noCSS) { 414 return; 415 } 416 if (link.href && link.href.includes("d-css-runtime")) { 417 cssLinks.runtime = link; 418 checkCss(); 419 } else if (link.id === "siteGlobalCss") { 420 cssLinks.global = link; 421 checkCss(); 422 } 423 424 else if (link.id && link.id.includes("CssLink")) { 425 cssLinks.page = link; 426 checkCss(); 427 } else if (link.id && link.id.includes("widgetCSS")) { 428 cssLinks.widget = link; 429 checkCss(); 430 } 431 432 else { 433 requestIdleCallback(function () { 434 window.setTimeout(function () { 435 loadCssLink(link); 436 }, parseInt(cssTimeout, 10)); 437 }); 438 } 439 } catch (e) { 440 throw e 441 } 442 } 443 window.loadCSS = window.loadCSS || loadCSS; 444})(); 445</script>
445 446 447 448
449<script data-role="deferred-init" type="text/javascript"> 450 /* usage: window.getDeferred(<deferred name>).resolve() or window.getDeferred(<deferred name>).promise.then(...)*/ 451 function Def() { 452 this.promise = new Promise((function (a, b) { 453 this.resolve = a, this.reject = b 454 }).bind(this)) 455 } 456 457 const defs = {}; 458 window.getDeferred = function (a) { 459 return null == defs[a] && (defs[a] = new Def), defs[a] 460 } 461 window.waitForDeferred = function (b, a, c) { 462 let d = window?.getDeferred?.(b); 463 d 464 ? d.promise.then(a) 465 : c && ["complete", "interactive"].includes(document.readyState) 466 ? setTimeout(a, 1) 467 : c 468 ? document.addEventListener("DOMContentLoaded", a) 469 : console.error(`Deferred does not exist`); 470 }; 471</script>
471 472<style id="forceCssIncludes"> 473 /* This file is auto-generated from a `scss` file with the same name */ 474 475.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}} 476 477body #dm #\31 312823833:not(.photo-gallery-done):not([data-widget-initialized]) { height: 61.0px !important; min-height: initial;} 478body #dm #\31 649006522:not(.photo-gallery-done):not([data-widget-initialized]) { height: 20.0px !important; min-height: initial;} 479body #dm #\31 152813225:not(.photo-gallery-done):not([data-widget-initialized]) { height: 40.0px !important; min-height: initial;} 480body #dm #\31 443561679:not(.photo-gallery-done):not([data-widget-initialized]) { height: 23.0px !important; min-height: initial;} 481</style> 482<style id="cssVariables" type="text/css"> 483 484</style> 485 486 487<style id="hideAnimFix"> 488 .dmDesktopBody:not(.editGrid) [data-anim-desktop]:not([data-anim-desktop='none']), .dmDesktopBody:not(.editGrid) [data-anim-extended] { 489 visibility: hidden; 490 } 491 492 .dmDesktopBody:not(.editGrid) .dmNewParagraph[data-anim-desktop]:not([data-anim-desktop='none']), .dmDesktopBody:not(.editGrid) .dmNewParagraph[data-anim-extended] { 493 visibility: hidden !important; 494 } 495 496 #dmRoot:not(.editGrid) .flex-element [data-anim-extended] { 497 visibility: hidden; 498 } 499 500</style> 501 502 503 504<style id="criticalCss"> 505 @charset "UTF-8";.display_None,.dmPopupMask{display:none}@font-face{font-family:Merriweather;font-style:normal;font-weight:300;font-stretch:100%;font-display:swap;src:url(https://cdn.hibuwebsites.com/fonts/s/merriweather/v33/u-4e0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiSeqqJ-k.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
505@font-face{font-family:FontAwesome;font-display:block;src:url(https://static-res-cdn.websites.hibu.com/fonts/fontawesome-webfont.eot?v=6);src:url(https://static-res-cdn.websites.hibu.com/fonts/fontawesome-webfont.eot?#iefix&v=6) format("embedded-opentype"),url(https://static-res-cdn.websites.hibu.com/fonts/fontawesome-webfont.woff?v=6) format("woff"),url(https://static-res-cdn.websites.hibu.com/fonts/fontawesome-webfont.ttf?v=6) format("truetype"),url(https://static-res-cdn.websites.hibu.com/fonts/fontawesome-webfont.svg#fontawesomeregular?v=6) format("svg");font-weight:400;font-style:normal}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:400;font-display:swap;src:url(https://cdn.hibuwebsites.com/fonts/s/sourcesanspro/v23/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7l.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Merriweather;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://cdn.hibuwebsites.com/fonts/s/merriweather/v33/u-4e0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiSeqqJ-k.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:700;font-display:swap;src:url(https://cdn.hibuwebsites.com/fonts/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdu.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Merriweather;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://cdn.hibuwebsites.com/fonts/s/merriweather/v33/u-4e0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiSeqqJ-k.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Source Sans Pro';font-style:normal;font-weight:900;font-display:swap;src:url(https://cdn.hibuwebsites.com/fonts/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3iu4nwlxdu.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Merriweather;font-style:normal;font-weight:900;font-stretch:100%;font-display:swap;src:url(https://cdn.hibuwebsites.com/fonts/s/merriweather/v33/u-4e0qyriQwlOrhSvowK_l5UcA6zuSYEqOzpPe3HOZJ5eX1WtLaQwmYiSeqqJ-k.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.dmInner{min-height:100vh!important;position:relative}.dmPopup,.dmPopupMask{position:fixed;left:0}.dmDisplay_None{display:none!important}#dm .dmWidget .icon{font-size:26px}body.dmRoot #dm .dmOuter .dmInner .dmWidget .icon.hasFontIcon{height:26px;margin-top:-13px;line-height:normal;text-align:center;background-image:none}.dmRoot .hasFontIcon{background-image:none!important}.dmPopupMask{margin:0;width:10px;z-index:1000000999;top:0}#dmRoot .dmPopup,.dmPopup,.dmPopupClose:before,[data-display-type=block]{display:block}.dmPopup{text-align:left;top:10px;width:93%;z-index:1000009999!important;box-sizing:border-box;background:#f5f5f5;overflow-y:auto;height:100%}.dmPopup .dmPopupTitle{text-align:left;font:700 19px Helvetica,Arial;margin:20px 20px 35px;color:#999}#dm .dmInner .dmWidget,.graphicWidget,.imageWidget a,.text-align-center{text-align:center}#dmPopup{opacity:0}.dmPopupClose,.dmPopupClose:before{position:absolute;visibility:visible}.dmPopupClose{border-radius:25px;width:27px;height:27px;z-index:1;background-color:rgba(255,255,255,.4);top:12px;right:12px}.dmPopupClose:before{font-size:20px;color:#000;top:3px;right:3px}body.dmDesktopBody:not(.mac) .data::-webkit-scrollbar{width:5px;height:5px}body.dmDesktopBody:not(.mac) .data::-webkit-scrollbar-track{background:rgba(0,0,0,.1)}body.dmDesktopBody:not(.mac) .data::-webkit-scrollbar-thumb{background:#c8c8c8;box-shadow:inset 0 1px 2px #454545;border-radius:45px}.dmRespRow.fullBleedMode>.dmRespColsWrapper{width:100%!important;max-width:100%!important}.dmRespRow.fullBleedMode{padding-left:0!important;padding-right:0!important}#dm .dmRespRow .dmRespColsWrapper{display:flex}
505#dm .hasBackgroundOverlay:not(.dmPopupPage):not(.layout-drawer){position:relative!important}#dm .hasBackgroundOverlay:not(.hasExtraLayerOverlay):before{display:block!important;position:absolute!important;top:0!important;left:0!important;width:100%!important;height:100%!important;content:" "!important;border-radius:inherit}#dm .dmInner .dmWidget.align-center,.align-center{margin-left:auto;margin-right:auto}body.fix-mobile-scrolling{overflow:initial}body,svg:not(:root){overflow:hidden}#hcontainer[has-shadow=true]{position:relative;z-index:1}#dmRoot{text-decoration-skip-ink:none}body{-webkit-overflow-scrolling:touch}@media (min-width:1025px){:root{--btn-text-font-size:15px}}header,main,nav{display:block}html{font-family:Source Sans Pro;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0}img{border:0;max-width:100%;-ms-interpolation-mode:bicubic;display:inline-block}button{font-family:inherit;font-size:100%;margin:0;line-height:normal;text-transform:none;-webkit-appearance:button}button::-moz-focus-inner{border:0;padding:0}*,:after,:before{box-sizing:border-box}.dmRespRow.dmRespRowNoPadding{padding:0}
505.dmRespRow{padding-top:15px;padding-bottom:15px}.dmRespRow .dmRespRow:after,.dmRespRow .dmRespRow:before,.dmRespRow:after,.dmRespRow:before{content:" ";display:table}.dmRespRow .dmRespRow:after,.dmRespRow:after{clear:both}.dmRespRow,.dmRespRow .dmRespColsWrapper{max-width:960px;position:relative;margin:0 auto;width:100%}.dmRespRow .dmRespCol{position:relative;width:100%;display:inline-block;vertical-align:top;float:left}.dmRespRow .dmRespCol>*{max-width:100%}.dmRespRow .dmRespRow{width:auto;margin-top:0;margin-bottom:0;max-width:none}.dmDesktopBody .dmRespRow .large-2{position:relative;width:16.66667%}.dmDesktopBody .dmRespRow .large-3{position:relative;width:25%}.dmDesktopBody .dmRespRow .large-4{position:relative;width:33.33333%}.dmDesktopBody .dmRespRow .large-6{position:relative;width:50%}.dmDesktopBody .dmRespRow .large-12{position:relative;width:100%}[class*=" dm-common-icons-"]{speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:dm-common-icons!important}.dm-common-icons-close:before{content:"\e901"}#dm div.dmContent [class*=" icon-"],[class*=" icon-"]{font-family:
505FontAwesome!important;font-weight:400;font-style:normal;text-decoration:inherit;-webkit-font-smoothing:antialiased}[class*=" icon-"]:before{text-decoration:none;display:inline-block;speak:none}a [class*=" icon-"]{display:inline}[class*=" icon-"]{display:inline;width:auto;height:auto;line-height:normal;vertical-align:baseline;background-image:none;background-position:0 0;background-repeat:repeat;margin-top:0}.icon-star:before{content:"\f005"}.icon-angle-right:before{content:"\f105"}.icon-angle-down:before{content:"\f107"}#dm .dmRespRow .dmRespCol>.dmWidget{overflow:initial}@media (min-width:768px){#dm .dmRespRow .dmRespCol>.dmWidget{width:280px;max-width:100%}#dm .dmRespRow .dmRespCol.large-3>.dmWidget{width:100%}}@media (max-width:767px){#dm .dmInner .dmWidget{width:100%}}#dm .dmInner .dmWidget:not(.displayNone){display:inline-block}#dm .dmInner .dmWidget:not(.flexButton):not(.displayNone)[data-display-type=block]{display:block}#dm .dmInner .dmWidget{text-decoration:none;margin:10px 0;clear:both;position:relative;line-height:22px;box-shadow:none;background-image:none;padding:0;height:auto;border-style:solid;white-space:nowrap}.desktop-bg,.fab{box-shadow:0 0 3px rgba(0,0,0,.5),3px 3px 3px rgba(0,0,0,.25)}#dm .dmInner .dmWidget:after{content:"";display:inline-block;height:100%;vertical-align:middle;width:0;margin-right:-.25em}#dm .dmInner .dmWidget .iconBg{position:absolute;left:0;width:50px;top:50%;margin-top:-13px}#dm .dmWidget .text{display:inline-block;vertical-align:middle;font-size:1.125em;line-height:normal;white-space:normal;padding:10px 7px;max-width:98%}#float-container,.main-navigation.unifiednav .unifiednav__container>.unifiednav__item-wrap>.unifiednav__item .nav-item-text{white-space:nowrap}p.rteBlock{margin:0}html:not(.ios-preview) #dm .hasStickyHeader .dmInner div.dmHeaderContainer{position:fixed!important;z-index:101;width:100%;min-width:768px}body:not(.responsiveTablet) #dm .dmInner #fcontainer .hide-for-large,body:not(.responsiveTablet) #dm .dmInner .dmBody .hide-for-large,body:not(.responsiveTablet) .hide-for-large{display:none!important}.imageWidget{position:relative}.imageWidget a{font-style:italic}.imageWidget img[width][height]{height:auto}.graphicWidget{width:200px;height:200px;margin:10px auto}.graphicWidget svg.svg{width:100%;height:100%;color:#000;fill:#000}.dmNewParagraph[data-version] .text-align-left{text-align:left!important}.dmNewParagraph[data-version] .text-align-center{text-align:center!important}.dmNewParagraph[data-version]{line-height:initial}.dmNewParagraph[data-version] [class*=size-]{width:auto!important;height:auto!important}.dmNewParagraph[data-version] h1,.dmNewParagraph[data-version] p{margin-top:0;margin-bottom:0}@media (max-width:767px){.dmRoot .dmNewParagraph[data-version] .m-text-align-center{text-align:center!important}}@media (min-width:768px) and (max-width:1024px){:root{--btn-text-font-size:15px}}.headerWidget{min-height:22px}.editorOnlyInfo,.wrongScriptError{display:none;max-width:350px;background:#fff;text-align:left;padding:10px;line-height:normal;font-size:14px}#dm .widget-7b6cfb{line-height:normal!important}.yextHours{text-align:left;width:300px}.yextHours .row{display:flex}.yextHours .row .left,.yextHours .row .right{flex:1;align-self:center}.yextAdditionalHoursText{display:inline-block}.bold{font-weight:700}h3[class*=Header]{margin:10px 0}#main-container{display:inline-block;margin:0 auto}#close-bar{width:42.67px;z-index:10000006;position:absolute;bottom:.5em;right:.5em}#close-bar svg{fill:#fff!important}.fab{background:#fff;width:64px;height:64px;border-radius:50%;text-align:center;color:#333;position:fixed;bottom:0;right:0;font-size:2.6667em;display:inline-block}.modal__overlay,.overlay{height:100%;width:100%;left:0}#help-text,#masterfab,.desktop-bg,.micromodal-slide,.mobile-bg,.overlay,.social-bg{display:none}.overlay{position:fixed;top:0;background:#ECECEC;opacity:.9;z-index:10000001}.mobile-bg,.social-bg{position:fixed;width:100%;bottom:0;left:0;z-index:10000002}.social-bg{z-index:10000005}.desktop-bg{position:absolute;
505min-width:200px;bottom:0;left:0;z-index:10000004;background:#fff;border-bottom:6px solid #333}#float-container{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:10000005}#help-text{position:absolute;margin:20px;color:#333;font-size:24px;text-align:left}#masterfab{z-index:10000006;align-items:center}#masterfab svg{fill:#ccc;margin:0 auto;display:block;width:60%;max-width:70px;max-height:50px}.modal__overlay{top:0;right:0;bottom:0;background:rgba(0,0,0,.6);display:flex;justify-content:center;align-items:center;position:relative}.modal__container{background-color:#fff;padding:30px;max-width:500px;min-width:200px;max-height:100vh;border-radius:4px;overflow-y:auto;box-sizing:border-box}.modal__header{display:flex;justify-content:space-between;align-items:center}.modal__title{margin:0 auto;color:#000;font-weight:600;font-size:1.25rem;line-height:1.25;box-sizing:border-box}.modal__close{background:0 0;border:0;position:absolute;top:14px;right:14px}.dmHeader,.dmInner{background:#fff;color:#111}.modal__close,.modal__close svg{width:20px;height:20px;outline:0!important}.modal__close svg{position:absolute;left:0;top:0}.modal__content{margin-top:2rem;margin-bottom:2rem;line-height:1.5;color:rgba(0,0,0,.8)}@keyframes mmfadeOut{from{opacity:1}to{opacity:0}}@keyframes mmslideOut{from{transform:translateY(0)}to{transform:translateY(-10%)}}.micromodal-slide[aria-hidden=true] .modal__overlay{animation:mmfadeOut .3s cubic-bezier(0,0,.2,1)}.micromodal-slide[aria-hidden=true] .modal__container{animation:mmslideOut .3s cubic-bezier(0,0,.2,1)}.micromodal-slide .modal__container,.micromodal-slide .modal__overlay{will-change:transform}img[width][height]{height:auto}*{border:0 solid #333;scrollbar-arrow-color:#fff;scrollbar-track-color:#F2F2F2;scrollbar-face-color:silver;scrollbar-highlight-color:silver;scrollbar-3dlight-color:silver;scrollbar-shadow-color:silver;scrollbar-darkshadow-color:silver;scrollbar-width:12px}body{width:100%;-webkit-text-size-adjust:100%!important;-ms-text-size-adjust:100%!important}A IMG{border:none}h1,h2,h3,ul{margin-left:0;margin-right:0}.dmInner *{-webkit-font-smoothing:antialiased}a,img,li,ul{vertical-align:top}#iscrollBody,#site_content{position:relative}.dmOuter{word-wrap:break-word}.dmInner{font-size:16px}.dmDesktopBody .dmInner{min-width:960px}.dmInner a{color:#463939}.dmInner ul:not(.defaultList){padding:0}.dmHeader{text-align:center;position:relative;width:100%;max-width:100%}#innerBar.lineInnerBar,.dmLargeBody .dmBody .dmRespRowsWrapper{background-color:transparent}DIV.dmBody{padding:0;clear:both}.dmContent{margin:0;padding:0}#site_content ul:not(.defaultList){-webkit-padding-start:0;-moz-padding-start:0;list-style-position:inside}#innerBar{position:relative;height:36px;width:100%;font-size:20px;margin:0;z-index:80}#dm .dmRespRow.dmRespRowNoPadding{padding:0}
505.dmRespRowsWrapper{max-width:960px;margin:0 auto}.dmRespCol>[dmle_extension]:not(:first-child){margin-top:10px}.dmLargeBody .imageWidget:not(.displayNone){display:inline-block;max-width:100%}.imageWidget:not(.displayNone) img{width:100%}h3{font-weight:400;font-size:23px}#dm .dmRespColsWrapper{display:block}.dmNewParagraph{text-align:left;margin:8px 0;padding:2px 0}.dmLargeBody .dmRespRowsWrapper>.dmRespRow .dmRespCol,.dmLargeBody .fHeader .dmRespRow .dmRespCol{padding-left:.75%;padding-right:.75%}.dmLargeBody .dmRespRowsWrapper>.dmRespRow .dmRespCol:first-child,.dmLargeBody .fHeader .dmRespRow .dmRespCol:first-child{padding-left:0;padding-right:1.5%}.dmLargeBody .dmRespRowsWrapper>.dmRespRow .dmRespCol:last-child,.dmLargeBody .fHeader .dmRespRow .dmRespCol:last-child{padding-right:0;padding-left:1.5%}.dmLargeBody .dmRespRowsWrapper>.dmRespRow .dmRespCol:only-child,.dmLargeBody .fHeader .dmRespRow .dmRespCol:only-child{padding-left:0;padding-right:0}#innerBar.lineInnerBar{display:table;width:100%;box-shadow:none;-webkit-box-shadow:none;-moz-box-shadow:none;font-size:20px;margin-top:30px;margin-bottom:30px;color:#111}#innerBar .titleLine{display:table-cell;vertical-align:middle;width:50%}.dmPageTitleRow:not(#innerBar){display:none}.titleLine hr{min-height:1px;background-color:rgba(17,17,17,.2)}.dmStandardDesktop{display:block}#dmFirstContainer .dmRespRowsWrapper:after,#dmFirstContainer .dmRespRowsWrapper:before{content:"";display:table}.dmInner a{outline:0;vertical-align:inherit}.dmLinksMenu>ul{display:block;margin:0;font-size:inherit}.standardHeaderLayout .dmHeader{float:none;display:block;height:auto}.dmStandardDesktop{margin:0 auto}body{background-color:#eee}.main-navigation.unifiednav{display:flex;justify-content:flex-start;align-items:stretch;overflow:visible}.main-navigation.unifiednav ul{list-style:none;padding:0;margin:0;font-size:1rem}.main-navigation.unifiednav .unifiednav__container{display:flex;justify-content:flex-start;list-style:none}.main-navigation.unifiednav .unifiednav__container>.unifiednav__item-wrap{display:flex;justify-content:flex-start;position:relative;font-weight:400}.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap::after,.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap::before{content:'';-ms-grid-row-align:center;align-self:center;font-weight:700}.main-navigation.unifiednav .unifiednav__container>.unifiednav__item-wrap>.unifiednav__item{display:flex;justify-content:flex-start;align-items:center;flex-direction:row;color:inherit;text-decoration:none;position:relative;padding:12px 15px;margin:0;font-weight:inherit;letter-spacing:.03em}.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item{padding:0 15px}.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item .nav-item-text::after,.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item .nav-item-text::before{content:'';width:100%;height:0;border:0 solid transparent;border-top-color:currentColor;display:block;opacity:0}#dm .dmWidget:not([data-buttonstyle]) .iconBg,.main-navigation.unifiednav .unifiednav__container .unifiednav__item:not(.unifiednav__item_has-sub-nav) .icon{display:none}.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item.dmNavItemSelected .nav-item-text::after,.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item.dmNavItemSelected .nav-item-text::before{opacity:1}.main-navigation.unifiednav.effect-text-color{padding:12px 15px}.main-navigation.unifiednav.effect-text-color .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item.dmNavItemSelected{color:#9a9a9a}.main-navigation.unifiednav .unifiednav__container[data-depth]{position:absolute;top:0;left:0;flex-direction:column;opacity:0;z-index:100;background-color:#faf9f9}.main-navigation.unifiednav .unifiednav__container[data-depth='0']{top:100%;transform:translateY(-10px)}.main-navigation.unifiednav:not(.unifiednav_vertical) .unifiednav__container[data-depth='0']{left:15px}.main-navigation.unifiednav .unifiednav__container>.unifiednav__item-wrap .unifiednav__container>.unifiednav__item-wrap{flex-direction:column}.main-navigation.unifiednav .unifiednav__container[data-depth]>.unifiednav__item-wrap .unifiednav__item{padding:15px 30px 15px 15px;margin:0}.main-navigation.unifiednav .unifiednav__container[data-depth]>.unifiednav__item-wrap:not(:last-child)::after{content:''!important;width:100%;height:0;color:#ececec;-ms-grid-row-align:center;align-self:center;border:0 solid currentColor}.main-navigation.unifiednav[layout-sub=submenu_horizontal_1] .unifiednav__container[data-depth]{color:#999}.main-navigation.unifiednav .unifiednav__container>.unifiednav__item-wrap>.unifiednav__item.unifiednav__item_has-sub-nav .icon{display:initial;padding-left:10px;margin-left:0}.main-navigation.unifiednav:not(.unifiednav_vertical)>.unifiednav__container{justify-content:inherit}#dm .dmBody nav.main-navigation.unifiednav,#dm .p_hfcontainer nav.main-navigation.unifiednav{min-width:9em!important;text-align:initial!important}#dm .main-navigation.unifiednav .unifiednav__container[data-depth]{background-color:transparent}#dm .main-navigation.unifiednav[layout-sub=submenu_horizontal_1] .unifiednav__container[data-depth]{background-color:#faf9f9}#dm .main-navigation.unifiednav .unifiednav__container[data-depth]>.unifiednav__item-wrap:not(:last-child)::after{color:#d1d1d1}#dm .main-navigation.unifiednav:not([data-nav-structure=VERTICAL])>.unifiednav__container{flex-wrap:wrap;justify-content:inherit}#dm .main-navigation.unifiednav:not([data-nav-structure=VERTICAL])>.unifiednav__container .nav-item-text::before{text-align:left}#dm .main-navigation.unifiednav:not([data-nav-structure=VERTICAL]) .unifiednav__container:not([data-depth])>.unifiednav__item-wrap:not(:last-child)::after,#dm .main-navigation.unifiednav:not([data-nav-structure=VERTICAL]) .unifiednav__container:not([data-depth])>.unifiednav__item-wrap:not(:last-child)::before{content:''}#dm .main-navigation.unifiednav:not([data-nav-structure=SPLIT]) .unifiednav__container:not([data-depth])>.unifiednav__item-wrap:last-child .unifiednav__container[data-depth='0']{left:auto;right:0}#dm .dmBody .u_1478888218.main-navigation.unifiednav[data-nav-structure=HORIZONTAL] .unifiednav__container:not([data-depth])>.unifiednav__item-wrap:not(:last-child) .unifiednav__container[data-depth="0"],#dm .p_hfcontainer .u_1844909121.main-navigation.unifiednav[data-nav-structure=HORIZONTAL] .unifiednav__container:not([data-depth])>.unifiednav__item-wrap:not(:last-child) .unifiednav__container[data-depth="0"]{left:15px!important}#dm .dmBody .dmRespRowsWrapper{max-width:none;background-color:transparent}.dmLargeBody .dmRespRow{width:100%;max-width:none;margin-left:0;margin-right:0;padding-left:40px;padding-right:40px}.dm-bfs.dm-layout-home div.dmInner{background-color:#fff}.dmStandardDesktop .dmHeader{background-color:#fff;max-width:100%}#dm div.dmContent h1{color:#111;color:rgba(255,255,255,1);direction:ltr;font-family:Merriweather,"Merriweather Fallback";font-weight:700;font-style:normal;text-decoration:none;font-size:40px}
505#dm div.dmFooter h2,#dm div.dmFooter h3,#dm div.p_hfcontainer h2,#dm div.p_hfcontainer h3{color:#111;direction:ltr;font-family:Merriweather,"Merriweather Fallback";font-weight:700;font-style:normal}#dm div.dmRespCol>*{line-height:150%}#dm div.dmRespCol>[data-version]{line-height:1.5}#dm div.dmContent .dmNewParagraph[data-version] h1{text-decoration:inherit}#dm div.dmContent .dmNewParagraph[data-version] h1 *{text-decoration:none}#dm div.dmFooter h2,#dm div.p_hfcontainer h2{text-decoration:none;font-size:24px}#dm div.dmFooter h3,#dm div.p_hfcontainer h3{text-decoration:none;font-size:19px}#dm .dmRespCol div.dmNewParagraph,#dm div.dmInner,#dm div.dmInner .dmRespCol{color:rgba(17,17,17,1)}@media all{:root{--btn-text-direction:ltr;--btn-border-r-color:var(--btn-border-color);--btn-border-l-color:var(--btn-border-color);--btn-border-b-width:var(--btn-border-width);--btn-border-width:0px;--btn-border-radius:50px;--btn-border-t-width:var(--btn-border-width);--btn-border-tl-radius:var(--btn-border-radius);--btn-border-br-radius:var(--btn-border-radius);--btn-border-bl-radius:var(--btn-border-radius);--btn-bg-color:rgb(246, 160, 34);--btn-border-color:rgba(0, 0, 0, 0);--btn-border-tr-radius:var(--btn-border-radius);--btn-border-r-width:var(--btn-border-width);--btn-bg-image:none;--btn-border-b-color:var(--btn-border-color);--btn-border-l-width:var(--btn-border-width);--btn-border-t-color:var(--btn-border-color);--btn-text-align:center;--btn-text-color:rgb(17, 17, 17);--btn-text-decoration:none;--btn-text-font-weight:700;--btn-text-font-family:Merriweather,"Merriweather Fallback";--btn-icon-color:rgb(247, 247, 247);--btn-icon-fill:rgb(247, 247, 247);--btn-icon-wrpr-display:none;--btn-hover-border-b-color:var(--btn-hover-border-color);--btn-hover-bg:rgb(24, 135, 195);--btn-hover-border-t-color:var(--btn-hover-border-color);--btn-hover-border-r-color:var(--btn-hover-border-color);--btn-hover-border-l-color:var(--btn-hover-border-color);--btn-hover-border-color:var(--btn-border-color);--btn-hover-text-color:rgb(255, 255, 255);--btn-hover-text-font-weight:var(--btn-text-font-weight);--btn-hover-text-decoration:var(--btn-text-decoration);--btn-hover-text-font-style:var(--btn-text-font-style)}}@media (min-width:0px) and (max-width:767px){:root{--btn-text-font-size:15px}}#dm .dmWidget:not([data-buttonstyle]){border-radius:50px}#dm .dmWidget:not([data-buttonstyle]) .text{padding:10px 0}#dm div.dmInner #site_content .dmWidget,#dm div.dmInner .dmHeader .dmWidget{background-color:var(--btn-bg-color);background-image:var(--btn-bg-image);border-color:var(--btn-border-color);border-bottom-color:var(--btn-border-b-color);border-left-color:var(--btn-border-l-color);border-right-color:var(--btn-border-r-color);border-top-color:var(--btn-border-t-color);border-radius:var(--btn-border-radius);border-bottom-left-radius:var(--btn-border-bl-radius);border-bottom-right-radius:var(--btn-border-br-radius);border-top-left-radius:var(--btn-border-tl-radius);border-top-right-radius:var(--btn-border-tr-radius);border-width:var(--btn-border-width);border-bottom-width:var(--btn-border-b-width);border-left-width:var(--btn-border-l-width);border-right-width:var(--btn-border-r-width);border-top-width:var(--btn-border-t-width);direction:var(--btn-text-direction);text-align:var(--btn-text-align)}nav.u_1478888218.main-navigation.unifiednav .unifiednav__container[data-depth],nav.u_1844909121.main-navigation.unifiednav .unifiednav__container[data-depth]{background-color:rgba(38,38,38,1)!important}#dm div.dmInner #site_content .dmWidget span.text{color:var(--btn-text-color);font-family:var(--btn-text-font-family);font-size:var(--btn-text-font-size);font-weight:var(--btn-text-font-weight);text-decoration:var(--btn-text-decoration)}#dm div.dmInner #site_content .dmWidget span.icon,#dm div.dmInner .dmHeader .dmWidget span.icon{color:var(--btn-icon-color);fill:var(--btn-icon-fill)}#dm .p_hfcontainer div.u_1068193929 .yextAdditionalHoursText,#dm .p_hfcontainer div.u_1068193929 .yextHours,#dm .p_hfcontainer div.u_1339090579 .hoursHeader,#dm .p_hfcontainer div.u_1339090579 .yextHours,nav.u_1844909121.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item.dmNavItemSelected{color:rgba(255,255,255,1)!important}#dm div.dmInner #site_content .dmWidget:not([data-buttonstyle]) .iconBg,#dm div.dmInner .dmHeader .dmWidget:not([data-buttonstyle]) .iconBg{display:var(--btn-icon-wrpr-display)}#dm .dmInner div.dmHeader,#dm .dmInner div.dmHeader.u_hcontainer,#dm .dmInner div.u_hcontainer{box-shadow:rgba(175,174,174,.25) 0 3px 11px 0!important;-moz-box-shadow:rgba(175,174,174,.25) 0 3px 11px 0!important;-webkit-box-shadow:rgba(175,174,174,.25) 0 3px 11px 0!important}#dm .p_hfcontainer div.u_1068193929 .row{border-style:solid!important;border-width:0!important}#dm .p_hfcontainer div.u_1068193929 .yextAdditionalHoursText{font-weight:400!important;font-size:16px!important}#dm .p_hfcontainer .u_1068193929 .yextAdditionalHoursText{text-align:CENTER!important}#dm .p_hfcontainer div.u_1339090579 .hoursHeader{font-weight:700!important;font-size:16px!important}#dm .p_hfcontainer .u_1844909121.main-navigation.unifiednav:not([image]) .unifiednav__container[data-depth="0"]{top:calc(100% - 0px - 0px)!important}#dm .p_hfcontainer div.u_1339090579,div.u_1414087177{top:0!important;left:0!important;position:relative!important;height:auto!important;max-width:100%!important}nav.u_1844909121.main-navigation.unifiednav .unifiednav__container[data-depth] .unifiednav__item{
505color:rgba(221,221,221,1)!important}nav.u_1844909121.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item{color:rgba(245,245,245,1)!important}nav.u_1844909121{color:#fff!important}#dm .p_hfcontainer div.u_1638326751{background-color:rgba(255,255,255,1)!important}#dm .p_hfcontainer div.u_1999527944,#dm .p_hfcontainer nav.u_1844909121.main-navigation.unifiednav .unifiednav__container[data-depth]{background-color:rgba(249,249,249,1)!important}#dm .p_hfcontainer nav.u_1844909121.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item{color:rgba(17,17,17,1)!important}#dm .p_hfcontainer .u_1876277241 .yextPhoneText{text-align:RIGHT!important}#dm .p_hfcontainer nav.u_1844909121{color:#000!important}#dm .p_hfcontainer .u_1564575908{width:100%!important}#dm .p_hfcontainer div.u_1876277241 .yextPhoneText{text-decoration:none!important;font-family:Merriweather!important;font-weight:700!important;color:rgba(17,17,17,1)!important}#dm .p_hfcontainer nav.u_1844909121.main-navigation.unifiednav .unifiednav__container[data-depth]>.unifiednav__item-wrap:not(:last-child)::after{border-top-width:1px!important;border-top-style:solid!important;border-top-color:rgba(235,233,233,1)!important}#dm .p_hfcontainer nav.u_1844909121.main-navigation.unifiednav .unifiednav__container[data-depth] .unifiednav__item{color:rgba(17,17,17,1)!important}#dm .p_hfcontainer .u_1844909121.main-navigation.unifiednav .unifiednav__container[data-depth] .unifiednav__item{margin:0!important;padding:10px 30px 10px 15px!important}#dm .p_hfcontainer .u_1844909121.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item{margin:0!important;padding:0 15px!important}#dm .p_hfcontainer .u_1068193929 .yextHours,#dm .p_hfcontainer .u_1339090579 .yextHours{text-align:CENTER!important}#dm .p_hfcontainer div.u_1068193929,#dm .p_hfcontainer div.u_1339090579{text-align:center!important;display:block!important;float:none!important}#dm .p_hfcontainer .u_1068193929 .yextHours .row{padding-bottom:2px!important}#dm .p_hfcontainer div.u_1339090579{width:calc(100% - 0px)!important;min-width:25px!important;padding:0!important}#dm .p_hfcontainer div.u_1999527944{padding:0!important}div.u_1414087177{display:block!important;float:none!important;width:225.59px!important;min-width:0!important;padding:2px 0!important}#dm .p_hfcontainer div.u_1068193929,#dm .p_hfcontainer div.u_1414087177,#dm .p_hfcontainer div.u_1483430342{top:0!important;left:0!important;position:relative!important;height:auto!important;max-width:100%!important;min-width:25px!important}#dm .p_hfcontainer div.u_1564575908{width:180px!important}#dm .p_hfcontainer div.u_1638326751{width:auto!important;margin:0!important;padding:5px 0 0!important}#dm .p_hfcontainer div.u_1483430342{float:none!important;width:calc(100% - 0px)!important;padding:2px 0!important;margin:0 auto 8px!important}#dm .p_hfcontainer div.u_1279497716{width:auto!important;margin:0!important;padding:15px 40px 0!important}#dm .p_hfcontainer div.u_1068193929 .yextHours,#dm .p_hfcontainer div.u_1339090579 .yextHours{font-size:16px!important;width:287px!important}#dm .p_hfcontainer .u_1068193929 .yextAdditionalHoursText{padding-top:0!important;padding-bottom:0!important}#dm .p_hfcontainer div.u_1068193929{width:calc(100% - 0px)!important;padding:0!important;margin:0 auto!important}#dm .p_hfcontainer div.u_1684632293{margin:4px 0 0!important;padding:0!important}#dm .p_hfcontainer div.u_1414087177{float:none!important;width:calc(100% - 0px)!important;padding:2px 0!important;margin:3px 0 8px!important}#dm .p_hfcontainer a.u_1605352672,#dm .p_hfcontainer div.u_1876277241{float:none!important;top:0!important;left:0!important;position:relative!important;max-width:100%!important;min-width:0!important;text-align:center!important;padding:0!important;display:block!important}#dm .p_hfcontainer a.u_1605352672{width:220px!important;height:50px!important;margin:11px 0 10px auto!important}#dm .p_hfcontainer div.u_1876277241{width:130.59px!important;height:auto!important;margin:11px 0 0 auto!important}.stickyHeaderSpacer{height:195px!important}#dm .dmBody .u_1635737397:before{opacity:.5!important;background-color:#fff!important}#dm .dmBody .u_1443561679 .openHours{text-align:CENTER!important}#dm .dmBody .u_1628289737{color:#fff!important;font-size:20px!important}#dm .dmBody .u_1770948843{color:#fff!important;font-size:23px!important;text-align:center!important}#dm .dmBody .u_1649006522 .yextPhoneText{text-align:RIGHT!important}#dm .dmBody .u_1445716079{width:100%!important}#dm .dmBody div.u_1649006522 .yextPhoneText{text-decoration:none!important;font-family:Merriweather!important;font-weight:700!important;color:rgba(255,255,255,1)!important}#dm .dmBody .u_1478888218.main-navigation.unifiednav:not([image]) .unifiednav__container[data-depth="0"]{top:calc(100% - 0px - 0px)!important}#dm .dmBody div.u_1612878852,#dm .dmBody div.u_1770948843{float:none!important;top:0!important;left:0!important;position:relative!important;max-width:100%!important;min-width:0!important}nav.u_1478888218.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item.dmNavItemSelected{color:rgba(255,255,255,1)!important}nav.u_1478888218.main-navigation.unifiednav .unifiednav__container[data-depth] .unifiednav__item{
505color:rgba(221,221,221,1)!important}nav.u_1478888218.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item{color:rgba(245,245,245,1)!important}nav.u_1478888218{color:#fff!important}#dm .dmBody nav.u_1478888218{color:#000!important}#dm .dmBody .u_1478888218.main-navigation.unifiednav .unifiednav__container[data-depth] .unifiednav__item{margin:0!important;padding:10px 30px 10px 15px!important}#dm .dmBody .u_1478888218.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item{margin:0!important;padding:0 15px!important}#dm .dmBody div.u_1859407500{background-color:rgba(0,0,0,0)!important}#dm .dmBody nav.u_1478888218.main-navigation.unifiednav .unifiednav__container:not([data-depth])>.unifiednav__item-wrap>.unifiednav__item,#dm .dmBody nav.u_1478888218.main-navigation.unifiednav .unifiednav__container[data-depth] .unifiednav__item{color:rgba(255,255,255,1)!important}#dm .dmBody div.u_1002996729 .svg,#dm .dmBody div.u_1051656202 .svg,#dm .dmBody div.u_1612878852 .svg,#dm .dmBody div.u_1636763837 .svg{color:rgba(255,255,255,1)!important;fill:rgba(255,255,255,1)!important}#dm .dmBody div.u_1152813225 .yextPhoneText{color:rgba(255,255,255,1)!important;font-weight:700!important;text-decoration:none!important;font-family:Merriweather!important;font-size:32px!important}#dm .dmBody div.u_1443561679 .openHours{color:rgba(255,255,255,1)!important;font-weight:700!important;font-size:18px!important}#dm .dmBody div.u_1635737397{background-repeat:no-repeat!important;background-image:url(https://le-cdn.hibuwebsites.com/a18e963a07b74c3894ec4c687e53ed93/dms3rep/multi/opt/full-service-garage-doors-hero-home-1920w.jpg),url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAABhGlDQ1BJQ0MgcHJvZmlsZQAAKJF9kT1Iw0AcxV9TpUUqHSwo4pChOlkQFemoVShChVArtOpgcukXNGlIUlwcBdeCgx+LVQcXZ10dXAVB8APEzc1J0UVK/F9aaBHjwXE/3t173L0DhEaFaVbPBKDptplOJsRsblUMvEJAGEEMIi4zy5iTpBQ8x9c9fHy9i/Es73N/jn41bzHAJxLPMsO0iTeIZzZtg/M+cYSVZJX4nHjcpAsSP3JdafEb56LLAs+MmJn0PHGEWCx2sdLFrGRqxNPEUVXTKV/ItljlvMVZq9RY+578haG8vrLMdZojSGIRS5AgQkENZVRgI0arToqFNO0nPPzDrl8il0KuMhg5FlCFBtn1g//B726twtRkKymUAHpfHOdjFAjsAs2643wfO07zBPA/A1d6x19tAPFP0usdLXoEhLeBi+uOpuwBlzvA0JMhm7Ir+WkKhQLwfkbflAMGboG+tVZv7X2cPgAZ6ip1AxwcAmNFyl73eHewu7d/z7T7+wFwJnKmZ9+MiwAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+UCDwksLkLIPkkAAAAZdEVYdENvbW1lbnQAQ3JlYXRlZCB3aXRoIEdJTVBXgQ4XAAAAC0lEQVQI12NgAAIAAAUAAeImBZsAAAAASUVORK5CYII=)!important;background-size:cover!important}#dm .dmBody div.u_1635737397:before{background-color:rgba(0,0,0,1)!important;opacity:.45!important}#dm .dmBody nav.u_1478888218.main-navigation.unifiednav .unifiednav__container[data-depth]>.unifiednav__item-wrap:not(:last-child)::after{border-top-width:1px!important;border-top-style:solid!important;border-top-color:rgba(5,107,158,1)!important}#dm .dmBody nav.u_1478888218.main-navigation.unifiednav .unifiednav__container[data-depth]{background-color:rgba(1,79,125,1)!important}#dm .dmBody div.u_1740956263{background-image:initial!important;background-color:rgba(0,0,0,0)!important}#dm .dmBody div.u_1884330639 .svg{color:rgba(255,255,255,1)!important;fill:rgba(255,255,255,1)!important}#dm .dmBody div.u_1994004217{background-color:rgba(34,45,72,1)!important;border-radius:20px!important;-moz-border-radius:20px!important;-webkit-border-radius:20px!important;border-color:rgba(255,255,255,1)!important;border-width:1px!important;border-style:solid!important}#dm .dmBody div.u_1778981716{padding:0 18px 0 0!important;margin:0!important}#dm .dmBody div.u_1396773197{background-repeat:no-repeat!important;background-image:linear-gradient(135deg,rgba(34,45,72,1) 47%,rgba(246,160,34,1) 100%)!important;background-origin:border-box!important;background-attachment:initial!important;background-size:cover!important;background-position:50% 100%!important;width:auto!important;padding:0!important;margin:0!important}#dm .dmBody div.u_1980862213{padding-top:0!important}#dm .dmBody div.u_1770948843{font-weight:700!important;display:block!important;width:100%!important;height:auto!important;padding:2px 0!important;margin:8px auto!important}#dm .dmBody div.u_1612878852{width:55px!important;height:55px!important;text-align:center!important;display:block!important;padding:0!important;margin:10px auto!important}#dm .dmBody div.u_1002996729,#dm .dmBody div.u_1051656202,#dm .dmBody div.u_1443561679,#dm .dmBody div.u_1636763837{float:none!important;top:0!important;left:0!important;position:relative!important;min-width:25px!important;padding:0!important}#dm .dmBody div.u_1636763837{width:calc(100% - 70px)!important;height:63.99px!important;max-width:65px!important;text-align:center!important}#dm .dmBody div.u_1002996729{width:calc(100% - 72px)!important;height:60.99px!important;max-width:61px!important;text-align:center!important}#dm .dmBody div.u_1051656202{width:calc(100% - 74px)!important;height:70px!important;max-width:77px!important;text-align:center!important;margin:10px auto!important}#dm .dmBody div.u_1789767812{padding-top:0!important;padding-left:0!important;padding-right:0!important}#dm .dmBody div.u_1443561679{display:block!important;width:calc(100% - 469px)!important;height:auto!important;max-width:252.75px!important;text-align:start!important;margin:15px auto 0!important}#dm .dmBody div.u_1649006522,div.u_1783123560{min-width:0!important;float:none!important;top:0!important;left:0!important;position:relative!important;max-width:100%!important}body.dmDesktopBody .d-header-wrapper{display:none!important}div.u_1783123560{display:block!important;width:225.59px!important;height:auto!important;padding:2px 0!important}#dm .dmBody a.u_1882877103{width:220px!important;height:50px!important}#dm .dmBody div.u_1649006522{width:130.59px!important;height:auto!important;text-align:center!important;display:block!important;padding:0!important;margin:10px 0 0 auto!important}#dm .dmBody div.u_1783123560{float:none!important;top:0!important;left:0!important;width:calc(100% - 0px)!important;position:relative!important;height:auto!important;max-width:100%!important;min-width:25px!important;padding:2px 0!important;margin:2px 0 8px!important}#dm .dmBody div.u_1445716079,#dm .dmBody nav.u_1478888218{min-width:0!important;top:0!important;left:0!important;max-width:100%!important;float:none!important;position:relative!important}#dm .dmBody div.u_1445716079{width:180px!important;display:block!important;height:auto!important;text-align:start!important;padding:0!important;margin:0 auto!important}#dm .dmBody div.u_1859407500{padding:0!important}#dm .dmBody nav.u_1478888218{width:100%!important;height:auto!important;justify-content:center!important;align-items:stretch!important;text-align:center!important;padding:12px 15px!important;margin:0 auto!important}#dm .dmBody div.u_1331818479{float:none!important;top:0!important;left:0!important;width:calc(100% - 0px)!important;position:relative!important;height:auto!important;max-width:100%!important;min-width:25px!important;padding:2px 0!important;margin:-1px auto 8px!important}#dm .dmBody div.u_1685412828{width:auto!important;margin:0!important;padding:15px 40px 0!important}#dm .dmBody div.u_1152813225,#dm .dmBody div.u_1628289737{top:0!important;width:calc(100% - 0px)!important;height:auto!important;min-width:25px!important;left:0!important}#dm .dmBody div.u_1152813225{float:none!important;position:relative!important;max-width:100%!important;text-align:center!important;padding:0!important}#dm .dmBody div.u_1455984476{float:none!important;top:0!important;left:0!important;width:calc(100% - 79px)!important;position:relative!important;height:auto!important;max-width:122px!important;min-width:25px!important;display:block!important;padding:2px 0!important;margin:8px auto!important}#dm .dmBody div.u_1635737397{background-position:50% 100%!important;background-attachment:initial!important;width:auto!important;padding:10px 0 0!important;margin:0!important}#dm .dmBody div.u_1628289737{font-weight:700!important;display:block!important;float:none!important;position:relative!important;max-width:100%!important;font-size:23px!important;padding:2px 0!important;margin:0 auto 8px!important}#dm .dmBody div.u_1841090691{width:auto!important;padding:222px 40px 30px!important;margin:0!important}#dm .dmBody div.u_1264292235,#dm .dmBody div.u_1319884357,#dm .dmBody div.u_1412100118,#dm .dmBody div.u_1838910234{height:auto!important;max-width:100%!important;min-width:0!important;padding:2px 0!important;float:none!important;top:0!important;position:relative!important;display:block!important}#dm .dmBody div.u_1838910234{left:0!important;width:100%!important;margin:8px 0!important}#dm .dmBody div.u_1319884357{left:0!important;width:155px!important;margin:-8px auto 8px!important}#dm .dmBody div.u_1264292235{left:0!important;width:192px!important;margin:-5px auto 8px!important}#dm .dmBody div.u_1412100118{left:0!important;width:204px!important;margin:-15px auto 8px!important}#dm .dmBody div.u_1157535936 .yextPhoneText{color:rgba(255,255,255,1)!important;text-decoration:none!important;font-weight:700!important;font-size:30px!important}#dm .dmBody div.u_1157535936{float:none!important;top:0!important;left:0!important;width:calc(100% - 62px)!important;position:relative!important;height:auto!important;max-width:205px!important;min-width:25px!important;text-align:start!important;display:block!important;padding:0!important;margin:0 auto!important}#dm .dmBody div.u_1483353990,#dm .dmBody div.u_1505616742{width:calc(100% - 0px)!important;height:auto!important;min-width:25px!important}#dm .dmBody div.u_1483353990,#dm .dmBody div.u_1505616742,#dm .dmBody div.u_1884330639{float:none!important;top:0!important;left:0!important;position:relative!important;max-width:100%!important;padding:0!important}#dm .dmBody div.u_1505616742{display:block!important;margin:27px auto 8px!important}#dm .dmBody div.u_1483353990{margin:10px 0 0!important}#dm .dmBody div.u_1884330639{width:66px!important;height:68px!important;min-width:0!important;text-align:center!important;display:block!important;margin:10px 0 10px auto!important}.font-size-16,.size-16{font-size:16px!important}.font-size-19,.size-19{font-size:19px!important}.font-size-36,.size-36{font-size:36px!important}.font-size-15{font-size:15px!important}.dmDesktopBody:not(.editGrid) [data-anim-desktop]:not([data-anim-desktop=none]),.dmDesktopBody:not(.editGrid) [data-anim-extended]{visibility:hidden}.dmDesktopBody:not(.editGrid) .dmNewParagraph[data-anim-desktop]:not([data-anim-desktop=none]){visibility:hidden!important}.dmInner{min-width:auto!important;max-width:100vw!important}#\31 049031230,#\31 153729882,#\31 177399513,#\31 215743100,#\31 220437662,#\31 295623979,#\31 382395475,#\31 384091837,#\31 426397807,#\31 428239864,#\31 429568101,#\31 478888218,#\31 498530701,#\31 532611836,#\31 646837932,#\31 739649868,#\31 829071214,#\31 844909121,#\31 856610831,#\31 861652092,#\31 889374920,#\31 950675396,#\32,#\33,#\34,#\35,#\36,#child-2,#child-3,#child-4,#child-5,#child-6{order:0;flex-direction:row} #dm .dmPhotoGallery.newPhotoGallery .dmPhotoGalleryHolder:not(.photo-gallery-done) {display: none;} @media (max-width:767px){ [data-hidden-on-mobile] {display:none!important}} 506 .dmDesktopBody [data-anim-desktop]:not([data-anim-desktop='none']) { 507 visibility: hidden; 508 } 509 510 511 .stickyHeaderSpacer { 512 display: none; 513 } 514 515 516</style> 517 518 519 520<style id="fontFallbacks"> 521 @font-face { 522 font-family: "Merriweather Fallback"; 523 src: local('Arial'); 524 ascent-override: 88.6416%; 525 descent-override: 24.5926%; 526 size-adjust: 111.0088%; 527 line-gap-override: 0%; 528 } 529</style> 530 531 532 533 534 535 536 537 538 539 540 541 542 <link type="application/rss+xml" rel="alternate" href="http://www.fullservicegaragedoors.net/feed/rss2"/> 543 <link type="application/atom+xml" rel="alternate" href="http://www.fullservicegaragedoors.net/feed/atom"/> 544 <meta property="og:type" content="website"/> 545 <meta property="og:url" content="http://www.fullservicegaragedoors.net/"/> 546
546<script type="application/ld+json"> 547 548 549 { 550 "@context" : "https://schema.org", 551 "@type" : "WebSite", 552 "name" : "Full Service Garage Doors", 553 "url" : "http://www.fullservicegaragedoors.net/" 554 } 555 556 557 </script>
557 558 <title> 559 560 Door Repair | Full Service Garage Doors | Northern Colorado 561 562 </title> 563 <meta name="description" content="We offer garage door repair and maintenance and well as garage door opener services. Honor manufacturer warranties. Same-day service. Free estimates."/> 564 <style type="text/css"> 565 566 567 568 569 570 571.dmInner { 572min-width: auto !important; 573max-width: 100vw !important; 574} 575 576 577 578 579 580 </style> 581 <meta name="format-detection" content="telephone=no"/> 582 583 <meta name="twitter:card" content="summary"/> 584 <meta name="twitter:title" content="Door Repair | Full Service Garage Doors | Northern Colorado"/> 585 <meta name="twitter:description" content="We offer garage door repair and maintenance and well as garage door opener services. Honor manufacturer warranties. Same-day service. Free estimates."/> 586 <meta name="twitter:image" content="https://le-cdn.hibuwebsites.com/a18e963a07b74c3894ec4c687e53ed93/dms3rep/multi/opt/full-service-garage-doors-hero-home-1920w.jpg"/> 587 <meta property="og:description" content="We offer garage door repair and maintenance and well as garage door opener services. Honor manufacturer warranties. Same-day service. Free estimates."/> 588 <meta property="og:title" content="Door Repair | Full Service Garage Doors | Northern Colorado"/> 589 <meta property="og:image" content="https://le-cdn.hibuwebsites.com/a18e963a07b74c3894ec4c687e53ed93/dms3rep/multi/opt/full-service-garage-doors-hero-home-1920w.jpg"/>
590<script type="application/ld+json"> 591{ 592 "@context" : { 593 "@vocab" : "http://schema.org/" 594 }, 595 "@type" : "LocalBusiness", 596 "name" : "Full Service Garage Doors", 597 "address" : { 598 "@type" : "PostalAddress", 599 "streetAddress" : "2421 Oleander Ct", 600 "addressLocality" : "Loveland", 601 "addressRegion" : "CO", 602 "postalCode" : "80538-3307", 603 "addressCountry" : "US" 604 }, 605 "geo" : { 606 "@type" : "GeoCoordinates", 607 "latitude" : "40.41695", 608 "longitude" : "-105.06682" 609 }, 610 "url" : "http://www.fullservicegaragedoors.net", 611 "telephone" : "(970) 472-1767", 612 "email" : "[email protected]", 613 "logo" : "https://a.mktgcdn.com/p/ITP3wbBoQLsqzUgY1UR9GznJDC59TfNJnMuybZ2HA1E/400x400.jpg", 614 "sameAs" : [ "https://plus.google.com/+hibu", "https://facebook.com/fullservicegaragedoors/" ], 615 "image" : [ "https://a.mktgcdn.com/p/CSCK_ns8wUq7mBMm6p49WGs6FcorvvT30T-6EhtEqeI/1600x800.jpg", "https://a.mktgcdn.com/p/T9iUjjrGe2OGk_vR01SqCEJb4wP1Utt0VMy_qBP4gY8/650x400.png", "https://a.mktgcdn.com/p/bA1JzPAxr_LJ_m-z41TZrhCli8w8wlxj4kFbW33PM9c/650x400.png", "https://a.mktgcdn.com/p/UC0DI8I0ASMsVwNoDjaIltRw0Ypv8sNECE_7nW5Kpm0/650x400.png", "https://a.mktgcdn.com/p/8U56iDYjha46OLDSFFWWqrEuL-z662SqedybnZ_UCDg/650x400.png" ], 616 "openingHoursSpecification" : [ { 617 "@type" : "OpeningHoursSpecification", 618 "dayOfWeek" : [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" ], 619 "opens" : "08:00", 620 "closes" : "16:00" 621 } ], 622 "@id" : "http://www.fullservicegaragedoors.net", 623 "foundingDate" : "2010", 624 "description" : "Full Service Garage Doors provides garage door service and repair to:\nFort Collins, CO\nLoveland , CO\nWindsor, CO\nBerthoud, CO\nWellington, CO\nSeverence, CO\nJohnstown, CO\nTimnath, CO\n& more.", 625 "makesOffer" : "[{\"@type\":\"Offer\",\"name\":\"Garage Door Services\"},{\"@type\":\"Offer\",\"name\":\"Garage Door Spring Repairs\"},{\"@type\":\"Offer\",\"name\":\"Garage Door Openers\"},{\"@type\":\"Offer\",\"name\":\"Broken Cables\"},{\"@type\":\"Offer\",\"name\":\"Lockouts\"},{\"@type\":\"Offer\",\"name\":\"Safety Inspections\"},{\"@type\":\"Offer\",\"name\":\"All Around Service Experts\"}]", 626 "brand" : "[{\"@type\":\"Brand\",\"name\":\"LiftMaster\"}]" 627} 628</script>
628 629 630 631 632<!-- SYS- VVNfSElCVV9QUk9EVUNUSU9O --> 633</head> 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655<body id="dmRoot" data-page-alias="home" class="dmRoot dmDesktopBody fix-mobile-scrolling addCanvasBorder dmResellerSite dmLargeBody " 656 style="padding:0;margin:0;" 657 658 > 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675<div id="dm" class='dmwr'> 676 677 <div class="dm_wrapper standard-var5 widgetStyle-3 standard"> 678 <div dmwrapped="true" id="1901957768" class="dm-home-page" themewaschanged="true"> <div dmtemplateid="StandardLayoutMultiD" class="standardHeaderLayout dm-bfs dm-layout-home hasAnimations hasStickyHeader 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> <div id="iscrollBody"> <div id="site_content"> <div class="dmHeaderContainer fHeader d-header-wrapper"> <div id="hcontainer" class="dmHeader p_hfcontainer u_hcontainer" freeheader="true" has-shadow="true" data-auto="header"> <div dm:templateorder="85" class="dmHeaderResp dmHeaderStack noSwitch" id="1709005236"> <div class="dmRespRow fullBleedChanged fullBleedMode u_1638326751" id="1638326751"> <div class="dmRespColsWrapper" id="1382395475"> <div class="dmRespCol large-12 medium-12 small-12 u_1025738918" id="1025738918"> <div class="u_1279497716 dmRespRow hide-for-small" id="1279497716"> <div class="dmRespColsWrapper" id="1861652092"> <div class="u_1957294349 dmRespCol small-12 large-4 medium-4" id="1957294349"> <div class="u_1684632293 widget-d1ee5d dmCustomWidget" data-lazy-load="" data-title="" id="1684632293" dmle_extension="custom_extension" data-element-type="custom_extension" icon="false" surround="false" data-widget-id="d1ee5d5bf037471ea1770683731e577a" data-widget-version="23" data-widget-config="eyJtZXJjaGFudElkIjoiNTMyOCIsInRoZW1lIjoibGlnaHQiLCJtaW4tcmV2aWV3cyI6IjMiLCJtaW4tcmF0aW5nIjoiNCIsImxpbmUtYnJlYWsiOmZhbHNlfQ=="> <div class="headerWidget" data-merchant="5328" data-theme="light" data-break="false" data-count-limit="3" data-rating-limit="4"></div> 679</div> 680 <div class="u_1414087177 dmNewParagraph" data-element-type="paragraph" data-version="5" id="1414087177" style="transition: opacity 1s ease-in-out 0s;"><p class="size-16 m-size-13"><span class="font-size-16 m-font-size-13" style="font-weight:700;display:unset;font-family:Merriweather, 'Merriweather Fallback';">Serving Northern Colorado </span></p></div> 681</div> 682 <div class="u_1649717019 dmRespCol small-12 large-4 medium-4" id="1649717019"> <div class="imageWidget align-center u_1564575908" data-element-type="image" data-widget-type="image" id="1564575908"> <a href="/" id="1858092676"><img src="https://le-cdn.hibuwebsites.com/a18e963a07b74c3894ec4c687e53ed93/dms3rep/multi/opt/full-service-garage-doors-logo-1920w.webp" id="1578900393" class="" data-dm-image-path="https://cdn.hibuwebsites.com/a18e963a07b74c3894ec4c687e53ed93/dms3rep/multi/full-service-garage-doors-logo.webp" width="180" height="91" alt="full-service-garage-doors-logo" onerror="handleImageLoadError(this)" loading="lazy"/></a> 683</div> 684 <div class="u_1483430342 dmNewParagraph" data-element-type="paragraph" data-version="5" id="1483430342" style="transition: opacity 1s ease-in-out 0s;"><p class="text-align-center size-19 m-size-15" style="line-height: 24px;"><span style="font-weight: bold; display: unset;" class="font-size-19 m-font-size-15">No extra charge for quality work</span></p></div> 685</div> 686 <div class="u_1365032053 dmRespCol small-12 large-4 medium-4" id="1365032053"> <a data-display-type="block" class="u_1605352672 align-center dmButtonLink dmWidget dmWwr default dmOnlyButton dmDefaultGradient" file="false" href="/request-service-form" data-element-type="dButtonLinkId" id="1605352672"> <span class="iconBg" id="1800762365"> <span class="icon hasFontIcon icon-star" id="1234928461"></span> 687</span> 688 <span class="text" id="1647521604">Request a Service</span> 689</a> 690 <div class="u_1876277241 widget-7b6cfb dmCustomWidget" data-lazy-load="" data-title="" id="1876277241" dmle_extension="custom_extension" data-element-type="custom_extension" icon="false" surround="false" data-widget-id="7b6cfbac88324cffbaaf57354cd7a334" data-widget-version="227" data-widget-config="eyJnZXREaXJlY3Rpb25zVGV4dCI6IkdldCBEaXJlY3Rpb25zIiwiZ3JvdXBZZWFyRXN0YWJsaXNoZWQiOm51bGwsImgzRW1haWxUZXh0IjoiIiwidG9nZ2xlSDNBc3NvY2lhdGlvbnMiOm51bGwsImdyb3VwQml6TmFtZURlc2lnbiI6bnVsbCwidG9nZ2xlSDNTZXJ2aWNlcyI6bnVsbCwidHlwZSI6InBob25lIiwiYm9sZExvY2F0aW9uTmFtZSI6bnVsbCwiY29sb3JQaWNrZXIxIjpudWxsLCJoM1BheW1lbnRzVGV4dCI6bnVsbCwiZ3JvdXBHb29nbGVBdHRyaWJ1dGVzIjpudWxsLCJwYXltZW50R3JvdXAiOm51bGwsInRvZ2dsZUgzU3BlY2lhbHRpZXMiOm51bGwsInNlcnZpY2VBcmVhR3JvdXAiOm51bGwsInN0YXRlIjp0cnVlLCJncm91cFNvY2lhbEljb25zIjpudWxsLCJ0b2dnbGVIM1NlcnZpY2VBcmVhIjpudWxsLCJzb2NpYWxHcm91cCI6bnVsbCwiemlwIjpmYWxzZSwicGhvbmVMaXN0U3R5bGVzIjpudWxsLCJjYXJkU3R5bGVEYXJrT3JMaWdodCI6Il9kLnN2ZyIsImgzWWVhckhlYWRUZXh0IjoiIiwicGF5bWVudE9wdGlvbnNCdWxsZXQiOiJidWxsZXQiLCIuYWRkcmVzc0hlYWRlciI6bnVsbCwidG9nZ2xlSDNmZWF0TWVzc2FnZSI6bnVsbCwiYnJhbmRzR3JvdXAiOm51bGwsInByb2R1Y3RzR3JvdXAiOm51bGwsImgzS2V5d29yZHNUZXh0IjpudWxsLCJzY3JpcHQiOiI8c2NyaXB0IGFzeW5jIHNyYz1cImh0dHBzOi8va25vd2xlZGdldGFncy55ZXh0cGFnZXMubmV0L2VtYmVkP2tleT0yMDlSWTlEVWFsYWVrb1JyZnMxLXhielgwcFRMR3RGWHBMZTZ5cG9tWFJuX3JwMGgzR203bnBZUnRIb3JWVVQtJmFjY291bnRfaWQ9NzAxNjQ2NDEwOCZlbnRpdHlfaWQ9NzAxNjQ2NDEwOCZsb2NhbGU9ZW4mdj0yMDIxMDUwNFwiIHR5cGU9XCJ0ZXh0L2phdmFzY3JpcHRcIj48L3NjcmlwdD4iLCJncm91cEtleXdvcmRzRGVzaWduIjpudWxsLCJncm91cEF0dHJpYnV0ZXMiOm51bGwsInNvY2lhbEljb25zQWxpZ25tZW50IjoibGVmdCIsImxhbmd1YWdlc0J1bGxldCI6ImJ1bGxldCIsImdyb3VwRW1haWxEZXNpZ24iOm51bGwsImgzSG9saWRheUhvdXJzIjoiSG9saWRheSBIb3VycyIsInNob3dQYXltZW50c0FzIjpudWxsLCJzZXJ2aWNlc0dyb3VwIjpudWxsLCJib2xkU3RhdHVzVGV4dCI6dHJ1ZSwiaDNTb2NpYWxUZXh0IjpudWxsLCJ
690sb2dvR3JvdXAiOm51bGwsImdyb3VwUGhvbmVEZXNpZ24iOm51bGwsInBob25lR3JvdXAiOm51bGwsImNpdHkiOnRydWUsImdyb3VwQml6RGVzRGVzaWduIjpudWxsLCJoM2hvdXJzVGV4dCI6IiIsImgzU2VydmljZUFyZWFUZXh0IjpudWxsLCJpc0xpc3QiOnRydWUsImJvbGRIb3VycyI6dHJ1ZSwidG9nZ2xlSDNob3VycyI6bnVsbCwiZ3JvdXBBZGRpdGlvbmFsSG91cnNUZXh0IjpudWxsLCJkZXNjcmlwdGlvblRleHRHcm91cCI6bnVsbCwiYnJhbmRzQnVsbGV0IjoiYnVsbGV0IiwidG9nZ2xlSDNob2xpZGF5SG91cnMiOnRydWUsImFzc29jaWF0aW9uc0J1bGxldCI6ImJ1bGxldCIsImxvY2F0aW9uR3JvdXAiOm51bGwsInRvZ2dsZUgzR29vZ2xlQXR0cmlidXRlcyI6dHJ1ZSwidG9nZ2xlSDNkZXNjcmlwdGlvbiI6bnVsbCwiaG9saWRheUhvdXJzQnVsbGV0IjoiYnVsbGV0cyIsInRvZ2dsZUgzTGFuZ3VhZ2VzIjpudWxsLCJwaG9uZVR5cGUiOiJwaG9uZSIsImxvY2F0aW9uTmFtZSI6ZmFsc2UsInRvZ2dsZUgzUGF5bWVudHMiOm51bGwsInNlcnZpY2VBcmVhQnVsbGV0IjoiYnVsbGV0IiwidG9nZ2xlSDNQcm9kdWN0cyI6bnVsbCwiZ3JvdXBBZGRyZXNzRGVzaWduIjpudWxsLCJQaG9uZSBIZWFkZXIgR3JvdXAiOm51bGwsInRvZ2dsZUgzU29jaWFsIjpudWxsLCJzaG93U2VydmljZUFyZWFGaXJzdCI6bnVsbCwiYWRkaXRpb25hbEhvdXJzVGV4dCI6bnVsbCwiaDNTcGVjaWFsdGllc1RleHQiOiIiLCJ0b2dnbGVIM1llYXIiOm51bGwsInNwZWNpYWx0aWVzR3JvdXAiOm51bGwsImRyYXdNYXAiOm51bGwsImluc3RydWN0aW9ucyI6bnVsbCwiZ3JvdXBQcm9kdWN0c0Rlc2lnbiI6bnVsbCwiZ3JvdXBTZXJ2aWNlQXJlYURlc2lnbiI6bnVsbCwiaDNBZGRyZXNzVGV4dCI6IiIsImdyb3VwU2VydmljZXNEZXNpZ24iOm51bGwsInRvZ2dsZUgzUGhvbmVMaXN0IjpudWxsLCJncm91cEZlYXR1cmVkTWVzc2FnZURlc2lnbiI6bnVsbCwiaDNTZXJ2aWNlc1RleHQiOm51bGwsImgzUGhvbmVUZXh0IjoiIiwiaDNBc3NvY2lhdGlvbnNUZXh0IjoiIiwicGF5bWVudFRleHRHcm91cCI6bnVsbCwiaDNEZXNjcmlwdGlvblRleHQiOm51bGwsInNob3dHZXREaXJlY3Rpb25zTGluayI6bnVsbCwiZ3JvdXBQYXltZW50RGVpc2duIjpudWxsLCJoM0dvb2dsZUF0dHJpYnV0ZXMiOiJCdXNpbmVzcyBBdHRyaWJ1dGVzIiwidG9nZ2xlSDNBZGRyZXNzIjpudWxsLCJzaG93RW1haWxBc0J0biI6bnVsbCwiYXNzb2NpYXRpb25zR3JvdXAiOm51bGwsImgzUHJvZHVjdHNUZXh0IjoiIiwiZm9ybWF0UGhvbmUiOnRydWUsImdyb3VwTGFuZ3VhZ2VzRGVzaWduIjpudWxsLCJ0b2dnbGVIM0tleXdvcmRzIjpudWxsLCJrZXl3b3Jkc0dyb3VwIjpudWxsLCJhbHQiOm51bGwsImhpZGVIb3Vyc0xpc3QiOmZhbHNlLCJncm91cEhvbGlkYXlIb3Vyc0Rlc2lnbiI6bnVsbCwicGhvbmVTaG93QXMiOiJ0ZXh0IiwiZ29vZ2xlQXR0cmlidXRlc0Zvcm1hdHRlZExpc3RCdWxsZXQiOiJidWxsZXRzIiwibWFwWm9vbSI6IjEzIiwiaG9saWRheUhvdXJzIjpudWxsLCJncm91cEhvdXJzRGVzaWduIjpudWxsLCJoM0xhbmd1YWdlc1RleHQiOm51bGwsImhvdXJzU2hvd0FzIjoibGlzdCIsImVtYWlsVGV4dEdyb3VwIjpudWxsLCJwaG9uZUxpc3RTdHlsZSI6ImJ1bGxldHMiLCJ0b2dnbGUxIjpudWxsLCJoM0JyYW5kVGV4dCI6IiIsImxpbmsiOm51bGwsImdyb3VwUGF5bWVudENhcmREZXNpZ24iOm51bGwsImdyb3VwU3BlY2lhbHRpZXNEZXNpZ24iOm51bGwsInllYXJFc3RhYmlsaXNoZWRHcm91cCI6bnVsbCwicGhvbmVUZXh0U3R5bGVzIjpudWxsLCJncm91cEFzc29jaWF0aW9uc0Rlc2lnbiI6bnVsbCwic3BlY2lhbHRpZXNCdWxsZXQiOiJidWxsZXQiLCJoM0ZlYXRNZXNzYWdlVGV4dCI6bnVsbCwidG9nZ2xlSDNCcmFuZHMiOm51bGwsImFkZHJlc3MyIjpmYWxzZSwiYWRkcmVzczEiOmZhbHNlLCJjYXJkQWxpZ25tZW50IjoicGljb25zLWNlbnRlciIsImdyb3VwTG9nb0Rlc2lnbiI6bnVsbCwiZ3JvdXBPcGVuSG91cnNEZXNpZ24iOm51bGwsImZlYXRNZXNzYWdlR3JvdXAiOm51bGwsImtleXdvcmRzQnVsbGV0IjoiYnVsbGV0IiwidG9nZ2xlSDNFbWFpbCI6bnVsbCwic2VydmljZXNCdWxsZXQiOm51bGwsImdyb3VwQnJhbmRzRGVzaWduIjpudWxsLCJwcm9kdWN0c0J1bGxldCI6ImJ1bGxldCIsImxhbmd1YWdlc0dyb3VwIjpudWxsLCJob3Vyc0dyb3VwIjpudWxsfQ=="> <a onclick=";return dm_gaq_push_event('ClickToCall', 'Call',null, dmAPI.getSiteName(), this);" data-yext-field="phone" class="yextPhoneText"> <span class="text"></span> 691</a> 692 <div class="editorOnlyInfo" data-nosnippet="">This is a placeholder for the Yext Knolwedge Tags. This message will not appear on the live site, but only within the editor. The Yext Knowledge Tags are successfully installed and will be added to the website.</div> 693 <div class="wrongScriptError" data-nosnippet=""><!--The Yext script you entered is empty or incorrect: <script async src="https://knowledgetags.yextpages.net/embed?key=209RY9DUalaekoRrfs1-xbzX0pTLGtFXpLe6ypomXRn_rp0h3Gm7npYRtHorVUT-&account_id=7016464108&entity_id=7016464108&locale=en&v=20210504" type="text/javascript"></script>.<br/>--><!--It should look like:<br/>--><!-- <pre>--><!-- <code>--><!--<script async defer src="https://knowledgetags.yextpages.net/embed?key=KEY&account_id=ACCOUNT_ID&location_id=LOCATIONS_ID" type="text/javascript"></script>--><!-- </code>--><!--</pre>--></div> 694<!-- Load Yext Script into page source so schema validates with Structured Data testing tool -->
694<script async="" src="https://knowledgetags.yextpages.net/embed?key=209RY9DUalaekoRrfs1-xbzX0pTLGtFXpLe6ypomXRn_rp0h3Gm7npYRtHorVUT-&account_id=7016464108&entity_id=7016464108&locale=en&v=20210504" type="text/javascript"> 695 </script>
695 696</div> 697</div> 698</div> 699</div> 700 <div class="u_1999527944 dmRespRow hide-for-small" id="1999527944"> <div class="dmRespColsWrapper" id="1739649868"> <div class="dmRespCol large-12 medium-12 small-12 u_1353640076" id="1353640076"> <nav class="u_1844909121 effect-text-color main-navigation unifiednav dmLinksMenu" data-auto="links-menu" role="navigation" layout-main="horizontal_nav_layout_2" layout-sub="submenu_horizontal_1" data-show-vertical-sub-items="HOVER" id="1844909121" 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" 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 dmNavItemSelected dmUDNavigationItem_00 unifiednav__item_has-sub-nav" target="" data-target-page-alias="" aria-current="page" data-auto="selected-page"> <span class="nav-item-text " data-link-text=" 701 Home 702 " data-auto="page-text-style">Home<span class="icon icon-angle-down"></span> 703</span> 704</a> 705 <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="/garage-doors-fort-collins-colorado" class="unifiednav__item unav-item dmUDNavigationItem_010101295254 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 706 Garage Doors Fort Collins Colorado 707 " data-auto="page-text-style">Garage Doors Fort Collins Colorado<span class="icon icon-angle-right"></span> 708</span> 709</a> 710</li> 711 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/garage-door-openers-loveland-colorado" class="unifiednav__item unav-item dmUDNavigationItem_010101410531 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 712 Garage Door Openers Loveland Colorado 713 " data-auto="page-text-style">Garage Door Openers Loveland Colorado<span class="icon icon-angle-right"></span> 714</span> 715</a> 716</li> 717</ul> 718</li> 719 <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_010101450849 unifiednav__item_has-sub-nav" target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 720 Garage Door Services 721 " data-auto="page-text-style">Garage Door Services<span class="icon icon-angle-down"></span> 722</span> 723</a> 724 <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="/garage-door-services" class="unifiednav__item unav-item dmUDNavigationItem_010101329300 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 725 Garage Door Service Overview 726 " data-auto="page-text-style">Garage Door Service Overview<span class="icon icon-angle-right"></span> 727</span> 728</a> 729</li> 730 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/broken-garage-door-springs" class="unifiednav__item unav-item dmUDNavigationItem_010101886135 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 731 Broken Garage Door Springs 732 " data-auto="page-text-style">Broken Garage Door Springs<span class="icon icon-angle-right"></span> 733</span> 734</a> 735</li> 736 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/garage-door-openers" class="unifiednav__item unav-item dmUDNavigationItem_010101412535 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 737 Garage Door Openers 738 " data-auto="page-text-style">Garage Door Openers<span class="icon icon-angle-right"></span> 739</span> 740</a> 741</li> 742</ul> 743</li> 744 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/gallery" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101898129 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 745 Gallery 746 " data-auto="page-text-style">Gallery<span class="icon icon-angle-down"></span> 747</span> 748</a> 749</li> 750 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/reviews" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101497480 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 751 Reviews 752 " data-auto="page-text-style">Reviews<span class="icon icon-angle-down"></span> 753</span> 754</a> 755</li> 756 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/about" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101661768 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 757 About 758 " data-auto="page-text-style">About<span class="icon icon-angle-down"></span> 759</span> 760</a> 761</li> 762 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/garage-door-service-questions" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_01010190837 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 763 Garage Door Service Questions 764 " data-auto="page-text-style">Garage Door Service Questions<span class="icon icon-angle-down"></span> 765</span> 766</a> 767</li> 768 <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="/contact-us" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_01010198084 unifiednav__item_has-sub-nav" target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 769 Contact 770 " data-auto="page-text-style">Contact<span class="icon icon-angle-down"></span> 771</span> 772</a> 773 <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="/request-service-form" class="unifiednav__item unav-item dmUDNavigationItem_010101292291 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 774 Request a Service 775 " data-auto="page-text-style">Request a Service<span class="icon icon-angle-right"></span> 776</span> 777</a> 778</li> 779</ul> 780</li> 781</ul> 782</nav> 783</div> 784</div> 785</div> 786</div> 787</div> 788</div> 789</div> 790</div> 791</div> 792 <div class="stickyHeaderSpacer" id="stickyHeaderSpacer" data-auto="sticky-header-spacer" data-new="true"></div> 793 <div class="dmRespRow dmRespRowStable dmRespRowNoPadding dmPageTitleRow "> <div class="dmRespColsWrapper">
793 <div class="large-12 dmRespCol"> <div id="innerBar" class="innerBar lineInnerBar dmDisplay_None"> <div class="titleLine display_None"><hr/></div> 794<!-- Page title is hidden in css for new responsive sites. It is left here only so we don't break old sites. Don't copy it to new layouts --> <div id="pageTitleText"></div> 795 <div class="titleLine display_None"><hr/></div> 796</div> 797</div> 798</div> 799</div> 800 <div dmwrapped="true" id="dmFirstContainer" class="dmBody u_dmStyle_template_home dm-home-page" themewaschanged="true"> <div id="allWrapper" class="allWrapper" data-auto="all-wrapper"><!-- navigation placeholders --> <div id="dm_content" class="dmContent" role="main"> <div dm:templateorder="170" class="dmHomeRespTmpl mainBorder dmRespRowsWrapper dmFullRowRespTmpl" id="1716942098"> <div class="dmRespRow u_1635737397 hasBackgroundOverlay fullBleedChanged fullBleedMode" id="1635737397"> <div class="dmRespColsWrapper" id="1153729882"> <div class="dmRespCol large-12 medium-12 small-12 u_1980862213" id="1980862213"> <div class="u_1685412828 dmRespRow hide-for-medium hide-for-small" id="1685412828"> <div class="dmRespColsWrapper" id="1498530701"> <div class="u_1349713070 dmRespCol small-12 large-3 medium-3" id="1349713070"> <div class="u_1312823833 widget-d1ee5d dmCustomWidget" data-lazy-load="" data-title="" id="1312823833" dmle_extension="custom_extension" data-element-type="custom_extension" icon="false" surround="false" data-widget-id="d1ee5d5bf037471ea1770683731e577a" data-widget-version="23" data-widget-config="eyJtZXJjaGFudElkIjoiNTMyOCIsInRoZW1lIjoibGlnaHQiLCJtaW4tcmV2aWV3cyI6IjMiLCJtaW4tcmF0aW5nIjoiNCIsImxpbmUtYnJlYWsiOmZhbHNlfQ=="> <div class="headerWidget" data-merchant="5328" data-theme="light" data-break="false" data-count-limit="3" data-rating-limit="4"></div> 801</div> 802 <div class="u_1783123560 dmNewParagraph" data-element-type="paragraph" data-version="5" id="1783123560" style="transition: opacity 1s ease-in-out 0s;"><p><span style="color:rgb(255, 255, 255);font-weight:700;display:unset;font-family:Merriweather, 'Merriweather Fallback';">Serving Northern Colorado </span></p></div> 803</div> 804 <div class="u_1168240198 dmRespCol small-12 large-6 medium-6" id="1168240198"> <div class="u_1445716079 imageWidget align-center" data-element-type="image" data-widget-type="image" id="1445716079"> <a href="/" id="1760742731"><img src="https://le-cdn.hibuwebsites.com/a18e963a07b74c3894ec4c687e53ed93/dms3rep/multi/opt/full-service-garage-doors-logo-216w.webp" id="1479069703" class="" data-dm-image-path="https://cdn.hibuwebsites.com/a18e963a07b74c3894ec4c687e53ed93/dms3rep/multi/full-service-garage-doors-logo.webp" width="180" height="91" alt="full-service-garage-doors-logo" onerror="handleImageLoadError(this)"/></a> 805</div> 806 <div class="u_1331818479 dmNewParagraph" data-element-type="paragraph" data-version="5" id="1331818479" style="transition: opacity 1s ease-in-out 0s;"><p class="text-align-center size-19 m-size-15" style="line-height: 24px;"><span class="font-size-19 m-font-size-15" style="font-weight: bold; display: unset; color: rgb(255, 255, 255);">No extra charge for quality work</span></p></div> 807</div> 808 <div class="u_1100243107 dmRespCol small-12 large-3 medium-3" id="1100243107"> <a data-display-type="block" class="align-center dmButtonLink dmWidget dmWwr default dmOnlyButton dmDefaultGradient u_1882877103" file="false" href="/request-service-form" data-element-type="dButtonLinkId" id="1882877103"> <span class="iconBg" id="1923328602"> <span class="icon hasFontIcon icon-star" id="1263997371"></span> 809</span> 810 <span class="text" id="1782497270">Request a Service</span> 811</a> 812 <div class="u_1649006522 widget-7b6cfb dmCustomWidget" data-lazy-load="" data-title="" id="1649006522" dmle_extension="custom_extension" data-element-type="custom_extension" icon="false" surround="false" data-widget-id="7b6cfbac88324cffbaaf57354cd7a334" data-widget-version="227" data-widget-config="eyJnZXREaXJlY3Rpb25zVGV4dCI6IkdldCBEaXJlY3Rpb25zIiwiZ3JvdXBZZWFyRXN0YWJsaXNoZWQiOm51bGwsImgzRW1haWxUZXh0IjoiIiwidG9nZ2xlSDNBc3NvY2lhdGlvbnMiOm51bGwsImdyb3VwQml6TmFtZURlc2lnbiI6bnVsbCwidG9nZ2xlSDNTZXJ2aWNlcyI6bnVsbCwidHlwZSI6InBob25lIiwiYm9sZExvY2F0aW9uTmFtZSI6bnVsbCwiY29sb3JQaWNrZXIxIjpudWxsLCJoM1BheW1lbnRzVGV4dCI6bnVsbCwiZ3JvdXBHb29nbGVBdHRyaWJ1dGVzIjpudWxsLCJwYXltZW50R3JvdXAiOm51bGwsInRvZ2dsZUgzU3BlY2lhbHRpZXMiOm51bGwsInNlcnZpY2VBcmVhR3JvdXAiOm51bGwsInN0YXRlIjp0cnVlLCJncm91cFNvY2lhbEljb25zIjpudWxsLCJ0b2dnbGVIM1NlcnZpY2VBcmVhIjpudWxsLCJzb2NpYWxHcm91cCI6bnVsbCwiemlwIjpmYWxzZSwicGhvbmVMaXN0U3R5bGVzIjpudWxsLCJjYXJkU3R5bGVEYXJrT3JMaWdodCI6Il9kLnN2ZyIsImgzWWVhckhlYWRUZXh0IjoiIiwicGF5bWVudE9wdGlvbnNCdWxsZXQiOiJidWxsZXQiLCIuYWRkcmVzc0hlYWRlciI6bnVsbCwidG9nZ2xlSDNmZWF0TWVzc2FnZSI6bnVsbCwiYnJhbmRzR3JvdXAiOm51bGwsInByb2R1Y3RzR3JvdXAiOm51bGwsImgzS2V5d29yZHNUZXh0IjpudWxsLCJzY3JpcHQiOiIiLCJncm91cEtleXdvcmRzRGVzaWduIjpudWxsLCJncm91cEF0dHJpYnV0ZXMiOm51bGwsInNvY2lhbEljb25zQWxpZ25tZW50IjoibGVmdCIsImxhbmd1YWdlc0J1bGxldCI6ImJ1bGxldCIsImdyb3VwRW1haWxEZXNpZ24iOm51bGwsImgzSG9saWRheUhvdXJzIjoiSG9saWRheSBIb3VycyIsInNob3dQYXltZW50c0FzIjpudWxsLCJzZXJ2aWNlc0dyb3VwIjpudWxsLCJib2xkU3RhdHVzVGV4dCI6dHJ1ZSwiaDNTb2NpYWxUZXh0IjpudWxsLCJ
812sb2dvR3JvdXAiOm51bGwsImdyb3VwUGhvbmVEZXNpZ24iOm51bGwsInBob25lR3JvdXAiOm51bGwsImNpdHkiOnRydWUsImdyb3VwQml6RGVzRGVzaWduIjpudWxsLCJoM2hvdXJzVGV4dCI6IiIsImgzU2VydmljZUFyZWFUZXh0IjpudWxsLCJpc0xpc3QiOnRydWUsImJvbGRIb3VycyI6dHJ1ZSwidG9nZ2xlSDNob3VycyI6bnVsbCwiZ3JvdXBBZGRpdGlvbmFsSG91cnNUZXh0IjpudWxsLCJkZXNjcmlwdGlvblRleHRHcm91cCI6bnVsbCwiYnJhbmRzQnVsbGV0IjoiYnVsbGV0IiwidG9nZ2xlSDNob2xpZGF5SG91cnMiOnRydWUsImFzc29jaWF0aW9uc0J1bGxldCI6ImJ1bGxldCIsImxvY2F0aW9uR3JvdXAiOm51bGwsInRvZ2dsZUgzR29vZ2xlQXR0cmlidXRlcyI6dHJ1ZSwidG9nZ2xlSDNkZXNjcmlwdGlvbiI6bnVsbCwiaG9saWRheUhvdXJzQnVsbGV0IjoiYnVsbGV0cyIsInRvZ2dsZUgzTGFuZ3VhZ2VzIjpudWxsLCJwaG9uZVR5cGUiOiJwaG9uZSIsImxvY2F0aW9uTmFtZSI6ZmFsc2UsInRvZ2dsZUgzUGF5bWVudHMiOm51bGwsInNlcnZpY2VBcmVhQnVsbGV0IjoiYnVsbGV0IiwidG9nZ2xlSDNQcm9kdWN0cyI6bnVsbCwiZ3JvdXBBZGRyZXNzRGVzaWduIjpudWxsLCJQaG9uZSBIZWFkZXIgR3JvdXAiOm51bGwsInRvZ2dsZUgzU29jaWFsIjpudWxsLCJzaG93U2VydmljZUFyZWFGaXJzdCI6bnVsbCwiYWRkaXRpb25hbEhvdXJzVGV4dCI6bnVsbCwiaDNTcGVjaWFsdGllc1RleHQiOiIiLCJ0b2dnbGVIM1llYXIiOm51bGwsInNwZWNpYWx0aWVzR3JvdXAiOm51bGwsImRyYXdNYXAiOm51bGwsImluc3RydWN0aW9ucyI6bnVsbCwiZ3JvdXBQcm9kdWN0c0Rlc2lnbiI6bnVsbCwiZ3JvdXBTZXJ2aWNlQXJlYURlc2lnbiI6bnVsbCwiaDNBZGRyZXNzVGV4dCI6IiIsImdyb3VwU2VydmljZXNEZXNpZ24iOm51bGwsInRvZ2dsZUgzUGhvbmVMaXN0IjpudWxsLCJncm91cEZlYXR1cmVkTWVzc2FnZURlc2lnbiI6bnVsbCwiaDNTZXJ2aWNlc1RleHQiOm51bGwsImgzUGhvbmVUZXh0IjoiIiwiaDNBc3NvY2lhdGlvbnNUZXh0IjoiIiwicGF5bWVudFRleHRHcm91cCI6bnVsbCwiaDNEZXNjcmlwdGlvblRleHQiOm51bGwsInNob3dHZXREaXJlY3Rpb25zTGluayI6bnVsbCwiZ3JvdXBQYXltZW50RGVpc2duIjpudWxsLCJoM0dvb2dsZUF0dHJpYnV0ZXMiOiJCdXNpbmVzcyBBdHRyaWJ1dGVzIiwidG9nZ2xlSDNBZGRyZXNzIjpudWxsLCJzaG93RW1haWxBc0J0biI6bnVsbCwiYXNzb2NpYXRpb25zR3JvdXAiOm51bGwsImgzUHJvZHVjdHNUZXh0IjoiIiwiZm9ybWF0UGhvbmUiOnRydWUsImdyb3VwTGFuZ3VhZ2VzRGVzaWduIjpudWxsLCJ0b2dnbGVIM0tleXdvcmRzIjpudWxsLCJrZXl3b3Jkc0dyb3VwIjpudWxsLCJhbHQiOm51bGwsImhpZGVIb3Vyc0xpc3QiOmZhbHNlLCJncm91cEhvbGlkYXlIb3Vyc0Rlc2lnbiI6bnVsbCwicGhvbmVTaG93QXMiOiJ0ZXh0IiwiZ29vZ2xlQXR0cmlidXRlc0Zvcm1hdHRlZExpc3RCdWxsZXQiOiJidWxsZXRzIiwibWFwWm9vbSI6IjEzIiwiaG9saWRheUhvdXJzIjpudWxsLCJncm91cEhvdXJzRGVzaWduIjpudWxsLCJoM0xhbmd1YWdlc1RleHQiOm51bGwsImhvdXJzU2hvd0FzIjoibGlzdCIsImVtYWlsVGV4dEdyb3VwIjpudWxsLCJwaG9uZUxpc3RTdHlsZSI6ImJ1bGxldHMiLCJ0b2dnbGUxIjpudWxsLCJoM0JyYW5kVGV4dCI6IiIsImxpbmsiOm51bGwsImdyb3VwUGF5bWVudENhcmREZXNpZ24iOm51bGwsImdyb3VwU3BlY2lhbHRpZXNEZXNpZ24iOm51bGwsInllYXJFc3RhYmlsaXNoZWRHcm91cCI6bnVsbCwicGhvbmVUZXh0U3R5bGVzIjpudWxsLCJncm91cEFzc29jaWF0aW9uc0Rlc2lnbiI6bnVsbCwic3BlY2lhbHRpZXNCdWxsZXQiOiJidWxsZXQiLCJoM0ZlYXRNZXNzYWdlVGV4dCI6bnVsbCwidG9nZ2xlSDNCcmFuZHMiOm51bGwsImFkZHJlc3MyIjpmYWxzZSwiYWRkcmVzczEiOmZhbHNlLCJjYXJkQWxpZ25tZW50IjoicGljb25zLWNlbnRlciIsImdyb3VwTG9nb0Rlc2lnbiI6bnVsbCwiZ3JvdXBPcGVuSG91cnNEZXNpZ24iOm51bGwsImZlYXRNZXNzYWdlR3JvdXAiOm51bGwsImtleXdvcmRzQnVsbGV0IjoiYnVsbGV0IiwidG9nZ2xlSDNFbWFpbCI6bnVsbCwic2VydmljZXNCdWxsZXQiOm51bGwsImdyb3VwQnJhbmRzRGVzaWduIjpudWxsLCJwcm9kdWN0c0J1bGxldCI6ImJ1bGxldCIsImxhbmd1YWdlc0dyb3VwIjpudWxsLCJob3Vyc0dyb3VwIjpudWxsfQ=="> <a onclick=";return dm_gaq_push_event('ClickToCall', 'Call',null, dmAPI.getSiteName(), this);" data-yext-field="phone" class="yextPhoneText"> <span class="text"></span> 813</a> 814 <div class="editorOnlyInfo" data-nosnippet="">This is a placeholder for the Yext Knolwedge Tags. This message will not appear on the live site, but only within the editor. The Yext Knowledge Tags are successfully installed and will be added to the website.</div> 815 <div class="wrongScriptError" data-nosnippet=""><!--The Yext script you entered is empty or incorrect: .<br/>--><!--It should look like:<br/>--><!-- <pre>--><!-- <code>--><!--<script async defer src="https://knowledgetags.yextpages.net/embed?key=KEY&account_id=ACCOUNT_ID&location_id=LOCATIONS_ID" type="text/javascript"></script>--><!-- </code>--><!--</pre>--></div> 816<!-- Load Yext Script into page source so schema validates with Structured Data testing tool --></div> 817</div> 818</div> 819</div> 820 <div class="u_1859407500 dmRespRow hide-for-medium hide-for-small" id="1859407500"> <div class="dmRespColsWrapper" id="1950675396"> <div class="dmRespCol large-12 medium-12 small-12 u_1242877080" id="1242877080"> <nav class="u_1478888218 effect-text-color main-navigation unifiednav dmLinksMenu" data-auto="links-menu" role="navigation" layout-main="horizontal_nav_layout_2" layout-sub="submenu_horizontal_1" data-show-vertical-sub-items="HOVER" id="1478888218" 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" 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 dmNavItemSelected dmUDNavigationItem_00 unifiednav__item_has-sub-nav" target="" data-target-page-alias="" aria-current="page" data-auto="selected-page"> <span class="nav-item-text " data-link-text=" 821 Home 822 " data-auto="page-text-style">Home<span class="icon icon-angle-down"></span> 823</span> 824</a> 825 <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="/garage-doors-fort-collins-colorado" class="unifiednav__item unav-item dmUDNavigationItem_010101295254 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 826 Garage Doors Fort Collins Colorado 827 " data-auto="page-text-style">
827Garage Doors Fort Collins Colorado<span class="icon icon-angle-right"></span> 828</span> 829</a> 830</li> 831 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/garage-door-openers-loveland-colorado" class="unifiednav__item unav-item dmUDNavigationItem_010101410531 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 832 Garage Door Openers Loveland Colorado 833 " data-auto="page-text-style">Garage Door Openers Loveland Colorado<span class="icon icon-angle-right"></span> 834</span> 835</a> 836</li> 837</ul> 838</li> 839 <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_010101450849 unifiednav__item_has-sub-nav" target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 840 Garage Door Services 841 " data-auto="page-text-style">Garage Door Services<span class="icon icon-angle-down"></span> 842</span> 843</a> 844 <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="/garage-door-services" class="unifiednav__item unav-item dmUDNavigationItem_010101329300 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 845 Garage Door Service Overview 846 " data-auto="page-text-style">Garage Door Service Overview<span class="icon icon-angle-right"></span> 847</span> 848</a> 849</li> 850 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/broken-garage-door-springs" class="unifiednav__item unav-item dmUDNavigationItem_010101886135 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 851 Broken Garage Door Springs 852 " data-auto="page-text-style">Broken Garage Door Springs<span class="icon icon-angle-right"></span> 853</span> 854</a> 855</li> 856 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="1"> <a href="/garage-door-openers" class="unifiednav__item unav-item dmUDNavigationItem_010101412535 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 857 Garage Door Openers 858 " data-auto="page-text-style">Garage Door Openers<span class="icon icon-angle-right"></span> 859</span> 860</a> 861</li> 862</ul> 863</li> 864 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/gallery" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101898129 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 865 Gallery 866 " data-auto="page-text-style">Gallery<span class="icon icon-angle-down"></span> 867</span> 868</a> 869</li> 870 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/reviews" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101497480 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 871 Reviews 872 " data-auto="page-text-style">Reviews<span class="icon icon-angle-down"></span> 873</span> 874</a> 875</li> 876 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/about" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101661768 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 877 About 878 " data-auto="page-text-style">About<span class="icon icon-angle-down"></span> 879</span> 880</a> 881</li> 882 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/garage-door-service-questions" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_01010190837 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 883 Garage Door Service Questions 884 " data-auto="page-text-style">Garage Door Service Questions<span class="icon icon-angle-down"></span> 885</span> 886</a> 887</li> 888 <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="/contact-us" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_01010198084 unifiednav__item_has-sub-nav" target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 889 Contact 890 " data-auto="page-text-style">Contact<span class="icon icon-angle-down"></span> 891</span> 892</a> 893 <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="/request-service-form" class="unifiednav__item unav-item dmUDNavigationItem_010101292291 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 894 Request a Service 895 " data-auto="page-text-style">Request a Service<span class="icon icon-angle-right"></span> 896</span> 897</a> 898</li> 899</ul> 900</li> 901</ul> 902</nav> 903</div> 904</div> 905</div> 906 <div class="dmRespRow u_1841090691 fullBleedChanged fullBleedMode" id="1841090691"> <div class="dmRespColsWrapper" id="1220437662"> <div class="dmRespCol small-12 medium-12 large-12 u_1494004975" id="1494004975"> <div class="u_1838910234 dmNewParagraph" data-element-type="paragraph" id="1838910234" data-anim-desktop="fadeInUp" style="opacity: 1; transform: translate3d(0%, 0%, 0px); text-align: center; animation-delay: unset !important; animation-duration: unset !important;" data-version="5"> <h1 class="text-align-center" style="line-height: initial;"><span style="color: rgb(255, 255, 255); display: initial;">Garage Door Services in Northern Colorado</span></h1> 907</div> <div class="u_1628289737 dmNewParagraph hide-for-small" data-element-type="paragraph" id="1628289737" data-anim-desktop="fadeInUp" style="visibility: visible; opacity: 1; transform: translate3d(0%, 0%, 0px); text-align: center; animation-delay: unset !important; animation-duration: unset !important;" data-version="5" data-binding="W3siYmluZGluZ05hbWUiOiJ0ZXh0IiwidmFsdWUiOiJzaXRlX3RleHQuZGVza3RvcCAtIGgzIG1vdGl2YXRpbmcgZmFjdG9ycyJ9XQ==" data-diy-text=""><p class="rteBlock">Free Estimates</p><p class="rteBlock">Is your garage door broken or not working properly? Full Service Garage Doors can get it fixed!</p></div>
907 <div class="u_1152813225 widget-7b6cfb hide-for-small dmCustomWidget" data-lazy-load="" data-title="" id="1152813225" dmle_extension="custom_extension" data-element-type="custom_extension" wr="false" icon="false" surround="false" data-widget-id="7b6cfbac88324cffbaaf57354cd7a334" data-widget-version="227" data-widget-config="eyJnZXREaXJlY3Rpb25zVGV4dCI6IkdldCBEaXJlY3Rpb25zIiwiZ3JvdXBZZWFyRXN0YWJsaXNoZWQiOm51bGwsImgzRW1haWxUZXh0IjoiIiwidG9nZ2xlSDNBc3NvY2lhdGlvbnMiOm51bGwsImdyb3VwQml6TmFtZURlc2lnbiI6bnVsbCwidG9nZ2xlSDNTZXJ2aWNlcyI6bnVsbCwidHlwZSI6InBob25lIiwiYm9sZExvY2F0aW9uTmFtZSI6bnVsbCwiY29sb3JQaWNrZXIxIjpudWxsLCJoM1BheW1lbnRzVGV4dCI6bnVsbCwiZ3JvdXBHb29nbGVBdHRyaWJ1dGVzIjpudWxsLCJwYXltZW50R3JvdXAiOm51bGwsInRvZ2dsZUgzU3BlY2lhbHRpZXMiOm51bGwsInNlcnZpY2VBcmVhR3JvdXAiOm51bGwsInN0YXRlIjp0cnVlLCJncm91cFNvY2lhbEljb25zIjpudWxsLCJ0b2dnbGVIM1NlcnZpY2VBcmVhIjpudWxsLCJzb2NpYWxHcm91cCI6bnVsbCwiemlwIjp0cnVlLCJwaG9uZUxpc3RTdHlsZXMiOm51bGwsImNhcmRTdHlsZURhcmtPckxpZ2h0IjoiX2Quc3ZnIiwiaDNZZWFySGVhZFRleHQiOiIiLCJwYXltZW50T3B0aW9uc0J1bGxldCI6ImJ1bGxldCIsIi5hZGRyZXNzSGVhZGVyIjpudWxsLCJ0b2dnbGVIM2ZlYXRNZXNzYWdlIjpudWxsLCJicmFuZHNHcm91cCI6bnVsbCwicHJvZHVjdHNHcm91cCI6bnVsbCwiaDNLZXl3b3Jkc1RleHQiOm51bGwsInNjcmlwdCI6IiIsImdyb3VwS2V5d29yZHNEZXNpZ24iOm51bGwsImdyb3VwQXR0cmlidXRlcyI6bnVsbCwic29jaWFsSWNvbnNBbGlnbm1lbnQiOiJsZWZ0IiwibGFuZ3VhZ2VzQnVsbGV0IjoiYnVsbGV0IiwiZ3JvdXBFbWFpbERlc2lnbiI6bnVsbCwiaDNIb2xpZGF5SG91cnMiOiJIb2xpZGF5IEhvdXJzIiwic2hvd1BheW1lbnRzQXMiOm51bGwsInNlcnZpY2VzR3JvdXAiOm51bGwsImJvbGRTdGF0dXNUZXh0Ijp0cnVlLCJoM1NvY2lhbFRleHQiOm51bGwsImxvZ29Hcm91cCI6bnVsbCwiZ3JvdXBQaG9uZURlc2lnbiI6bnVsbCwicGhvbmVHcm91cCI6bnVsbCwiY2l0eSI6dHJ1ZSwiZ3JvdXBCaXpEZXNEZXNpZ24iOm51bGwsImgzaG91cnNUZXh0IjoiIiwiaDNTZXJ2aWNlQXJlYVRleHQiOm51bGwsImlzTGlzdCI6dHJ1ZSwiYm9sZEhvdXJzIjp0cnVlLCJ0b2dnbGVIM2hvdXJzIjpudWxsLCJncm91cEFkZGl0aW9uYWxIb3Vyc1RleHQiOm51bGwsImRlc2NyaXB0aW9uVGV4dEdyb3VwIjpudWxsLCJicmFuZHNCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM2hvbGlkYXlIb3VycyI6dHJ1ZSwiYXNzb2NpYXRpb25zQnVsbGV0IjoiYnVsbGV0IiwibG9jYXRpb25Hcm91cCI6bnVsbCwidG9nZ2xlSDNHb29nbGVBdHRyaWJ1dGVzIjp0cnVlLCJ0b2dnbGVIM2Rlc2NyaXB0aW9uIjpudWxsLCJob2xpZGF5SG91cnNCdWxsZXQiOiJidWxsZXRzIiwidG9nZ2xlSDNMYW5ndWFnZXMiOm51bGwsInBob25lVHlwZSI6InBob25lIiwibG9jYXRpb25OYW1lIjp0cnVlLCJ0b2dnbGVIM1BheW1lbnRzIjpudWxsLCJzZXJ2aWNlQXJlYUJ1bGxldCI6ImJ1bGxldCIsInRvZ2dsZUgzUHJvZHVjdHMiOm51bGwsImdyb3VwQWRkcmVzc0Rlc2lnbiI6bnVsbCwiUGhvbmUgSGVhZGVyIEdyb3VwIjpudWxsLCJ0b2dnbGVIM1NvY2lhbCI6bnVsbCwic2hvd1NlcnZpY2VBcmVhRmlyc3QiOm51bGwsImFkZGl0aW9uYWxIb3Vyc1RleHQiOm51bGwsImgzU3BlY2lhbHRpZXNUZXh0IjoiIiwidG9nZ2xlSDNZZWFyIjpudWxsLCJzcGVjaWFsdGllc0dyb3VwIjpudWxsLCJkcmF3TWFwIjpudWxsLCJpbnN0cnVjdGlvbnMiOm51bGwsImdyb3VwUHJvZHVjdHNEZXNpZ24iOm51bGwsImdyb3VwU2VydmljZUFyZWFEZXNpZ24iOm51bGwsImgzQWRkcmVzc1RleHQiOiIiLCJncm91cFNlcnZpY2VzRGVzaWduIjpudWxsLCJ0b2dnbGVIM1Bob25lTGlzdCI6bnVsbCwiZ3JvdXBGZWF0dXJlZE1lc3NhZ2VEZXNpZ24iOm51bGwsImgzU2VydmljZXNUZXh0IjpudWxsLCJoM1Bob25lVGV4dCI6IiIsImgzQXNzb2NpYXRpb25zVGV4dCI6IiIsInBheW1lbnRUZXh0R3JvdXAiOm51bGwsImgzRGVzY3JpcHRpb25UZXh0IjpudWxsLCJzaG93R2V0RGlyZWN0aW9uc0xpbmsiOm51bGwsImdyb3VwUGF5bWVudERlaXNnbiI6bnVsbCwiaDNHb29nbGVBdHRyaWJ1dGVzIjoiQnVzaW5lc3MgQXR0cmlidXRlcyIsInRvZ2dsZUgzQWRkcmVzcyI6bnVsbCwic2hvd0VtYWlsQXNCdG4iOm51bGwsImFzc29jaWF0aW9uc0dyb3VwIjpudWxsLCJoM1Byb2R1Y3RzVGV4dCI6IiIsImZvcm1hdFBob25lIjp0cnVlLCJncm91cExhbmd1YWdlc0Rlc2lnbiI6bnVsbCwidG9nZ2xlSDNLZXl3b3JkcyI6bnVsbCwia2V5d29yZHNHcm91cCI6bnVsbCwiYWx0IjpudWxsLCJoaWRlSG91cnNMaXN0IjpmYWxzZSwiZ3JvdXBIb2xpZGF5SG91cnNEZXNpZ24iOm51bGwsInBob25lU2hvd0FzIjoidGV4dCIsImdvb2dsZUF0dHJpYnV0ZXNGb3JtYXR0ZWRMaXN0QnVsbGV0IjoiYnVsbGV0cyIsIm1hcFpvb20iOiIxMyIsImhvbGlkYXlIb3VycyI6bnVsbCwiZ3JvdXBIb3Vyc0Rlc2lnbiI6bnVsbCwiaDNMYW5ndWFnZXNUZXh0IjpudWxsLCJob3Vyc1Nob3dBcyI6Imxpc3QiLCJlbWFpbFRleHRHcm91cCI6bnVsbCwicGhvbmVMaXN0U3R5bGUiOiJuby1saXN0IiwidG9nZ2xlMSI6bnVsbCwiaDNCcmFuZFRleHQiOiIiLCJsaW5rIjpudWxsLCJncm91cFBheW1lbnRDYXJkRGVzaWduIjpudWxsLCJncm91cFNwZWNpYWx0aWVzRGVzaWduIjpudWxsLCJ5ZWFyRXN0YWJpbGlzaGVkR3JvdXAiOm51bGwsInBob25lVGV4dFN0eWxlcyI6bnVsbCwiZ3JvdXBBc3NvY2lhdGlvbnNEZXNpZ24iOm51bGwsInNwZWNpYWx0aWVzQnVsbGV0IjoiYnVsbGV0IiwiaDNGZWF0TWVzc2FnZVRleHQiOm51bGwsInRvZ2dsZUgzQnJhbmRzIjpudWxsLCJhZGRyZXNzMiI6dHJ1ZSwiYWRkcmVzczEiOnRydWUsImNhcmRBbGlnbm1lbnQiOiJwaWNvbnMtY2VudGVyIiwiZ3JvdXBMb2dvRGVzaWduIjpudWxsLCJncm91cE9wZW5Ib3Vyc0Rlc2lnbiI6bnVsbCwiZmVhdE1lc3NhZ2VHcm91cCI6bnVsbCwia2V5d29yZHNCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM0VtYWlsIjpudWxsLCJzZXJ2aWNlc0J1bGxldCI6bnVsbCwiZ3JvdXBCcmFuZHNEZXNpZ24iOm51bGwsInByb2R1Y3RzQnVsbGV0IjoiYnVsbGV0IiwibGFuZ3VhZ2VzR3JvdXAiOm51bGwsImhvdXJzR3JvdXAiOm51bGx9"> <a onclick=";
907return dm_gaq_push_event('ClickToCall', 'Call',null, dmAPI.getSiteName(), this);" data-yext-field="phone" class="yextPhoneText"> <span class="text"></span> 908</a> 909 <div class="editorOnlyInfo" data-nosnippet="">This is a placeholder for the Yext Knolwedge Tags. This message will not appear on the live site, but only within the editor. The Yext Knowledge Tags are successfully installed and will be added to the website.</div> 910 <div class="wrongScriptError" data-nosnippet=""><!--The Yext script you entered is empty or incorrect: .<br/>--><!--It should look like:<br/>--><!-- <pre>--><!-- <code>--><!--<script async defer src="https://knowledgetags.yextpages.net/embed?key=KEY&account_id=ACCOUNT_ID&location_id=LOCATIONS_ID" type="text/javascript"></script>--><!-- </code>--><!--</pre>--></div> 911<!-- Load Yext Script into page source so schema validates with Structured Data testing tool --></div> 912 <div class="u_1770948843 dmNewParagraph hide-for-medium hide-for-large" data-element-type="paragraph" id="1770948843" style="transition: opacity 1s ease-in-out 0s;" data-version="5" data-binding="W3siYmluZGluZ05hbWUiOiJ0ZXh0IiwidmFsdWUiOiJzaXRlX3RleHQubW9iaWxlIC0gaDMgbW90aXZhdGluZyBmYWN0b3JzIn1d" data-diy-text=""><p class="rteBlock">Free Estimates</p><br/><p class="rteBlock">Is your garage door broken or not working properly? Full Service Garage Doors can get it fixed!</p></div> <div class="u_1443561679 widget-7b6cfb hide-for-small dmCustomWidget" data-lazy-load="" data-title="" id="1443561679" dmle_extension="custom_extension" data-element-type="custom_extension" data-anim-desktop="fadeInUp" data-anim-extended="eyJkZXNrdG9wIjp7InRyaWdnZXIiOiJlbnRyYW5jZSIsImFuaW1hdGlvbiI6ImZhZGVJblVwIn19" icon="false" surround="false" data-widget-id="7b6cfbac88324cffbaaf57354cd7a334" data-widget-version="227" data-widget-config="eyJnZXREaXJlY3Rpb25zVGV4dCI6IkdldCBEaXJlY3Rpb25zIiwiZ3JvdXBZZWFyRXN0YWJsaXNoZWQiOm51bGwsImgzRW1haWxUZXh0IjoiIiwidG9nZ2xlSDNBc3NvY2lhdGlvbnMiOm51bGwsImdyb3VwQml6TmFtZURlc2lnbiI6bnVsbCwidG9nZ2xlSDNTZXJ2aWNlcyI6bnVsbCwidHlwZSI6ImhvdXJzIiwiYm9sZExvY2F0aW9uTmFtZSI6bnVsbCwiY29sb3JQaWNrZXIxIjpudWxsLCJoM1BheW1lbnRzVGV4dCI6bnVsbCwiZ3JvdXBHb29nbGVBdHRyaWJ1dGVzIjpudWxsLCJwYXltZW50R3JvdXAiOm51bGwsInRvZ2dsZUgzU3BlY2lhbHRpZXMiOm51bGwsInNlcnZpY2VBcmVhR3JvdXAiOm51bGwsInN0YXRlIjp0cnVlLCJncm91cFNvY2lhbEljb25zIjpudWxsLCJ0b2dnbGVIM1NlcnZpY2VBcmVhIjpudWxsLCJzb2NpYWxHcm91cCI6bnVsbCwiemlwIjp0cnVlLCJwaG9uZUxpc3RTdHlsZXMiOm51bGwsImNhcmRTdHlsZURhcmtPckxpZ2h0IjoiX2Quc3ZnIiwiaDNZZWFySGVhZFRleHQiOiIiLCJwYXltZW50T3B0aW9uc0J1bGxldCI6ImJ1bGxldCIsIi5hZGRyZXNzSGVhZGVyIjpudWxsLCJ0b2dnbGVIM2ZlYXRNZXNzYWdlIjpudWxsLCJicmFuZHNHcm91cCI6bnVsbCwicHJvZHVjdHNHcm91cCI6bnVsbCwiaDNLZXl3b3Jkc1RleHQiOm51bGwsInNjcmlwdCI6IiIsImdyb3VwS2V5d29yZHNEZXNpZ24iOm51bGwsImdyb3VwQXR0cmlidXRlcyI6bnVsbCwic29jaWFsSWNvbnNBbGlnbm1lbnQiOiJsZWZ0IiwibGFuZ3VhZ2VzQnVsbGV0IjoiYnVsbGV0IiwiZ3JvdXBFbWFpbERlc2lnbiI6bnVsbCwiaDNIb2xpZGF5SG91cnMiOiJIb2xpZGF5IEhvdXJzIiwic2hvd1BheW1lbnRzQXMiOm51bGwsInNlcnZpY2VzR3JvdXAiOm51bGwsImJvbGRTdGF0dXNUZXh0Ijp0cnVlLCJoM1NvY2lhbFRleHQiOm51bGwsImxvZ29Hcm91cCI6bnVsbCwiZ3JvdXBQaG9uZURlc2lnbiI6bnVsbCwicGhvbmVHcm91cCI6bnVsbCwiY2l0eSI6dHJ1ZSwiZ3JvdXBCaXpEZXNEZXNpZ24iOm51bGwsImgzaG91cnNUZXh0IjoiIiwiaDNTZXJ2aWNlQXJlYVRleHQiOm51bGwsImlzTGlzdCI6dHJ1ZSwiYm9sZEhvdXJzIjp0cnVlLCJ0b2dnbGVIM2hvdXJzIjpudWxsLCJncm91cEFkZGl0aW9uYWxIb3Vyc1RleHQiOm51bGwsImRlc2NyaXB0aW9uVGV4dEdyb3VwIjpudWxsLCJicmFuZHNCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM2hvbGlkYXlIb3VycyI6dHJ1ZSwiYXNzb2NpYXRpb25zQnVsbGV0IjoiYnVsbGV0IiwibG9jYXRpb25Hcm91cCI6bnVsbCwidG9nZ2xlSDNHb29nbGVBdHRyaWJ1dGVzIjp0cnVlLCJ0b2dnbGVIM2Rlc2NyaXB0aW9uIjpudWxsLCJob2xpZGF5SG91cnNCdWxsZXQiOiJidWxsZXRzIiwidG9nZ2xlSDNMYW5ndWFnZXMiOm51bGwsInBob25lVHlwZSI6InBob25lIiwibG9jYXRpb25OYW1lIjp0cnVlLCJ0b2dnbGVIM1BheW1lbnRzIjpudWxsLCJzZXJ2aWNlQXJlYUJ1bGxldCI6ImJ1bGxldCIsInRvZ2dsZUgzUHJvZHVjdHMiOm51bGwsImdyb3VwQWRkcmVzc0Rlc2lnbiI6bnVsbCwiUGhvbmUgSGVhZGVyIEdyb3VwIjpudWxsLCJ0b2dnbGVIM1NvY2lhbCI6bnVsbCwic2hvd1NlcnZpY2VBcmVhRmlyc3QiOm51bGwsImFkZGl0aW9uYWxIb3Vyc1RleHQiOm51bGwsImgzU3BlY2lhbHRpZXNUZXh0IjoiIiwidG9nZ2xlSDNZZWFyIjpudWxsLCJzcGVjaWFsdGllc0dyb3VwIjpudWxsLCJkcmF3TWFwIjpudWxsLCJpbnN0cnVjdGlvbnMiOm51bGwsImdyb3VwUHJvZHVjdHNEZXNpZ24iOm51bGwsImdyb3VwU2VydmljZUFyZWFEZXNpZ24iOm51bGwsImgzQWRkcmVzc1RleHQiOiIiLCJncm91cFNlcnZpY2VzRGVzaWduIjpudWxsLCJ0b2dnbGVIM1Bob25lTGlzdCI6bnVsbCwiZ3JvdXBGZWF0dXJlZE1lc3NhZ2VEZXNpZ24iOm51bGwsImgzU2VydmljZXNUZXh0IjpudWxsLCJoM1Bob25lVG
912V4dCI6IiIsImgzQXNzb2NpYXRpb25zVGV4dCI6IiIsInBheW1lbnRUZXh0R3JvdXAiOm51bGwsImgzRGVzY3JpcHRpb25UZXh0IjpudWxsLCJzaG93R2V0RGlyZWN0aW9uc0xpbmsiOm51bGwsImdyb3VwUGF5bWVudERlaXNnbiI6bnVsbCwiaDNHb29nbGVBdHRyaWJ1dGVzIjoiQnVzaW5lc3MgQXR0cmlidXRlcyIsInRvZ2dsZUgzQWRkcmVzcyI6bnVsbCwic2hvd0VtYWlsQXNCdG4iOm51bGwsImFzc29jaWF0aW9uc0dyb3VwIjpudWxsLCJoM1Byb2R1Y3RzVGV4dCI6IiIsImZvcm1hdFBob25lIjp0cnVlLCJncm91cExhbmd1YWdlc0Rlc2lnbiI6bnVsbCwidG9nZ2xlSDNLZXl3b3JkcyI6bnVsbCwia2V5d29yZHNHcm91cCI6bnVsbCwiYWx0IjpudWxsLCJoaWRlSG91cnNMaXN0IjpmYWxzZSwiZ3JvdXBIb2xpZGF5SG91cnNEZXNpZ24iOm51bGwsInBob25lU2hvd0FzIjoidGV4dCIsImdvb2dsZUF0dHJpYnV0ZXNGb3JtYXR0ZWRMaXN0QnVsbGV0IjoiYnVsbGV0cyIsIm1hcFpvb20iOiIxMyIsImhvbGlkYXlIb3VycyI6bnVsbCwiZ3JvdXBIb3Vyc0Rlc2lnbiI6bnVsbCwiaDNMYW5ndWFnZXNUZXh0IjpudWxsLCJob3Vyc1Nob3dBcyI6Im9wZW5Ib3VycyIsImVtYWlsVGV4dEdyb3VwIjpudWxsLCJwaG9uZUxpc3RTdHlsZSI6ImJ1bGxldHMiLCJ0b2dnbGUxIjpudWxsLCJoM0JyYW5kVGV4dCI6IiIsImxpbmsiOm51bGwsImdyb3VwUGF5bWVudENhcmREZXNpZ24iOm51bGwsImdyb3VwU3BlY2lhbHRpZXNEZXNpZ24iOm51bGwsInllYXJFc3RhYmlsaXNoZWRHcm91cCI6bnVsbCwicGhvbmVUZXh0U3R5bGVzIjpudWxsLCJncm91cEFzc29jaWF0aW9uc0Rlc2lnbiI6bnVsbCwic3BlY2lhbHRpZXNCdWxsZXQiOiJidWxsZXQiLCJoM0ZlYXRNZXNzYWdlVGV4dCI6bnVsbCwidG9nZ2xlSDNCcmFuZHMiOm51bGwsImFkZHJlc3MyIjp0cnVlLCJhZGRyZXNzMSI6dHJ1ZSwiY2FyZEFsaWdubWVudCI6InBpY29ucy1jZW50ZXIiLCJncm91cExvZ29EZXNpZ24iOm51bGwsImdyb3VwT3BlbkhvdXJzRGVzaWduIjpudWxsLCJmZWF0TWVzc2FnZUdyb3VwIjpudWxsLCJrZXl3b3Jkc0J1bGxldCI6ImJ1bGxldCIsInRvZ2dsZUgzRW1haWwiOm51bGwsInNlcnZpY2VzQnVsbGV0IjpudWxsLCJncm91cEJyYW5kc0Rlc2lnbiI6bnVsbCwicHJvZHVjdHNCdWxsZXQiOiJidWxsZXQiLCJsYW5ndWFnZXNHcm91cCI6bnVsbCwiaG91cnNHcm91cCI6bnVsbH0="> <p class="openHours"> <span class="bold">Hours:</span> 913 <span class="status bold"></span> 914</p> 915 <div class="editorOnlyInfo" data-nosnippet="">This is a placeholder for the Yext Knolwedge Tags. This message will not appear on the live site, but only within the editor. The Yext Knowledge Tags are successfully installed and will be added to the website.</div> 916 <div class="wrongScriptError" data-nosnippet=""><!--The Yext script you entered is empty or incorrect: .<br/>--><!--It should look like:<br/>--><!-- <pre>--><!-- <code>--><!--<script async defer src="https://knowledgetags.yextpages.net/embed?key=KEY&account_id=ACCOUNT_ID&location_id=LOCATIONS_ID" type="text/javascript"></script>--><!-- </code>--><!--</pre>--></div> 917<!-- Load Yext Script into page source so schema validates with Structured Data testing tool --></div> 918</div> 919</div> 920</div> 921 <div class="dmRespRow u_1789767812 fullBleedChanged fullBleedMode" id="1789767812"> <div class="dmRespColsWrapper" id="1215743100"> <div class="dmRespCol small-12 large-3 medium-3 u_1741097050" id="1741097050"> <div class="u_1612878852 graphicWidget" data-element-type="graphic" data-widget-type="graphic" id="1612878852" data-anim-desktop="fadeIn"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 70 70" id="1248087092" class="svg u_1248087092" data-icon-name="wp-location_map_thin"> <g> <path d="M60,58.7l-5-18c-0.1-0.3-0.3-0.5-0.6-0.6l-9-4C45.2,36,45,36,44.8,36l-3,0.7c-0.5,0.8-0.9,1.5-1.3,2.3l3.5-0.8v6.1l-16,7.1 922 l0-9.7l2.5-0.5c-0.2-0.6-0.5-1.3-0.8-1.9L27.1,40l-8.7-3.9c-0.2-0.1-0.5-0.1-0.8,0c-0.3,0.1-0.4,0.3-0.6,0.5l-7,17 923 c-0.1,0.3-0.1,0.6,0,0.8c0.1,0.3,0.3,0.4,0.6,0.5l16,5c0.2,0.1,0.4,0.1,0.6,0L45,55l13.7,4.9c0.1,0,0.2,0.1,0.3,0.1 924 c0.2,0,0.5-0.1,0.7-0.3C60,59.5,60.1,59.1,60,58.7z M18.5,38.3l7.5,3.3l0,8.9l-8.9-8.9L18.5,38.3z M12.3,53.4l4-9.6l9.7,9.7v4.2 925 L12.3,53.4z M44,53.2l-16,4.4v-4l16-7.1V53.2z M55.5,50.1l-6-6l3.8-1.7L55.5,50.1z M46,38.5l5.5,2.5L46,43.5V38.5z M46,53.3v-7.6 926 l1.5-0.7l9,9l1,3.4L46,53.3z"></path> 927 <path d="M35,45c-0.8,0-1.3-0.5-1.6-1.5l0-0.1l-0.7-2.5c-1.3-3.7-3.6-7.5-6.7-11.1c-1.9-2.2-3-5-3-7.9C23,15.3,28.4,10,35,10 928 c6.6,0,12,5.3,12,11.9c0,2.9-1.1,5.7-3,7.9c-3.1,3.6-5.4,7.3-6.7,11.1l-0.7,2.5C36.3,44.5,35.8,45,35,45z M35,12 929 c-5.5,0-10,4.5-10,9.9c0,2.4,0.9,4.8,2.5,6.6c3.3,3.8,5.7,7.7,7.1,11.8l0.4,1.5l0.4-1.5c1.4-4.1,3.8-8.1,7.1-11.9 930 c1.6-1.8,2.5-4.2,2.5-6.6C45,16.5,40.5,12,35,12z"></path> 931 <path d="M35,27c-2.8,0-5-2.2-5-5s2.2-5,5-5c2.8,0,5,2.2,5,5S37.8,27,35,27z M35,19c-1.7,0-3,1.3-3,3s1.3,3,3,3c1.7,0,3-1.3,3-3 932 S36.7,19,35,19z"></path> 933</g> 934</svg> 935</div> 936 <div class="u_1455984476 dmNewParagraph" data-element-type="paragraph" id="1455984476" data-anim-desktop="fadeIn" style="line-height: initial; text-align: center;" data-version="5"><p><span style="color: rgb(255, 255, 255); display: initial;">Locally Owned Since 2010</span></p></div></div> 937 <div class="dmRespCol small-12 large-3 medium-3 u_1537867282" id="1537867282"> <div class="u_1636763837 graphicWidget" data-element-type="graphic" data-widget-type="graphic" id="1636763837" data-anim-desktop="fadeIn"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 100 100" id="1771136583" class="svg u_1771136583" data-icon-name="business_calendar_checkmark"> <path d="M60.75,17.88A21.4,21.4,0,0,0,39.41,38h-8V34.5a1.3,1.3,0,1,0-2.59,0V38H22.87a5,5,0,0,0-5,5V77.13a5,5,0,0,0,5,5H57.05a5,5,0,0,0,5-5V60.59a21.37,21.37,0,0,0-1.3-42.71ZM22.87,40.55H28.8V44a1.3,1.3,0,1,0,2.59,0V40.55h8a21.21,21.21,0,0,0,1.65,7H20.47V42.95A2.4,2.4,0,0,1,22.87,40.55ZM59.45,77.13a2.4,2.4,0,0,1-2.4,2.4H22.87a2.4,2.4,0,0,1-2.4-2.4v-27
937H42.38a21.51,21.51,0,0,0,4.25,5.12,3.12,3.12,0,0,0-.11.83v3.95a3.15,3.15,0,0,0,3.14,3.14h3.95a3.15,3.15,0,0,0,3.14-3,21.33,21.33,0,0,0,2.7.34ZM54.16,59.59v.47a.56.56,0,0,1-.55.55H49.67a.56.56,0,0,1-.55-.55V57.19A21.12,21.12,0,0,0,54.16,59.59ZM60.75,58a18.72,18.72,0,0,1-5.36-.78l-.3-.09-.67-.23-.17-.06-.78-.31,0,0A18.78,18.78,0,1,1,60.75,58Z"></path> 938 <path d="M55.92,49.83a4.47,4.47,0,0,1-3.17-1.31L47.25,43a1.3,1.3,0,0,1,1.83-1.83l5.5,5.5a1.89,1.89,0,0,0,2.67,0L72.41,31.53a1.3,1.3,0,0,1,1.83,1.83L59.09,48.52A4.47,4.47,0,0,1,55.92,49.83Z"></path> 939 <path d="M29.51,63.2H27.06a3.9,3.9,0,0,1-3.89-3.89V56.86A3.9,3.9,0,0,1,27.06,53h2.45a3.9,3.9,0,0,1,3.89,3.89v2.45A3.9,3.9,0,0,1,29.51,63.2Zm-2.45-7.64a1.3,1.3,0,0,0-1.3,1.3v2.45a1.3,1.3,0,0,0,1.3,1.3h2.45a1.3,1.3,0,0,0,1.3-1.3V56.86a1.3,1.3,0,0,0-1.3-1.3Z"></path> 940 <path d="M29.51,75.37H27.06a3.9,3.9,0,0,1-3.89-3.89V69a3.9,3.9,0,0,1,3.89-3.89h2.45A3.9,3.9,0,0,1,33.4,69v2.45A3.9,3.9,0,0,1,29.51,75.37Zm-2.45-7.64a1.3,1.3,0,0,0-1.3,1.3v2.45a1.3,1.3,0,0,0,1.3,1.3h2.45a1.3,1.3,0,0,0,1.3-1.3V69a1.3,1.3,0,0,0-1.3-1.3Z"></path> 941 <path d="M41.19,63.2H38.73a3.9,3.9,0,0,1-3.89-3.89V56.86A3.9,3.9,0,0,1,38.73,53h2.45a3.9,3.9,0,0,1,3.89,3.89v2.45A3.9,3.9,0,0,1,41.19,63.2Zm-2.45-7.64a1.3,1.3,0,0,0-1.3,1.3v2.45a1.3,1.3,0,0,0,1.3,1.3h2.45a1.3,1.3,0,0,0,1.3-1.3V56.86a1.3,1.3,0,0,0-1.3-1.3Z"></path> 942 <path d="M41.19,75.37H38.73a3.9,3.9,0,0,1-3.89-3.89V69a3.9,3.9,0,0,1,3.89-3.89h2.45A3.9,3.9,0,0,1,45.08,69v2.45A3.9,3.9,0,0,1,41.19,75.37Zm-2.45-7.64a1.3,1.3,0,0,0-1.3,1.3v2.45a1.3,1.3,0,0,0,1.3,1.3h2.45a1.3,1.3,0,0,0,1.3-1.3V69a1.3,1.3,0,0,0-1.3-1.3Z"></path> 943 <path d="M52.87,75.37H50.41a3.9,3.9,0,0,1-3.89-3.89V69a3.9,3.9,0,0,1,3.89-3.89h2.45A3.9,3.9,0,0,1,56.76,69v2.45A3.9,3.9,0,0,1,52.87,75.37Zm-2.45-7.64a1.3,1.3,0,0,0-1.3,1.3v2.45a1.3,1.3,0,0,0,1.3,1.3h2.45a1.3,1.3,0,0,0,1.3-1.3V69a1.3,1.3,0,0,0-1.3-1.3Z"></path> 944</svg> 945</div> 946 <div class="u_1319884357 dmNewParagraph" data-element-type="paragraph" id="1319884357" data-anim-desktop="fadeIn" style="line-height: initial; text-align: center;" data-version="5"><p><span style="display: initial; color: rgb(255, 255, 255);">Same-Day Service in Most Cases</span></p></div></div> 947 <div class="u_1290164977 dmRespCol small-12 large-3 medium-3" id="1290164977" data-anim-desktop="none"> <div class="u_1002996729 graphicWidget" data-element-type="graphic" data-widget-type="graphic" id="1002996729" data-anim-desktop="fadeIn"> <svg version="1.1" id="1751142978" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="80px" height="80px" viewbox="0 0 80 80" enable-background="new 0 0 80 80" xml:space="preserve" class="svg u_1751142978" data-icon-custom="true" data-icon-name="full-service-garage-doors-icon-5.svg"> <g> <g> <g> <g> <g> <path fill="#FFFFFF" d="M15.752,70.806c-0.716,0-1.314-0.558-1.363-1.274c-0.44-6.426-0.209-18.346,3.45-22.261 948 c0.948-1.017,2.124-1.553,3.403-1.553h0.602c0.249,0.002,0.496,0.007,0.739,0.007c2.548,0,4.823-0.26,6.86-3.443 949 c0.253-0.394,0.683-0.632,1.154-0.632c0.261,0,0.515,0.075,0.735,0.216c0.633,0.408,0.82,1.254,0.414,1.888 950 c-2.646,4.134-5.943,4.703-9.113,4.703c-0.274,0-0.542-0.004-0.802-0.006l-0.585-0.004c-0.528,0-0.976,0.218-1.412,0.687 951 c-3.279,3.516-2.876,16.799-2.819,18.3c0.013,0.357,0.308,0.642,0.667,0.642h6.058c0.369,0,0.667-0.299,0.667-0.667V53.178 952 c0-0.751,0.614-1.364,1.366-1.364c0.754,0,1.366,0.613,1.366,1.364v2.916c0,0.235,0.125,0.454,0.33,0.576 953 c3.656,2.137,7.989,3.267,12.531,3.267c4.543,0,8.876-1.127,12.53-3.267c0.207-0.119,0.332-0.341,0.332-0.576v-2.916 954 c0-0.751,0.613-1.364,1.367-1.364c0.749,0,1.363,0.613,1.363,1.364v14.229c0,0.365,0.298,0.666,0.665,0.666h6.063 955 c0.355,0,0.652-0.284,0.664-0.644c0.056-1.503,0.456-14.789-2.822-18.298c-0.434-0.468-0.882-0.687-1.408-0.687l-0.577,0.004
956 c-0.255,0.002-0.507,0.004-0.768,0.004c-2.974,0-6.377-0.363-9.154-4.703c-0.405-0.634-0.219-1.479,0.415-1.887 957 c0.219-0.139,0.472-0.211,0.731-0.211c0.473,0,0.903,0.235,1.156,0.629c2.034,3.181,4.313,3.441,6.863,3.441 958 c0.242,0,0.49-0.005,0.738-0.006h0.6c1.277,0,2.456,0.536,3.402,1.551c3.659,3.915,3.891,15.836,3.449,22.261 959 c-0.049,0.716-0.648,1.274-1.36,1.274H15.752V70.806z M27.807,60.012c-0.126,0-0.25,0.033-0.358,0.104 960 c-0.192,0.123-0.31,0.335-0.31,0.562v6.727c0,0.368,0.298,0.669,0.666,0.669h24.389c0.371,0,0.666-0.301,0.666-0.669v-6.727 961 c0-0.228-0.115-0.439-0.307-0.562c-0.111-0.071-0.234-0.104-0.359-0.104c-0.096,0-0.193,0.021-0.283,0.063 962 c-3.613,1.689-7.729,2.578-11.911,2.578c-4.181,0-8.299-0.889-11.912-2.578C28,60.033,27.902,60.012,27.807,60.012z"></path> 963</g> 964</g> 965</g> 966 <g> <g> <g> <path fill="#FFFFFF" d="M41.991,9.195c9.221,0.606,11.25,5.623,11.536,13.521c0.012,0.357,0.305,0.644,0.665,0.644h0.04 967 c0.749,0,1.363,0.611,1.363,1.363c0,0.753-0.614,1.366-1.363,1.366h-2.22c-0.35,0-0.641,0.27-0.664,0.619 968 C50.715,35.625,45.77,42.35,39.847,42.35c-5.922,0-10.866-6.724-11.5-15.641c-0.023-0.35-0.314-0.619-0.666-0.619h-1.91 969 c-0.753,0-1.365-0.612-1.365-1.365c0-0.752,0.614-1.363,1.365-1.363h0.034c0.36,0,0.656-0.286,0.668-0.645 970 c0.274-8.124,2.248-12.939,11.536-13.522 M31.759,26.09c-0.187,0-0.364,0.079-0.492,0.217c-0.126,0.136-0.19,0.322-0.173,0.507 971 c0.629,7.3,4.394,12.803,8.753,12.803c4.36,0,8.123-5.503,8.754-12.803c0.017-0.187-0.046-0.369-0.176-0.507 972 c-0.125-0.138-0.302-0.217-0.488-0.217H31.759z M37.969,11.926c-0.014,0.001-0.028,0.001-0.042,0.003 973 c-6.343,0.394-8.463,3.003-8.724,10.741c-0.004,0.181,0.062,0.356,0.187,0.486c0.126,0.131,0.299,0.204,0.48,0.204h20.259 974 c0.184,0,0.354-0.074,0.48-0.205s0.193-0.305,0.187-0.487c-0.277-7.709-2.395-10.319-8.72-10.735 975 c-0.017-0.003-0.028-0.003-0.041-0.003"></path> 976</g> 977</g> 978</g> 979</g> 980</g> 981</svg> 982</div> 983 <div class="u_1264292235 dmNewParagraph" data-element-type="paragraph" id="1264292235" data-anim-desktop="fadeIn" style="line-height: initial; text-align: center;" data-version="5"><p><span style="display: initial; color: rgb(255, 255, 255);">Specialize in Older Doors and Safety Inspections</span></p></div></div> 984 <div class="dmRespCol large-3 medium-3 small-12 u_1650858889" id="1650858889"> <div class="u_1051656202 graphicWidget" data-element-type="graphic" data-widget-type="graphic" id="1051656202" data-anim-desktop="fadeIn"> <svg version="1.1" id="1761262515" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="80px" height="80px" viewbox="0 0 80 80" enable-background="new 0 0 80 80" xml:space="preserve" class="svg u_1761262515" data-icon-custom="true" data-icon-name="repair-tools2.svg"> <g> <g> <g> <g> <g> <path fill="#FFFFFF" d="M53.008,64.611c-3.099,0-6.059-1.184-8.121-3.247c-2.173-2.173-3.401-5.033-3.457-8.053 985 c-0.018-0.941,0.092-1.907,0.325-2.867c0.041-0.171-0.009-0.353-0.134-0.477l-4.616-4.616 986 c-0.095-0.096-0.224-0.148-0.358-0.148h0c-0.134,0-0.263,0.054-0.358,0.148l-3.982,3.99c-0.197,0.198-0.197,0.519,0,0.715 987 l3.53,3.529c0.196,0.195,0.303,0.455,0.303,0.732c0,0.276-0.107,0.536-0.303,0.73c-0.196,0.197-0.456,0.304-0.732,0.304 988 c-0.277,0-0.537-0.106-0.732-0.304l-0.981-0.981c-0.099-0.099-0.229-0.148-0.358-0.148c-0.129,0-0.259,0.05-0.357,0.148 989 l-9.64,9.64c-0.577,0.575-1.354,0.894-2.189,0.894c-0.885,0-1.722-0.351-2.357-0.984l-1.928-1.929 990 c-1.277-1.28-1.32-3.32-0.093-4.547l9.64-9.64c0.198-0.198,0.198-0.518,0-0.716l-0.982-0.983 991 c-0.196-0.195-0.304-0.456-0.304-0.731c0-0.276,0.108-0.536,0.304-0.732c0.196-0.195,0.456-0.303,0.731-0.303 992 c0.276,0,0.537,0.107,0.732,0.303l3.54,3.54c0.095,0.094,0.223,0.147,0.358,0.147l0,0c0.135,0,0.263-0.054,0.358-0.147 993 l3.982-3.99c0.197-0.199,0.196-0.519-0.001-0.716l-4.617-4.617c-0.097-0.096-0.225-0.149-0.358-0.149 994 c-0.039,0-0.08,0.005-0.119,0.015c-0.894,0.217-1.785,0.328-2.648,0.328h-0.007c-0.071,0-0.141,0-0.21-0.001 995 c-3.022-0.058-5.883-1.286-8.054-3.457c-3.205-3.206-4.144-8.336-2.337-12.766c0.13-0.322,0.412-0.555,0.752-0.624 996 c0.061-0.011,0.131-0.018,0.2-0.018c0.283,0,0.544,0.106,0.736,0.3l5.789,5.787c0.099,0.099,0.229,0.148,0.358,0.148 997 s0.259-0.049,0.358-0.148l2.585-2.585c0.198-0.198,0.198-0.519,0-0.716l-5.785-5.788c-0.247-0.246-0.352-0.597-0.283-0.938 998 c0.068-0.34,0.301-0.622,0.624-0.752c1.479-0.604,3.041-0.909,4.643-0.909c3.099,0,6.059,1.183,8.121,3.247 999 c2.91,2.91,4.096,7.149,3.092,11.06c-0.044,0.174,0.006,0.357,0.133,0.484l4.563,4.564c0.095,0.094,0.224,0.148,0.357,0.148 1000 s0.264-0.054,0.358-0.148l10.241-10.243c0.198-0.198,0.198-0.518,0-0.715l-0.441-0.442c-0.403-0.404-0.403-1.06,0-1.464 1001 l6.166-6.166c0.195-0.195,0.455-0.302,0.731-0.302s0.536,0.107,0.732,0.302l3.069,3.072c0.403,0.403,0.403,1.06,0,1.463 1002 l-6.164,6.165c-0.196,0.196-0.456,0.303-0.732,0.303s-0.536-0.107-0.732-0.303l-0.449-0.449 1003 c-0.098-0.099-0.228-0.148-0.357-0.148c-0.129,0-0.259,0.049-0.357,0.148L44.538,37.1c-0.196,0.198-0.196,0.518,0,0.716 1004 l4.564,4.564c0.096,0.096,0.225,0.147,0.357,0.147c0.042,0,0.085-0.006,0.127-0.016c0.91-0.233,1.854-0.352,2.803-0.352 1005 c3.104,0,6.035,1.223,8.256,3.443c3.206,3.204,4.146,8.335,2.339,12.766c-0.131,0.322-0.412,0.556-0.754,0.624 1006 c-0.063,0.012-0.134,0.02-0.202,0.02c-0.279,0-0.54-0.108-0.735-0.302l-5.787-5.787c-0.094-0.096-0.223-0.149-0.357-0.149 1007 c-0.134,0-0.263,0.054-0.357,0.149l-2.586,2.587c-0.198,0.197-0.198,0.519,0,0.715l5.786,5.786
1008 c0.246,0.246,0.351,0.595,0.282,0.936c-0.068,0.342-0.301,0.623-0.622,0.755C56.173,64.306,54.611,64.611,53.008,64.611z 1009 M27.93,48.815c-0.129,0-0.259,0.05-0.357,0.149l-9.641,9.641c-0.213,0.213-0.315,0.521-0.282,0.843 1010 c0.03,0.288,0.165,0.564,0.377,0.776l1.925,1.926c0.243,0.243,0.569,0.382,0.896,0.382c0.28,0,0.538-0.103,0.725-0.288 1011 l9.639-9.64c0.198-0.198,0.198-0.519,0-0.717l-2.923-2.923C28.189,48.865,28.06,48.815,27.93,48.815z M52.38,44.221 1012 c-2.403,0-4.641,0.913-6.302,2.575c-1.709,1.708-2.624,4.009-2.578,6.476c0.046,2.485,1.059,4.838,2.85,6.629 1013 c1.672,1.669,4.106,2.628,6.684,2.628c0.438,0,0.878-0.028,1.311-0.084c0.191-0.024,0.352-0.155,0.414-0.338 1014 c0.062-0.183,0.015-0.386-0.122-0.521l-4.057-4.058c-0.437-0.436-0.684-1.016-0.697-1.632c-0.01-0.628,0.226-1.216,0.663-1.654 1015 l2.979-2.979c0.439-0.44,0.968-0.664,1.567-0.664L55.17,50.6c0.621,0.013,1.2,0.259,1.638,0.697l4.06,4.059 1016 c0.097,0.097,0.226,0.148,0.358,0.148c0.055,0,0.109-0.009,0.163-0.026c0.183-0.063,0.314-0.224,0.338-0.415 1017 c0.386-3.03-0.566-6.019-2.546-7.995C57.345,45.231,54.93,44.221,52.38,44.221z M36.863,33.277 1018 c-0.021,0-0.041,0.001-0.061,0.003c-0.154,0.019-0.292,0.108-0.372,0.24c-0.464,0.766-0.999,1.452-1.587,2.042 1019 c-0.621,0.62-1.345,1.177-2.151,1.656c-0.135,0.079-0.225,0.217-0.245,0.372c-0.019,0.154,0.034,0.31,0.145,0.42l9.573,9.574 1020 c0.095,0.097,0.225,0.149,0.358,0.149c0.021,0,0.042-0.002,0.063-0.005c0.153-0.019,0.292-0.109,0.372-0.245 1021 c0.479-0.81,1.036-1.533,1.654-2.152c0.589-0.587,1.274-1.12,2.041-1.586c0.134-0.08,0.222-0.219,0.24-0.373 1022 c0.019-0.153-0.035-0.309-0.145-0.418l-9.529-9.529C37.125,33.33,36.996,33.277,36.863,33.277z M18.232,25.39 1023 c-0.055,0-0.11,0.008-0.164,0.027c-0.183,0.062-0.313,0.224-0.338,0.416c-0.384,3.027,0.567,6.016,2.545,7.994 1024 c1.793,1.792,4.147,2.804,6.627,2.85c0.078,0.002,0.16,0.003,0.242,0.003c2.357,0,4.571-0.917,6.236-2.583 1025 c1.713-1.713,2.626-4.024,2.572-6.506c-0.054-2.475-1.065-4.817-2.845-6.598c-1.67-1.67-4.108-2.628-6.69-2.628 1026 c-0.435,0-0.873,0.028-1.303,0.083c-0.191,0.025-0.353,0.156-0.415,0.338c-0.063,0.183-0.016,0.385,0.121,0.521l4.058,4.06 1027 c0.914,0.915,0.93,2.387,0.036,3.284l-2.98,2.98c-0.427,0.425-0.999,0.66-1.611,0.66c-0.631,0-1.226-0.247-1.674-0.695 1028 l-4.06-4.058C18.494,25.442,18.364,25.39,18.232,25.39z M56.321,24.753c0.098,0.099,0.228,0.148,0.356,0.148 1029 c0.13,0,0.26-0.049,0.358-0.148l3.986-3.986c0.094-0.095,0.147-0.223,0.147-0.358c0-0.134-0.054-0.263-0.147-0.357 1030 l-0.892-0.891c-0.099-0.099-0.229-0.148-0.358-0.148c-0.129,0-0.259,0.049-0.357,0.148l-3.985,3.985
1031 c-0.095,0.095-0.148,0.224-0.148,0.357c0,0.135,0.054,0.263,0.148,0.358l0.439,0.439L56.321,24.753z"></path> 1032</g> 1033</g> 1034</g> 1035</g> 1036</g> 1037</svg> 1038</div> 1039 <div class="u_1412100118 dmNewParagraph" data-element-type="paragraph" id="1412100118" data-anim-desktop="fadeIn" style="line-height: initial; text-align: center;" data-version="5"><p class="text-align-center"><span style="display: initial; color: rgb(255, 255, 255);">Specializing in Service and Repair (Service Only Business)</span><span class="font-size-15" style="color: rgb(255, 255, 255); display: initial;"><br/></span></p></div></div> 1040</div> 1041</div> 1042</div> 1043</div> 1044</div> 1045 <div class="dmRespRow u_1903220448" id="1903220448"> <div class="dmRespColsWrapper" id="1177399513"> <div class="dmRespCol large-12 medium-12 small-12 u_1405187534" id="1405187534"> <div class="u_1473795881 dmNewParagraph" id="1473795881" data-element-type="paragraph" style="display: block; line-height: initial; text-align: center;" data-version="5"> <h2><span style="display: initial;">Repairing and Maintaining High-Quality Garage Doors</span></h2> 1046</div> <div class="u_1302003413 dmNewParagraph" id="1302003413" background-image="" :="" style="line-height:initial;" data-version="5" new-inline-bind-applied="true" data-diy-text=""><p class="text-align-center" style="line-height: 1.5;"><span style="display: initial;">Full Service Garage Doors is the leading provider of quality garage door services in Fort Collins and Loveland, CO, and the nearby areas. We provide everything from garage door repair and garage door installation to periodic maintenance services. Rest assured knowing that we are fully equipped to meet all your garage door needs. We also have the capability to install garage door openers from some of the most trusted brands. </span></p><p class="text-align-center" style="line-height: 1.5;"><span style="display: initial;"><br/></span></p><p class="text-align-center" style="line-height: 1.5;"><span style="display: initial; font-weight: 700;">Superior Quality Garage Door Repairs</span></p><p class="text-align-center" style="line-height: 1.5;"><span style="display: initial;"><br/></span></p><p class="text-align-center" style="line-height: 1.5;"><span class="" style="display: initial;"><span style="display: initial;">If your garage doors are no longer opening and closing as they should, you can depend on us to provide you with effective garage door repairs. Whether you need garage door spring repair or garage door opener repair, you can depend on us to provide you with the best solutions. Our skilled team provides effective repairs for all makes and models of garage doors. When you need expert repair for your garage doors, contact us to get the outstanding garage door repair you need. </span> 1047</span> 1048</p><p class="text-align-center" style="line-height: 1.5;"><span style="display: initial;"><br/></span></p><p class="text-align-center" style="line-height: 1.5;"><span style="display: initial; font-weight: 700;">Free Estimates on Our Garage Door Services</span></p><p class="text-align-center" style="line-height: 1.5;"><span style="display: initial;"><br/></span></p><p class="text-align-center" style="line-height: 1.5;"><span style="display: initial;">When you need outstanding garage doors and garage door services, you can turn to Full Service Garage Doors for the help you need. Contact us today to receive a FREE estimate on any of our garage door products and services. We also offer discounts to senior citizens as well as military discounts. Give us a call today for outstanding garage door services by calling us at <span class="inline-data-binding" data-encoded-value="KDk3MCkgNDcyLTE3Njc=" data-inline-binding="content_library.global.phone.main phone"><span>(970) 472-1767</span></span>. You can also request a service with our </span><a href="/request-service-form" runtime_url="/request-service-form" type="page" style="display: initial;">online form</a><span style="display: initial;">.</span></p></div></div> 1049</div> 1050</div> 1051 <div class="dmRespRow u_1784153683 fullBleedChanged fullBleedMode" style="text-align: center;" id="1784153683"> <div class="dmRespColsWrapper" id="1646837932"> <div class="dmRespCol small-12 medium-4 large-4 u_1840706488" id="1840706488"> <div class="graphicWidget u_1451461055" data-element-type="graphic" data-widget-type="graphic" id="1451461055" data-anim-extended="eyJtb2JpbGUiOnsidHJpZ2dlciI6ImVudHJhbmNlIiwiYW5pbWF0aW9uIjoiYm91bmNlSW4ifSwiZGVza3RvcCI6eyJ0cmlnZ2VyIjoiZW50cmFuY2UiLCJhbmltYXRpb24iOiJ6b29tSW4ifX0=" data-anim-mobile="bounceIn" data-anim-desktop="zoomIn"> <svg version="1.1" id="1808845151" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="80px" height="80px" viewbox="0 0 80 80" enable-background="new 0 0 80 80" xml:space="preserve" class="svg u_1808845151" data-icon-custom="true" data-icon-name="full-service-garage-doors-icon copy.svg"> <path fill-rule="evenodd" clip-rule="evenodd" fill="#1887C3" d="M16.466,37.726v24.653h47.068V37.726H16.466L16.466,37.726z 1052 M40,17.621l35.134,15.892l-1.065,2.468L40,20.571L5.932,35.98l-1.065-2.468L40,17.621L40,17.621z M71.104,35.744v26.635h-5.965 1053 V36.655C57.262,35.143,48.631,34.387,40,34.387s-17.262,0.756-25.139,2.268v25.724H8.896V35.744L40,21.675L71.104,35.744 1054 L71.104,35.744z M19.255,40.731h5.783v2.547h-5.783V40.731L19.255,40.731z M54.962,40.731h5.783v2.547h-5.783V40.731L54.962,40.731z 1055 M47.82,40.731h5.783v2.547H47.82V40.731L47.82,40.731z M40.679,40.731h5.783v2.547h-5.783V40.731L40.679,40.731z M33.538,40.731 1056 h5.783v2.547h-5.783V40.731L33.538,40.731z M26.396,40.731h5.783v2.547h-5.783V40.731z"></path> 1057</svg> 1058</div> 1059 <div class="u_1950372138 dmNewParagraph" data-element-type="paragraph" id="1950372138" style="transition: opacity 1s ease-in-out 0s; text-align: center;" data-version="5"> <h3><span style="display: initial;">Full-Service Repairs</span></h3> 1060</div> <div class="u_1271611737 dmDividerWrapper clearfix" data-element-type="dDividerId" data-layout="divider-style-1" data-widget-version="2" id="1271611737" layout="divider-style-4"><hr class="dmDivider" style="border-width:2px; border-top-style:solid; color:grey;" id="1984595988"/></div> 1061 <div class="u_1016540300 dmNewParagraph text-align-center" id="1016540300" style="transition: opacity 1s ease-in-out 0s; text-align: center;" data-version="5"><p class="text-align-center"><span style="display: initial;">Full Service Garage Doors repairs broken springs, cables and more for all makes and models of garage doors. </span></p></div> <a data-display-type="block" class="u_1877867381 align-center dmButtonLink dmWidget dmWwr default dmOnlyButton dmDefaultGradient" file="false" href="/garage-door-services" data-element-type="dButtonLinkId" id="1877867381"> <span class="iconBg" id="1620732028"> <span class="icon hasFontIcon icon-star" id="1616021453"></span> 1062</span> 1063 <span class="text" id="1244408245">Learn More</span> 1064</a> 1065</div> 1066 <div class="dmRespCol small-12 medium-4 large-4 u_1327278726" id="1327278726"> <div class="graphicWidget u_1459191190" data-element-type="graphic" data-widget-type="graphic" id="1459191190" data-anim-extended="eyJtb2JpbGUiOnsidHJpZ2dlciI6ImVudHJhbmNlIiwiYW5pbWF0aW9uIjoiYm91bmNlSW4ifSwiZGVza3RvcCI6eyJ0cmlnZ2VyIjoiZW50cmFuY2UiLCJhbmltYXRpb24iOiJ6b29tSW4ifX0=" data-anim-mobile="bounceIn" data-anim-desktop="zoomIn"> <svg version="1.1" id="1473375591" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="80px" height="80px" viewbox="0 0 80 80" enable-background="new 0 0 80 80" xml:space="preserve" class="svg u_1473375591" data-icon-custom="true" data-icon-name="full-service-garage-doors-icon-2.svg"> <g> <path fill-rule="evenodd" clip-rule="evenodd" fill="#1887C3" d="M51.57,63.17V38.03H20.154v25.14H51.57L51.57,63.17z 1067 M53.293,63.17h8v-3.327h-8V63.17L53.293,63.17z M61.293,58.747h-8v-22.44h-14.96v-1.77h-4.94v1.77H18.432v22.44h-8.001v-27.12 1068 h50.862V58.747L61.293,58.747z M62.406,30.532v-1.907h5.113v-2.213L54.193,16.83H17.531L4.205,26.412v2.213h
10685.113v1.907H62.406 1069 L62.406,30.532z M10.431,59.843v3.327h8.001v-3.327H10.431z"></path> 1070 <path fill="#1887C3" d="M72.25,54.885V43.372c2.086-0.895,3.545-2.965,3.545-5.377c0-2.5-1.568-4.628-3.775-5.466v5.149h-4.15 1071 v-5.149c-2.207,0.838-3.775,2.966-3.775,5.466c0,2.412,1.459,4.482,3.545,5.377v11.513c-1.375,0.798-2.301,2.281-2.301,3.982 1072 c0,1.968,1.236,3.643,2.973,4.303v-4.054h3.268v4.054c1.736-0.66,2.973-2.335,2.973-4.303 1073 C74.551,57.166,73.625,55.683,72.25,54.885z"></path> 1074</g> 1075</svg> 1076</div> 1077 <div class="u_1771770256 dmNewParagraph" data-element-type="paragraph" id="1771770256" style="transition: opacity 1s ease-in-out 0s; text-align: center;" data-version="5"> <h3><span style="display: initial;">Broken Spring Repairs</span></h3> 1078</div> <div class="u_1365675872 dmDividerWrapper clearfix" data-element-type="dDividerId" data-layout="divider-style-1" data-widget-version="2" id="1365675872" layout="divider-style-4"><hr class="dmDivider" style="border-width:2px; border-top-style:solid; color:grey;" id="1696692223"/></div> 1079 <div class="u_1449905438 dmNewParagraph" id="1449905438" style="transition: opacity 1s ease-in-out 0s; text-align: center;" data-version="5"><p class="text-align-center"><span style="display: initial;"> If your garage door spring is broken, count on our team to install or repair it for you so that it functions like new again.</span></p></div> <a data-display-type="block" class="u_1842535959 align-center dmButtonLink dmWidget dmWwr default dmOnlyButton dmDefaultGradient" file="false" href="/broken-garage-door-springs" data-element-type="dButtonLinkId" id="1842535959"> <span class="iconBg" id="1133130300"> <span class="icon hasFontIcon icon-star" id="1611630530"></span> 1080</span> 1081 <span class="text" id="1766779049">Learn More</span> 1082</a> 1083</div> 1084 <div class="dmRespCol small-12 medium-4 large-4 u_1799714587" id="1799714587"> <div class="u_1440374864 graphicWidget" data-element-type="graphic" data-widget-type="graphic" id="1440374864" data-anim-extended="eyJtb2JpbGUiOnsidHJpZ2dlciI6ImVudHJhbmNlIiwiYW5pbWF0aW9uIjoiYm91bmNlSW4ifSwiZGVza3RvcCI6eyJ0cmlnZ2VyIjoiZW50cmFuY2UiLCJhbmltYXRpb24iOiJ6b29tSW4ifX0=" data-anim-mobile="bounceIn" data-anim-desktop="zoomIn"> <svg version="1.1" id="1567373459" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="80px" height="80px" viewbox="0 0 80 80" enable-background="new 0 0 80 80" xml:space="preserve" class="svg u_1567373459" data-icon-custom="true" data-icon-name="full-service-garage-doors-icon-3.svg"> <path fill-rule="evenodd" clip-rule="evenodd" fill="#1887C3" d="M4.575,28.988l31.87-8.439v-1.824h7.109v1.824l31.87,8.439 1085 l-0.748,2.843l-1.823-0.482v29.927h-4.071V35.462H41.559v25.813h-3.117V35.462H11.219v25.813H7.146V31.349l-1.823,0.482 1086 L4.575,28.988L4.575,28.988z M43.054,36.958v24.234h24.233V36.958H43.054L43.054,36.958z M12.713,36.958v24.234h24.233V36.958 1087 H12.713L12.713,36.958z M15.104,39.325v2h2.842v-2H15.104L15.104,39.325z M18.533,39.325v2h2.707v-2H18.533L18.533,39.325z 1088 M21.828,39.325v2h2.708v-2H21.828L21.828,39.325z M25.124,39.325v2h2.707v-2H25.124L25.124,39.325z M28.42,39.325v2h2.707v-2H28.42 1089 L28.42,39.325z M31.715,39.325v2h2.841v-2H31.715L31.715,39.325z M34.556,41.913h-2.841v2.001h2.841V41.913L34.556,41.913z 1090 M31.127,43.914v-2.001H28.42v2.001H31.127L31.127,43.914z M27.831,43.914v-2.001h-2.707v2.001H27.831L27.831,43.914z 1091 M24.536,43.914v-2.001h-2.708v2.001H24.536L24.536,43.914z M21.24,43.914v-2.001h-2.707v2.001H21.24L21.24,43.914z M17.945,43.914 1092 v-2.001h-2.842v2.001H17.945L17.945,43.914z M9.772,32.906h60.455v-1.177H9.772V32.906L9.772,32.906z M45.444,39.325v2h2.841v-2 1093 H45.444L45.444,39.325z M48.873,39.325v2h2.708v-2H48.873L48.873,39.325z M52.169,39.325v2h2.707v-2H52.169L52.169,39.325z 1094 M55.464,39.325v2h2.708v-2H55.464L55.464,39.325z M58.76,39.325v2h2.708v-2H58.76L58.76,39.325z M62.056,39.325v2h2.841v-2H62.056 1095 L62.056,39.325z M64.896,41.913h-2.841v2.001h2.841V41.913L64.896,41.913z M61.468,43.914v-2.001H58.76v2.001H61.468L61.468,43.914z 1096 M58.172,43.914v-2.001h-2.708v2.001H58.172L58.172,43.914z M54.876,43.914v-2.001h-2.707v2.001H54.876L54.876,43.914z 1097 M51.581,43.914v-2.001h-2.708v2.001H51.581L51.581,43.914z M48.285,43.914v-2.001h-2.841v2.001H48.285z"></path> 1098</svg> 1099</div> 1100 <div class="u_1844422975 dmNewParagraph" data-element-type="paragraph" id="1844422975" style="transition: opacity 1s ease-in-out 0s; text-align: center;" data-version="5"> <h3><span style="display: initial;">Garage Door Openers</span></h3> 1101</div> <div class="u_1475778066 dmDividerWrapper clearfix" data-element-type="dDividerId" data-layout="divider-style-1" data-widget-version="2" id="1475778066" layout="divider-style-4"><hr class="dmDivider" style="border-width:2px; border-top-style:solid; color:grey;" id="1852209255"/></div> 1102 <div class="u_1871141080 dmNewParagraph" id="1871141080" style="transition: opacity 1s ease-in-out 0s; text-align: center;" data-version="5"><p class="text-align-center"><span style="display: initial;">Select from a wide range of accessories, available in different drives including chains, belts and horsepower models. </span></p></div> <a data-display-type="block" class="u_1610952190 align-center dmButtonLink dmWidget dmWwr default dmOnlyButton dmDefaultGradient" file="false" href="/garage-door-openers" data-element-type="dButtonLinkId" id="1610952190"> <span class="iconBg" id="1817922121"> <span class="icon hasFontIcon icon-star" id="1353625160"></span> 1103</span> 1104 <span class="text" id="1685128995">Learn More</span> 1105</a> 1106</div> 1107</div> 1108</div> 1109 <div class="u_1790033042 dmRespRow" style="text-align: center;" id="1790033042"> <div class="dmRespColsWrapper" id="1049031230"> <div class="u_1566023970 dmRespCol small-12 large-1 medium-1 hide-for-small" id="1566023970"> <div data-element-type="spacer" class="dmSpacer u_1778726359" id="1778726359"></div> 1110</div>
1111 <div class="u_1361337643 dmRespCol small-12 large-5 medium-5" id="1361337643"> <div class="u_1453346229 graphicWidget" data-element-type="graphic" data-widget-type="graphic" id="1453346229"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 70 70" id="1284017142" class="svg u_1284017142" data-icon-name="wp-chat"> <g> <path d="M57,12H13c-1.7,0-3,1.3-3,3v32c0,1.7,1.3,3,3,3h16l6,8l6-8h16c1.7,0,3-1.3,3-3V15C60,13.3,58.7,12,57,12z M50,40H20v-2h30 1112 V40z M50,32H20v-2h30V32z M50,24H20v-2h30V24z"></path> 1113</g> 1114</svg> 1115</div> 1116 <div class="u_1018128027 dmNewParagraph" data-element-type="paragraph" id="1018128027" style="transition:opacity 1s ease-in-out 0s;line-height:initial;" data-version="5"> <h1 class="text-align-left size-36" style="line-height: 1.5;"><span class="font-size-36" style="display: initial; color: rgb(17, 17, 17);">Here's what our satisfied customers are saying...</span></h1> 1117</div></div> 1118 <div class="u_1048144101 dmRespCol small-12 large-6 medium-6" id="1048144101"> <div class="widget-3e968b u_1974664623 dmCustomWidget" data-lazy-load="true" data-title="" id="1974664623" dmle_extension="custom_extension" data-element-type="custom_extension" wr="false" icon="false" surround="false" data-widget-id="3e968bda541d4f4f8b9603cdc9dd8de6" data-widget-version="16" data-widget-config="eyJNZXJjaGFudElEIjoiNTMyOCIsIkRhdGFMaW5lcyI6IjIiLCJEYXRhTnVtIjoiMiIsIlRydW5jYXRlRGVzdCI6Ii9yZXZpZXdzIn0="> <div id="recentReviewsWidget" data-merchant="5328" data-lines="2" data-num="2" data-truncate-dest="/reviews" data-randomize="false" data-third-party="true"></div> 1119</div> 1120</div> 1121</div> 1122</div> 1123 <div class="dmRespRow u_1469712765 hasBackgroundOverlay lazy" id="1469712765" data-background-image="https://le-cdn.hibuwebsites.com/a18e963a07b74c3894ec4c687e53ed93/dms3rep/multi/opt/full-service-garage-doors-video-1920w.jpg"> <div class="dmRespColsWrapper" id="1856610831"> <div class="dmRespCol large-12 medium-12 small-12 u_1016090962" id="1016090962"> <div class="u_1634615698 widget-ca4188 dmCustomWidget" data-lazy-load="" data-title="" id="1634615698" dmle_extension="custom_extension" data-element-type="custom_extension" icon="false" surround="false" data-widget-id="ca4188fe92024514a23a858f63ab6658" data-widget-version="12" data-widget-config="eyJ2aWRUaXRsZTEiOiJMZWFybiBNb3JlIEFib3V0IiwidmlkVGl0bGUyIjoiRnVsbCBTZXJ2aWNlIEdhcmFnZSBEb29ycyIsInBsYXlJY29uIjoiaHR0cHM6Ly9jZG4ud2Vic2l0ZXMuaGlidS5jb20vZThkNjlmZTAwYzIzNDdhN2FhYTE2MjYxNDYzZjQ0YzMvZG1zM3JlcC9tdWx0aS92aWQtc3BsYXNoLXBsYXkucG5nIiwicGxheUxpbmsiOnsidmFsdWUiOiJidWlsZC15b3VyLW93bi1pbnNpdGU0IiwidHlwZSI6InBvcHVwIiwiaHJlZiI6Ii9idWlsZC15b3VyLW93bi1pbnNpdGU0IiwicmF3X3VybCI6Ii9zaXRlL2ExOGU5NjNhMDdiNzRjMzg5NGVjNGM2ODdlNTNlZDkzL2J1aWxkLXlvdXItb3duLWluc2l0ZTQ/bmVlPXRydWUmZWQ9dHJ1ZSZzaG93T3JpZ2luYWw9dHJ1ZSZwcmV2aWV3PXRydWUmZG1fdHJ5X21vZGU9dHJ1ZSZkbV9jaGVja1N5bmM9MSIsInBvcHVwX3RhcmdldCI6ImJ1aWxkLXlvdXItb3duLWluc2l0ZTQiLCJsaW5rX3R5cGUiOiJwb3B1cCJ9LCJwbGF5SWNvbkFsdCI6IlBsYXkgVmlkZW8iLCJ2aWRUaXRsZSI6IldhdGNoIE91ciBWaWRlbyIsIm5hbWUiOiJGdWxsIFNlcnZpY2UgR2FyYWdlIERvb3JzIiwiZGVzY3JpcHRpb24iOiJXZSBvZmZlciBnYXJhZ2UgZG9vciByZXBhaXIgYW5kIG1haW50ZW5hbmNlIGFuZCB3ZWxsIGFzIGdhcmFnZSBkb29yIG9wZW5lciBzZXJ2aWNlcy4gSG9ub3IgbWFudWZhY3R1cmVyIHdhcnJhbnRpZXMuIFNhbWUtZGF5IHNlcnZpY2UuIEZyZWUgZXN0aW1hdGVzLiIsInVwbG9hZERhdGUiOiIyMDIyLTA4LTA0IiwidGh1bWJuYWlsVXJsIjoiaHR0cHM6Ly9jZG4ud2Vic2l0ZXMuaGlidS5jb20vbWQvZG1pcC9kbXMzcmVwL211bHRpL21vYmlsZS92aWRlby5qcGciLCJjb250ZW50VXJsIjoiaHR0cHM6Ly92aWRlb3MuaGlidXN0dWRpby5jb20vMjAxNy9mdWxsLXNlcnZpY2UtZ2FyYWdl
1123LWRvb3JzLWpranZyOHp6dy05NzA0NzIxNzY3Lm1wNCJ9"> <div class="vidWrapper" itemprop="video" itemscope="" itemtype="http://schema.org/VideoObject"> <meta itemprop="name" content="Full Service Garage Doors"></meta> 1124 <meta itemprop="duration" content="T1M36S"></meta> 1125 <meta itemprop="uploadDate" content="2022-08-04"></meta> 1126 <meta itemprop="thumbnailUrl" content="https://cdn.websites.hibu.com/md/dmip/dms3rep/multi/mobile/video.jpg"></meta> 1127 <meta itemprop="contentURL" content="https://videos.hibustudio.com/2017/full-service-garage-doors-jkjvr8zzw-9704721767.mp4"></meta> 1128 <meta itemprop="description" content="We offer garage door repair and maintenance and well as garage door opener services. Honor manufacturer warranties. Same-day service. Free estimates."></meta> 1129 <meta itemprop="transcript" content=""></meta> 1130 <div class="vidInner"> <center> <p class="vidTitle1">Learn More About</p> 1131 <p class="vidTitle2">Full Service Garage Doors</p> 1132 <div class="playIcon"> <a value="build-your-own-insite4" type="popup" href="/build-your-own-insite4" raw_url="/site/a18e963a07b74c3894ec4c687e53ed93/build-your-own-insite4?nee=true&ed=true&showOriginal=true&preview=true&dm_try_mode=true&dm_checkSync=1" popup_target="build-your-own-insite4" link_type="popup"><img src="https://le-cdn.hibuwebsites.com/e8d69fe00c2347a7aaa16261463f44c3/dms3rep/multi/opt/vid-splash-play-1920w.png" alt="Play Video" class="playIcon" onerror="handleImageLoadError(this)" loading="lazy"/></a> 1133</div> 1134</center> 1135</div> 1136 <div class="vidOverlay"></div> 1137</div> 1138</div> 1139</div> 1140</div> 1141</div> 1142</div> 1143</div> 1144</div> 1145</div> 1146 <div class="dmFooterContainer"> <div id="fcontainer" class="f_hcontainer dmFooter p_hfcontainer"> <div dm:templateorder="250" class="dmFooterResp generalFooter" id="1943048428"> <div class="u_1025344891 dmRespRow fullBleedChanged fullBleedMode" style="text-align: center;" id="1025344891"> <div class="dmRespColsWrapper" id="1384091837"> <div class="dmRespCol small-12 medium-4 large-4 u_1386273839" id="1386273839"> <div class="u_1806968590 dmRespRow" id="1806968590"> <div class="dmRespColsWrapper" id="1428239864"> <div class="dmRespCol small-12 medium-12 large-12 u_1171868357" id="1171868357"> <div class="u_1812904688 graphicWidget" data-element-type="graphic" data-widget-type="graphic" id="1812904688"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 70 70" id="1143514748" class="svg u_1143514748" data-icon-name="wp-location_pin"> <path d="M35,10c-9.4,0-17,7.6-17,17c0,4.1,1.5,8,4.1,11.1l0.1,0.1c4.6,5.3,7.9,10.8,9.9,16.4l1,3.7l0,0.1c0.3,1.1,1,1.6,1.9,1.6 1147 c0.9,0,1.6-0.5,1.9-1.6l1-3.8c1.9-5.6,5.3-11.2,9.9-16.4l0.1-0.1C50.5,35,52,31.1,52,27C52,17.6,44.4,10,35,10z M35,33 1148 c-3.3,0-6-2.7-6-6s2.7-6,6-6c3.3,0,6,2.7,6,6S38.3,33,35,33z" id="1703144790"></path> 1149</svg> 1150</div> 1151 <div class="widget-7b6cfb u_1515173024 dmCustomWidget" data-lazy-load="" data-title="" id="1515173024" dmle_extension="custom_extension" data-element-type="custom_extension" wr="false" icon="false" surround="false" data-widget-id="7b6cfbac88324cffbaaf57354cd7a334" data-widget-version="227" data-widget-config="eyJnZXREaXJlY3Rpb25zVGV4dCI6IkdldCBEaXJlY3Rpb25zIiwiZ3JvdXBZZWFyRXN0YWJsaXNoZWQiOm51bGwsImgzRW1haWxUZXh0IjoiIiwidG9nZ2xlSDNBc3NvY2lhdGlvbnMiOm51bGwsImdyb3VwQml6TmFtZURlc2lnbiI6bnVsbCwidG9nZ2xlSDNTZXJ2aWNlcyI6bnVsbCwidHlwZSI6InNlcnZpY2VBcmVhIiwiYm9sZExvY2F0aW9uTmFtZSI6dHJ1ZSwiY29sb3JQaWNrZXIxIjpudWxsLCJoM1BheW1lbnRzVGV4dCI6bnVsbCwiZ3JvdXBHb29nbGVBdHRyaWJ1dGVzIjpudWxsLCJwYXltZW50R3JvdXAiOm51bGwsInRvZ2dsZUgzU3BlY2lhbHRpZXMiOm51bGwsInNlcnZpY2VBcmVhR3JvdXAiOm51bGwsInN0YXRlIjp0cnVlLCJncm91cFNvY2lhbEljb25zIjpudWxsLCJ0b2dnbGVIM1NlcnZpY2VBcmVhIjp0cnVlLCJzb2NpYWxHcm91cCI6bnVsbCwiemlwIjp0cnVlLCJwaG9uZUxpc3RTdHlsZXMiOm51bGwsImNhcmRTdHlsZURhcmtPckxpZ2h0IjoiX2Quc3ZnIiwiaDNZZWFySGVhZFRleHQiOiIiLCJwYXltZW50T3B0aW9uc0J1bGxldCI6ImJ1bGxldCIsIi5hZGRyZXNzSGVhZGVyIjpudWxsLCJ0b2dnbGVIM2ZlYXRNZXNzYWdlIjpudWxsLCJicmFuZHNHcm91cCI6bnVsbCwicHJvZHVjdHNHcm91cCI6bnVsbCwiaDNLZXl3b3Jkc1RleHQiOm51bGwsInNjcmlwdCI6IjxzY3JpcHQgYXN5bmMgc3JjPVwiaHR0cHM6Ly9rbm93bGVkZ2V0YWdzLnlleHRwYWdlcy5uZXQvZW1iZWQ/a2V5PTIwOVJZOURVYWxhZWtvUnJmczEteGJ6WDBwVExHdEZYcExlNnlwb21YUm5fcnAwaDNHbTducFlSdEhvclZVVC0mYWNjb3VudF9pZD03MDE2NDY0MTA4JmVudGl0eV9pZD03MDE2NDY0MTA4JmxvY2FsZT1lbiZ2PTIwMjEwNTA0XCIgdHlwZT1cInRleHQvamF2YXNjcmlwdFwiPjwvc2NyaXB0PiIsImdyb3VwS2V5d29yZHNEZXNpZ24iOm51bGwsImdyb3VwQXR0cmlidXRlcyI6bnVsbCwic29jaWFsSWNvbnNBbGlnbm1lbnQiOiJsZWZ0IiwibGFuZ3VhZ2VzQnVsbGV0IjoiYnVsbGV0IiwiZ3JvdXBFbWFpbERlc2lnbiI6bnVsbCwiaDNIb2xpZGF5SG91cnMiOiJIb2xpZGF5IEhvdXJzIiwic2hvd1BheW1lbnRzQXMiOm51bGwsInNlcnZpY2VzR3JvdXAiOm51bGwsImJvbGRTdGF0dXNUZXh0Ijp0cnVlLCJoM1NvY2lhbFRleHQiOm51bGwsImxvZ29Hcm91cCI6bnVsbCwiZ3JvdXBQaG9uZURlc2lnbiI6bnVsbCwicGhvbmVHcm91cCI6bnVsbCwiY2l0eSI6dHJ1ZSwiZ3JvdXBCaXpEZXNEZXNpZ24iOm51bGwsImgzaG91cnNUZXh0IjoiIiwiaDNTZXJ2aWNlQXJlYVRleHQiOiJTRVJWSU5HIiwiaXNMaXN0Ijp0cnVlLCJib2xkSG91cnMiOnRydWUsInRvZ2dsZUgzaG91cnMiOm51bGwsImdyb3VwQWRkaXRpb25hbEhvdXJzVGV4dCI6bnVsbCwiZGVzY3JpcHRpb25UZXh0R3JvdXAiOm51bGwsImJyYW5kc0J1bGxldCI6ImJ1bGxldCIsInRvZ2dsZUgzaG9saWRheUhvdXJzIjp0cnVlLCJhc3NvY2lhdGlvbnNCdWxsZXQiOiJidWxsZXQiLCJsb2NhdGlvbkdyb3VwIjpudWxsLCJ0b2dnbGVIM0dvb2dsZUF0dHJpYnV0ZXMiOnRydWUsInRvZ2dsZUgzZGVzY3JpcHRpb24iOm51bGwsImhvbGlkYXlIb3Vyc0J1bGxldCI6ImJ1bGxldHMiLCJ0b2dnbGVIM0xhbmd1YWdlcyI6bnVsbCwicGhvbmVUeXBlIjoicGhvbmUiLCJsb2NhdGlvbk5hbWUiOnRydWUsInRvZ2dsZUgzUGF5bWVudHMiOm51bGwsInNlcnZpY2VBcmVhQnVsbGV0Ijoibm8tbGlzdCIsInRvZ2dsZUgzUHJvZHVjdHMiOm51bGwsImdyb3VwQWRkcmVzc0Rlc2lnbiI6bnVsbCwiUGhvbmUgSGVhZGVyIEdyb3VwIjpudWxsLCJ0b2dnbGVIM1NvY2lhbCI6bnVsbCwic2hvd1NlcnZpY2VBcmVhRmlyc3QiOm51bGwsImFkZGl0aW9uYWxIb3Vyc1RleHQiOm51bGwsImgzU3BlY2lhbHRpZXNUZXh0IjoiIiwidG9nZ2xlSDNZZWFyIjpudWxsLCJzcGVjaWFsdGllc0dyb3VwIjpudWxsLCJkcmF3TWFwIjpudWxsLCJpbnN0cnVjdGlvbnMiOm51bGwsImdyb3VwUHJvZHVjdHNEZXNpZ24iOm51bGwsImdyb3VwU2VydmljZUFyZWFEZXNpZ24iOm51bGwsImgzQWRkcmVzc1RleHQiOiJTRVJWSU5HIiwiZ3JvdXBTZXJ2aWNlc0Rlc2lnbiI6bnVsbCwidG9nZ2xlSDNQaG9uZUxpc3QiOm51bGwsImdyb3VwRmVhdHVyZWRNZXNzYWdlRGVzaWduIjpudWxsLCJoM1NlcnZpY2VzVGV4dCI6bnVsbCwiaDNQaG9uZVRleHQiOiIiLCJoM0Fzc29jaWF0aW9uc1RleHQiOiIiLCJwYXltZW50VGV4dEdyb3VwIjpudWxsLCJoM0Rlc2NyaXB0aW9uVGV4dCI6bnVsbCwic2hvd0dldERpcmVjdGlvbnNMaW5rIjpmYWxzZSwiZ3JvdXBQYXltZW50RGVpc2duIjpudWxsLCJoM0dvb2dsZUF0dHJpYnV0ZXMiOiJCdXNpbmVzcyBBdHRyaWJ1dGVzIiwidG9nZ2xlSDNBZGRyZXNzIjp0cnVlLCJzaG93RW1haWxBc0J0biI6bnVsbCwiYXNzb2NpYXRpb25zR3JvdXAiOm51bGwsImgzUHJvZHVjdHNUZXh0IjoiIiwiZm9ybWF0UGhvbmUiOnRydWUsImdyb3VwTGFuZ3VhZ2VzRGVzaWduIjpudWxsLCJ0b2dnbGVIM0tleXdvcmRzIjpudWxsLCJrZXl3b3Jkc0dyb3VwIjpudWxsLCJhbHQiOm51bGwsImhpZGVIb3Vyc0xpc3QiOmZhbHNlLCJncm91cEhvbGlkYXlIb3Vyc0Rlc2lnbiI6bnVsbCwicGhvbmVTaG93QXMiOiJidXR0b24iLCJnb29nbGVBdHRyaWJ1dGVzRm9ybWF0dGVkTGlzdEJ1bGxldCI6ImJ1bGxldHMiLCJtYXBab29tIjoiMTMiLCJob2xpZGF5SG91cnMiOm51bGwsImdyb3VwSG91cnNEZXNpZ24iOm51bGwsImgzTGFuZ3VhZ2Vz
1151VGV4dCI6bnVsbCwiaG91cnNTaG93QXMiOiJsaXN0IiwiZW1haWxUZXh0R3JvdXAiOm51bGwsInBob25lTGlzdFN0eWxlIjoiYnVsbGV0cyIsInRvZ2dsZTEiOm51bGwsImgzQnJhbmRUZXh0IjoiIiwibGluayI6bnVsbCwiZ3JvdXBQYXltZW50Q2FyZERlc2lnbiI6bnVsbCwiZ3JvdXBTcGVjaWFsdGllc0Rlc2lnbiI6bnVsbCwieWVhckVzdGFiaWxpc2hlZEdyb3VwIjpudWxsLCJwaG9uZVRleHRTdHlsZXMiOm51bGwsImdyb3VwQXNzb2NpYXRpb25zRGVzaWduIjpudWxsLCJzcGVjaWFsdGllc0J1bGxldCI6ImJ1bGxldCIsImgzRmVhdE1lc3NhZ2VUZXh0IjpudWxsLCJ0b2dnbGVIM0JyYW5kcyI6bnVsbCwiYWRkcmVzczIiOnRydWUsImFkZHJlc3MxIjp0cnVlLCJjYXJkQWxpZ25tZW50IjoicGljb25zLWNlbnRlciIsImdyb3VwTG9nb0Rlc2lnbiI6bnVsbCwiZ3JvdXBPcGVuSG91cnNEZXNpZ24iOm51bGwsImZlYXRNZXNzYWdlR3JvdXAiOm51bGwsImtleXdvcmRzQnVsbGV0IjoiYnVsbGV0IiwidG9nZ2xlSDNFbWFpbCI6bnVsbCwic2VydmljZXNCdWxsZXQiOm51bGwsImdyb3VwQnJhbmRzRGVzaWduIjpudWxsLCJwcm9kdWN0c0J1bGxldCI6ImJ1bGxldCIsImxhbmd1YWdlc0dyb3VwIjpudWxsLCJob3Vyc0dyb3VwIjpudWxsfQ=="> <h3 class="serviceAreaHeader">SERVING</h3> 1152 <ul id="serviceAreaList" class="no-list"></ul> 1153 <div class="editorOnlyInfo" data-nosnippet="">This is a placeholder for the Yext Knolwedge Tags. This message will not appear on the live site, but only within the editor. The Yext Knowledge Tags are successfully installed and will be added to the website.</div> 1154 <div class="wrongScriptError" data-nosnippet=""><!--The Yext script you entered is empty or incorrect: <script async src="https://knowledgetags.yextpages.net/embed?key=209RY9DUalaekoRrfs1-xbzX0pTLGtFXpLe6ypomXRn_rp0h3Gm7npYRtHorVUT-&account_id=7016464108&entity_id=7016464108&locale=en&v=20210504" type="text/javascript"></script>.<br/>--><!--It should look like:<br/>--><!-- <pre>--><!-- <code>--><!--<script async defer src="https://knowledgetags.yextpages.net/embed?key=KEY&account_id=ACCOUNT_ID&location_id=LOCATIONS_ID" type="text/javascript"></script>--><!-- </code>--><!--</pre>--></div> 1155<!-- Load Yext Script into page source so schema validates with Structured Data testing tool -->
1155<script async="" src="https://knowledgetags.yextpages.net/embed?key=209RY9DUalaekoRrfs1-xbzX0pTLGtFXpLe6ypomXRn_rp0h3Gm7npYRtHorVUT-&account_id=7016464108&entity_id=7016464108&locale=en&v=20210504" type="text/javascript"> 1156 </script>
1156 1157</div> 1158 <div class="u_1643049219 dmNewParagraph" data-element-type="paragraph" data-version="5" id="1643049219" style="transition: opacity 1s ease-in-out 0s;"><p class="text-align-center"><span style="display: unset; color: rgb(255, 255, 255);">& more</span></p></div> 1159</div> 1160</div> 1161</div> 1162</div> 1163 <div class="u_1545287160 dmRespCol small-12 large-4 medium-4" id="1545287160"> <div class="u_1593415166 dmRespRow" id="1593415166"> <div class="dmRespColsWrapper" id="1889374920"> <div class="dmRespCol small-12 medium-12 large-12 u_1074625680" id="1074625680"> <div class="u_1950758629 graphicWidget" data-element-type="graphic" data-widget-type="graphic" id="1950758629"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 70 70" id="1655800349" class="svg u_1655800349" data-icon-name="wp-clock"> <g id="1072690251"> <path d="M35,60c-13.8,0-25-11.2-25-25s11.2-25,25-25c13.8,0,25,11.2,25,25S48.8,60,35,60z M35,12c-12.7,0-23,10.3-23,23 1164 s10.3,23,23,23c12.7,0,23-10.3,23-23S47.7,12,35,12z" id="1032645214"></path> 1165 <path d="M35,14c-11.6,0-21,9.4-21,21s9.4,21,21,21c11.6,0,21-9.4,21-21S46.6,14,35,14z M36,35c0,0.3-0.1,0.5-0.3,0.7l-8,8 1166 C27.5,43.9,27.3,44,27,44c-0.3,0-0.5-0.1-0.7-0.3c-0.4-0.4-0.4-1,0-1.4l7.7-7.7V19c0-0.6,0.4-1,1-1c0.6,0,1,0.4,1,1V35z" id="1306416751"></path> 1167</g> 1168</svg> 1169</div> 1170 <div class="u_1339090579 widget-7b6cfb hide-for-large hide-for-small dmCustomWidget" data-lazy-load="" data-title="" id="1339090579" dmle_extension="custom_extension" data-element-type="custom_extension" wr="false" icon="false" surround="false" data-widget-id="7b6cfbac88324cffbaaf57354cd7a334" data-widget-version="227" data-widget-config="eyJnZXREaXJlY3Rpb25zVGV4dCI6IkdldCBEaXJlY3Rpb25zIiwiZ3JvdXBZZWFyRXN0YWJsaXNoZWQiOm51bGwsImgzRW1haWxUZXh0IjoiIiwidG9nZ2xlSDNBc3NvY2lhdGlvbnMiOm51bGwsImdyb3VwQml6TmFtZURlc2lnbiI6bnVsbCwidG9nZ2xlSDNTZXJ2aWNlcyI6bnVsbCwidHlwZSI6ImhvdXJzIiwiYm9sZExvY2F0aW9uTmFtZSI6bnVsbCwiY29sb3JQaWNrZXIxIjpudWxsLCJoM1BheW1lbnRzVGV4dCI6bnVsbCwiZ3JvdXBHb29nbGVBdHRyaWJ1dGVzIjpudWxsLCJwYXltZW50R3JvdXAiOm51bGwsInRvZ2dsZUgzU3BlY2lhbHRpZXMiOm51bGwsInNlcnZpY2VBcmVhR3JvdXAiOm51bGwsInN0YXRlIjp0cnVlLCJncm91cFNvY2lhbEljb25zIjpudWxsLCJ0b2dnbGVIM1NlcnZpY2VBcmVhIjpudWxsLCJzb2NpYWxHcm91cCI6bnVsbCwiemlwIjp0cnVlLCJwaG9uZUxpc3RTdHlsZXMiOm51bGwsImNhcmRTdHlsZURhcmtPckxpZ2h0IjoiX2Quc3ZnIiwiaDNZZWFySGVhZFRleHQiOiIiLCJwYXltZW50T3B0aW9uc0J1bGxldCI6ImJ1bGxldCIsIi5hZGRyZXNzSGVhZGVyIjpudWxsLCJ0b2dnbGVIM2ZlYXRNZXNzYWdlIjpudWxsLCJicmFuZHNHcm91cCI6bnVsbCwicHJvZHVjdHNHcm91cCI6bnVsbCwiaDNLZXl3b3Jkc1RleHQiOm51bGwsInNjcmlwdCI6IiIsImdyb3VwS2V5d29yZHNEZXNpZ24iOm51bGwsImdyb3VwQXR0cmlidXRlcyI6bnVsbCwic29jaWFsSWNvbnNBbGlnbm1lbnQiOiJsZWZ0IiwibGFuZ3VhZ2VzQnVsbGV0IjoiYnVsbGV0IiwiZ3JvdXBFbWFpbERlc2lnbiI6bnVsbCwiaDNIb2xpZGF5SG91cnMiOiJIb2xpZGF5IEhvdXJzIiwic2hvd1BheW1lbnRzQXMiOm51bGwsInNlcnZpY2VzR3JvdXAiOm51bGwsImJvbGRTdGF0dXNUZXh0Ijp0cnVlLCJoM1NvY2lhbFRleHQiOm51bGwsImxvZ29Hcm91cCI6bnVsbCwiZ3JvdXBQaG9uZURlc2lnbiI6bnVsbCwicGhvbmVHcm91cCI6bnVsbCwiY2l0eSI6dHJ1ZSwiZ3JvdXBCaXpEZXNEZXNpZ24iOm51bGwsImgzaG91cnNUZXh0IjoiSE9VUlMiLCJoM1NlcnZpY2VBcmVhVGV4dCI6bnVsbCwiaXNMaXN0IjpmYWxzZSwiYm9sZEhvdXJzIjp0cnVlLCJ0b2dnbGVIM2hvdXJzIjp0cnVlLCJncm91cEFkZGl0aW9uYWxIb3Vyc1RleHQiOm51bGwsImRlc2NyaXB0aW9uVGV4dEdyb3VwIjpudWxsLCJicmFuZHNCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM2hvbGlkYXlIb3VycyI6dHJ1ZSwiYXNzb2NpYXRpb25zQnVsbGV0IjoiYnVsbGV0IiwibG9jYXRpb25Hcm91cCI6bnVsbCwidG9nZ2xlSDNHb29nbGVBdHRyaWJ1dGVzIjp0cnVlLCJ0b2dnbGVIM2Rlc2NyaXB0aW9uIjpudWxsLCJob2xpZGF5SG91cnNCdWxsZXQiOiJidWxsZXRzIiwidG9nZ2xlSDNMYW5ndWFnZXMiOm51bGwsInBob25lVHlwZSI6InBob25lIiwibG9jYXRpb25OYW1lIjpmYWxzZSwidG9nZ2xlSDNQYXltZW50cyI6bnVsbCwic2VydmljZUFyZWFCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM1Byb2R1Y3RzIjpudWxsLCJncm91cEFkZHJlc3NEZXNpZ24iOm51bGwsIlBob25lIEhlYWRlciBHcm91cCI6bnVsbCwidG9nZ2xlSDNTb2NpYWwiOm51bGwsInNob3dTZXJ2aWNlQXJlYUZpcnN0IjpudWxsLCJhZGRpdGlvbmFsSG91cnNUZXh0IjpmYWxzZSwiaDNTcGVjaWFsdGllc1RleHQiOiIiLCJ0b2dnbGVIM1llYXIiOm51bGwsInNwZWNpYWx0aWVzR3JvdXAiOm51bGwsImRyYXdNYXAiOm51bGwsImluc3RydWN0aW9ucyI6bnVsbCwiZ3JvdXBQcm9kdWN0c0Rlc2lnbiI6bnVsbCwiZ3JvdXBTZXJ2aWNlQXJlYURlc2lnbiI6bnVsbCwiaDNBZGRyZXNzVGV4dCI6IiIsImdyb3VwU2VydmljZXNEZXNpZ24iOm51bGwsInRvZ2dsZUgzUGhvbmVMaXN0IjpudWxsLCJncm91cEZlYXR1cmVkTWVzc2FnZURlc2lnbiI6bnVsbCwiaDNTZXJ2aWNlc1RleHQiOm51bGwsImgzUGhvbmVUZXh0IjoiIiwiaDNBc3NvY2lhdGlvbnNUZXh0IjoiIiwicGF5bWVudFRleHRHcm91cCI6bnVsbCwiaDNEZXNjcmlwdGlvblRleHQiOm51bGwsInNob3dHZXREaXJlY3Rpb25zTGluayI6bnVsbCwiZ3JvdXBQYXltZW50RGVpc2duIjpudWxsLCJoM0dvb2dsZUF0dHJpYnV0ZXMiOiJCdXNpbmVzcyBBdHRyaWJ1dGVzIiwidG9nZ2xlSDNBZGRyZXNzIjpudWxsLCJzaG93RW1haWxBc0J0biI6bnVsbCwiYXNzb2NpYXRpb25zR3JvdXAiOm51bGwsImgzUHJvZHVjdHNUZXh0IjoiIiwiZm9ybWF0UGhvbmUiOnRydWUsImdyb3VwTGFuZ3VhZ2VzRGVzaWduIjpudWxsLCJ0b2dnbGVIM0tleXdvcmRzIjpudWxsLCJrZXl3b3Jkc0dyb3VwIjpudWxsLCJhbHQiOm51bGwsImhpZGVIb3Vyc0xpc3QiOmZhbHNlLCJncm91cEhvbGlkYXlIb3Vyc0Rlc2lnbiI6bnVsbCwicGhvbmVTaG93QXMiOiJidXR0b24iLCJnb29nbGVBdHRyaWJ1dGVzRm9ybWF0dGVkTGlzdEJ1bGxldCI6ImJ1bGxldHMiLCJtYXBab29tIjoiMTMiLCJob2xpZGF5SG91cnMiOm51bGwsImdyb3VwSG91cnNEZXNpZ24iOm51bGwsImgzTGFuZ3VhZ2Vz
1170VGV4dCI6bnVsbCwiaG91cnNTaG93QXMiOiJsaXN0IiwiZW1haWxUZXh0R3JvdXAiOm51bGwsInBob25lTGlzdFN0eWxlIjoiYnVsbGV0cyIsInRvZ2dsZTEiOm51bGwsImgzQnJhbmRUZXh0IjoiIiwibGluayI6bnVsbCwiZ3JvdXBQYXltZW50Q2FyZERlc2lnbiI6bnVsbCwiZ3JvdXBTcGVjaWFsdGllc0Rlc2lnbiI6bnVsbCwieWVhckVzdGFiaWxpc2hlZEdyb3VwIjpudWxsLCJwaG9uZVRleHRTdHlsZXMiOm51bGwsImdyb3VwQXNzb2NpYXRpb25zRGVzaWduIjpudWxsLCJzcGVjaWFsdGllc0J1bGxldCI6ImJ1bGxldCIsImgzRmVhdE1lc3NhZ2VUZXh0IjpudWxsLCJ0b2dnbGVIM0JyYW5kcyI6bnVsbCwiYWRkcmVzczIiOnRydWUsImFkZHJlc3MxIjp0cnVlLCJjYXJkQWxpZ25tZW50IjoicGljb25zLWNlbnRlciIsImdyb3VwTG9nb0Rlc2lnbiI6bnVsbCwiZ3JvdXBPcGVuSG91cnNEZXNpZ24iOm51bGwsImZlYXRNZXNzYWdlR3JvdXAiOm51bGwsImtleXdvcmRzQnVsbGV0IjoiYnVsbGV0IiwidG9nZ2xlSDNFbWFpbCI6bnVsbCwic2VydmljZXNCdWxsZXQiOm51bGwsImdyb3VwQnJhbmRzRGVzaWduIjpudWxsLCJwcm9kdWN0c0J1bGxldCI6ImJ1bGxldCIsImxhbmd1YWdlc0dyb3VwIjpudWxsLCJob3Vyc0dyb3VwIjpudWxsfQ=="> <h3 class="hoursHeader">HOURS</h3> 1171 <div class="yextHours" id="hoursSmall"></div> 1172 <div class="editorOnlyInfo" data-nosnippet="">This is a placeholder for the Yext Knolwedge Tags. This message will not appear on the live site, but only within the editor. The Yext Knowledge Tags are successfully installed and will be added to the website.</div> 1173 <div class="wrongScriptError" data-nosnippet=""><!--The Yext script you entered is empty or incorrect: .<br/>--><!--It should look like:<br/>--><!-- <pre>--><!-- <code>--><!--<script async defer src="https://knowledgetags.yextpages.net/embed?key=KEY&account_id=ACCOUNT_ID&location_id=LOCATIONS_ID" type="text/javascript"></script>--><!-- </code>--><!--</pre>--></div> 1174<!-- Load Yext Script into page source so schema validates with Structured Data testing tool --></div> 1175 <div class="u_1068193929 widget-7b6cfb hide-for-large hide-for-small dmCustomWidget" data-lazy-load="" data-title="" id="1068193929" dmle_extension="custom_extension" data-element-type="custom_extension" wr="false" icon="false" surround="false" data-widget-id="7b6cfbac88324cffbaaf57354cd7a334" data-widget-version="227" data-widget-config="eyJnZXREaXJlY3Rpb25zVGV4dCI6IkdldCBEaXJlY3Rpb25zIiwiZ3JvdXBZZWFyRXN0YWJsaXNoZWQiOm51bGwsImgzRW1haWxUZXh0IjoiIiwidG9nZ2xlSDNBc3NvY2lhdGlvbnMiOm51bGwsImdyb3VwQml6TmFtZURlc2lnbiI6bnVsbCwidG9nZ2xlSDNTZXJ2aWNlcyI6bnVsbCwidHlwZSI6ImhvdXJzIiwiYm9sZExvY2F0aW9uTmFtZSI6bnVsbCwiY29sb3JQaWNrZXIxIjpudWxsLCJoM1BheW1lbnRzVGV4dCI6bnVsbCwiZ3JvdXBHb29nbGVBdHRyaWJ1dGVzIjpudWxsLCJwYXltZW50R3JvdXAiOm51bGwsInRvZ2dsZUgzU3BlY2lhbHRpZXMiOm51bGwsInNlcnZpY2VBcmVhR3JvdXAiOm51bGwsInN0YXRlIjp0cnVlLCJncm91cFNvY2lhbEljb25zIjpudWxsLCJ0b2dnbGVIM1NlcnZpY2VBcmVhIjpudWxsLCJzb2NpYWxHcm91cCI6bnVsbCwiemlwIjp0cnVlLCJwaG9uZUxpc3RTdHlsZXMiOm51bGwsImNhcmRTdHlsZURhcmtPckxpZ2h0IjoiX2Quc3ZnIiwiaDNZZWFySGVhZFRleHQiOiIiLCJwYXltZW50T3B0aW9uc0J1bGxldCI6ImJ1bGxldCIsIi5hZGRyZXNzSGVhZGVyIjpudWxsLCJ0b2dnbGVIM2ZlYXRNZXNzYWdlIjpudWxsLCJicmFuZHNHcm91cCI6bnVsbCwicHJvZHVjdHNHcm91cCI6bnVsbCwiaDNLZXl3b3Jkc1RleHQiOm51bGwsInNjcmlwdCI6IiIsImdyb3VwS2V5d29yZHNEZXNpZ24iOm51bGwsImdyb3VwQXR0cmlidXRlcyI6bnVsbCwic29jaWFsSWNvbnNBbGlnbm1lbnQiOiJsZWZ0IiwibGFuZ3VhZ2VzQnVsbGV0IjoiYnVsbGV0IiwiZ3JvdXBFbWFpbERlc2lnbiI6bnVsbCwiaDNIb2xpZGF5SG91cnMiOiJIb2xpZGF5IEhvdXJzIiwic2hvd1BheW1lbnRzQXMiOm51bGwsInNlcnZpY2VzR3JvdXAiOm51bGwsImJvbGRTdGF0dXNUZXh0Ijp0cnVlLCJoM1NvY2lhbFRleHQiOm51bGwsImxvZ29Hcm91cCI6bnVsbCwiZ3JvdXBQaG9uZURlc2lnbiI6bnVsbCwicGhvbmVHcm91cCI6bnVsbCwiY2l0eSI6dHJ1ZSwiZ3JvdXBCaXpEZXNEZXNpZ24iOm51bGwsImgzaG91cnNUZXh0IjoiSE9VUlMiLCJoM1NlcnZpY2VBcmVhVGV4dCI6bnVsbCwiaXNMaXN0Ijp0cnVlLCJib2xkSG91cnMiOnRydWUsInRvZ2dsZUgzaG91cnMiOmZhbHNlLCJncm91cEFkZGl0aW9uYWxIb3Vyc1RleHQiOm51bGwsImRlc2NyaXB0aW9uVGV4dEdyb3VwIjpudWxsLCJicmFuZHNCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM2hvbGlkYXlIb3VycyI6dHJ1ZSwiYXNzb2NpYXRpb25zQnVsbGV0IjoiYnVsbGV0IiwibG9jYXRpb25Hcm91cCI6bnVsbCwidG9nZ2xlSDNHb29nbGVBdHRyaWJ1dGVzIjp0cnVlLCJ0b2dnbGVIM2Rlc2NyaXB0aW9uIjpudWxsLCJob2xpZGF5SG91cnNCdWxsZXQiOiJidWxsZXRzIiwidG9nZ2xlSDNMYW5ndWFnZXMiOm51bGwsInBob25lVHlwZSI6InBob25lIiwibG9jYXRpb25OYW1lIjpmYWxzZSwidG9nZ2xlSDNQYXltZW50cyI6bnVsbCwic2VydmljZUFyZWFCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM1Byb2R1Y3RzIjpudWxsLCJncm91cEFkZHJlc3NEZXNpZ24iOm51bGwsIlBob25lIE
1175hlYWRlciBHcm91cCI6bnVsbCwidG9nZ2xlSDNTb2NpYWwiOm51bGwsInNob3dTZXJ2aWNlQXJlYUZpcnN0IjpudWxsLCJhZGRpdGlvbmFsSG91cnNUZXh0Ijp0cnVlLCJoM1NwZWNpYWx0aWVzVGV4dCI6IiIsInRvZ2dsZUgzWWVhciI6bnVsbCwic3BlY2lhbHRpZXNHcm91cCI6bnVsbCwiZHJhd01hcCI6bnVsbCwiaW5zdHJ1Y3Rpb25zIjpudWxsLCJncm91cFByb2R1Y3RzRGVzaWduIjpudWxsLCJncm91cFNlcnZpY2VBcmVhRGVzaWduIjpudWxsLCJoM0FkZHJlc3NUZXh0IjoiIiwiZ3JvdXBTZXJ2aWNlc0Rlc2lnbiI6bnVsbCwidG9nZ2xlSDNQaG9uZUxpc3QiOm51bGwsImdyb3VwRmVhdHVyZWRNZXNzYWdlRGVzaWduIjpudWxsLCJoM1NlcnZpY2VzVGV4dCI6bnVsbCwiaDNQaG9uZVRleHQiOiIiLCJoM0Fzc29jaWF0aW9uc1RleHQiOiIiLCJwYXltZW50VGV4dEdyb3VwIjpudWxsLCJoM0Rlc2NyaXB0aW9uVGV4dCI6bnVsbCwic2hvd0dldERpcmVjdGlvbnNMaW5rIjpudWxsLCJncm91cFBheW1lbnREZWlzZ24iOm51bGwsImgzR29vZ2xlQXR0cmlidXRlcyI6IkJ1c2luZXNzIEF0dHJpYnV0ZXMiLCJ0b2dnbGVIM0FkZHJlc3MiOm51bGwsInNob3dFbWFpbEFzQnRuIjpudWxsLCJhc3NvY2lhdGlvbnNHcm91cCI6bnVsbCwiaDNQcm9kdWN0c1RleHQiOiIiLCJmb3JtYXRQaG9uZSI6dHJ1ZSwiZ3JvdXBMYW5ndWFnZXNEZXNpZ24iOm51bGwsInRvZ2dsZUgzS2V5d29yZHMiOm51bGwsImtleXdvcmRzR3JvdXAiOm51bGwsImFsdCI6bnVsbCwiaGlkZUhvdXJzTGlzdCI6dHJ1ZSwiZ3JvdXBIb2xpZGF5SG91cnNEZXNpZ24iOm51bGwsInBob25lU2hvd0FzIjoiYnV0dG9uIiwiZ29vZ2xlQXR0cmlidXRlc0Zvcm1hdHRlZExpc3RCdWxsZXQiOiJidWxsZXRzIiwibWFwWm9vbSI6IjEzIiwiaG9saWRheUhvdXJzIjpudWxsLCJncm91cEhvdXJzRGVzaWduIjpudWxsLCJoM0xhbmd1YWdlc1RleHQiOm51bGwsImhvdXJzU2hvd0FzIjoibGlzdCIsImVtYWlsVGV4dEdyb3VwIjpudWxsLCJwaG9uZUxpc3RTdHlsZSI6ImJ1bGxldHMiLCJ0b2dnbGUxIjpudWxsLCJoM0JyYW5kVGV4dCI6IiIsImxpbmsiOm51bGwsImdyb3VwUGF5bWVudENhcmREZXNpZ24iOm51bGwsImdyb3VwU3BlY2lhbHRpZXNEZXNpZ24iOm51bGwsInllYXJFc3RhYmlsaXNoZWRHcm91cCI6bnVsbCwicGhvbmVUZXh0U3R5bGVzIjpudWxsLCJncm91cEFzc29jaWF0aW9uc0Rlc2lnbiI6bnVsbCwic3BlY2lhbHRpZXNCdWxsZXQiOiJidWxsZXQiLCJoM0ZlYXRNZXNzYWdlVGV4dCI6bnVsbCwidG9nZ2xlSDNCcmFuZHMiOm51bGwsImFkZHJlc3MyIjp0cnVlLCJhZGRyZXNzMSI6dHJ1ZSwiY2FyZEFsaWdubWVudCI6InBpY29ucy1jZW50ZXIiLCJncm91cExvZ29EZXNpZ24iOm51bGwsImdyb3VwT3BlbkhvdXJzRGVzaWduIjpudWxsLCJmZWF0TWVzc2FnZUdyb3VwIjpudWxsLCJrZXl3b3Jkc0J1bGxldCI6ImJ1bGxldCIsInRvZ2dsZUgzRW1haWwiOm51bGwsInNlcnZpY2VzQnVsbGV0IjpudWxsLCJncm91cEJyYW5kc0Rlc2lnbiI6bnVsbCwicHJvZHVjdHNCdWxsZXQiOiJidWxsZXQiLCJsYW5ndWFnZXNHcm91cCI6bnVsbCwiaG91cnNHcm91cCI6bnVsbH0="> <div id="yextHoursFull" class="yextHours "> <div class="row"> <div class="left">Monday</div> 1176 <div data-yext-field="hours-monday" class="right"></div> 1177</div> 1178 <div class="row"> <div class="left">Tuesday</div> 1179 <div data-yext-field="hours-tuesday" class="right"></div> 1180</div> 1181 <div class="row"> <div class="left">Wednesday</div> 1182 <div data-yext-field="hours-wednesday" class="right"></div> 1183</div> 1184 <div class="row"> <div class="left">Thursday</div> 1185 <div data-yext-field="hours-thursday" class="right"></div> 1186</div> 1187 <div class="row"> <div class="left">Friday</div> 1188 <div data-yext-field="hours-friday" class="right"></div> 1189</div> 1190 <div class="row"> <div class="left">Saturday</div> 1191 <div data-yext-field="hours-saturday" class="right"></div> 1192</div> 1193 <div class="row"> <div class="left">Sunday</div> 1194 <div data-yext-field="hours-sunday" class="right"></div> 1195</div> 1196</div> 1197 <div data-yext-field="additionalHoursText" class="yextAdditionalHoursText"></div> 1198 <div class="editorOnlyInfo" data-nosnippet="">This is a placeholder for the Yext Knolwedge Tags. This message will not appear on the live site, but only within the editor. The Yext Knowledge Tags are successfully installed and will be added to the website.</div> 1199 <div class="wrongScriptError" data-nosnippet=""><!--The Yext script you entered is empty or incorrect: .<br/>--><!--It should look like:<br/>--><!-- <pre>--><!-- <code>--><!--<script async defer src="https://knowledgetags.yextpages.net/embed?key=KEY&account_id=ACCOUNT_ID&location_id=LOCATIONS_ID" type="text/javascript"></script>--><!-- </code>--><!--</pre>--></div> 1200<!-- Load Yext Script into page source so schema validates with Structured Data testing tool --></div> 1201 <div class="u_1953183353 widget-7b6cfb hide-for-medium dmCustomWidget" data-lazy-load="" data-title="" id="1953183353" dmle_extension="custom_extension" data-element-type="custom_extension" wr="false" icon="false" surround="false" data-widget-id="7b6cfbac88324cffbaaf57354cd7a334" data-widget-version="227" data-widget-config="eyJnZXREaXJlY3Rpb25zVGV4dCI6IkdldCBEaXJlY3Rpb25zIiwiZ3JvdXBZZWFyRXN0YWJsaXNoZWQiOm51bGwsImgzRW1haWxUZXh0IjoiIiwidG9nZ2xlSDNBc3NvY2lhdGlvbnMiOm51bGwsImdyb3VwQml6TmFtZURlc2lnbiI6bnVsbCwidG9nZ2xlSDNTZXJ2aWNlcyI6bnVsbCwidHlwZSI6ImhvdXJzIiwiYm9sZExvY2F0aW9uTmFtZSI6bnVsbCwiY29sb3JQaWNrZXIxIjpudWxsLCJoM1BheW1lbnRzVGV4dCI6bnVsbCwiZ3JvdXBHb29nbGVBdHRyaWJ1dGVzIjpudWxsLCJwYXltZW50R3JvdXAiOm51bGwsInRvZ2dsZUgzU3BlY2lhbHRpZXMiOm51bGwsInNlcnZpY2VBcmVhR3JvdXAiOm51bGwsInN0YXRlIjp0cnVlLCJncm91cFNvY2lhbEljb25zIjpudWxsLCJ0b2dnbGVIM1NlcnZpY2VBcmVhIjpudWxsLCJzb2NpYWxHcm91cCI6bnVsbCwiemlwIjp0cnVlLCJwaG9uZUxpc3RTdHlsZXMiOm51bGwsImNhcmRTdHlsZURhcmtPckxpZ2h0IjoiX2Quc3ZnIiwiaDNZZWFySGVhZFRleHQiOiIiLCJwYXltZW50T3B0aW9uc0J1bGxldCI6ImJ1bGxldCIsIi5hZGRyZXNzSGVhZGVyIjpudWxsLCJ0b2dnbGVIM2ZlYXRNZXNzYWdlIjpudWxsLCJicmFuZHNHcm91cCI6bnVsbCwicHJvZHVjdHNHcm91cCI6bnVsbCwiaDNLZXl3b3Jkc1RleHQiOm51bGwsInNjcmlwdCI6IiIsImdyb3VwS2V5d29yZHNEZXNpZ24iOm51bGwsImdyb3VwQXR0cmlidXRlcyI6bnVsbCwic29jaWFsSWNvbnNBbGlnbm1lbnQiOiJsZWZ0IiwibGFuZ3VhZ2VzQnVsbGV0IjoiYnVsbGV0IiwiZ3JvdXBFbWFpbERlc2lnbiI6bnVsbCwiaDNIb2xpZGF5SG91cnMiOiJIb2xpZGF5IEhvdXJzIiwic2hvd1BheW1lbnRzQXMiOm51bGwsInNlcnZpY2VzR3JvdXAiOm51bGwsImJvbGRTdGF0dXNUZXh0Ijp0cnVlLCJoM1NvY2lhbFRleHQiOm51bGwsImxvZ29Hcm91cCI6bnVsbCwiZ3JvdXBQaG9uZURlc2lnbiI6bnVsbCwicGhvbmVHcm91cCI6bnVsbCwiY2l0eSI6dHJ1ZSwiZ3JvdXBCaXpEZXNEZXNpZ24iOm51bGwsImgzaG91cnNUZXh0IjoiSE9VUlMiLCJoM1NlcnZpY2VBcmVhVGV4dCI6bnVsbCwiaXNMaXN0IjpmYWxzZSwiYm9sZEhvdXJzIjp0cnVlLCJ0b2dnbGVIM2hvdXJzIjp0cnVlLCJncm91cEFkZGl0aW9uYWxIb3Vyc1RleHQiOm51bGwsImRlc2NyaXB0aW9uVGV4dEdyb3VwIjpudWxsLCJicmFuZHNCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM2hvbGlkYXlIb3VycyI6dHJ1ZSwiYXNzb2NpYXRpb25zQnVsbGV0IjoiYnVsbGV0IiwibG9jYXRpb25Hcm91cCI6bnVsbCwidG9nZ2xlSDNHb29nbGVBdHRyaWJ1dGVzIjp0cnVlLCJ0b2dnbGVIM2Rlc2NyaXB0aW9uIjpudWxsLCJob2xpZGF5SG91cnNCdWxsZXQiOiJidWxsZXRzIiwidG9nZ2xlSDNMYW5ndWFnZXMiOm51bGwsInBob25lVHlwZSI6InBob25lIiwibG9jYXRpb25OYW1lIjpmYWxzZSwidG9nZ2xlSDNQYXltZW50cyI6bnVsbCwic2VydmljZUFyZWFCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM1Byb2R1Y3RzIjpudWxsLCJncm91cEFkZHJl
1201c3NEZXNpZ24iOm51bGwsIlBob25lIEhlYWRlciBHcm91cCI6bnVsbCwidG9nZ2xlSDNTb2NpYWwiOm51bGwsInNob3dTZXJ2aWNlQXJlYUZpcnN0IjpudWxsLCJhZGRpdGlvbmFsSG91cnNUZXh0Ijp0cnVlLCJoM1NwZWNpYWx0aWVzVGV4dCI6IiIsInRvZ2dsZUgzWWVhciI6bnVsbCwic3BlY2lhbHRpZXNHcm91cCI6bnVsbCwiZHJhd01hcCI6bnVsbCwiaW5zdHJ1Y3Rpb25zIjpudWxsLCJncm91cFByb2R1Y3RzRGVzaWduIjpudWxsLCJncm91cFNlcnZpY2VBcmVhRGVzaWduIjpudWxsLCJoM0FkZHJlc3NUZXh0IjoiIiwiZ3JvdXBTZXJ2aWNlc0Rlc2lnbiI6bnVsbCwidG9nZ2xlSDNQaG9uZUxpc3QiOm51bGwsImdyb3VwRmVhdHVyZWRNZXNzYWdlRGVzaWduIjpudWxsLCJoM1NlcnZpY2VzVGV4dCI6bnVsbCwiaDNQaG9uZVRleHQiOiIiLCJoM0Fzc29jaWF0aW9uc1RleHQiOiIiLCJwYXltZW50VGV4dEdyb3VwIjpudWxsLCJoM0Rlc2NyaXB0aW9uVGV4dCI6bnVsbCwic2hvd0dldERpcmVjdGlvbnNMaW5rIjpudWxsLCJncm91cFBheW1lbnREZWlzZ24iOm51bGwsImgzR29vZ2xlQXR0cmlidXRlcyI6IkJ1c2luZXNzIEF0dHJpYnV0ZXMiLCJ0b2dnbGVIM0FkZHJlc3MiOm51bGwsInNob3dFbWFpbEFzQnRuIjpudWxsLCJhc3NvY2lhdGlvbnNHcm91cCI6bnVsbCwiaDNQcm9kdWN0c1RleHQiOiIiLCJmb3JtYXRQaG9uZSI6dHJ1ZSwiZ3JvdXBMYW5ndWFnZXNEZXNpZ24iOm51bGwsInRvZ2dsZUgzS2V5d29yZHMiOm51bGwsImtleXdvcmRzR3JvdXAiOm51bGwsImFsdCI6bnVsbCwiaGlkZUhvdXJzTGlzdCI6ZmFsc2UsImdyb3VwSG9saWRheUhvdXJzRGVzaWduIjpudWxsLCJwaG9uZVNob3dBcyI6ImJ1dHRvbiIsImdvb2dsZUF0dHJpYnV0ZXNGb3JtYXR0ZWRMaXN0QnVsbGV0IjoiYnVsbGV0cyIsIm1hcFpvb20iOiIxMyIsImhvbGlkYXlIb3VycyI6bnVsbCwiZ3JvdXBIb3Vyc0Rlc2lnbiI6bnVsbCwiaDNMYW5ndWFnZXNUZXh0IjpudWxsLCJob3Vyc1Nob3dBcyI6Imxpc3QiLCJlbWFpbFRleHRHcm91cCI6bnVsbCwicGhvbmVMaXN0U3R5bGUiOiJidWxsZXRzIiwidG9nZ2xlMSI6bnVsbCwiaDNCcmFuZFRleHQiOiIiLCJsaW5rIjpudWxsLCJncm91cFBheW1lbnRDYXJkRGVzaWduIjpudWxsLCJncm91cFNwZWNpYWx0aWVzRGVzaWduIjpudWxsLCJ5ZWFyRXN0YWJpbGlzaGVkR3JvdXAiOm51bGwsInBob25lVGV4dFN0eWxlcyI6bnVsbCwiZ3JvdXBBc3NvY2lhdGlvbnNEZXNpZ24iOm51bGwsInNwZWNpYWx0aWVzQnVsbGV0IjoiYnVsbGV0IiwiaDNGZWF0TWVzc2FnZVRleHQiOm51bGwsInRvZ2dsZUgzQnJhbmRzIjpudWxsLCJhZGRyZXNzMiI6dHJ1ZSwiYWRkcmVzczEiOnRydWUsImNhcmRBbGlnbm1lbnQiOiJwaWNvbnMtY2VudGVyIiwiZ3JvdXBMb2dvRGVzaWduIjpudWxsLCJncm91cE9wZW5Ib3Vyc0Rlc2lnbiI6bnVsbCwiZmVhdE1lc3NhZ2VHcm91cCI6bnVsbCwia2V5d29yZHNCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM0VtYWlsIjpudWxsLCJzZXJ2aWNlc0J1bGxldCI6bnVsbCwiZ3JvdXBCcmFuZHNEZXNpZ24iOm51bGwsInByb2R1Y3RzQnVsbGV0IjoiYnVsbGV0IiwibGFuZ3VhZ2VzR3JvdXAiOm51bGwsImhvdXJzR3JvdXAiOm51bGx9"> <h3 class="hoursHeader">HOURS</h3> 1202 <div class="yextHours" id="hoursSmall"></div> 1203 <div data-yext-field="additionalHoursText" class="yextAdditionalHoursText"></div> 1204 <div class="editorOnlyInfo" data-nosnippet="">This is a placeholder for the Yext Knolwedge Tags. This message will not appear on the live site, but only within the editor. The Yext Knowledge Tags are successfully installed and will be added to the website.</div> 1205 <div class="wrongScriptError" data-nosnippet=""><!--The Yext script you entered is empty or incorrect: .<br/>--><!--It should look like:<br/>--><!-- <pre>--><!-- <code>--><!--<script async defer src="https://knowledgetags.yextpages.net/embed?key=KEY&account_id=ACCOUNT_ID&location_id=LOCATIONS_ID" type="text/javascript"></script>--><!-- </code>--><!--</pre>--></div> 1206<!-- Load Yext Script into page source so schema validates with Structured Data testing tool --></div> 1207</div> 1208</div> 1209</div> 1210</div> 1211 <div class="u_1387492197 dmRespCol small-12 large-4 medium-4" id="1387492197"> <div class="dmRespRow u_1645416263" id="1645416263"> <div class="dmRespColsWrapper" id="1829071214"> <div class="dmRespCol small-12 medium-12 large-12 u_1964573654" id="1964573654"> <div class="u_1872465902 graphicWidget" data-element-type="graphic" data-widget-type="graphic" id="1872465902"> <svg xmlns="http://www.w3.org/2000/svg" viewbox="0 0 70 70" id="1002046733" class="svg u_1002046733" data-icon-name="wp-bullhorn"> <path d="M53,17c-0.4,0-0.8,0.1-1.1,0.2c0,0-38.6,12.7-39.2,12.8c-1.6,0.5-2.7,2.5-2.7,5s1.1,4.5,2.7,5c0.2,0.1,4.4,1.4,9.9,3.2 1212 l-0.4,1.1c-0.8,2.4,0.4,5,2.8,5.8l7.3,2.6c0.5,0.2,1,0.3,1.6,0.3c0.7,0,1.4-0.2,2-0.5c1.1-0.5,2-1.5,2.4-2.6l0.5-1.4 1213 c7.1,2.3,13.1,4.3,13.1,4.3c0.4,0.1,0.7,0.2,1.1,0.2c4.5,0,7-9.3,7-18S57.5,17,53,17z M36.4,49.3c-0.2,0.7-0.7,1.2-1.3,1.5 1214 c-0.6,0.3-1.3,0.3-2,0.1l-7.3-2.6c-1.3-0.5-2-2-1.6-3.3l0.4-1.1c3.9,1.3,8.3,2.7,12.4,4.1L36.4,49.3z M53,51c-2.1,0-5-6.1-5-16 1215 s2.9-16,5-16c2.1,0,5,6.1,5,16S55.1,51,53,51z" id="1459554540"></path> 1216</svg> 1217</div> 1218 <div class="u_1611969072 widget-7b6cfb dmCustomWidget" data-lazy-load="" data-title="" id="1611969072" dmle_extension="custom_extension" data-element-type="custom_extension" wr="false" icon="false" surround="false" data-widget-id="7b6cfbac88324cffbaaf57354cd7a334" data-widget-version="227" data-widget-config="eyJnZXREaXJlY3Rpb25zVGV4dCI6IkdldCBEaXJlY3Rpb25zIiwiZ3JvdXBZZWFyRXN0YWJsaXNoZWQiOm51bGwsImgzRW1haWxUZXh0IjoiIiwidG9nZ2xlSDNBc3NvY2lhdGlvbnMiOm51bGwsImdyb3VwQml6TmFtZURlc2lnbiI6bnVsbCwidG9nZ2xlSDNTZXJ2aWNlcyI6bnVsbCwidHlwZSI6InBob25lIiwiYm9sZExvY2F0aW9uTmFtZSI6bnVsbCwiY29sb3JQaWNrZXIxIjpudWxsLCJoM1BheW1lbnRzVGV4dCI6bnVsbCwiZ3JvdXBHb29nbGVBdHRyaWJ1dGVzIjpudWxsLCJwYXltZW50R3JvdXAiOm51bGwsInRvZ2dsZUgzU3BlY2lhbHRpZXMiOm51bGwsInNlcnZpY2VBcmVhR3JvdXAiOm51bGwsInN0YXRlIjp0cnVlLCJncm91cFNvY2lhbEljb25zIjpudWxsLCJ0b2dnbGVIM1NlcnZpY2VBcmVhIjpudWxsLCJzb2NpYWxHcm91cCI6bnVsbCwiemlwIjp0cnVlLCJwaG9uZUxpc3RTdHlsZXMiOm51bGwsImNhcmRTdHlsZURhcmtPckxpZ2h0IjoiX2Quc3ZnIiwiaDNZZWFySGVhZFRleHQiOiIiLCJwYXltZW50T3B0aW9uc0J1bGxldCI6ImJ1bGxldCIsIi5hZGRyZXNzSGVhZGVyIjpudWxsLCJ0b2dnbGVIM2ZlYXRNZXNzYWdlIjpudWxsLCJicmFuZHNHcm91cCI6bnVsbCwicHJvZHVjdHNHcm91cCI6bnVsbCwiaDNLZXl3b3Jkc1RleHQiOm51bGwsInNjcmlwdCI6IiIsImdyb3VwS2V5d29yZHNEZXNpZ24iOm51bGwsImdyb3VwQXR0cmlidXRlcyI6bnVsbCwic29jaWFsSWNvbnNBbGlnbm1lbnQiOiJsZWZ0IiwibGFuZ3VhZ2VzQnVsbGV0IjoiYnVsbGV0IiwiZ3JvdXBFbWFpbERlc2lnbiI6bnVsbCwiaDNIb2xpZGF5SG91cnMiOiJIb2xpZGF5IEhvdXJzIiwic2hvd1BheW1lbnRzQXMiOm51bGwsInNlcnZpY2VzR3JvdXAiOm51bGwsImJvbGRTdGF0dXNUZXh0Ijp0cnVlLCJoM1NvY2lhbFRleHQiOm51bGwsImxvZ29Hcm91cCI6bnVsbCwiZ3JvdXBQaG9uZURlc2lnbiI6bnVsbCwicGhvbmVHcm91cCI6bnVsbCwiY2l0eSI6dHJ1ZSwiZ3JvdXBCaXpEZXNEZXNpZ24iOm51bGwsImgzaG91cnNUZXh0IjoiIiwiaDNTZXJ2aWNlQXJlYVRleHQiOm51bGwsImlzTGlzdCI6dHJ1ZSwiYm9sZEhvdXJzIjp0cnVlLCJ0b2dnbGVIM2hvdXJzIjpudWxsLCJncm91cEFkZGl0aW9uYWxIb3Vyc1RleHQiOm51bGwsImRlc2NyaXB0aW9uVGV4dEdyb3VwIjpudWxsLCJicmFuZHNCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM2hvbGlkYXlIb3VycyI6dHJ1ZSwiYXNzb2NpYXRpb25zQnVsbGV0IjoiYnVsbGV0IiwibG9jYXRpb25Hcm91cCI6bnVsbCwidG9nZ2xlSDNHb29nbGVBdHRyaWJ1dGVzIjp0cnVlLCJ0b2dnbGVIM2Rlc2NyaXB0aW9uIjpudWxsLCJob2xpZGF5SG91cnNCdWxsZXQiOiJidWxsZXRzIiwidG9nZ2xlSDNMYW5ndWFnZXMiOm51bGwsInBob25lVHlwZSI6InBob25lIiwibG9jYXRpb25OYW1lIjpmYWxzZSwidG9nZ2xlSDNQYXltZW50cyI6bnVsbCwic2VydmljZUFyZWFCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM1Byb2R1Y3RzIjpudWxsLCJncm91cEFkZHJl
1218c3NEZXNpZ24iOm51bGwsIlBob25lIEhlYWRlciBHcm91cCI6bnVsbCwidG9nZ2xlSDNTb2NpYWwiOm51bGwsInNob3dTZXJ2aWNlQXJlYUZpcnN0IjpudWxsLCJhZGRpdGlvbmFsSG91cnNUZXh0IjpudWxsLCJoM1NwZWNpYWx0aWVzVGV4dCI6IiIsInRvZ2dsZUgzWWVhciI6bnVsbCwic3BlY2lhbHRpZXNHcm91cCI6bnVsbCwiZHJhd01hcCI6bnVsbCwiaW5zdHJ1Y3Rpb25zIjpudWxsLCJncm91cFByb2R1Y3RzRGVzaWduIjpudWxsLCJncm91cFNlcnZpY2VBcmVhRGVzaWduIjpudWxsLCJoM0FkZHJlc3NUZXh0IjoiIiwiZ3JvdXBTZXJ2aWNlc0Rlc2lnbiI6bnVsbCwidG9nZ2xlSDNQaG9uZUxpc3QiOnRydWUsImdyb3VwRmVhdHVyZWRNZXNzYWdlRGVzaWduIjpudWxsLCJoM1NlcnZpY2VzVGV4dCI6bnVsbCwiaDNQaG9uZVRleHQiOiJDT05UQUNUIFVTIiwiaDNBc3NvY2lhdGlvbnNUZXh0IjoiIiwicGF5bWVudFRleHRHcm91cCI6bnVsbCwiaDNEZXNjcmlwdGlvblRleHQiOm51bGwsInNob3dHZXREaXJlY3Rpb25zTGluayI6bnVsbCwiZ3JvdXBQYXltZW50RGVpc2duIjpudWxsLCJoM0dvb2dsZUF0dHJpYnV0ZXMiOiJCdXNpbmVzcyBBdHRyaWJ1dGVzIiwidG9nZ2xlSDNBZGRyZXNzIjpudWxsLCJzaG93RW1haWxBc0J0biI6bnVsbCwiYXNzb2NpYXRpb25zR3JvdXAiOm51bGwsImgzUHJvZHVjdHNUZXh0IjoiIiwiZm9ybWF0UGhvbmUiOnRydWUsImdyb3VwTGFuZ3VhZ2VzRGVzaWduIjpudWxsLCJ0b2dnbGVIM0tleXdvcmRzIjpudWxsLCJrZXl3b3Jkc0dyb3VwIjpudWxsLCJhbHQiOm51bGwsImhpZGVIb3Vyc0xpc3QiOmZhbHNlLCJncm91cEhvbGlkYXlIb3Vyc0Rlc2lnbiI6bnVsbCwicGhvbmVTaG93QXMiOiJsaXN0IiwiZ29vZ2xlQXR0cmlidXRlc0Zvcm1hdHRlZExpc3RCdWxsZXQiOiJidWxsZXRzIiwibWFwWm9vbSI6IjEzIiwiaG9saWRheUhvdXJzIjpudWxsLCJncm91cEhvdXJzRGVzaWduIjpudWxsLCJoM0xhbmd1YWdlc1RleHQiOm51bGwsImhvdXJzU2hvd0FzIjoibGlzdCIsImVtYWlsVGV4dEdyb3VwIjpudWxsLCJwaG9uZUxpc3RTdHlsZSI6Im5vLWxpc3QiLCJ0b2dnbGUxIjpudWxsLCJoM0JyYW5kVGV4dCI6IiIsImxpbmsiOm51bGwsImdyb3VwUGF5bWVudENhcmREZXNpZ24iOm51bGwsImdyb3VwU3BlY2lhbHRpZXNEZXNpZ24iOm51bGwsInllYXJFc3RhYmlsaXNoZWRHcm91cCI6bnVsbCwicGhvbmVUZXh0U3R5bGVzIjpudWxsLCJncm91cEFzc29jaWF0aW9uc0Rlc2lnbiI6bnVsbCwic3BlY2lhbHRpZXNCdWxsZXQiOiJidWxsZXQiLCJoM0ZlYXRNZXNzYWdlVGV4dCI6bnVsbCwidG9nZ2xlSDNCcmFuZHMiOm51bGwsImFkZHJlc3MyIjp0cnVlLCJhZGRyZXNzMSI6dHJ1ZSwiY2FyZEFsaWdubWVudCI6InBpY29ucy1jZW50ZXIiLCJncm91cExvZ29EZXNpZ24iOm51bGwsImdyb3VwT3BlbkhvdXJzRGVzaWduIjpudWxsLCJmZWF0TWVzc2FnZUdyb3VwIjpudWxsLCJrZXl3b3Jkc0J1bGxldCI6ImJ1bGxldCIsInRvZ2dsZUgzRW1haWwiOm51bGwsInNlcnZpY2VzQnVsbGV0IjpudWxsLCJncm91cEJyYW5kc0Rlc2lnbiI6bnVsbCwicHJvZHVjdHNCdWxsZXQiOiJidWxsZXQiLCJsYW5ndWFnZXNHcm91cCI6bnVsbCwiaG91cnNHcm91cCI6bnVsbH0="> <h3 class="phoneHeader">CONTACT US</h3> 1219 <ul id="phoneList" class="no-list"></ul> 1220 <div class="editorOnlyInfo" data-nosnippet="">This is a placeholder for the Yext Knolwedge Tags. This message will not appear on the live site, but only within the editor. The Yext Knowledge Tags are successfully installed and will be added to the website.</div> 1221 <div class="wrongScriptError" data-nosnippet=""><!--The Yext script you entered is empty or incorrect: .<br/>--><!--It should look like:<br/>--><!-- <pre>--><!-- <code>--><!--<script async defer src="https://knowledgetags.yextpages.net/embed?key=KEY&account_id=ACCOUNT_ID&location_id=LOCATIONS_ID" type="text/javascript"></script>--><!-- </code>--><!--</pre>--></div> 1222<!-- Load Yext Script into page source so schema validates with Structured Data testing tool --></div> 1223 <div class="u_1708528996 dmNewParagraph" data-element-type="paragraph" data-version="5" id="1708528996" style="transition: opacity 1s ease-in-out 0s;"><p class="text-align-center"><span style="display: unset; color: rgb(255, 255, 255);">Call or Text Mobile Number</span></p></div> 1224 <div class="u_1826728320 widget-7b6cfb dmCustomWidget" data-lazy-load="" data-title="" id="1826728320" dmle_extension="custom_extension" data-element-type="custom_extension" wr="false" icon="false" surround="false" data-widget-id="7b6cfbac88324cffbaaf57354cd7a334" data-widget-version="227" data-widget-config="eyJnZXREaXJlY3Rpb25zVGV4dCI6IkdldCBEaXJlY3Rpb25zIiwiZ3JvdXBZZWFyRXN0YWJsaXNoZWQiOm51bGwsImgzRW1haWxUZXh0IjoiIiwidG9nZ2xlSDNBc3NvY2lhdGlvbnMiOm51bGwsImdyb3VwQml6TmFtZURlc2lnbiI6bnVsbCwidG9nZ2xlSDNTZXJ2aWNlcyI6bnVsbCwidHlwZSI6ImVtYWlsIiwiYm9sZExvY2F0aW9uTmFtZSI6bnVsbCwiY29sb3JQaWNrZXIxIjpudWxsLCJoM1BheW1lbnRzVGV4dCI6bnVsbCwiZ3JvdXBHb29nbGVBdHRyaWJ1dGVzIjpudWxsLCJwYXltZW50R3JvdXAiOm51bGwsInRvZ2dsZUgzU3BlY2lhbHRpZXMiOm51bGwsInNlcnZpY2VBcmVhR3JvdXAiOm51bGwsInN0YXRlIjp0cnVlLCJncm91cFNvY2lhbEljb25zIjpudWxsLCJ0b2dnbGVIM1NlcnZpY2VBcmVhIjpudWxsLCJzb2NpYWxHcm91cCI6bnVsbCwiemlwIjp0cnVlLCJwaG9uZUxpc3RTdHlsZXMiOm51bGwsImNhcmRTdHlsZURhcmtPckxpZ2h0IjoiX2Quc3ZnIiwiaDNZZWFySGVhZFRleHQiOiIiLCJwYXltZW50T3B0aW9uc0J1bGxldCI6ImJ1bGxldCIsIi5hZGRyZXNzSGVhZGVyIjpudWxsLCJ0b2dnbGVIM2ZlYXRNZXNzYWdlIjpudWxsLCJicmFuZHNHcm91cCI6bnVsbCwicHJvZHVjdHNHcm91cCI6bnVsbCwiaDNLZXl3b3Jkc1RleHQiOm51bGwsInNjcmlwdCI6IiIsImdyb3VwS2V5d29yZHNEZXNpZ24iOm51bGwsImdyb3VwQXR0cmlidXRlcyI6bnVsbCwic29jaWFsSWNvbnNBbGlnbm1lbnQiOiJsZWZ0IiwibGFuZ3VhZ2VzQnVsbGV0IjoiYnVsbGV0IiwiZ3JvdXBFbWFpbERlc2lnbiI6bnVsbCwiaDNIb2xpZGF5SG91cnMiOiJIb2xpZGF5IEhvdXJzIiwic2hvd1BheW1lbnRzQXMiOm51bGwsInNlcnZpY2VzR3JvdXAiOm51bGwsImJvbGRTdGF0dXNUZXh0Ijp0cnVlLCJoM1NvY2lhbFRleHQiOm51bGwsImxvZ29Hcm91cCI6bnVsbCwiZ3JvdXBQaG9uZURlc2lnbiI6bnVsbCwicGhvbmVHcm91cCI6bnVsbCwiY2l0eSI6dHJ1ZSwiZ3JvdXBCaXpEZXNEZXNpZ24iOm51bGwsImgzaG91cnNUZXh0IjoiIiwiaDNTZXJ2aWNlQXJlYVRleHQiOm51bGwsImlzTGlzdCI6dHJ1ZSwiYm9sZEhvdXJzIjp0cnVlLCJ0b2dnbGVIM2hvdXJzIjpudWxsLCJncm91cEFkZGl0aW9uYWxIb3Vyc1RleHQiOm51bGwsImRlc2NyaXB0aW9uVGV4dEdyb3VwIjpudWxsLCJicmFuZHNCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM2hvbGlkYXlIb3VycyI6dHJ1ZSwiYXNzb2NpYXRpb25zQnVsbGV0IjoiYnVsbGV0IiwibG9jYXRpb25Hcm91cCI6bnVsbCwidG9nZ2xlSDNHb29nbGVBdHRyaWJ1dGVzIjp0cnVlLCJ0b2dnbGVIM2Rlc2NyaXB0aW9uIjpudWxsLCJob2xpZGF5SG91cnNCdWxsZXQiOiJidWxsZXRzIiwidG9nZ2xlSDNMYW5ndWFnZXMiOm51bGwsInBob25lVHlwZSI6InBob25lIiwibG9jYXRpb25OYW1lIjpmYWxzZSwidG9nZ2xlSDNQYXltZW50cyI6bnVsbCwic2VydmljZUFyZWFCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM1Byb2R1Y3RzIjpudWxsLCJncm91cEFkZHJl
1224c3NEZXNpZ24iOm51bGwsIlBob25lIEhlYWRlciBHcm91cCI6bnVsbCwidG9nZ2xlSDNTb2NpYWwiOm51bGwsInNob3dTZXJ2aWNlQXJlYUZpcnN0IjpudWxsLCJhZGRpdGlvbmFsSG91cnNUZXh0IjpudWxsLCJoM1NwZWNpYWx0aWVzVGV4dCI6IiIsInRvZ2dsZUgzWWVhciI6bnVsbCwic3BlY2lhbHRpZXNHcm91cCI6bnVsbCwiZHJhd01hcCI6bnVsbCwiaW5zdHJ1Y3Rpb25zIjpudWxsLCJncm91cFByb2R1Y3RzRGVzaWduIjpudWxsLCJncm91cFNlcnZpY2VBcmVhRGVzaWduIjpudWxsLCJoM0FkZHJlc3NUZXh0IjoiIiwiZ3JvdXBTZXJ2aWNlc0Rlc2lnbiI6bnVsbCwidG9nZ2xlSDNQaG9uZUxpc3QiOm51bGwsImdyb3VwRmVhdHVyZWRNZXNzYWdlRGVzaWduIjpudWxsLCJoM1NlcnZpY2VzVGV4dCI6bnVsbCwiaDNQaG9uZVRleHQiOiIiLCJoM0Fzc29jaWF0aW9uc1RleHQiOiIiLCJwYXltZW50VGV4dEdyb3VwIjpudWxsLCJoM0Rlc2NyaXB0aW9uVGV4dCI6bnVsbCwic2hvd0dldERpcmVjdGlvbnNMaW5rIjpudWxsLCJncm91cFBheW1lbnREZWlzZ24iOm51bGwsImgzR29vZ2xlQXR0cmlidXRlcyI6IkJ1c2luZXNzIEF0dHJpYnV0ZXMiLCJ0b2dnbGVIM0FkZHJlc3MiOm51bGwsInNob3dFbWFpbEFzQnRuIjpudWxsLCJhc3NvY2lhdGlvbnNHcm91cCI6bnVsbCwiaDNQcm9kdWN0c1RleHQiOiIiLCJmb3JtYXRQaG9uZSI6dHJ1ZSwiZ3JvdXBMYW5ndWFnZXNEZXNpZ24iOm51bGwsInRvZ2dsZUgzS2V5d29yZHMiOm51bGwsImtleXdvcmRzR3JvdXAiOm51bGwsImFsdCI6bnVsbCwiaGlkZUhvdXJzTGlzdCI6ZmFsc2UsImdyb3VwSG9saWRheUhvdXJzRGVzaWduIjpudWxsLCJwaG9uZVNob3dBcyI6ImJ1dHRvbiIsImdvb2dsZUF0dHJpYnV0ZXNGb3JtYXR0ZWRMaXN0QnVsbGV0IjoiYnVsbGV0cyIsIm1hcFpvb20iOiIxMyIsImhvbGlkYXlIb3VycyI6bnVsbCwiZ3JvdXBIb3Vyc0Rlc2lnbiI6bnVsbCwiaDNMYW5ndWFnZXNUZXh0IjpudWxsLCJob3Vyc1Nob3dBcyI6Imxpc3QiLCJlbWFpbFRleHRHcm91cCI6bnVsbCwicGhvbmVMaXN0U3R5bGUiOiJidWxsZXRzIiwidG9nZ2xlMSI6bnVsbCwiaDNCcmFuZFRleHQiOiIiLCJsaW5rIjpudWxsLCJncm91cFBheW1lbnRDYXJkRGVzaWduIjpudWxsLCJncm91cFNwZWNpYWx0aWVzRGVzaWduIjpudWxsLCJ5ZWFyRXN0YWJpbGlzaGVkR3JvdXAiOm51bGwsInBob25lVGV4dFN0eWxlcyI6bnVsbCwiZ3JvdXBBc3NvY2lhdGlvbnNEZXNpZ24iOm51bGwsInNwZWNpYWx0aWVzQnVsbGV0IjoiYnVsbGV0IiwiaDNGZWF0TWVzc2FnZVRleHQiOm51bGwsInRvZ2dsZUgzQnJhbmRzIjpudWxsLCJhZGRyZXNzMiI6dHJ1ZSwiYWRkcmVzczEiOnRydWUsImNhcmRBbGlnbm1lbnQiOiJwaWNvbnMtY2VudGVyIiwiZ3JvdXBMb2dvRGVzaWduIjpudWxsLCJncm91cE9wZW5Ib3Vyc0Rlc2lnbiI6bnVsbCwiZmVhdE1lc3NhZ2VHcm91cCI6bnVsbCwia2V5d29yZHNCdWxsZXQiOiJidWxsZXQiLCJ0b2dnbGVIM0VtYWlsIjpudWxsLCJzZXJ2aWNlc0J1bGxldCI6bnVsbCwiZ3JvdXBCcmFuZHNEZXNpZ24iOm51bGwsInByb2R1Y3RzQnVsbGV0IjoiYnVsbGV0IiwibGFuZ3VhZ2VzR3JvdXAiOm51bGwsImhvdXJzR3JvdXAiOm51bGx9"> <a onclick=";return dm_gaq_push_event('ClickToEmail', 'Email',null, dmAPI.getSiteName(), this);" data-yext-field="email" class="yextEmail "> <span data-yext-field="email" class="text"></span> 1225</a> 1226 <div class="editorOnlyInfo" data-nosnippet="">This is a placeholder for the Yext Knolwedge Tags. This message will not appear on the live site, but only within the editor. The Yext Knowledge Tags are successfully installed and will be added to the website.</div> 1227 <div class="wrongScriptError" data-nosnippet=""><!--The Yext script you entered is empty or incorrect: .<br/>--><!--It should look like:<br/>--><!-- <pre>--><!-- <code>--><!--<script async defer src="https://knowledgetags.yextpages.net/embed?key=KEY&account_id=ACCOUNT_ID&location_id=LOCATIONS_ID" type="text/javascript"></script>--><!-- </code>--><!--</pre>--></div> 1228<!-- Load Yext Script into page source so schema validates with Structured Data testing tool --></div> 1229</div> 1230</div> 1231</div> 1232</div> 1233</div> 1234</div> 1235 <div class="dmRespRow u_1720400506 fullBleedChanged fullBleedMode" id="1720400506"> <div class="dmRespColsWrapper" id="1295623979"> <div class="u_1967359969 dmRespCol small-12 large-5 medium-5" id="1967359969"> <div class="u_1031094888 dmDividerWrapper clearfix" data-element-type="dDividerId" data-layout="divider-style-1" data-widget-version="2" id="1031094888" layout="divider-style-3"><hr class="dmDivider" style="border-width:2px; border-top-style:solid; color:grey;" id="1565646164"/></div> 1236</div> 1237 <div class="u_1250436626 dmRespCol small-12 large-2 medium-2" id="1250436626"> <div class="align-center text-align-center u_1459831963 dmSocialHub gapSpacing" id="1459831963" 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://www.facebook.com/fullservicegaragedoors/" target="_blank" dm_dont_rewrite_url="true" aria-label="facebook" onclick="dm_gaq_push_event &&
1237 dm_gaq_push_event('socialLink', 'click', 'Facebook')"> <span class="dmSocialFacebook dm-social-icons-facebook oneIcon socialHubIcon style8" aria-hidden="true" data-hover-effect=""></span> 1238</a> 1239 <a href="https://www.yelp.com/search?find_desc=full+service+garage+doors&find_loc=Loveland%2C+CO&ns=1" 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 style8" aria-hidden="true" data-hover-effect=""></span> 1240</a> 1241</div> 1242</div> 1243</div> 1244</div> 1245 <div class="u_1031705545 dmRespCol small-12 large-5 medium-5" id="1031705545"> <div class="u_1463563693 dmDividerWrapper clearfix" data-element-type="dDividerId" data-layout="divider-style-1" data-widget-version="2" id="1463563693" layout="divider-style-3"><hr class="dmDivider" style="border-width:2px; border-top-style:solid; color:grey;" id="1226625497"/></div> 1246</div> 1247</div> 1248</div> 1249 <div class="dmRespRow u_1651083035" id="1651083035"> <div class="dmRespColsWrapper" id="1532611836"> <div class="dmRespCol large-12 medium-12 small-12" id="1300055787"> <div class="widget-afd4bc u_1935852666 dmCustomWidget" data-lazy-load="" data-title="" id="1935852666" dmle_extension="custom_extension" data-element-type="custom_extension" icon="false" surround="false" data-widget-id="afd4bc7f907140298e111130d715031d" data-widget-version="99" data-widget-config="eyJJY29uTGlzdCI6W3siQWN0aW9uIjoiQ2FsbCIsIkxhYmVsIjoiQ2FsbCBVcyIsIkNhbGxOdW0iOiI5NzAtNDcyLTE3NjciLCJRdWVyeSI6IlN0cmVldCBBZGRyZXNzLCBDaXR5LCBTVCwgMTIzNDUiLCJTbXNOdW0iOiI1NTUtNTU1LTU1NTUiLCJlbWFpbERlZlN1YmplY3QiOiJRdWVzdGlvbnMgQWJvdXQgWW91ciBCdXNpbmVzcyIsIkVtYWlsIjp0cnVlLCJGYWNlYm9vayI6dHJ1ZSwiVHVtYmxyIjpmYWxzZSwiTGlua2VkSW4iOnRydWUsIlR3aXR0ZXIiOnRydWUsIlJlZGRpdCI6dHJ1ZSwiUGludGVyZXN0Ijp0cnVlLCJDdXN0b21JY29uX1NlbGVjdCI6ImN1c3RvbV9pY29uMSIsInNob3dvbm1vYmlsZSI6dHJ1ZSwic2hvd29uZGVza3RvcCI6ZmFsc2UsImRlZkVtYWlsQm9keSI6IiIsIlNoYXJlVGl0bGUiOiIiLCJHb29nbGVQbHVzIjp0cnVlfSx7IkFjdGlvbiI6IlNtcyIsIkxhYmVsIjoiVGV4dCBVcyIsIkNhbGxOdW0iOiI1NTUtNTU1LTU1NTUiLCJRdWVyeSI6IlN0cmVldCBBZGRyZXNzLCBDaXR5LCBTVCwgMTIzNDUiLCJTbXNOdW0iOiI5NzAtODE3LTMzNDUiLCJlbWFpbERlZlN1YmplY3QiOiJRdWVzdGlvbnMgQWJvdXQgWW91ciBCdXNpbmVzcyIsIkVtYWlsIjp0cnVlLCJGYWNlYm9vayI6dHJ1ZSwiVHVtYmxyIjpmYWxzZSwiTGlua2VkSW4iOnRydWUsIlR3aXR0ZXIiOnRydWUsIlJlZGRpdCI6dHJ1ZSwiUGludGVyZXN0Ijp0cnVlLCJDdXN0b21JY29uX1NlbGVjdCI6ImN1c3RvbV9pY29uMSIsInNob3dvbm1vYmlsZSI6dHJ1ZSwic2hvd29uZGVza3RvcCI6ZmFsc2UsImRlZkVtYWlsQm9keSI6IiIsIlNoYXJlVGl0bGUiOiIiLCJHb29nbGVQbHVzIjp0cnVlfSx7IkFjdGlvbiI6IkxpbmsiLCJMYWJlbCI6IlJlYWQgUmV2aWV3cyIsIkNhbGxOdW0iOiI1NTUtNTU1LTU1NTUiLCJRdWVyeSI6IlN0cmVldCBBZGRyZXNzLCBDaXR5LCBTVCwgMTIzNDUiLCJTbXNOdW0iOiI1NTUtNTU1LTU1NTUiLCJlbWFpbERlZlN1YmplY3QiOiJRdWVzdGlvbnMgQWJvdXQgWW91ciBCdXNpbmVzcyIsIkVtYWlsIjp0cnVlLCJGYWNlYm9vayI6dHJ1ZSwiVHVtYmxyIjpmYWxzZSwiTGlua2VkSW4iOnRydWUsIlR3aXR0ZXIiOnRydWUsIlJlZGRpdCI6dHJ1ZSwiUGludGVyZXN0Ijp0cnVlLCJDdXN0b21JY29uX1NlbGVjdCI6ImN1c3RvbV9pY29uMSIsInNob3dvbm1vYmlsZSI6dHJ1ZSwic2hvd29uZGVza3RvcCI6dHJ1ZSwiZGVmRW1haWxCb2R5IjoiIiwiU2hhcmVUaXRsZSI6IiIsIkdvb2dsZVBsdXMiOnRydWUsIkN1c3RvbUljb24iOnRydWUsIkxpbmsiOnsidmFsdWUiOiJyZXZpZXdzIiwibGFiZWwiOiIiLCJ0eXBlIjoicGFnZSIsImhyZWYiOiIvcmV2aWV3cyIsInJhd191cmwiOiIvc2l0ZS8xYzAyYTVlMzMyNjI0OGQ0ODQ3NmU5YmI2ZmRhYTlkOC9yZXZpZXdzP25lZT10cnVlJmVkPXRydWUmc2hvd09yaWdpbmFsPXRydWUmcHJldmlldz10cnVlJmRtX3RyeV9tb2RlPXRydWUmZG1fY2hlY2tTeW5jPTEifX0seyJBY3Rpb24iOiJMaW5rIiwiTGFiZWwiOiJSZXF1ZXN0IGEgU2VydmljZSIsIkNhbGxOdW0iOiI1NTUtNTU1LTU1NTUiLCJRdWVyeSI6IlN0cmVldCBBZGRyZXNzLCBDaXR5LCBTVCwgMTIzNDUiLCJTbXNOdW0iOiI1NTUtNTU1LTU1NTUiLCJlbWFpbERlZlN1YmplY3QiOiJRdWVzdGlvbnMgQWJvdXQgWW91ciBCdXNpbmVzcyIsIkVtYWlsIjp0cnVlLCJGYWNlYm9vayI6dHJ1ZSwiVHVtYmxyIjpmYWxzZSwiTGlua2VkSW4iOnRydWUsIlR3aXR0ZXIiOnRydWUsIlJlZGRpdCI6dHJ1ZSwiUGludGVyZXN0Ijp0cnVlLCJDdXN0b21JY29uX1NlbGVjdCI6ImN1c3RvbV9pY29uMiIsInNob3dvbm1vYmlsZSI6dHJ1ZSwic2hvd29uZGVza3RvcCI6dHJ1ZSwiZGVmRW1haWxCb2R5IjoiIiwiU2hhcmVUaXRsZSI6IiIsIkdvb2dsZVBsdXMiOnRydWUsIkxpbmsiOnsidmFsdWUiOiJyZXF1ZXN0LXNlcnZpY2UtZm9ybSIsImxhYmVsIjoiIiwidHlwZSI6InBhZ2UiLCJocmVmIjoiL3JlcXVlc3Qtc2VydmljZS1mb3JtIiwicmF3X3VybCI6Ii9zaXRlL2ExOGU5NjNhMDdiNzRjMzg5NGVjNGM2ODdlNTNlZDkzL3JlcXVlc3Qtc2VydmljZS1mb3JtP25lZT10cnVlJmVkPXRydWUmc2hvd09yaWdpbmFsPXRydWUmcHJldmlldz10cnVlJmRtX3RyeV9tb2RlPXRydWUmZG1fY2hlY2tTeW5jPTEifSwiQ3VzdG9tSWNvbiI6dHJ1ZX0seyJBY3Rpb24iOiJNZXNzIiwiTGFiZWwiOiJNZXNzYWdlIFVzIiwiQ2FsbE51bSI6IjU1NS01NTUtNTU1NSIsIlF1ZXJ5IjoiU3RyZWV0IEFkZHJlc3MsIENpdHksIFNULCAxMjM0NSIsIlNtc051bSI6IjU1NS01NTUtNTU1NSIsImVtYWlsRGVmU3ViamVjdCI6IlF1ZXN0aW9ucyBBYm91dCBZb3VyIEJ1c2luZXNzIiwiRW1haWwiOnRydWUsIkZhY2Vib29rIjp0cnVlLCJUdW1ibHIiOmZhbHNlLCJMaW5rZWRJbiI6dHJ1ZSwiVHdpdHRlciI6dHJ1ZSwiUmVkZGl0Ijp0cnVlLCJQaW50ZXJlc3QiOnRydWUsIkN1c3RvbUljb25fU2VsZWN0IjoiY3VzdG9tX2ljb24xIiwic2hvd29ubW9iaWxlIjp0cnVlLCJzaG93b25kZXNrdG9wIjp0cnVlLCJkZWZFbWFpbEJvZHkiOiIiLCJTaGFyZVRpdGxlIjoiIiwiR29vZ2xlUGx1cyI6dHJ1ZSwiRmJVc2VyIjoiMTU1MTE0NjY0NTM2NTczIn0seyJBY3Rpb24iOiJFbWFpbCIsIkxhYmVsIjoiRW1haWwgVXMiLCJDYWxsTnVtIjoiNTU1LTU1NS01NTU1IiwiUXVlcnkiOiJTdHJlZXQgQWRkcmVzcywgQ2l0eSwgU1QsIDEyMzQ1IiwiU21zTnVtIjoiNTU1LTU1NS01NTU1IiwiZW1haWxEZWZTdWJqZWN0IjoiUXVlc3Rpb25zIEFib3V0IFlvdXIgQnVzaW5lc3MiLCJFbWFpbCI6dHJ1ZSwiRmFjZWJvb2siOnRydWUsIlR1bWJsciI6ZmFsc2UsIkxpbmtlZEluIjp0cnVlLCJUd2l0dGVyIjp0cnVlLCJSZWRkaXQiOnRydWUsIlBpbnRlcmVzdCI6dHJ1ZSwiQ3VzdG9tSWNvbl9TZWxlY3QiOiJjdXN0b21faWNvbjEiLCJzaG93b25tb2JpbGUiOnRydWUsInNob3dvbmRlc2t0b3AiOnRydWUsImRlZkVtYWlsQm9keSI6IiIsIlNoYXJlVGl0bGUiOiIiLCJHb29nbGVQbHVzIjp0cnVlLCJFbWFpbEFkZHIiOiJmdWxsc2VydmljZWdkQG1pbmRzcHJpbmcuY29tIn0seyJBY3Rpb24iOiJTaGFyZSIsIkxhYmVsIjoiU2hhcmUgVXMiLCJDYWxsTnVtIjoiNTU1LTU1NS01NTU1IiwiUXVlcnkiOiJTdHJlZXQgQWRkcmVzcywgQ2l0eSwgU1QsIDEyMzQ1IiwiU21zTnVtIjoiNTU1LTU1NS01NTU1IiwiZW1haWxEZWZTdWJqZWN0IjoiUXVlc3Rpb25zIEFib3V0IFlvdXIgQnVzaW5lc3MiLCJFbWFpbCI6dHJ1ZSwiRmFjZWJvb2siOnRydWUsIlR1bWJsciI6dHJ1ZSwiTGlua2VkSW4iOnRydWUsIlR3aXR0ZXIiOnRydWUsIlJlZGRpdCI6dHJ1ZSwiUGludGVyZXN0Ijp0cnVlLCJDdXN0b21JY29uX1NlbGVjdCI6ImN1c3RvbV9pY29uMSIsInNob3dvbm1vYmlsZSI6dHJ1ZSwic2hvd29uZGVza3RvcCI6dHJ1ZSwiZGVmRW1haWxCb2R5IjoiIiwiU2hhcmVUaXRsZSI6IiIsIkdvb2dsZVBsdXMiOmZhbHNlfV0sIk1vZGFsVGl0bGUiOiJTaGFyZSBPbjoiLCJEZXNrdG9wTGF5b3V0IjoiRmxvYXQiLCJEZXNrTWFpbiI6ImVudmVsb3BlIiwiTWFpbkxhYmVsIjoiQ29udGFjdCBVcyIsIk
1249hlbHBUZXh0IjoiSGkuIERvIHlvdSBuZWVkIGFueSBoZWxwPyIsIk1vYmlsZUxheW91dCI6IkZ1bGwiLCJNb2JpbGVUaGVtZSI6IkxpZ2h0IiwiTW9iaWxlTWFpbiI6InBsdXMiLCJNb2JpbGVPcmllbnRhdGlvbiI6InJpZ2h0IiwiRm9jdXNBbmkiOnRydWUsIkZvY3VzRGVsYXkiOiI1MDAwIiwiRm9jdXNJdGVyIjoiMSIsImN1c3RvbV9pY29uMSI6IjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2Z1wiIHZpZXdCb3g9XCIwIDAgMTY2NCAxNzkyXCI+PHBhdGggZmlsbD1cImluaGVyaXRcIiBkPVwiTTE2NjQgNjQ3cTAgMjItMjYgNDhsLTM2MyAzNTQgODYgNTAwcTEgNyAxIDIwIDAgMjEtMTAuNSAzNS41dC0zMC41IDE0LjVxLTE5IDAtNDAtMTJsLTQ0OS0yMzYtNDQ5IDIzNnEtMjIgMTItNDAgMTItMjEgMC0zMS41LTE0LjV0LTEwLjUtMzUuNXEwLTYgMi0yMGw4Ni01MDAtMzY0LTM1NHEtMjUtMjctMjUtNDggMC0zNyA1Ni00Nmw1MDItNzMgMjI1LTQ1NXExOS00MSA0OS00MXQ0OSA0MWwyMjUgNDU1IDUwMiA3M3E1NiA5IDU2IDQ2elwiLz5cbjwvc3ZnPiIsImN1c3RvbV9pY29uMiI6IjxzdmcgdmVyc2lvbj1cIjEuMVwiIGlkPVwiTGF5ZXJfMVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIiB4PVwiMHB4XCIgeT1cIjBweFwiIHdpZHRoPVwiODBweFwiIGhlaWdodD1cIjgwcHhcIiB2aWV3Qm94PVwiMCAwIDgwIDgwXCIgZW5hYmxlLWJhY2tncm91bmQ9XCJuZXcgMCAwIDgwIDgwXCIgeG1sOnNwYWNlPVwicHJlc2VydmVcIj5cbjxwYXRoIGZpbGwtcnVsZT1cImV2ZW5vZGRcIiBjbGlwLXJ1bGU9XCJldmVub2RkXCIgZmlsbD1cIiNGRkZGRkZcIiBkPVwiTTE2LjQ2OSwzNy41NTR2MjYuNTIxaDQ3LjA2M1YzNy41NTRIMTYuNDY5TDE2LjQ2OSwzNy41NTR6JiMxMDsmIzk7IE00MCwxNS45MjZsMzUuMTI5LDE3LjA5NmwtMS4wNjQsMi42NTVMNDAsMTkuMDk5TDUuOTM2LDM1LjY3NmwtMS4wNjUtMi42NTVMNDAsMTUuOTI2TDQwLDE1LjkyNnogTTcxLjEsMzUuNDIxdjI4LjY1M2gtNS45NjMmIzEwOyYjOTtWMzYuNDAxYy03Ljg3Ny0xLjYyNy0xNi41MDYtMi40NC0yNS4xMzctMi40NGMtOC42MjksMC0xNy4yNTksMC44MTMtMjUuMTM2LDIuNDR2MjcuNjczSDguOVYzNS40MjFMNDAsMjAuMjg3TDcxLjEsMzUuNDIxJiMxMDsmIzk7TDcxLjEsMzUuNDIxeiBNMTkuMjU3LDQwLjc4N2g1Ljc4M3YyLjc0aC01Ljc4M1Y0MC43ODdMMTkuMjU3LDQwLjc4N3ogTTU0Ljk2MSw0MC43ODdoNS43ODF2Mi43NGgtNS43ODFWNDAuNzg3TDU0Ljk2MSw0MC43ODd6JiMxMDsmIzk7IE00Ny44Miw0MC43ODdoNS43ODF2Mi43NEg0Ny44MlY0MC43ODdMNDcuODIsNDAuNzg3eiBNNDAuNjc5LDQwLjc4N2g1Ljc4MnYyLjc0aC01Ljc4MlY0MC43ODdMNDAuNjc5LDQwLjc4N3ogTTMzLjUzOSw0MC43ODcmIzEwOyYjOTtoNS43ODN2Mi43NGgtNS43ODNWNDAuNzg3TDMzLjUzOSw0MC43ODd6IE0yNi4zOTgsNDAuNzg3aDUuNzgzdjIuNzRoLTUuNzgzVjQwLjc4N3pcIi8+XG48L3N2Zz4iLCJjdXN0b21faWNvbjMiOiI8P3htbCB2ZXJzaW9uPVwiMS4wXCIgZW5jb2Rpbmc9XCJpc28tODg1OS0xXCI/PlxyXG48IS0tIEdlbmVyYXRvcjogQWRvYmUgSWxsdXN0cmF0b3IgMTkuMC4wLCBTVkcgRXhwb3J0IFBsdWctSW4gLiBTVkcgVmVyc2lvbjogNi4wMCBCdWlsZCAwKSAgLS0+XHJcbjxzdmcgdmVyc2lvbj1cIjEuMVwiIGlkPVwiTGF5ZXJfMVwiIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB4bWxuczp4bGluaz1cImh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmtcIiB4PVwiMHB4XCIgeT1cIjBweFwiXHJcblx0IHZpZXdCb3g9XCIwIDAgNDk2LjE1OCA0OTYuMTU4XCIgc3R5bGU9XCJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDQ5Ni4xNTggNDk2LjE1ODtcIiB4bWw6c3BhY2U9XCJwcmVzZXJ2ZVwiPlxyXG48cGF0aCBzdHlsZT1cImZpbGw6IzU2QjQ4QztcIiBkPVwiTTI0OC4wODIsMC4wMDNDMTExLjA3LDAuMDAzLDAsMTExLjA2MSwwLDI0OC4wODVjMCwxMzcsMTExLjA3LDI0OC4wNywyNDguMDgyLDI0OC4wN1xyXG5cdGMxMzcuMDA2LDAsMjQ4LjA3Ni0xMTEuMDcsMjQ4LjA3Ni0yNDguMDdDNDk2LjE1OCwxMTEuMDYxLDM4NS4wODgsMC4wMDMsMjQ4LjA4MiwwLjAwM3pcIi8+XHJcbjxwYXRoIHN0eWxlPVwiZmlsbDojRkZGRkZGO1wiIGQ9XCJNMzE5LjYzNywyNjkuNzExYy0yLjYzNy02LjM5NS02LjU2OS0xMi4yMzEtMTEuNzkyLTE3LjUwNWMtNS4yMjYtNS4yNzMtMTEuNjQ2LTkuOTYxLTE5LjI2My0xNC4wNjNcclxuXHRjNy45MS02LjY0LDEzLjk4OS0xMy40NTEsMTguMjM3LTIwLjQzNWM0LjI0OC02Ljk4MSw2LjM3Mi0xNS4zNTUsNi4zNzItMjUuMTIyYzAtNy40Mi0xLjQ2NS0xNC4zNTUtNC4zOTUtMjAuODAxXHJcblx0cy03LjI3Ni0xMi4xMDgtMTMuMDM3LTE2Ljk5MmMtNS43NjMtNC44ODItMTIuNTUtOC42MTctMjAuMzYxLTExLjIwNmMtNy44MTQtMi41ODYtMTYuNDU3LTMuODgyLTI1LjkyOC0zLjg4MlxyXG5cdGMtMTAuODQsMC0yMC42NTQsMS41MzgtMjkuNDQzLDQuNjE0cy0xNi4xMzksNy4xNTUtMjIuMDQ2LDEyLjIzMWMtNS45MSw1LjA3OS0xMC40LDEwLjQyNi0xMy40NzcsMTYuMDRcclxuXHRjLTMuMDc2LDUuNjE3LTQuNjE0LDEwLjk2My00LjYxNCwxNi4wNGMwLDUuMjczLDEuNjM0LDkuNDk5LDQuOTA3LDEyLjY3MWMzLjI3MSwzLjE3NSw2Ljg1OSw0Ljc2MSwxMC43NjcsNC43NjFcclxuXHRjMy4zMTksMCw2LjI0OS0wLjU4Niw4Ljc4OS0xLjc1OGMyLjUzOC0xLjE3Miw0LjI5Ni0yLjc4Myw1LjI3My00LjgzNGMxLjY1OS0zLjgwOSwzLjQ5LTcuODYsNS40OTMtMTIuMTU4XHJcblx0YzItNC4yOTYsNC4xMjUtNy44MTIsNi4zNzItMTAuNTQ3YzIuMjQ1LTIuNzMzLDUuMjk2LTQuOTMsOS4xNTUtNi41OTJjMy44NTYtMS42NTksOC43NjQtMi40OSwxNC43MjItMi40OVxyXG5cdGM4Ljc4OSwwLDE1Ljc3LDIuNzEsMjAuOTQ3LDguMTNjNS4xNzUsNS40Miw3Ljc2NCwxMS44OTEsNy43NjQsMTkuNDA5YzAsOS44NjUtMy4yNDgsMTcuNDMyLTkuNzQxLDIyLjcwNVxyXG5cdGMtNi40OTYsNS4yNzMtMTQuMjM0LDcuOTEtMjMuMjE4LDcuOTFoLTYuMDA2Yy02LjkzNSwwLTEyLjE1OCwxLjQ0Mi0xNS42NzQsNC4zMjFjLTMuNTE2LDIuODgyLTUuMjczLDYuNjY1LTUuMjczLDExLjM1M1xyXG5cdGMwLDQuNzg2LDEuNDY1LDguNTIxLDQuMzk1LDExLjIwNmMyLjkzLDIuNjg3LDcuMDc5LDQuMDI4LDEyLjQ1MSw0LjAyOGMxLjE3MiwwLDMuODA5LTAuMTk0LDcuOTEtMC41ODZcclxuXHRjNC4xMDItMC4zODksNy4xMjctMC41ODYsOS4wODItMC41ODZjMTEuMTMzLDAsMTkuODIzLDMuMjQ4LDI2LjA3NCw5Ljc0MWM2LjI0OSw2LjQ5Niw5LjM3NSwxNS40NTQsOS4zNzUsMjYuODhcclxuXHRjMCw3LjcxNi0xLjgzMSwxNC41MDItNS40OTMsMjAuMzYxcy04LjMwMiwxMC4yNzktMTMuOTE2LDEzLjI1N2MtNS42MTcsMi45OC0xMS40NTEsNC40NjgtMTcuNTA1LDQuNDY4XHJcblx0Yy0xMC41NDcsMC0xOC43MjctMy4yOTYtMjQuNTM2LTkuODg4Yy01LjgxMi02LjU5Mi0xMS4yNTYtMTYuNjc0LTE2LjMzMy0zMC4yNDljLTAuNzgzLTIuMjQ1LTIuNDQyLTQuMTc1LTQuOTgtNS43ODZcclxuXHRjLTIuNTQxLTEuNjExLTUuMTc3LTIuNDE3LTcuOTEtMi40MTdjLTUuNDcsMC0xMC4wMzQsMS43MzUtMTMuNjk2LDUuMmMtMy42NjIsMy40NjgtNS40OTMsOC4wMzQtNS40OTMsMTMuNjk2XHJcblx0YzAsNC4zOTUsMS41MzgsOS45NjEsNC42MTQsMTYuNjk5czcuNjE3LDEzLjI1NywxMy42MjMsMTkuNTU2czEzLjY0NiwxMS41NDksMjIuOTI1LDE1Ljc0N2M5LjI3Niw0LjE5OCwxOS43NzUsNi4yOTksMzEuNDk0LDYuMjk5XHJcblx0YzExLjUyMiwwLDIyLjA0Ni0xLjgzMSwzMS41NjctNS40OTNzMTcuNzQ4LTguNzM5LDI0LjY4My0xNS4yMzRjNi45MzMtNi40OTMsMTIuMTgxLTEzLjg5MSwxNS43NDctMjIuMTkyXHJcblx0YzMuNTYzLTguMjk5LDUuMzQ3LTE2Ljg5NCw1LjM0Ny0yNS43ODFDMzIzLjU5MiwyODMuMDE4LDMyMi4yNzMsMjc2LjEwOSwzMTkuNjM3LDI2OS43MTF6XCIvPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48Zz5cclxuPC9nPlxyXG48L3N2Zz5cclxuIiwiY3VzdG9tX2ljb240IjoiPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCI5OC4yOFwiIGhlaWdodD1cIjk4LjI4XCIgdmlld0JveD1cIjAgMCA5OC4yOCA5OC4yOFwiPjxjaXJjbGUgY3g9XCI0OS4xNFwiIGN5PVwiNDkuMTRcIiByPVwiNDkuMTRcIiBmaWxsPVwiIzI3MmEzZFwiLz48cGF0aCBkPVwiTTYwLjE4LDUzLjVhMywzLDAsMCwxLDIuMzIuNzUsMywzLDAsMCwxLC42NSwyLjA5LDYuNTMsNi41MywwLDAsMS0uMjQsMS44LDQuMzgsNC4zOCwwLDAsMS0uNDMsMS4xMkg1O
1249C41NHY2LjY4SDUxLjkyVjU5LjI2aC03LjNxLTQuNTYsMC02LjQ4LTEuNDFhNS4xNyw1LjE3LDAsMCwxLTEuOTItNC40NCwxMC42NSwxMC42NSwwLDAsMSwuNDYtMywxOC45LDE4LjksMCwwLDEsMS4yLTMsMjYuNTcsMjYuNTcsMCwwLDEsMS43My0zLDMyLjg1LDMyLjg1LDAsMCwxLDItMi43NnExLjQ0LTEuNzgsMy0zLjM0YTMwLDMwLDAsMCwxLDMuMTItMi43NkExNSwxNSwwLDAsMSw1MSwzMy42NmE4LjQ4LDguNDgsMCwwLDEsMy4zNC0uNyw3LjczLDcuNzMsMCwwLDEsMi44OC40Myw2LjI3LDYuMjcsMCwwLDEsMS4zNC42N1Y1My41Wk01MS45MiwzOS40NGMtLjI2LjE2LS45LjY2LTEuOTIsMS40OWEyNC41OCwyNC41OCwwLDAsMC0zLjQxLDMuNTUsMjQuMTgsMjQuMTgsMCwwLDAtMi44Myw0LjE1LDYuODksNi44OSwwLDAsMC0uOTEsMi45MSwxLjU3LDEuNTcsMCwwLDAsLjg2LDEuNTNBNS4wNiw1LjA2LDAsMCwwLDQ2LDUzLjVoNlpcIiB0cmFuc2Zvcm09XCJ0cmFuc2xhdGUoLTAuNCAtMC4zNylcIiBmaWxsPVwiIzRkYWY3Y1wiLz48L3N2Zz4iLCJjdXN0b21faWNvbjUiOiI8c3ZnIHhtbG5zPVwiaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmdcIiB3aWR0aD1cIjk4LjI4XCIgaGVpZ2h0PVwiOTguMjhcIiB2aWV3Qm94PVwiMCAwIDk4LjI4IDk4LjI4XCI+PGNpcmNsZSBjeD1cIjQ5LjE0XCIgY3k9XCI0OS4xNFwiIHI9XCI0OS4xNFwiIGZpbGw9XCIjMjcyYTNkXCIvPjxwYXRoIGQ9XCJNNDAsMzcuNThhNC4yMSw0LjIxLDAsMCwxLDEtMi44MiwzLjg2LDMuODYsMCwwLDEsMi44OC0uOTRINTdhNC4zNiw0LjM2LDAsMCwxLDIuODMuNzEsMi44MSwyLjgxLDAsMCwxLC44MiwyLjI1LDUuMDcsNS4wNywwLDAsMS0uMzYsMiw3LjQyLDcuNDIsMCwwLDEtLjU2LDEuMTRINDUuOTJsLS4xOSw1LjksMS41MS0uMjFhMjIuMjksMjIuMjksMCwwLDEsMi42Ni0uMTIsMTYuNCwxNi40LDAsMCwxLDUuNjQuODYsMTAuNTQsMTAuNTQsMCwwLDEsMy43NywyLjI4LDguNDQsOC40NCwwLDAsMSwyLjA5LDMuMjksMTEuODUsMTEuODUsMCwwLDEsLjY1LDMuODksMTEuMTIsMTEuMTIsMCwwLDEtLjg3LDQuNDYsOS4xOCw5LjE4LDAsMCwxLTIuNTYsMy40NkExMi4xOCwxMi4xOCwwLDAsMSw1NC40Miw2NmExOS4wNSwxOS4wNSwwLDAsMS01Ljc2Ljc5LDIzLjg4LDIzLjg4LDAsMCwxLTUtLjQ1LDIyLjM1LDIyLjM1LDAsMCwxLTMuNDgtMSwxMS4yOCwxMS4yOCwwLDAsMS0yLjExLTEsNC4zNyw0LjM3LDAsMCwxLS43Ny0uNTdMNDAsNTguOTNhNy4zMSw3LjMxLDAsMCwwLC42OS40MywxMi40NiwxMi40NiwwLDAsMCwxLjczLjgyLDE3LjgsMTcuOCwwLDAsMCwyLjU3Ljc2LDE0LjQ0LDE0LjQ0LDAsMCwwLDMuMjYuMzQsMTEsMTEsMCwwLDAsMy4yMi0uNDEsNiw2LDAsMCwwLDIuMDktMS4wOCwzLjgzLDMuODMsMCwwLDAsMS4xMi0xLjZBNS4zOSw1LjM5LDAsMCwwLDU1LDU2LjI3YTYuMTQsNi4xNCwwLDAsMC0uMzEtMiwzLjcxLDMuNzEsMCwwLDAtMS4xNS0xLjY2LDYuMjUsNi4yNSwwLDAsMC0yLjI4LTEuMTYsMTMuMzIsMTMuMzIsMCwwLDAtMy43NS0uNDMsMTguNCwxOC40LDAsMCwwLTUuMTEuNiwzMC4wOCwzMC4wOCwwLDAsMC0yLjk1LDFaXCIgdHJhbnNmb3JtPVwidHJhbnNsYXRlKC0wLjQgLTAuMzcpXCIgZmlsbD1cIiM0ZGFmN2NcIi8+PC9zdmc+IiwiY3VzdG9tX2ljb242IjoiPHN2ZyB4bWxucz1cImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnXCIgd2lkdGg9XCI5OC4yOFwiIGhlaWdodD1cIjk4LjI4XCIgdmlld0JveD1cIjAgMCA5OC4yOCA5OC4yOFwiPjxjaXJjbGUgY3g9XCI0OS4xNFwiIGN5PVwiNDkuMTRcIiByPVwiNDkuMTRcIiBmaWxsPVwiIzI3MmEzZFwiLz48cGF0aCBkPVwiTTYyLjUzLDU0Ljg1YTExLjUzLDExLjUzLDAsMCwxLTEsNC43NywxMS40LDExLjQsMCwwLDEtMi43MSwzLjc3LDEyLjQxLDEyLjQxLDAsMCwxLTQuMDcsMi40NywxNC4yNSwxNC4yNSwwLDAsMS01LjEzLjg5LDE0LjkzLDE0LjkzLDAsMCwxLTUuMTMtLjg2LDEyLjQyLDEyLjQyLDAsMCwxLTQtMi40LDExLDExLDAsMCwxLTIuNjYtMy42NSwxMS4xMywxMS4xMywwLDAsMS0xLTQuNjZBMTMuNTYsMTMuNTYsMCwwLDEsMzguMzEsNDlhMzMuNTUsMzMuNTUsMCwwLDEsMy4zOC01LjM3bDYuNDItOC40NWMuMTktLjIzLjQtLjQ3LjYyLS43NWEzLjgyLDMuODIsMCwwLDEsLjgyLS43Miw0LjksNC45LDAsMCwxLDEuMTctLjUyQTUuNDcsNS40NywwLDAsMSw1Mi4zOCwzM2E0LjU3LDQuNTcsMCwwLDEsMi43MS43LDQuNSw0LjUsMCwwLDEsMS4yMywxLjEyTDQ4LjI1LDQ1LjE1YTcuMzcsNy4zNywwLDAsMSwxLjUzLS41NUE4LjgyLDguODIsMCwwLDEsNTIsNDQuMzRhMTEuNDQsMTEuNDQsMCwwLDEsNC4zOC43OSw5LjQsOS40LDAsMCwxLDUuMzksNS41NEExMS44LDExLjgsMCwwLDEsNjIuNTMsNTQuODVabS02LjcyLjMzYTYuMTIsNi4xMiwwLDAsMC0xLjczLTQuNDgsNiw2LDAsMCwwLTQuNDYtMS43Niw2LjIyLDYuMjIsMCwwLDAtNC40NCwxLjc4LDUuNTUsNS41NSwwLDAsMC0xLjMsMiw3LDcsMCwwLDAsMCw1LDUuNDcsNS40NywwLDAsMCwxLjMsMiw2LjI3LDYuMjcsMCwwLDAsNC40NCwxLjc3LDYsNiwwLDAsMCw0LjQ2LTEuNzVBNi4xMyw2LjEzLDAsMCwwLDU1LjgxLDU1LjE4WlwiIHRyYW5zZm9ybT1cInRyYW5zbGF0ZSgtMC40IC0wLjM3KVwiIGZpbGw9XCIjNGRhZjdjXCIvPjwvc3ZnPiJ9"> <style>/* Pulse animation */ 1250 .pulse, .pulse2, .slide-pulse { 1251 -webkit-animation-iteration-count: 1; 1252 -moz-animation-iteration-count: 1; 1253 -o-animation-iteration-count: 1; 1254 animation-iteration-count: 1; 1255 }</style> 1256 <div id="conversion-menu-container"> <div class="overlay"></div> 1257 <div class="mobile-bg"></div> 1258 <div class="social-bg"></div> 1259 <div class="fab" id="masterfab"> <div class="desktop-bg"> <div id="help-text">Hi. Do you need any help?</div> 1260 <div id="close-bar"> <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewbox="0 0 224.512 224.512" style="enable-background:new 0 0 224.512 224.512;" xml:space="preserve"> <title>Close</title> 1261 <g> <polygon points="224.507,6.997 217.521,0 112.256,105.258 6.998,0 0.005,6.997 105.263,112.254 0.005,217.512 6.998,224.512 112.256,119.24 217.521,224.512 224.507,217.512 119.249,112.254"></polygon> 1262</g> 1263 <g></g> 1264 <g></g> 1265 <g></g> 1266 <g></g> 1267 <g></g> 1268 <g></g> 1269 <g></g> 1270 <g></g> 1271 <g></g> 1272 <g></g> 1273 <g></g> 1274 <g></g> 1275 <g></g> 1276 <g></g> 1277 <g></g> 1278</svg> 1279</div> 1280</div> 1281 <span id="main-container"></span> 1282</div> 1283 <div id="float-container"></div> 1284</div> 1285 <div class="modal micromodal-slide" id="social-modal-menu" aria-hidden="true"> <div class="modal__overlay" tabindex="-1" data-micromodal-close=""> <div class="modal__container" role="dialog" aria-modal="true" aria-labelledby="Social Share Modal"> <header class="modal__header"> <h2 class="modal__title" id="modal-1-title">Share On:</h2> 1286 <button class="modal__close" aria-label="Close modal" data-micromodal-close=""> <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewbox="0 0 224.512 224.512" style="enable-background:new 0 0 224.512 224.512;" xml:space="preserve" data-micromodal-close=""> <title>Close</title> 1287 <g> <polygon points="224.507,6.997 217.521,0 112.256,105.258 6.998,0 0.005,6.997 105.263,112.254 0.005,217.512 6.998,224.512 112.256,119.24 217.521,224.512 224.507,217.512 119.249,112.254"></polygon> 1288</g> 1289 <g></g> 1290 <g></g> 1291 <g></g> 1292 <g></g> 1293 <g></g> 1294 <g></g> 1295 <g></g> 1296 <g></g> 1297 <g></g> 1298 <g></g> 1299 <g></g> 1300 <g></g> 1301 <g></g> 1302 <g></g> 1303 <g></g> 1304</svg> 1305</button> 1306</header> 1307 <main class="modal__content" id="modal-1-content"> <div class="share-container"></div> 1308</main> 1309</div> 1310</div> 1311</div> 1312</div> 1313</div> 1314</div> 1315</div> 1316</div> 1317 <div id="1236746004" class="poweredBy poweredByHibu" dmle_extension="powered_by" data-element-type="powered_by" icon="true" surround="false"> <div class="poweredLine1"> <a href="http://budurl.com/hibuprivacy" target="_blank">Privacy Policy</a>| <a href="http://budurl.com/hibucookie" target="_blank">Do Not Share My Information</a>| <a href="http://budurl.com/hibuconditionsofuse" target="_blank">Conditions of Use</a>| <a href="http://budurl.com/hibunotice" target="_blank">Notice and Take Down Policy</a>| <a href="http://b.link/accessibility" target="_blank">Website Accessibility Policy</a> 1318</div> 1319 <div class="poweredLine2">© <span id="hibuYear">2026</span> 1320The content on this website is owned by us and our licensors. Do not copy any content (including images) without our consent.</div> 1321</div> 1322</div> 1323</div> 1324</div> 1325</div> 1326</div> 1327</div> 1328</div> 1329</div> 1330</div> 1331</div> 1332 1333 </div> 1334</div> 1335 1336 1337 1338 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<link rel="preload" href="https://cdn.hibuwebsites.com/fonts/css2?family=Merriweather:wght@300;400;700;900&family=Source+Sans+Pro:wght@200;300;400;600;700;900&subset=latin-ext&display=swap" as="style" fetchpriority="low" onload="loadCSS(this)" /> 1378 1379 1380 1381 1382 1383 1384<link rel="preload" as="style" fetchpriority="low" onload="loadCSS(this)" href="https://static-res-cdn.websites.hibu.com/mnlt/production/6817/_dm/s/rt/dist/css/d-css-runtime-desktop-one-package-structured-global.min.css" /> 1385 1386 1387 1388<link rel="preload" href="https://cdn.hibuwebsites.com/WIDGET_CSS/2f5667fbfb70478eb83ccc6818046556.css" id="widgetCSS" as="style" fetchpriority="low" onload="loadCSS(this)" /> 1389 1390 1391<style>img[width][height] { 1392 height: auto; 1393}</style> 1394 1395 1396<style> 1397 body[data-page-alias="home"] #dm [data-show-on-page-only="home"] { 1398 display: block !important; 1399 } 1400</style> 1401 1402 1403<style id="pageAdditionalWidgetsCss" type="text/css"> 1404</style> 1405 1406 1407 1408 1409 1410<link rel="preload" href="https://cdn.hibuwebsites.com/a18e963a07b74c3894ec4c687e53ed93/files/a18e963a07b74c3894ec4c687e53ed93_withFlex_1.min.css?v=48" id="siteGlobalCss" as="style" fetchpriority="low" onload="loadCSS(this)" /> 1411 1412 1413 1414<link 1415 type="text/css" rel="stylesheet" 1416 href="/_dm/s/rt/css/hibu/hibu-runtime.css?version=2026-10-01T14_02_32" 1417/> 1418 1419 1420<style id="customWidgetStyle" type="text/css"> 1421 1422</style> 1423<style id="innerPagesStyle" type="text/css"> 1424 1425</style> 1426 1427 1428<style 1429 id="additionalGlobalCss" type="text/css" 1430> 1431</style> 1432 1433 1434<link rel="preload" href="https://cdn.hibuwebsites.com/a18e963a07b74c3894ec4c687e53ed93/files/a18e963a07b74c3894ec4c687e53ed93_home_withFlex_1.min.css?v=48" id="homeCssLink" as="style" fetchpriority="low" onload="loadCSS(this)" /> 1435 1436<style id="pagestyle" type="text/css"> 1437 1438</style> 1439 1440<style id="pagestyleDevice" type="text/css"> 1441 1442</style> 1443 1444 1445 1446 1447 1448 1449 1450<style id="globalFontSizeStyle" type="text/css"> 1451 .font-size-16, .size-16, .size-16 > font { font-size: 16px !important; }.font-size-19, .size-19, .size-19 > font { font-size: 19px !important; }.font-size-15, .size-15, .size-15 > font { font-size: 15px !important; }.font-size-36, .size-36, .size-36 > font { font-size: 36px !important; } 1452</style> 1453<style id="pageFontSizeStyle" type="text/css"> 1454</style> 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494
1495<script> 1496 var isWLR = true; 1497 1498 window.customWidgetsFunctions = {}; 1499 window.customWidgetsStrings = {}; 1500 window.collections = {}; 1501 window.currentLanguage = "ENGLISH" 1502 window.isSitePreview = false; 1503</script>
1503 1504 1505 1506
1507<script> 1508 window.customWidgetsFunctions["d1ee5d5bf037471ea1770683731e577a~23"] = function (element, data, api) { 1509 $(document).ready(function(){ 1510 $.getScript('https://widget.hibu.us/static/js/index.js') 1511 .done(function(){ 1512 dmAPI.runOnReady('hibu_header_reviews',function(){ 1513 window.renderApp(); 1514 }); 1515 1516 }) 1517 .fail(function(){ 1518 console.log("failed to loaded header reviews js file") 1519 }); 1520}) 1521 1522 1523 }; 1524</script>
1524 1525
1526<script> 1527 window.customWidgetsFunctions["3e968bda541d4f4f8b9603cdc9dd8de6~16"] = function (element, data, api) { 1528 $.getScript("https://survlywidget.firebaseapp.com/static/js/recent.js", function( data, textStatus, jqxhr ) { 1529 1530}); 1531 }; 1532</script>
1532 1533
1534<script> 1535 window.customWidgetsFunctions["7b6cfbac88324cffbaaf57354cd7a334~227"] = function (element, data, api) { 1536 var emptyListPlaceHolder="<span style='min-height:20px' class='editorOnlyInfo inEditor' data-nosnippet>This list has no data in Yext. This message only appears in the editor.</span>" 1537 1538/* find yext src */ 1539var findYextSrc = function(){ 1540 var keyExp = new RegExp(/src="(.*?)"/); 1541 if (data.config.script.includes('location_id')) { 1542 data.config.script = data.config.script.replace('location_id', 'entity_id'); 1543 } 1544 var result = keyExp.exec(data.config.script); 1545 if(result && result.length == 2){ 1546 window.yextScriptSrc=result[1]; 1547 return result[1]; 1548 }else{ 1549 return window.yextScriptSrc; 1550 } 1551} 1552 1553window.yextLoadedCallback = function(yextData) { 1554 $('.wrongScriptError').removeClass('hasError'); 1555 window.yextInitialized = true; 1556 1557 if(yextData) { 1558 window._yextData = yextData; 1559 } else { 1560 throw "Yext loaded but no data was passed"; 1561 } 1562} 1563 1564function loadYextScript(src){ 1565 $(element).find('.wrongScriptError').removeClass('hasError'); 1566 var yextScript = document.getElementById('d-yext-script'); 1567 if (yextScript) { 1568 yextScript.parentNode.removeChild(yextScript); 1569 } 1570 yextScript = document.createElement('script'); 1571 yextScript.charset = 'utf-8'; 1572 yextScript.type = 'text/javascript'; 1573 1574 src += "&callback=yextLoadedCallback" 1575 1576 yextScript.src = src; 1577 yextScript.id = 'd-yext-script'; 1578 document.body.appendChild(yextScript); 1579} 1580 1581/* load yext script */ 1582var loadYext = function(forceRefresh) { 1583 // Make sure we call Yext only once 1584 if(window.yextInitialized && !forceRefresh){ 1585 return; 1586 } 1587 1588 startIntervalToWaitAndLoadWidgets(data.config.type); 1589 1590 // We extract the "src" attribute from the string provided ina safe way 1591 // The format we expect is the following: 1592 1593 try{ 1594 var src = findYextSrc(); 1595 if(src){ 1596 1597 loadYextScript(src); 1598 1599 } else if(data.inEditor) { 1600 // $(document).load(function(){ 1601 // if(!window._yextData) { 1602 // $(element).find('.wrongScriptError').addClass('hasError'); 1603 // } 1604 // }) 1605 1606 // $(element).find('.wrongScriptError').addClass('hasError'); 1607 1608 return; 1609 } 1610 1611 } catch(exp) { 1612 // $(element).find('.wrongScript').addClass('hasError'); 1613 console.log(exp) 1614 return; 1615 } 1616 1617 if (data.inEditor) { 1618 if($('.multipleYextError').length > 1){ 1619 $(element).find('.multipleYextError').addClass('hasError'); 1620 return; 1621 }else if(data.config.type === 'none'){ 1622 $(element).find('.editorOnlyInfo').addClass('inEditor'); 1623 } 1624 } 1625} 1626 1627/* refresh yext script */ 1628window.refreshYext = function(){ 1629 loadYext(true); 1630} 1631 1632//function for Omniture tracking 1633window._trackConvWidgetClickEvent = function(eventName) { 1634 if(typeof(HAF)==="object"){ 1635 HAF.OmTracking.onCMClick(eventName) 1636 } 1637 return; 1638} 1639 1640/* draw yext map */ 1641var drawMap = function(yextData){ 1642 var zoom = data.config.mapZoom; 1643 var yData = yextData.entities[0].attributes; 1644 var addressQuery = yData['address1'] + " " + yData['address2'] + " " + yData['city'] + " " + yData['state'] + " " + yData['zip']; 1645 dmAPI.drawMap({addressQuery: addressQuery, zoom: zoom, container: $(element).find('.yextMap')}); 1646} 1647 1648 1649 1650var formatPhoneBeforeRender = function(num,cb) { 1651 if (!cb) 1652 cb = function(){return} 1653 if(data.config.formatPhone){ 1654 var s2 = (""+num).replace(/\D/g, ''); 1655 var m = s2.match(/^(\d{3})(\d{3})(\d{4})$/); 1656 var formatted = (!m) ? null : "(" + m[1] + ") " + m[2] + "-" + m[3]; 1657 cb(formatted); 1658 return formatted; 1659 } else { 1660 cb(num); 1661 return num; 1662 } 1663} 1664 1665var displayTextdList = function(type,yextData,firstOnly) { 1666 var list = ""; 1667 if(yextData.entities[0].attributes[type]) { 1668 var yextAtt = yextData.entities[0].attributes[type] 1669 } else { 1670 var yextAtt = false 1671 } 1672 1673 if(yextAtt && Array.isArray(yextAtt)) { 1674 for (var i=0; i< yextAtt.length; i++) { 1675 if (yextAtt[i] === 'Android Pay') { 1676 list += '<li>Google Pay</li>'; 1677 } 1678 else { 1679 list += '<li>' + yextAtt[i] + '</li>'; 1680 } 1681 } 1682 $(element).find('#' + type + 'List').html(list); 1683 } else if (yextAtt) { 1684 var yextAtt = yextAtt.split(", "); 1685 for (var i=0; i< yextAtt.length; i++) { 1686 list += '<li>' + yextAtt[i] + '</li>'; 1687 } 1688 $(element).find('#' + type + 'List').html(list); 1689 } else if (data.inEditor) { 1690 $(element).html(emptyListPlaceHolder); 1691 } else { 1692 $(element).css('display','none'); 1693 } 1694 1695 1696} 1697 1698var displaySpecialties = function(yextData){ 1699 var list = ""; 1700 if(yextData.entities[0].attributes["specialties"]) { 1701 var yextAtt = yextData.entities[0].attributes["specialties"] 1702 } else if (yextData.entities[0].attributes["specialities"]) { 1703 var yextAtt = yextData.entities[0].attributes["specialities"] 1704 } else { 1705 var yextAtt = false 1706 } 1707 1708 if(yextAtt && Array.isArray(yextAtt)) { 1709 for (var i=0; i< yextAtt.length; i++) { 1710 list += '<li>' + yextAtt[i] + '</li>'; 1711 } 1712 $(element).find('#specialtiesList').html(list); 1713 } else if (yextAtt) { 1714 var yextAtt = yextAtt.split(", "); 1715 for (var i=0; i< yextAtt.length; i++) { 1716 list += '<li>' + yextAtt[i] + '</li>'; 1717 } 1718 $(element).find('#specialtiesList').html(list); 1719 } else if (data.inEditor) { 1720 $(element).html(emptyListPlaceHolder); 1721 } else { 1722 $(element).css('display','none'); 1723 } 1724} 1725 1726var displayHours = function(type,yextData) { 1727 var list = ""; 1728 if(yextData.entities[0].attributes[type]) { 1729 var yextAtt = yextData.entities[0].attributes[type] 1730 } else { 1731 var yextAtt = false 1732 } 1733 1734 if(yextAtt && Array.isArray(yextAtt)) { 1735 for(var i=0;i < yextAtt.length;i++) { 1736 var indexEndDay = yextAtt[i].lastIndexOf('day ') + 3; 1737 1738 var leftSide = yextAtt[i].substr(0,indexEndDay).replace("Monday","Mon").replace("Tuesday","Tue").replace("Wednesday","Wed").replace("Thursday","Thu").replace("Friday","Fri").replace("Saturday","Sat").replace("Sunday","Sun"); 1739 1740 var rightSide = yextAtt[i].substr(indexEndDay + 1) 1741 1742 list += '<div class="row"><div class="left">' + leftSide + '</div><div class="right">' + rightSide + '</div></div>'; 1743 } 1744 1745 $(element).find('#hoursSmall').html(list); 1746 1747 } else if(yextAtt) { 1748 var yextAtt = yextAtt.split(", "); 1749 for(var i=0;i < yextAtt.length;i++) { 1750 if((/\s/.test(yextAtt[i])) === false){ 1751 yextAtt[i] = yextAtt[i] + ' - ' + yextAtt[i+1] 1752 yextAtt.splice(i+1, 1) 1753 } 1754 if (yextAtt[i].includes('day') === false ){ 1755 var leftSide = ' '; 1756 1757 var rightSide = yextAtt[i] 1758 }else { 1759 var indexEndDay = yextAtt[i].lastIndexOf('day ') + 3; 1760 1761 var leftSide = yextAtt[i].substr(0,indexEndDay).replace("Monday","Mon").replace("Tuesday","Tue").replace("Wednesday","Wed").replace("Thursday","Thu").replace("Friday","Fri").replace("Saturday","Sat").replace("Sunday","Sun"); 1762 1763 var rightSide = yextAtt[i].substr(indexEndDay + 1) 1764 } 1765 1766 list += '<div class="row"><div class="left">' + leftSide + '</div><div class="right">' + rightSide + '</div></div>'; 1767 } 1768 $(element).find('#hoursSmall').html(list); 1769 } else if (data.inEditor) { 1770 $(element).html(emptyListPlaceHolder); 1771 } else { 1772 $(element).css('display','none'); 1773 } 1774 1775} 1776 1777var displayOpenHours = function(type, yextData){ 1778 if(yextData.entities[0].attributes['timezone']){ 1779 var zone = yextData.entities[0].attributes['timezone'] 1780 } else { 1781 var zone = false 1782 } 1783 1784 if(zone){
1785 var time = new Date().toLocaleString("en-US", {timeZone: zone}); 1786 var today = new Date(time ); 1787 1788 var thirtyMins = 30 * 60 * 1000 1789 1790 var days = ['sunday','monday','tuesday','wednesday','thursday','friday','saturday']; 1791 var daysShort = ['Sun','Mon','Tues','Wed','Thurs','Fri','Sat']; 1792 1793 var day = days[today.getDay()]; 1794 var hour = today.getHours(); 1795 var min = today.getMinutes(); 1796 var dd = ("0" + today.getDate()).slice(-2); 1797 var mm = ("0" + (today.getMonth() + 1)).slice(-2) 1798 var yyyy = today.getFullYear(); 1799 var todayDate = yyyy + '-' + mm + '-' + dd 1800 var mm = mm - 1 1801 1802 const tomorrow = new Date(today) 1803 tomorrow.setDate(tomorrow.getDate() + 1) 1804 var mmTmw = ("0" + (tomorrow.getMonth() + 1)).slice(-2) 1805 var ddTmw = ("0" + tomorrow.getDate()).slice(-2) 1806 var yyyyTmw = tomorrow.getFullYear(); 1807 var nextDay = days[tomorrow.getDay()] 1808 var tommorrow = yyyyTmw + '-' + mmTmw + '-' + ddTmw 1809 var mmTmw = mmTmw - 1 1810 } 1811 1812 if(yextData.entities[0].attributes[type + '-' + day]) { 1813 var yextAtt = yextData.entities[0].attributes[type + '-' + day] 1814 if (yextAtt === "Closed"){ 1815 yextAtt = false 1816 } 1817 } else { 1818 var yextAtt = false 1819 } 1820 1821 //check if day is closed 1822 if(yextData.entities[0].attributes[type + '.' + day + '.isClosed'] === true) { 1823 var closed = true 1824 } 1825 1826 //collects business holiday hours 1827 if(yextData.entities[0].attributes[type + '.holidayHours']){ 1828 var holidayHours = yextData.entities[0].attributes[type + '.holidayHours'] 1829 } else{ 1830 var holidayHours = false 1831 } 1832 1833 //gets next days start time 1834 if(yextData.entities[0].attributes[type + '.' + nextDay + '.isClosed'] === true){ 1835 var tomorrowOpen = false 1836 } else { 1837 var tomorrowOpen = true 1838 var tmrwStart = yextData.entities[0].attributes[type + '-' + nextDay].split(" - ")[0] 1839 } 1840 1841 //checks if holiday hours change 1842 if(holidayHours) { 1843 for(var i=0;i < holidayHours.length;i++){ 1844 if(holidayHours[i].date === todayDate && holidayHours[i].openIntervals){ 1845 yextAtt = holidayHours[i].hoursFormatted 1846 } 1847 } 1848 } 1849 1850 //split hours 1851 if(yextAtt && yextAtt.includes(",")){ 1852 yextAtt = yextAtt.split(", ") 1853 for(var i=0;i < yextAtt.length;i++){ 1854 var end = yextAtt[i].split(' - ')[1] 1855 var start = yextAtt[i].split(' - ')[0] 1856 if (i+1 != yextAtt.length){ 1857 var nextStart = yextAtt[i + 1].split(' - ')[0] 1858 } 1859 if(start.includes("pm") && start.split(/\s+|:/)[0] != "12"){ 1860 var startDate = new Date(yyyy, mm, dd, parseInt(start.split(/\s+|:/)[0]) + 12, parseInt(start.split(/\s+|:/)[1])) 1861 } else { 1862 var startDate = new Date(yyyy, mm, dd, parseInt(start.split(/\s+|:/)[0]), parseInt(start.split(/\s+|:/)[1])) 1863 } 1864 1865 if(nextStart.includes("pm") && nextStart.split(/\s+|:/)[0] != "12"){ 1866 var nextStartDate = new Date(yyyy, mm, dd, parseInt(nextStart.split(/\s+|:/)[0]) + 12, parseInt(nextStart.split(/\s+|:/)[1])) 1867 } else { 1868 var nextStartDate = new Date(yyyy, mm, dd, parseInt(nextStart), parseInt(nextStart.split(/\s+|:/)[1])) 1869 } 1870 1871 if(end.includes("pm") && end.split(/\s+|:/)[0] != "12"){ 1872 var endDate = new Date(yyyy, mm, dd, parseInt(end.split(/\s+|:/)[0]) + 12, parseInt(end.split(/\s+|:/)[1])) 1873 } else { 1874 var endDate = new Date(yyyy, mm, dd, parseInt(end.split(/\s+|:/)[0]), parseInt(end.split(/\s+|:/)[1])) 1875 } 1876 1877 if (end.includes("am") && (endDate < startDate)){ 1878 endDate = new Date(yyyyTmw, mmTmw, ddTmw, parseInt(end.split(/\s+|:/)[0]), parseInt(end.split(/\s+|:/)[1])) 1879 } 1880 1881 if(today < startDate){ 1882 var closed = true 1883 tmrwStart = start 1884 break 1885 }else if(today > startDate && today < endDate){ 1886 yextAtt = start + ' - ' + end 1887 break 1888 }else if(today > endDate && (i+1 != yextAtt.length) && today < nextStartDate){ 1889 var closed = true 1890 tmrwStart = nextStart 1891 tomorrowOpen = true 1892 }else if(today > endDate && i+1 === yextAtt.length){ 1893 var closed = true 1894 } 1895 } 1896 } 1897 1898 1899 if(yextAtt || closed) { 1900 if(typeof yextAtt === "string"){ 1901 var start = yextAtt.split(" - ")[0] 1902 var end = yextAtt.split(" - ")[1] 1903 if(start.includes("pm") && start.split(/\s+|:/)[0] != "12"){ 1904 var startDate = new Date(yyyy, mm, dd, parseInt(start.split(/\s+|:/)[0]) + 12, parseInt(start.split(/\s+|:/)[1])) 1905 } else { 1906 var startDate = new Date(yyyy, mm, dd, parseInt(start.split(/\s+|:/)[0]), parseInt(start.split(/\s+|:/)[1])) 1907 } 1908 1909 if(end.includes("pm") && end.split(/\s+|:/)[0] != "12"){ 1910 var endDate = new Date(yyyy, mm, dd, parseInt(end.split(/\s+|:/)[0]) + 12, parseInt(end.split(/\s+|:/)[1])) 1911 } else if (end.includes("am") && end.split(/\s+|:/)[0] === "12") { 1912 var endDate = new Date(yyyy, mm, dd, parseInt(end.split(/\s+|:/)[0]) - 12, parseInt(end.split(/\s+|:/)[1])) 1913 } else { 1914 var endDate = new Date(yyyy, mm, dd, parseInt(end.split(/\s+|:/)[0]), parseInt(end.split(/\s+|:/)[1])) 1915 } 1916 1917 if (end.includes("am") && (endDate < startDate)){ 1918 endDate = new Date(yyyyTmw, mmTmw, ddTmw, parseInt(end.split(/\s+|:/)[0]), parseInt(end.split(/\s+|:/)[1])) 1919 } 1920 1921 //check if closed 1922 if(today > endDate){ 1923 var closed = true 1924 //opened 24 hours 1925 } else if(start === '12:00 am' && end === '11:59 pm'){ 1926 var status = "Open " 1927 var cssClass = "allDayStatus" 1928 var busHours = ' 24 hours ' 1929 //opened 1930 } else if(today < startDate){ 1931 var closed = true 1932 //check if closing soon 1933 } else if (endDate - today < thirtyMins && endDate - today < 0 === false ){ 1934 var status = "Closing Soon " 1935 var cssClass = "soonStatus" 1936 var busHours = ' ⢠' + end 1937 } else { 1938 var status = "Open " 1939 var cssClass = "openedStatus" 1940 var busHours = '⢠Closes ' + end 1941 } 1942 1943 } 1944 1945 if(closed){ 1946 1947 // closed & opening today 1948 if((today < startDate)){ 1949 var status = "Closed " 1950 var cssClass = "closedStatus" 1951 var busHours = ' Opens ' + start 1952 //closed & open tomorrow 1953 } else if(closed && tomorrowOpen === true){ 1954 var status = "Closed " 1955 var cssClass = "closedStatus" 1956 var busHours = ' ⢠Opens ' + tmrwStart 1957 //closed and not open tomorrow 1958 } else if(closed && tomorrowOpen != true){ 1959 var offset = days.indexOf(day) + 1 1960 for( var i=0; i < days.length; i++) { 1961 var dayIndex = (i + offset) % days.length; 1962 if(yextData.entities[0].attributes[type + '.' + days[dayIndex] + '.openIntervals']){ 1963 tmrwStart = daysShort[dayIndex] + " " + yextData.entities[0].attributes[type + '-' + days[dayIndex]].split(" - ")[0] 1964 break 1965 } 1966 } 1967 var status = "Closed " 1968 var cssClass = "closedStatus" 1969 var busHours = ' ⢠Opens ' + tmrwStart 1970 1971 } 1972 } 1973 } 1974 1975 // checks if holiday 1976 if(holidayHours) { 1977 for(var i=0;i < holidayHours.length;i++){ 1978 if(holidayHours[i].date === todayDate && holidayHours[i].isClosed === true && tomorrowOpen === false){ 1979 var offset = days.indexOf(day) + 1 1980 for( var i=0; i < days.length; i++) { 1981 var dayIndex = (i + offset) % days.length; 1982 if(yextData.entities[0].attributes[type + '.' + days[dayIndex] + '.openIntervals']){ 1983 tmrwStart = daysShort[dayIndex] + " " + yextData.entities[0].attributes[type + '-' + days[dayIndex]].split(" - ")[0] 1984 break 1985 } 1986 } 1987 var status = "Closed " 1988 var cssClass = "closedStatus" 1989 var busHours = ' ⢠Opens ' + tmrwStart 1990 } else if(holidayHours[i].date === todayDate && holidayHours[i].isClosed === true && tomorrowOpen === true){ 1991 var status = "Closed " 1992 var cssClass = "closedStatus" 1993 var busHours = ' ⢠Opens ' + tmrwStart 1994 1995 } 1996 } 1997 } 1998 if(cssClass){ 1999 var hoursWidgets = document.getElementsByClassName('status') 2000 for( var i=0; i < hoursWidgets.length; i++) { 2001 hoursWidgets[i].classList.add(cssClass); 2002 } 2003 } 2004 if(status){ 2005 var hoursWidgets = document.getElementsByClassName('status') 2006 for( var i=0; i < hoursWidgets.length; i++) { 2007 hoursWidgets[i].innerText = status; 2008 } 2009 } 2010 if(cssClass === 'allDayStatus'){ 2011 var hoursWidgets = $(element).find('.openHours') 2012 for( var i=0; i < hoursWidgets.length; i++) { 2013 hoursWidgets[i].children[0].textContent = "" 2014 } 2015 } 2016 if(document.getElementsByClassName('openHours')[0].childElementCount > 1){ 2017 var hoursWidgets = document.getElementsByClassName('openHours') 2018 for( var i=0; i < hoursWidgets.length; i++) { 2019 var openHoursLength = hoursWidgets[i].childNodes.length 2020 var oldHours = hoursWidgets[i] 2021 oldHours.removeChild(oldHours.childNodes[openHoursLength - 1]) 2022 } 2023 } 2024 var hoursWidgets = document.getElementsByClassName('openHours') 2025 for( var i=0; i < hoursWidgets.length; i++) { 2026 hoursWidgets[i].append(busHours) 2027 } 2028} 2029 2030 2031var displayHolidayHoursList = function(type,yextData) { 2032 var list = ""; 2033 2034 if(yextData.entities[0].attributes["hours.holidayHours"]) { 2035 var yextAtt = yextData.entities[0].attributes["hours.holidayHours"] 2036 } else if(yextData.entities[0].attributes["holidayHours"]) { 2037 var yextAtt = yextData.entities[0].attributes["holidayHours"] 2038 } else { 2039 var yextAtt = false 2040 } 2041 2042 2043 2044 if(yextAtt) { 2045 for (var i=0; i< yextAtt.length; i++) { 2046 2047 var dateHol = new Date(Date.parse(yextAtt[i].date)); 2048 2049 var dateNow = new Date(); 2050 var numDaysBetween = getNumDaysBetween(dateHol,dateNow); 2051 2052 if (numDaysBetween > -1) { 2053 // write to dom 2054 list += '<li>' + yextAtt[i].dateFormatted + ' - <span class="holidayHoursStatus">' + yextAtt[i].hoursFormatted + '</span></li>'; 2055 } 2056 2057 } 2058 $(element).find('#' + type + 'List').html(list); 2059 } else if (data.inEditor) { 2060 // if in editor display place holder 2061 $(element).html(emptyListPlaceHolder); 2062 } else { 2063 // if empty, hide element on runtime 2064 $(element).css('display','none'); 2065 } 2066} 2067 2068var displayServiceArea = function(type,yextData,firstOnly) { 2069 var list = ""; 2070 if(yextData.entities[0].attributes[type]) { 2071 var yextAtt = yextData.entities[0].attributes[type] 2072 } else { 2073 var yextAtt = false 2074 } 2075 2076 if (firstOnly) { 2077 list = '<li>' + yextAtt[0] + '</li>'; 2078 $(element).find('#' + type + 'List').html(list); 2079 } else if (yextAtt && Array.isArray(yextAtt)) { 2080 for (var i=0; i< yextAtt.length; i++) { 2081 list += '<li>' + yextAtt[i] + '</li>'; 2082 } 2083 $(element).find('#' + type + 'List').html(list); 2084 } else if (yextAtt) { 2085 var yextAtt = yextData.entities[0].attributes[type + ".places"] 2086 for (var i=0; i< yextAtt.length; i++) { 2087 list += '<li>' + yextAtt[i] + '</li>'; 2088 } 2089 $(element).find('#' + type + 'List').html(list); 2090 } else if (data.inEditor) { 2091 $(element).html(emptyListPlaceHolder); 2092 } else { 2093 $(element).css('display','none'); 2094 } 2095 2096} 2097 2098var displayPhoneList = function(type,yextData) { 2099 var list = ""; 2100 2101 var locData = yextData.entities[0].attributes; 2102 2103 if(locData.phone) { 2104 list += '<li><span class="phoneLabel">Main:</span><span class="phoneNum"> ' + formatPhoneBeforeRender(locData.phone) + '</span></li>'; 2105 } 2106 if(locData.localPhone) { 2107 list += '<li><span class="phoneLabel">Local:</span><span class="phoneNum"> ' + formatPhoneBeforeRender(locData.localPhone) + '</span></li>'; 2108 } 2109 if(locData.alternatePhone) { 2110 list += '<li><span class="phoneLabel">Alternate:</span><span class="phoneNum"> ' + formatPhoneBeforeRender(locData.alternatePhone) + '</span></li>'; 2111 } 2112 if(locData.tollFreePhone) { 2113 list += '<li><span class="phoneLabel">Toll Free:</span><span class="phoneNum"> ' + formatPhoneBeforeRender(locData.tollFreePhone) + '</span></li>'; 2114 } 2115 if(locData.mobilePhone) { 2116 list += '<li><span class="phoneLabel">Mobile:</span><span class="phoneNum"> ' + formatPhoneBeforeRender(locData.mobilePhone) + '</span></li>'; 2117 } 2118 if(locData.faxPhone) { 2119 list += '<li><span class="phoneLabel">Fax:</span><span class="phoneNum"> ' + formatPhoneBeforeRender(locData.faxPhone) + '</span></li>'; 2120 } 2121 if(locData.ttyPhone) { 2122 list += '<li><span class="phoneLabel">TTY:</span><span class="phoneNum"> ' + formatPhoneBeforeRender(locData.ttyPhone) + '</span></li>'; 2123 } 2124 2125 if(list.length > 0) { 2126 $(element).find('#' + type + 'List').html(list); 2127 } else if (data.inEditor) { 2128 $(element).html(emptyListPlaceHolder); 2129 } else { 2130 $(element).css('display','none'); 2131 } 2132 2133 emitYextPhoneRenderEvent(formatPhoneBeforeRender(locData.phone)); 2134 2135} 2136 2137var getNumDaysBetween = function(d1, d2) { 2138 var diff = d1.getTime() - d2.getTime(); 2139 return diff / (1000 * 60 * 60 * 24); 2140}; 2141 2142var orderPaymentsList = function(listData) { 2143 2144 if(listData.indexOf('Discover') >= 0) { 2145 listData.splice(listData.indexOf("Discover"), 1); 2146 listData.unshift('Discover'); 2147 } 2148 2149 if(listData.indexOf('American Express') >= 0) { 2150 listData.splice(listData.indexOf("American Express"), 1); 2151 listData.unshift('American Express'); 2152 } 2153 2154 if(listData.indexOf('MasterCard') >= 0) { 2155 listData.splice(listData.indexOf("MasterCard"), 1); 2156 listData.unshift('MasterCard'); 2157 } 2158 2159 if(listData.indexOf('Visa') >= 0) { 2160 listData.splice(listData.indexOf("Visa"), 1); 2161 listData.unshift('Visa'); 2162 } 2163 2164 return listData 2165} 2166 2167var displayImageList = function(type,yextData) { 2168 var list = ""; 2169 var listData = orderPaymentsList(_yextData.entities[0].attributes[type]); 2170 2171 2172 for (var i=0; i< listData.length; i++) { 2173 2174 list += '<img src="' + getImageUrl(listData[i],data.config.cardStyleDarkOrLight) + '" alt="' + listData[i] + '"/>' 2175 } 2176 2177 if(list.length > 0) { 2178 $(element).find('#paymentOptionsImages').html(list) 2179 } else if (data.inEditor) { 2180 $(element).html(emptyListPlaceHolder); 2181 } else { 2182 $(element).css('display','none'); 2183 } 2184 2185 2186 2187} 2188 2189var displaySocialIcons = function(type,yextData) { 2190 var list = ""; 2191 2192 if(yextData.entities[0].attributes.facebookPageUrl) { 2193 list += '<a href="' + yextData.entities[0].attributes.facebookPageUrl + '" target="_blank"> <img src="https://cdn.websites.hibu.com/-resellers-preview/_social_icons/hibu_facebook.svg" /></a>' 2194 } 2195 if(yextData.entities[0].attributes.twitterHandle) { 2196 list += '<a href="https://twitter.com/' + yextData.entities[0].attributes.twitterHandle + '" target="_blank"> <img src="https://cdn.websites.hibu.com/-resellers-preview/_social_icons/hibu_twitter.svg" /></a>' 2197 } 2198 if(yextData.entities[0].attributes.instagramHandle) { 2199 list += '<a href="https://www.instagram.com/'+ yextData.entities[0].attributes.instagramHandle+'" target="_blank"> <img src="https://cdn.websites.hibu.com/-resellers-preview/_social_icons/hibu_instagram.svg" /></a>'
2200 } 2201 2202 if(list.length > 0) { 2203 $(element).find('#socialIcons').html(list); 2204 } else if (data.inEditor) { 2205 $(element).html(emptyListPlaceHolder); 2206 } else { 2207 $(element).css('display','none'); 2208 } 2209 2210 2211} 2212 2213var getImageUrl = function(name,style) { 2214 var cdnPath = 'https://cdn.websites.hibu.com/-resellers-preview/_cc_icons/'; 2215 if(!style) { 2216 style = '_d.svg' 2217 } 2218 if (name === "ZELLE"){ 2219 name = "Zelle" 2220 } 2221 if (name === "Google Pay"){ 2222 name = "Android Pay" 2223 } 2224 if (name === "KLARNA"){ 2225 name = "Klarna" 2226 } 2227 var imageUrl=''; 2228 switch (name) { 2229 case 'Visa': 2230 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2231 break; 2232 case 'MasterCard': 2233 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2234 break; 2235 case 'Discover': 2236 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2237 break; 2238 case 'American Express': 2239 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2240 break; 2241 case 'Android Pay': 2242 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2243 break; 2244 case 'Apple Pay': 2245 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2246 break; 2247 case 'Bitcoin': 2248 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2249 break; 2250 case 'Cash': 2251 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2252 break; 2253 case 'Check': 2254 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2255 break; 2256 case 'Diners Club': 2257 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2258 break; 2259 case 'Discover': 2260 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2261 break; 2262 case 'Financing': 2263 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2264 break; 2265 case 'Invoice': 2266 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2267 break; 2268 case 'PayPal': 2269 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2270 break; 2271 case 'Samsung Pay': 2272 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2273 break; 2274 case "Traveler's Check": 2275 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2276 break; 2277 case "Zelle": 2278 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2279 break 2280 case "Klarna": 2281 imageUrl = cdnPath + name.replace(/[\W_]+/g,'').toLowerCase() + style; 2282 break 2283 } 2284 return imageUrl 2285} 2286 2287function emitYextPhoneRenderEvent(phone) { 2288 var yextPhoneRenderEvent = new CustomEvent('YextPhoneChangeEvent', 2289 { 2290 detail: phone, 2291 bubbles: true, 2292 cancelable: true 2293 }); 2294 2295 document.dispatchEvent(yextPhoneRenderEvent); 2296} 2297 2298var initYextElements = function(yextData,widgetType){ 2299 if (widgetType === 'address' && data.config.drawMap) { 2300 drawMap(yextData); 2301 } else if (widgetType === 'paymentOptions' && data.config.showPaymentsAs === 'paymentIcons') { 2302 displayImageList(widgetType,yextData); 2303 } else if (widgetType === 'phone' && data.config.phoneShowAs === 'list') { 2304 displayPhoneList(widgetType,yextData); 2305 // check for any list type 2306 } else if(widgetType === 'phone' && data.config.phoneShowAs === 'button') { 2307 var phFormatted = formatPhoneBeforeRender(yextData.entities[0].attributes[data.config.phoneType],function(phone) { 2308 $(element).find(".dmButtonLink").html('<span class="text">' + phone + '</span>'); 2309 2310 emitYextPhoneRenderEvent(phone); 2311 2312 }); 2313 } else if(widgetType === 'phone' && data.config.phoneShowAs === 'text') { 2314 var phFormatted = formatPhoneBeforeRender(yextData.entities[0].attributes[data.config.phoneType],function(phone) { 2315 $(element).find('.yextPhoneText').html('<span class="text">' + phone + '</span>'); 2316 2317 emitYextPhoneRenderEvent(phone); 2318 2319 }); 2320 } else if (widgetType === 'services' || widgetType === 'googleAttributesFormatted' || widgetType === 'languages' || widgetType === 'paymentOptions' || widgetType === 'keywords' || widgetType === 'products' || widgetType === 'associations' || widgetType === 'brands') { 2321 setTimeout(function() { 2322 displayTextdList(widgetType,yextData) 2323 },1); 2324 } else if(widgetType === 'specialties') { 2325 setTimeout(function() { 2326 displaySpecialties(yextData) 2327 },1) 2328 }else if (widgetType ==='serviceArea') { 2329 setTimeout(function() { 2330 displayServiceArea(widgetType,yextData,data.config.showServiceAreaFirst) 2331 },1) 2332 } else if (widgetType ==='hours' && data.config.hoursShowAs === 'list' && data.config.isList == false) { 2333 setTimeout(function() { 2334 displayHours(widgetType,yextData) 2335 },1) 2336 } else if (widgetType ==='hours' && data.config.hoursShowAs === 'openHours') { 2337 setTimeout(function() { 2338 displayOpenHours(widgetType,yextData) 2339 },1) 2340 } else if (widgetType === 'social') { 2341 displaySocialIcons(widgetType,yextData); 2342 } else if (widgetType === 'holidayHours') { 2343 setTimeout(function() { 2344 displayHolidayHoursList(widgetType,yextData) 2345 },1); 2346 } else if (widgetType === 'hours') { 2347 //hide hours list if toggle enabled 2348 if(data.config.hideHoursList === true) { 2349 $(element).find('.yextHours').css('display','none'); 2350 } 2351 } else if (widgetType === 'description' || widgetType === 'yearEstablished' || widgetType === 'email' || widgetType === 'name') { 2352 // check 2353 hideIfEmpty(widgetType,yextData) 2354 } 2355 //remove error if script not entered correctly. 2356 $(element).find('.wrongScriptError').removeClass('hasError'); 2357 2358} 2359 2360function hideIfEmpty(type,yextData) { 2361 if(!yextData.entities[0].attributes[type]) { 2362 if(data.inEditor) { 2363 $(element).html(emptyListPlaceHolder); 2364 } else { 2365 $(element).css('display','none'); 2366 } 2367 2368 } 2369} 2370 2371// TODO CHANGE TO EVENT CALL BACK 2372var startIntervalToWaitAndLoadWidgets = function(widgetType) { 2373 //start interval for this specific widget 2374 var intervalCheckYextLoaded = setInterval(function(){ 2375 if (window._yextData) { 2376 clearInterval(intervalCheckYextLoaded); 2377 initYextElements(window._yextData,widgetType); 2378 } 2379 },50) 2380} 2381 2382 2383/* initialization */ 2384if(data.inEditor){ 2385 window.refreshYext && window.refreshYext(); 2386 2387 2388 $(document).ready(function(){ 2389 if(!window.yextInitialized){ 2390 $(element).find('.missingYextWidget').addClass('show'); 2391 } else { 2392 $(element).find('.missingYextWidget').removeClass('show'); 2393 } 2394 }); 2395 2396} else { 2397 dmAPI.runOnReady('yext' , function(){ 2398 loadYext(); 2399 }); 2400 // Before navigating with Ajax, we set the yext initialized to be false so it will be initialized again after the ajax navigation 2401 dmAPI.runBeforeAjaxNavigation('yext', function(){ 2402 window.yextInitialized = false;
2403 }); 2404} 2405 }; 2406</script>
2406 2407
2408<script> 2409 window.customWidgetsFunctions["afd4bc7f907140298e111130d715031d~99"] = function (element, data, api) { 2410 let HasOpenedMenu = false; 2411 2412$(document).ready(function() { 2413 displayType(); 2414}); 2415 2416function displayType() { 2417 if(isMobile()) { 2418 displayMobile(); 2419 } else { 2420 displayDesktop(); 2421 } 2422} 2423 2424function displayMobile() { 2425 var masterFabEle = $(element).find('#masterfab'); 2426 $('#main-container').empty().append(getSvg(data.config.MobileMain)); 2427 2428 $(masterFabEle).attr('class', 'fab master-mobile');// add mobile class for custom style 2429 2430 $(masterFabEle).css('display', 'flex'); //since element is hidden by default, show instead 2431 2432 // set the text alignment var here for use below (update BSR:20200421) 2433 var moText = (data.config.MobileOrientation === 'left') ? 'bsrRightText' : 'leftText'; 2434 2435 // add items with or without overlay and label text 2436 if(data.config.MobileLayout === 'Full') { 2437 $('.mobile-bg').after(getItems(moText)); 2438 } 2439 else { 2440 $('.mobile-bg').after(getItems()); 2441 } 2442 2443 mobileTheme(); // add light or dark theme 2444 bsrIconResize(); // makes a custom icon resizable (update BSR:20200529) 2445 bsrMobileOrientation(); // positions menu left or right (update BSR:20200421) 2446 addListener(); 2447 2448 if (typeof fbq === "function") { // this makes sure that fbq is on the page 2449 addPixelListener(); // Facebook Pixel conversion tracking (update BSR:20200422) 2450 } 2451 addChatListener(); // Add chat script injection (update BSR:20200526) 2452
2453 // add focus animation 2454 if(data.config.FocusAni) animateFocus(); 2455} 2456function displayDesktop() { 2457 var masterFabEle = $(element).find('#masterfab'); 2458 $(masterFabEle).css('display', 'flex'); //since element is hidden by default, show instead 2459 if(data.config.DesktopLayout === 'Bar') { 2460 $('#main-container').empty().append(getSvg(data.config.DeskMain)); 2461 $(masterFabEle).append(getItems('rightText')); 2462 } 2463 else { 2464 $('#float-container').empty().append(getItems('rightText', true)); 2465 } 2466 desktopType(); 2467 bsrIconResize(); // makes a custom icon resizable (update BSR:20200529) 2468 addListener(); 2469 2470 if (typeof fbq === "function") { // this makes sure that fbq is on the page 2471 addPixelListener(); // Facebook Pixel conversion tracking (update BSR:20200422) 2472 } 2473 addChatListener(); // Add chat script injection (update BSR:20200526) 2474 2475 // add focus animation 2476 if(data.config.FocusAni) animateFocus(); 2477} 2478// handles style changes for desktop types 2479function desktopType() { 2480 $('#masterfab').attr('class', 'fab master-desktop'); // add desktop class for styling 2481 $('.icon-container').addClass('desktop'); 2482 if(data.config.DesktopLayout === 'Bar') { 2483 $('.menu-link').addClass('desk-bar'); // add class for fixed bar text 2484 $('.child').attr('class', 'fab child child-desktop-bar'); 2485 2486 const masterLabel = '<span id="master-label">'+data.config.MainLabel+'</span>'; 2487 $('#master-label').remove(); 2488 $('#masterfab').append(masterLabel); 2489 2490 $('#masterfab').addClass('master-bar'); 2491 } else if(data.config.DesktopLayout === 'Float') { 2492 $('#masterfab').hide(); 2493 } 2494} 2495// styles light and dark mobile themes 2496function mobileTheme() { 2497 $('.child').attr('class', 'fab child child-mobile'); 2498 if(data.config.MobileTheme === 'Light') { 2499 $('.overlay, .child, .social-icon, .icon-container, .mobile-bg, social-bg, .menu-link').addClass('mobile light'); 2500 } 2501 else if(data.config.MobileTheme === 'Dark') { 2502 $('.overlay, .child, .social-icon, .icon-container, .mobile-bg, social-bg, .menu-link').addClass('mobile dark'); 2503 } 2504} 2505// adds the menu to the left or right of the mobile screen (update BSR:20200421) 2506function bsrMobileOrientation() { 2507 if(data.config.MobileOrientation === 'left') { 2508 $('.fab.master-mobile, .child.mobile').addClass('bsr-left'); 2509 } 2510 else { 2511 $('.fab.master-mobile, .child.mobile').removeClass('bsr-left'); 2512 } 2513} 2514 2515/* 2516 Previous implementation places custom icons in a new <div> 2517 I found this to be inconsistent in resizing so the function 2518 adds the appropriate class directly to the svg element 2519 (update BSR:20200529) 2520*/ 2521function bsrIconResize() { 2522 customIcons = $(element).find('.custom-user-icon'); 2523 if(customIcons.length > 0) { 2524 $.each(customIcons, function(i, cicon) { 2525 var classList = $(cicon).attr('class').split(/\s+/); 2526 $.each(classList, function(index, item) { 2527 if(item != 'custom-user-icon') { 2528 $( "." + item + " > svg" ).addClass(item); // add the calling class to the child svg element directly 2529 $( "." + item + " > svg" ).unwrap(); // remove the parent div 2530 } 2531 }); 2532 }); 2533 } 2534} 2535 2536 2537// adds click or hover listeners 2538function addListener() { 2539 // add listener and animation for floating icons hover animation 2540 if(!isMobile() && data.config.DesktopLayout === 'Float') animateFloat('.float-container', 300); 2541 // click handlers for desktop bar and mobile options 2542 else { 2543 $("#conversion-menu-container").off('click', '.fab,.overlay'); 2544 $("#conversion-menu-container").on('click', '.fab,.overlay', function(){ 2545 HasOpenedMenu = true; 2546 $('.animation').remove(); // remove any animations we have 2547 if(isMobile()) { 2548 animateIcons('overlay'); 2549 data.config.MobileLayout === 'Full'? animateBg('.mobile-bg') : ''; 2550 } else { // bar desktop 2551 animateIcons('helpText'); 2552 animateBg('.desktop-bg'); 2553 } 2554 }); 2555 } 2556} 2557 2558// listens for share button click and triggers response 2559function addShareListener() { 2560 $("#conversion-menu-container").off('click', '.share'); 2561 $(".share").on('click', function() { 2562 // console.log('share clicked modal should open'); 2563 MicroModal.show('social-modal-menu'); 2564 });
2565} 2566function addPixelListener() { 2567 $('.bsr-menulink').click(function() { 2568 var eventName = $(this).data('eventname'); 2569 if(!eventName) { 2570 fbq('track', 'Contact'); 2571 } else { 2572 fbq('trackCustom', eventName); 2573 } 2574 }); 2575} 2576function addChatListener() { 2577 $(".bsr-chat").on('click', function() { 2578 $("#chat-script").remove(); // Get rid of any chat-script on the page 2579 $.each(data.config.IconList, function(index,value){ 2580 if(value.hasOwnProperty('ChatScript')) 2581 { 2582 var cscript = value.ChatScript; 2583 // Check if the script is a src or raw script 2584 // Changed mind and wanted to input
2584<script> tags so this is saved for posterity 2585 /* 2586 var re = new RegExp('^(?:[a-z]+:)?//', 'i'); // non case-sensitive, protocol-agnostic 2587 if (re.test(cscript)) { 2588 $('body').append('
2588<script async="async" src="' + cscript + '" type="text/javascript" id="chat-script"><\/script>'); 2589 return false; // break out of the $.each() on first occurence 2590 } else { 2591 $('body').append('
2591<script type="text/javascript" id="chat-script">' + cscript + '<\/script>'); 2592 return false; // break out of the $.each() on first occurence 2593 } 2594 */ 2595 $('body').append(cscript); 2596 } 2597 }); 2598 }); 2599} 2600// 2601// ANIMATIONS 2602// 2603function animateFocus() { 2604 $('.animation').remove(); //in case already in DOM 2605 if(!HasOpenedMenu) { 2606 if(isMobile()) { 2607 const pulse = '<div class="pulse2 animation"/><div class="pulse animation"/>'; 2608 setTimeout(function() { 2609 $('#masterfab').append(pulse); 2610 }, +data.config.FocusDelay); 2611 } 2612 // desktop 2613 else { 2614 data.config.DesktopLayout === 'Float'? 2615 animateFloatFocus() : animateBarFocus(); 2616 } 2617 } 2618} 2619function animateFloatFocus() { 2620 if($('.focus')[0]) { 2621 const id = $('.focus')[0].id; 2622 setTimeout(function() { 2623 $('#'+id).css('max-width', ''); 2624 $('#'+id).addClass('slide-pulse'); 2625 }, +data.config.FocusDelay); 2626 } 2627} 2628// opens fixed bar on desktop after set interval 2629function animateBarFocus() { 2630 if(!$(".desktop-bg").is(":visible")) { 2631 setTimeout(function() { 2632 animateIcons('helpText'); 2633 animateBg('.desktop-bg'); 2634 }, +data.config.FocusDelay); 2635 } 2636} 2637// adds hover listeners and animates floating icons on desktop 2638function animateFloat(selector, dur) { 2639 $("#float-container").off("mouseenter", selector); 2640 $("#float-container").on("mouseenter", selector, function(event) { 2641 // console.log('float mouse enter'); 2642 HasOpenedMenu = true; 2643 var id = $(this)[0].id; 2644 // cancel animation on hover 2645 data.config.FocusAni? $('#'+id).removeClass('slide-pulse') : 0; 2646 2647 $('#text-'+id).fadeIn(); 2648 $('#float-text-'+id).fadeIn(dur).css("display","inline-flex"); 2649 $('#'+id).stop().animate({ 2650 "max-width": "200px", 2651 }, dur); 2652 }); 2653 2654 $("#float-container").off("mouseleave", selector); 2655 $("#float-container").on("mouseleave", selector, function(event) { 2656 // console.log('float mouse leave'); 2657 var id = $(this)[0].id; 2658 $('#text-'+id).fadeOut(dur); 2659 $('#'+id).stop().animate({ 2660 "max-width": "42.666px", 2661 }, dur); 2662 }); 2663} 2664// animates icons slide up and transparent overlay(depending on showType) 2665function animateIcons(showType) { 2666 if($(".overlay").is(":visible") || $(".desktop-bg").is(":visible")) { 2667 if(showType === 'overlay') $('.overlay').fadeOut(125); 2668 else if(showType === 'helpText') $('#help-text').fadeOut(125); 2669 2670 // add plus icon back 2671 $('#main-container').empty().append(getSvg(data.config.MobileMain)); 2672 2673 $('.fab.child').stop().animate({ 2674 bottom : $('#masterfab').css('bottom'), 2675 opacity : 0 2676 }, 125, function() { 2677 $(this).hide(); 2678 }); 2679 } else { 2680 if(showType === 'overlay') $('.overlay').fadeIn(125); 2681 else if(showType === 'helpText') $('#help-text').fadeIn(125); 2682 2683 // add close icon on mobile only 2684 if(isMobile()) $('#main-container').empty().append(getSvg('close')); 2685 $(".fab.child").each(function(){ 2686 $(this).stop().show().animate({ 2687 bottom : (parseInt($("#masterfab").css("bottom")) + parseInt($("#masterfab").outerHeight() + 20) + 56 * $(this).data("subitem") - $(".fab.child").outerHeight()) + "px", 2688 opacity : 1 2689 }, 125); 2690 }); 2691 } 2692} 2693// adds overlay that slides up 2694function animateBg(selector) { 2695 if($(selector).is(":visible")) { 2696 $('#main-container').removeClass('open'); 2697 $("#masterfab.fab.master-mobile").removeClass('mobile-open') 2698 var mainIcon = data.config.DeskMain 2699 // revert to default main icon style 2700 if(isMobile()) { 2701 mainIcon = data.config.MobileMain; 2702 $('#masterfab').css({'background': '', 'box-shadow': ''}); // restore default 2703 } 2704 $('#main-container').empty().append(getSvg(mainIcon)); 2705 2706 $('.menu-link, .child').hide(); 2707 // slide down to cloes 2708 $(selector).stop().animate({ 2709 height : 0, 2710 opacity : 0 2711 }, 125, function(){ 2712 $(this).hide(); 2713 }); 2714 } else { 2715 $('#main-container').addClass('open'); 2716 $("#masterfab.fab.master-mobile").addClass('mobile-open') 2717 var topArea = 100; 2718 if(isMobile()) { 2719 $('#masterfab').css({'background': 'none', 'box-shadow': 'none'}); // make icon flat 2720 $('#main-container').empty().append(getSvg('close')); // add x icon 2721 } 2722 else if(data.config.DesktopLayout === 'Bar') { 2723 // hack to get height of bar help text before it's visible 2724 $(selector).css({'position':'absolute','visibility':'hidden', 'display':'block'});
2725 topArea = $("#help-text").height()? $("#help-text").height() + 60 : 40; 2726 $(selector).removeAttr('style'); 2727 } 2728 2729 // slide up to open 2730 $(selector).stop().show().animate({ 2731 height : (((data.config.IconList.length+1) * 56) + topArea) + "px", 2732 opacity : 1 2733 },125, function() { 2734 $('.menu-link').fadeIn(125); 2735 $(selector).css("display","flex") 2736 }); 2737 } 2738} 2739function getItems(type, float) { 2740 $('.child').remove(); // remove any items already in DOM 2741 var html = '', label = '', icon = '', text = ''; 2742 var items = float? data.config.IconList : data.config.IconList.reverse(); 2743 items.forEach(function(item, index) { 2744 2745 if(item.showonmobile==true && data.device === 'mobile'){ 2746 index = index+1; 2747 if(type === 'rightText'){ 2748 label = '<span class="right-text">' + item.Label + '</span>'; 2749 } 2750 if(type === 'leftText') { 2751 label = '<span class="left-text">' + item.Label + '</span>'; 2752 } 2753 if(type === 'bsrRightText') { 2754 label = '<span class="bsr-right-text">' + item.Label + '</span>'; 2755 } 2756 2757 2758 2759 icon = '<span class="icon-container">'+getItemIcon(item)+'</span>'; 2760 html += 2761 '<div class="fab child" id="child-'+index+'" data-subitem="'+index+'"> \ 2762 '+getItemAction(item, icon+label)+' \ 2763 </div>'; 2764 2765 if(item.Action === 'Share') { 2766 $.getScript('https://cdn.jsdelivr.net/npm/micromodal/dist/micromodal.min.js', function() { 2767 MicroModal.init(); 2768 $('.share-container').html(getSocialItems(item)); // add social icons to modal 2769 addShareListener(); // if social sharing enabled add click handler 2770 }); 2771 } 2772 } 2773 2774 else if(item.showondesktop==true && (data.device === 'desktop' || data.device === 'tablet') ){ 2775 2776 if(type === 'rightText'){ 2777 label = '<span class="right-text">' + item.Label + '</span>'; 2778 } 2779 if(type === 'leftText') { 2780 label = '<span class="left-text">' + item.Label + '</span>'; 2781 } 2782 if(!float) { 2783 icon = '<span class="icon-container">'+getItemIcon(item)+'</span>'; 2784 html += 2785 '<div class="fab child" id="child-'+index+'" data-subitem="'+index+'"> \ 2786 '+getItemAction(item, icon+label)+' \ 2787 </div>'; 2788 } 2789 // floating icons on desktop only 2790 else { 2791
2792 // add focus class for focus animation 2793 label = item.Label; 2794 var focusClass = item.Animate? 'focus' : ''; 2795 icon = '<span class="icon-container">'+getItemIcon(item)+'</span>'; 2796 text = '<span class="float-text" id="text-'+index+'">'+label+'</span>'; 2797 html += 2798 '<div class="float-container '+focusClass+'" id="'+index+'"> \ 2799 <span class="fab child float" id="child-'+index+'" data-subitem="'+index+'" style="display: inline-flex;"> \ 2800 '+getItemAction(item, icon)+' \ 2801 </span> \ 2802 <span class="float-text-container" id="float-text-'+index+'"> \ 2803 '+getItemAction(item, text)+' \ 2804 </span> \ 2805 </div>'; 2806 } 2807 // if action is share add share items to modal 2808 if(item.Action === 'Share') { 2809 $.getScript('https://cdn.jsdelivr.net/npm/micromodal/dist/micromodal.min.js', function() { 2810 MicroModal.init(); 2811 $('.share-container').html(getSocialItems(item)); // add social icons to modal 2812 addShareListener(); // if social sharing enabled add click handler 2813 }); 2814 } 2815 } 2816 }); 2817 return html; 2818} 2819function getSocialItems(item) { 2820 let html = ''; 2821 const content = getShareContent(item); 2822 if(item.Email) html += getShareHtml('Email', content.link, content.title, 'Tab', 'social'); 2823 if(item.Facebook) html += getShareHtml('Facebook', content.link, content.title, 'Tab', 'social'); 2824 if(item.Tumblr) html += getShareHtml('Tumblr', content.link, content.title, 'Tab', 'social'); 2825 if(item.LinkedIn) html += getShareHtml('LinkedIn', content.link, content.title, 'Tab', 'social'); 2826 if(item.Twitter) html += getShareHtml('Twitter', content.link, content.title, 'Tab', 'social'); 2827 if(item.Reddit) html += getShareHtml('Reddit', content.link, content.title, 'Tab', 'social'); 2828 //if(item.GooglePlus) html += getShareHtml('GooglePlus', content.link, content.title, 'Tab', 'social'); 2829 if(item.Pinterest) html += getShareHtml('Pinterest', content.link, content.title, 'Tab', 'social'); 2830 return html; 2831} 2832 2833// 2834// Social Share Functions 2835// 2836function getShareContent(item) { 2837 // set link to the current page url 2838 let link = item.ShareLink? item.Link.href : window.top.location.href; 2839 link = encodeURI(link); 2840 2841 // get default page title from the actual page title 2842 const pageTitle = item.ShareTitle? item.ShareTitle : document.title; 2843 const encodedTitle = encodeURI(pageTitle); 2844 2845 return {link: link, title: encodedTitle}; 2846} 2847function getShareHtml(site, link, encodedTitle, action, linkClass) { 2848 let href = ''; 2849 switch(site) { 2850 case 'Email': 2851 href = "mailto:?Subject="+encodedTitle+"&body=Check out this site: "+window.location.href; 2852 2853 statsEventName = 'CM_SHARE_EMAIL'; 2854 return ( 2855 '<div class="social-icon" style="background-color: grey;"> \ 2856 <a href="'+href+'" class="'+linkClass+'" onclick="_trackConvWidgetClickEvent(\''+statsEventName+'\');;"> \ 2857 '+getSvg('shareenvelope')+' \ 2858 </a> \ 2859 </div>'); 2860 case 'Facebook': 2861 href = 'https://www.facebook.com/sharer/sharer.php?u='+link; 2862 statsEventName = 'CM_SHARE_FB'; 2863 return ( 2864 '<div class="social-icon" style="background-color: #3b5998;"> \ 2865 <a href="'+href+'" class="'+linkClass+'" target="_blank" onclick="_trackConvWidgetClickEvent(\''+statsEventName+'\');"> \ 2866 '+getSvg('facebook')+' \ 2867 </a> \ 2868 </div>'); 2869 case 'Tumblr': 2870 href = 'http://tumblr.com/share/link?url='+link+'&name='+encodedTitle; 2871 return ( 2872 '<div class="social-icon" style="background-color: #35465c;"> \ 2873 <a href="'+href+'" class="'+linkClass+'" target="_blank" > \ 2874 '+getSvg('tumblr')+' \ 2875 </a> \ 2876 </div>'); 2877 case 'LinkedIn': 2878 href = 'http://www.linkedin.com/shareArticle?mini=true&url='+link+'&title='+encodedTitle; 2879 statsEventName = 'CM_SHARE_LINKEDIN'; 2880 return ( 2881 '<div class="social-icon" style="background-color: #4875B4;"> \ 2882 <a href="'+href+'" class="'+linkClass+'" target="_blank" onclick="_trackConvWidgetClickEvent(\''+statsEventName+'\');"> \ 2883 '+getSvg('linkedIn')+' \ 2884 </a> \ 2885 </div>'); 2886 case 'Twitter': 2887 href = 'https://twitter.com/intent/tweet?text='+link; 2888 statsEventName = 'CM_SHARE_TWITTER'; 2889 return ( 2890 '<div class="social-icon" style="background-color: #000000;"> \ 2891 <a href="'+href+'" class="'+linkClass+'" target="_blank" onclick="_trackConvWidgetClickEvent(\''+statsEventName+'\');"> \ 2892 '+getSvg('twitter')+' \ 2893 </a> \ 2894 </div>'); 2895 case 'Reddit': 2896 href = 'http://www.reddit.com/submit?url='+link+'&title='+encodedTitle+'&text='+encodedTitle; 2897 return ( 2898 '<div class="social-icon" style="background-color: #ff4500;"> \ 2899 <a href="'+href+'" class="'+linkClass+'" target="_blank"> \ 2900 '+getSvg('reddit')+' \ 2901 </a> \ 2902 </div>'); 2903 /* case 'GooglePlus': 2904 href = 'https://plus.google.com/share?url='+link; 2905 statsEventName = 'CM_SHARE_GOOGLE_PLUS'; 2906 return ( 2907 '<div class="social-icon" style="background-color: #d34836;"> \ 2908 <a href="'+href+'" class="'+linkClass+'" target="_blank" onclick="_trackConvWidgetClickEvent(\''+statsEventName+'\');"> \ 2909 '+getSvg('gPlus')+' \ 2910 </a> \ 2911 </div>'); */ 2912 case 'Pinterest': 2913 href = 'http://pinterest.com/pin/create/button/?url='+link+'&description='+encodedTitle; 2914 return ( 2915 '<div class="social-icon" style="background-color: #cb2027;"> \ 2916 <a href="'+href+'" class="'+linkClass+'" target="_blank"> \ 2917 '+getSvg('pinterest')+' \ 2918 </a> \ 2919 </div>'); 2920 default: 2921 return ''; 2922 } 2923} 2924 2925// 2926// Helpers 2927// 2928// check display type 2929function isMobile() { 2930 return data.device === 'mobile'; 2931} 2932function getItemAction(item, elem) { 2933 var statsEventName=''; 2934 switch(item.Action) { 2935 case 'Link': 2936 if(!item.Link) item.Link = { target: 'target="_blank', href: 'http://www.google.com' } // default link 2937 var target = item.Link.target? item.Link.target : ''; 2938 var statsEventName = 'CM_LINK_CLICK'; 2939 return '<a '+target+' href="'+item.Link.href+'" class="menu-link bsr-menulink" onclick="_trackConvWidgetClickEvent(\''+statsEventName+'\');">
2939'+elem+'</a>'; 2940 case 'Call': 2941 statsEventName = 'CM_CLICK_TO_CALL'; 2942 return '<a href="tel:'+item.CallNum+'" class="menu-link bsr-menulink" onclick="_trackConvWidgetClickEvent(\''+statsEventName+'\');">'+elem+'</a>'; 2943 case 'Sms': 2944 statsEventName = 'CM_CLICK_TO_SMS'; 2945 return '<a href="sms:'+item.SmsNum+'" class="menu-link bsr-menulink" onclick="_trackConvWidgetClickEvent(\''+statsEventName+'\');">'+elem+'</a>'; 2946 case 'Email': 2947 statsEventName = 'CM_CLICK_TO_EMAIL'; 2948 return '<a href="mailto:'+item.EmailAddr+'?subject='+item.emailDefSubject + '&body=' + item.defEmailBody + '" target="_blank" class="menu-link bsr-menulink" onclick="_trackConvWidgetClickEvent(\''+statsEventName+'\');">'+elem+'</a>'; 2949 case 'Map': 2950 statsEventName = 'CM_DIRECTION'; 2951 return '<a target="_blank" href="https://www.google.com/maps?q='+item.Query+'" class="menu-link bsr-menulink" onclick="_trackConvWidgetClickEvent(\''+statsEventName+'\');" data-eventname="Find Location">'+elem+'</a>'; 2952 case 'Mess': 2953 statsEventName = 'CM_FB_MESSAGE'; 2954 return '<a href="http://m.me/'+item.FbUser+'" class="menu-link bsr-menulink" target="_blank" onclick="_trackConvWidgetClickEvent(\''+statsEventName+'\');">'+elem+'</a>'; 2955 case 'Share': 2956 return '<a href="#" class="menu-link share bsr-menulink">'+elem+'</a>'; 2957 case 'Chat': 2958 return '<a href="#" class="menu-link bsr-chat bsr-menulink">'+elem+'</a>'; 2959 default: 2960 return ''; 2961 } 2962} 2963// returns new default icon only if icon is default (identified by path data in default svg MUST CHANGE FOR DIFFERENT DEFAUTL) 2964function xgetItemIcon(item) { 2965 // icon is default 2966 if(item.CustomIcon) { 2967 return '<div class="new-container">'+item.Icon+'</div>'; 2968 } else { 2969 switch(item.Action) { 2970 case 'Link': 2971 return getSvg('link'); 2972 case 'Call': 2973 return getSvg('phone'); 2974 case 'Sms': 2975 return getSvg('sms'); 2976 case 'Email': 2977 return getSvg('envelope'); 2978 case 'Mess': 2979 return getSvg('messenger'); 2980 case 'Map': 2981 return getSvg('map'); 2982 case 'Share': 2983 return getSvg('share'); 2984 } 2985 } 2986} 2987 2988/* --------------------- */ 2989function getItemIcon(item) { 2990 var lcase = item.Action.toLowerCase(); 2991 2992 if(item.CustomIcon) { 2993 switch(item.CustomIcon_Select) { 2994 case 'custom_icon1': 2995 // return '<div class="'+lcase+'-icon-prev custom-user-icon ' + item.CustomIcon_Select + '">' + data.config.custom_icon1 + '</div>'; 2996 return '<div class="custom-user-icon ' + item.CustomIcon_Select + '">' + data.config.custom_icon1 + '</div>'; 2997 case 'custom_icon2': 2998 return '<div class="custom-user-icon ' + item.CustomIcon_Select + '">' + data.config.custom_icon2 + '</div>'; 2999 case 'custom_icon3': 3000 return '<div class="custom-user-icon ' + item.CustomIcon_Select + '">' + data.config.custom_icon3 + '</div>'; 3001 case 'custom_icon4': 3002 return '<div class="custom-user-icon ' + item.CustomIcon_Select + '">' + data.config.custom_icon4 + '</div>'; 3003 case 'custom_icon5': 3004 return '<div class="custom-user-icon ' + item.CustomIcon_Select + '">' + data.config.custom_icon5 + '</div>'; 3005 case 'custom_icon6': 3006 return '<div class="custom-user-icon ' + item.CustomIcon_Select + '">' + data.config.custom_icon6 + '</div>'; 3007 } 3008 } else { 3009 switch(item.Action) { 3010 case 'Link': 3011 return getSvg('link'); 3012 case 'Call': 3013 return getSvg('phone'); 3014 case 'Sms': 3015 return getSvg('sms'); 3016 case 'Email': 3017 return getSvg('envelope'); 3018 case 'Mess': 3019 return getSvg('messenger'); 3020 case 'Map': 3021 return getSvg('map'); 3022 case 'Share': 3023 return getSvg('share'); 3024 case 'Chat': 3025 return getSvg('chat'); 3026 } 3027 } 3028} 3029/* --------------------- */ 3030 3031window._trackConvWidgetClickEvent = function(eventName) { 3032 if(typeof(HAF)==="object"){ 3033 HAF.OmTracking.onCMClick(eventName) 3034 } 3035 return; 3036} 3037 3038function dudaicon(icon){ 3039 return '<span class="new-container">'+icon+'</span>' 3040 3041 3042} 3043function xgetSvg(name) { 3044 const type = name? name : data.config.DeskMain; 3045 switch(type) { 3046 case 'vEllipsis': 3047 return '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><title>More</title><path d="M96 184c39.8 0 72 32.2 72 72s-32.2 72-72 72-72-32.2-72-72 32.2-72 72-72zM24 80c0 39.8 32.2 72 72 72s72-32.2 72-72S135.8 8 96 8 24 40.2 24 80zm0 352c0 39.8 32.2 72 72 72s72-32.2 72-72-32.2-72-72-72-72 32.2-72 72z"/></svg>'; 3048 case 'map': 3049 return '<svg class="iconsvgmap" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" data-default="true"><path d="M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z"/></svg>' 3050 case 'hEllipsis': 3051 return '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><title>More</title><path d="M328 256c0 39.8-32.2 72-72 72s-72-32.2-72-72 32.2-72 72-72 72 32.2 72 72zm104-72c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72zm-352 0c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72z"/></svg>'; 3052 case 'plus': 3053 return '<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 42 42" style="enable-background:new 0 0 42 42; xml:space="preserve"><title>More</title><polygon points="42,20 22,20 22,0 20,0 20,20 0,20 0,22 20,22 20,42 22,42 22,22 42,22 "/><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g></svg>'; 3054 case 'bars': 3055 return '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><title>More</title><path d="M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"/></svg>'; 3056 case 'envelope': 3057 return '<svg class="iconsvgemail" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><title>Email</title><path d="M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm0 48v40.805c-22.422 18.259-58.168 46.651-134.587 106.49-16.841 13.247-50.201 45.072-73.413 44.701-23.208.375-56.5
305779-31.459-73.413-44.701C106.18 199.465 70.425 171.067 48 152.805V112h416zM48 400V214.398c22.914 18.251 55.409 43.862 104.938 82.646 21.857 17.205 60.134 55.186 103.062 54.955 42.717.231 80.509-37.199 103.053-54.947 49.528-38.783 82.032-64.401 104.947-82.653V400H48z"/></svg>'; 3058 case 'shareenvelope': 3059 return '<svg class="iconsvgshareemail" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><title>Email</title><path d="M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm0 48v40.805c-22.422 18.259-58.168 46.651-134.587 106.49-16.841 13.247-50.201 45.072-73.413 44.701-23.208.375-56.579-31.459-73.413-44.701C106.18 199.465 70.425 171.067 48 152.805V112h416zM48 400V214.398c22.914 18.251 55.409 43.862 104.938 82.646 21.857 17.205 60.134 55.186 103.062 54.955 42.717.231 80.509-37.199 103.053-54.947 49.528-38.783 82.032-64.401 104.947-82.653V400H48z"/></svg>'; 3060 case 'phone': 3061 return '<svg class="iconsvgphone" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-default><title>Phone</title><path d="M493.4 24.6l-104-24c-11.3-2.6-22.9 3.3-27.5 13.9l-48 112c-4.2 9.8-1.4 21.3 6.9 28l60.6 49.6c-36 76.7-98.9 140.5-177.2 177.2l-49.6-60.6c-6.8-8.3-18.2-11.1-28-6.9l-112 48C3.9 366.5-2 378.1.6 389.4l24 104C27.1 504.2 36.7 512 48 512c256.1 0 464-207.5 464-464 0-11.2-7.7-20.9-18.6-23.4z"/></svg>'; 3062 case 'close': 3063 return '<svg class="iconsvgclose" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"viewBox="0 0 224.512 224.512" style="enable-background:new 0 0 224.512 224.512;" xml:space="preserve"><title>Close</title><g><polygon points="224.507,6.997 217.521,0 112.256,105.258 6.998,0 0.005,6.997 105.263,112.254 0.005,217.512 6.998,224.512 112.256,119.24 217.521,224.512 224.507,217.512 119.249,112.254"/></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g></svg>'; 3064 case 'facebook': 3065 return '<svg class="iconsvgfb" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 264 512"><title>Facebook</title><path d="M76.7 512V283H0v-91h76.7v-71.7C76.7 42.4 124.3 0 193.8 0c33.3 0 61.9 2.5 70.2 3.6V85h-48.2c-37.8 0-45.1 18-45.1 44.3V192H256l-11.7 91h-73.6v229"/></svg>'; 3066 case 'messenger': 3067 return '<svg class="iconsvgmesg" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><title>Facebook Messenger</title><path d="M224 32C15.9 32-77.5 278 84.6 400.6V480l75.7-42c142.2 39.8 285.4-59.9 285.4-198.7C445.8 124.8 346.5 32 224 32zm23.4 278.1L190 250.5 79.6 311.6l121.1-128.5 57.4 59.6 110.4-61.1-121.1 128.5z"/></svg>' 3068 case 'tumblr': 3069 return '<svg class="iconsvgtmb" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><title>Tumblr</title><path d="M309.8 480.3c-13.6 14.5-50 31.7-97.4 31.7-120.8 0-147-88.8-147-140.6v-144H17.9c-5.5 0-10-4.5-10-10v-68c0-7.2 4.5-13.6 11.3-16 62-21.8 81.5-76 84.3-117.1.8-11 6.5-16.3 16.1-16.3h70.9c5.5 0 10 4.5 10 10v115.2h83c5.5 0 10 4.4 10 9.9v81.7c0 5.5-4.5 10-10 10h-83.4V360c0 34.2 23.7 53.6 68 35.8 4.8-1.9 9-3.2 12.7-2.2 3.5.9 5.8 3.4 7.4 7.9l22 64.3c1.8 5 3.3 10.6-.4 14.5z"/></svg>'; 3070 case 'linkedIn': 3071 return '<svg class="iconsvgli" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><title>LinkedIn</title><path d="M100.3 480H7.4V180.9h92.9V480zM53.8 140.1C24.1 140.1 0 115.5 0 85.8 0 56.1 24.1 32 53.8 32c29.7 0 53.8 24.1 53.8 53.8 0 29.7-24.1 54.3-53.8 54.3zM448 480h-92.7V334.4c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7V480h-92.8V180.9h89.1v40.8h1.3c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3V480z"/></svg>'; 3072 case 'twitter': 3073 return '<svg class="iconsvgtw" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><title>Twitter</title><path d="M12.6.75h2.454l-5.36 6.142L16 15.25h-4.937l-3.867-5.07-4.425 5.07H.316l5.733-6.57L0 .75h5.063l3.495 4.633L12.601.75Zm-.86 13.028h1.36L4.323 2.145H2.865z"/></svg>'; 3074 case 'reddit': 3075 return '<svg class="iconsvgred" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><title>Reddit</title><path d="M440.3 203.5c-15 0-28.2 6.2-37.9 15.9-35.7-24.7-83.8-40.6-137.1-42.3L293 52.3l88.2 19.8c0 21.6 17.6 39.2 39.2 39.2 22 0 39.7-18.1 39.7-39.7s-17.6-39.7-39.7-39.7c-15.4 0-28.7 9.3-35.3 22l-97.4-21.6c-4.9-1.3-9.7 2.2-11 7.1L246.3 177c-52.9 2.2-100.5 18.1-136.3 42.8-9.7-10.1-23.4-16.3-38.4-16.3-55.6 0-73.8 74.6-22.9 100.1-1.8 7.9-2.6 16.3-2.6 24.7 0 83.8 94.4 151.7 210.3 151.7 116.4 0 210.8-67.9 210.8-151.7 0-8.4-.9-17.2-3.1-25.1 49.9-25.6 31.5-99.7-23.8-99.7zM129.4 308.9c0-22 17.6-39.7 39.7-39.7 21.6 0 39.2 17.6 39.2 39.7 0 21.6-17.6 39.2-39.2 39.2-22 .1-39.7-17.6-39.7-39.2zm214.3 93.5c-36.4 36.4-139.1 36.4-175.5 0-4-3.5-4-9.7 0-13.7 3.5-3.5 9.7-3.5 13.2 0 27.8 28.5 120 29 149 0 3.5-3.5 9.7-3.5 13.2 0 4.1 4 4.1 10.2.1 13.7zm-.8-54.2c-21.6 0-39.2-17.6-39.2-39.2 0-22
307517.6-39.7 39.2-39.7 22 0 39.7 17.6 39.7 39.7-.1 21.5-17.7 39.2-39.7 39.2z"/></svg>'; 3076 case 'pinterest': 3077 return '<svg class="iconsvgpin" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><title>Pinterest</title><path d="M204 6.5C101.4 6.5 0 74.9 0 185.6 0 256 39.6 296 63.6 296c9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8C384 71.3 298.2 6.5 204 6.5z"/></svg>'; 3078 case 'share': 3079 return '<svg class="iconsvgshare" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1536 1792"><title>Share</title><path d="M1216 1024q133 0 226.5 93.5t93.5 226.5-93.5 226.5-226.5 93.5-226.5-93.5-93.5-226.5q0-12 2-34l-360-180q-92 86-218 86-133 0-226.5-93.5t-93.5-226.5 93.5-226.5 226.5-93.5q126 0 218 86l360-180q-2-22-2-34 0-133 93.5-226.5t226.5-93.5 226.5 93.5 93.5 226.5-93.5 226.5-226.5 93.5q-126 0-218-86l-360 180q2 22 2 34t-2 34l360 180q92-86 218-86z"/></svg>'; 3080 case 'sms': 3081 return '<svg class="iconsvgsms" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><title>SMS Text</title><path d="M448 0H64C28.7 0 0 28.7 0 64v288c0 35.3 28.7 64 64 64h96v84c0 9.8 11.2 15.5 19.1 9.7L304 416h144c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64z"/></svg>'; 3082 case 'link': 3083 return '<svg class="iconsvglink" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"/></svg>'; 3084 default: 3085 return ''; 3086 } 3087} 3088function getSvg(name) { 3089 const type = name? name : data.config.DeskMain; 3090 switch(type) { 3091 case 'vEllipsis': 3092 return '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 192 512"><title>More</title><path d="M96 184c39.8 0 72 32.2 72 72s-32.2 72-72 72-72-32.2-72-72 32.2-72 72-72zM24 80c0 39.8 32.2 72 72 72s72-32.2 72-72S135.8 8 96 8 24 40.2 24 80zm0 352c0 39.8 32.2 72 72 72s72-32.2 72-72-32.2-72-72-72-72 32.2-72 72z"/></svg>'; 3093 case 'map': 3094 return '<svg class="map-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512" data-default="true"><path d="M172.268 501.67C26.97 291.031 0 269.413 0 192 0 85.961 85.961 0 192 0s192 85.961 192 192c0 77.413-26.97 99.031-172.268 309.67-9.535 13.774-29.93 13.773-39.464 0zM192 272c44.183 0 80-35.817 80-80s-35.817-80-80-80-80 35.817-80 80 35.817 80 80 80z"/></svg>' 3095 case 'hEllipsis': 3096 return '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><title>More</title><path d="M328 256c0 39.8-32.2 72-72 72s-72-32.2-72-72 32.2-72 72-72 72 32.2 72 72zm104-72c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72zm-352 0c-39.8 0-72 32.2-72 72s32.2 72 72 72 72-32.2 72-72-32.2-72-72-72z"/></svg>'; 3097 case 'plus': 3098 return '<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 42 42" style="enable-background:new 0 0 42 42; xml:space="preserve"><title>More</title><polygon points="42,20 22,20 22,0 20,0 20,20 0,20 0,22 20,22 20,42 22,42 22,22 42,22 "/><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g></svg>'; 3099 case 'bars': 3100 return '<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><title>More</title><path d="M16 132h416c8.837 0 16-7.163 16-16V76c0-8.837-7.163-16-16-16H16C7.163 60 0 67.163 0 76v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16zm0 160h416c8.837 0 16-7.163 16-16v-40c0-8.837-7.163-16-16-16H16c-8.837 0-16 7.163-16 16v40c0 8.837 7.163 16 16 16z"/></svg>'; 3101 case 'envelope': 3102 return '<svg class="email-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><title>Email</title><path d="M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm0 48v40.805c-22.422 18.259-58.168 46.651-134.587 106.49-16.841 13.247-50.201 45.072-73.413 44.701-23.208.375-56.5
310279-31.459-73.413-44.701C106.18 199.465 70.425 171.067 48 152.805V112h416zM48 400V214.398c22.914 18.251 55.409 43.862 104.938 82.646 21.857 17.205 60.134 55.186 103.062 54.955 42.717.231 80.509-37.199 103.053-54.947 49.528-38.783 82.032-64.401 104.947-82.653V400H48z"/></svg>'; 3103 case 'shareenvelope': 3104 return '<svg class="iconsvgshareemail" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><title>Email</title><path d="M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm0 48v40.805c-22.422 18.259-58.168 46.651-134.587 106.49-16.841 13.247-50.201 45.072-73.413 44.701-23.208.375-56.579-31.459-73.413-44.701C106.18 199.465 70.425 171.067 48 152.805V112h416zM48 400V214.398c22.914 18.251 55.409 43.862 104.938 82.646 21.857 17.205 60.134 55.186 103.062 54.955 42.717.231 80.509-37.199 103.053-54.947 49.528-38.783 82.032-64.401 104.947-82.653V400H48z"/></svg>'; 3105 case 'phone': 3106 return '<svg class="call-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-default><title>Phone</title><path d="M493.4 24.6l-104-24c-11.3-2.6-22.9 3.3-27.5 13.9l-48 112c-4.2 9.8-1.4 21.3 6.9 28l60.6 49.6c-36 76.7-98.9 140.5-177.2 177.2l-49.6-60.6c-6.8-8.3-18.2-11.1-28-6.9l-112 48C3.9 366.5-2 378.1.6 389.4l24 104C27.1 504.2 36.7 512 48 512c256.1 0 464-207.5 464-464 0-11.2-7.7-20.9-18.6-23.4z"/></svg>'; 3107 case 'close': 3108 return '<svg class="iconsvgclose" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"viewBox="0 0 224.512 224.512" style="enable-background:new 0 0 224.512 224.512;" xml:space="preserve"><title>Close</title><g><polygon points="224.507,6.997 217.521,0 112.256,105.258 6.998,0 0.005,6.997 105.263,112.254 0.005,217.512 6.998,224.512 112.256,119.24 217.521,224.512 224.507,217.512 119.249,112.254"/></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g><g></g></svg>'; 3109 case 'facebook': 3110 return '<svg class="iconsvgfb" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 264 512"><title>Facebook</title><path d="M76.7 512V283H0v-91h76.7v-71.7C76.7 42.4 124.3 0 193.8 0c33.3 0 61.9 2.5 70.2 3.6V85h-48.2c-37.8 0-45.1 18-45.1 44.3V192H256l-11.7 91h-73.6v229"/></svg>'; 3111 case 'messenger': 3112 return '<svg class="mess-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><title>Facebook Messenger</title><path d="M224 32C15.9 32-77.5 278 84.6 400.6V480l75.7-42c142.2 39.8 285.4-59.9 285.4-198.7C445.8 124.8 346.5 32 224 32zm23.4 278.1L190 250.5 79.6 311.6l121.1-128.5 57.4 59.6 110.4-61.1-121.1 128.5z"/></svg>' 3113 case 'tumblr': 3114 return '<svg class="iconsvgtmb" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"><title>Tumblr</title><path d="M309.8 480.3c-13.6 14.5-50 31.7-97.4 31.7-120.8 0-147-88.8-147-140.6v-144H17.9c-5.5 0-10-4.5-10-10v-68c0-7.2 4.5-13.6 11.3-16 62-21.8 81.5-76 84.3-117.1.8-11 6.5-16.3 16.1-16.3h70.9c5.5 0 10 4.5 10 10v115.2h83c5.5 0 10 4.4 10 9.9v81.7c0 5.5-4.5 10-10 10h-83.4V360c0 34.2 23.7 53.6 68 35.8 4.8-1.9 9-3.2 12.7-2.2 3.5.9 5.8 3.4 7.4 7.9l22 64.3c1.8 5 3.3 10.6-.4 14.5z"/></svg>'; 3115 case 'linkedIn': 3116 return '<svg class="iconsvgli" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><title>LinkedIn</title><path d="M100.3 480H7.4V180.9h92.9V480zM53.8 140.1C24.1 140.1 0 115.5 0 85.8 0 56.1 24.1 32 53.8 32c29.7 0 53.8 24.1 53.8 53.8 0 29.7-24.1 54.3-53.8 54.3zM448 480h-92.7V334.4c0-34.7-.7-79.2-48.3-79.2-48.3 0-55.7 37.7-55.7 76.7V480h-92.8V180.9h89.1v40.8h1.3c12.4-23.5 42.7-48.3 87.9-48.3 94 0 111.3 61.9 111.3 142.3V480z"/></svg>'; 3117 case 'twitter': 3118 return '<svg class="iconsvgtw" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><title>Twitter</title><path d="M12.6.75h2.454l-5.36 6.142L16 15.25h-4.937l-3.867-5.07-4.425 5.07H.316l5.733-6.57L0 .75h5.063l3.495 4.633L12.601.75Zm-.86 13.028h1.36L4.323 2.145H2.865z"/></svg>'; 3119 case 'reddit': 3120 return '<svg class="iconsvgred" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><title>Reddit</title><path d="M440.3 203.5c-15 0-28.2 6.2-37.9 15.9-35.7-24.7-83.8-40.6-137.1-42.3L293 52.3l88.2 19.8c0 21.6 17.6 39.2 39.2 39.2 22 0 39.7-18.1 39.7-39.7s-17.6-39.7-39.7-39.7c-15.4 0-28.7 9.3-35.3 22l-97.4-21.6c-4.9-1.3-9.7 2.2-11 7.1L246.3 177c-52.9 2.2-100.5 18.1-136.3 42.8-9.7-10.1-23.4-16.3-38.4-16.3-55.6 0-73.8 74.6-22.9 100.1-1.8 7.9-2.6 16.3-2.6 24.7 0 83.8 94.4 151.7 210.3 151.7 116.4 0 210.8-67.9 210.8-151.7 0-8.4-.9-17.2-3.1-25.1 49.9-25.6 31.5-99.7-23.8-99.7zM129.4 308.9c0-22 17.6-39.7 39.7-39.7 21.6 0 39.2 17.6 39.2 39.7 0 21.6-17.6 39.2-39.2 39.2-22 .1-39.7-17.6-39.7-39.2zm214.3 93.5c-36.4 36.4-139.1 36.4-175.5 0-4-3.5-4-9.7 0-13.7 3.5-3.5 9.7-3.5 13.2 0 27.8 28.5 120 29 149 0 3.5-3.5 9.7-3.5 13.2 0 4.1 4 4.1 10.2.1 13.7zm-.8-54.2c-21.6 0-39.2-17.6-39.2-39.2 0-22
312017.6-39.7 39.2-39.7 22 0 39.7 17.6 39.7 39.7-.1 21.5-17.7 39.2-39.7 39.2z"/></svg>'; 3121 case 'pinterest': 3122 return '<svg class="iconsvgpin" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><title>Pinterest</title><path d="M204 6.5C101.4 6.5 0 74.9 0 185.6 0 256 39.6 296 63.6 296c9.9 0 15.6-27.6 15.6-35.4 0-9.3-23.7-29.1-23.7-67.8 0-80.4 61.2-137.4 140.4-137.4 68.1 0 118.5 38.7 118.5 109.8 0 53.1-21.3 152.7-90.3 152.7-24.9 0-46.2-18-46.2-43.8 0-37.8 26.4-74.4 26.4-113.4 0-66.2-93.9-54.2-93.9 25.8 0 16.8 2.1 35.4 9.6 50.7-13.8 59.4-42 147.9-42 209.1 0 18.9 2.7 37.5 4.5 56.4 3.4 3.8 1.7 3.4 6.9 1.5 50.4-69 48.6-82.5 71.4-172.8 12.3 23.4 44.1 36 69.3 36 106.2 0 153.9-103.5 153.9-196.8C384 71.3 298.2 6.5 204 6.5z"/></svg>'; 3123 case 'share': 3124 return '<svg class="share-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1536 1792"><title>Share</title><path d="M1216 1024q133 0 226.5 93.5t93.5 226.5-93.5 226.5-226.5 93.5-226.5-93.5-93.5-226.5q0-12 2-34l-360-180q-92 86-218 86-133 0-226.5-93.5t-93.5-226.5 93.5-226.5 226.5-93.5q126 0 218 86l360-180q-2-22-2-34 0-133 93.5-226.5t226.5-93.5 226.5 93.5 93.5 226.5-93.5 226.5-226.5 93.5q-126 0-218-86l-360 180q2 22 2 34t-2 34l360 180q92-86 218-86z"/></svg>'; 3125 case 'sms': 3126 return '<svg class="sms-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><title>SMS Text</title><path d="M448 0H64C28.7 0 0 28.7 0 64v288c0 35.3 28.7 64 64 64h96v84c0 9.8 11.2 15.5 19.1 9.7L304 416h144c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64z"/></svg>'; 3127 case 'link': 3128 return '<svg class="link-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M326.612 185.391c59.747 59.809 58.927 155.698.36 214.59-.11.12-.24.25-.36.37l-67.2 67.2c-59.27 59.27-155.699 59.262-214.96 0-59.27-59.26-59.27-155.7 0-214.96l37.106-37.106c9.84-9.84 26.786-3.3 27.294 10.606.648 17.722 3.826 35.527 9.69 52.721 1.986 5.822.567 12.262-3.783 16.612l-13.087 13.087c-28.026 28.026-28.905 73.66-1.155 101.96 28.024 28.579 74.086 28.749 102.325.51l67.2-67.19c28.191-28.191 28.073-73.757 0-101.83-3.701-3.694-7.429-6.564-10.341-8.569a16.037 16.037 0 0 1-6.947-12.606c-.396-10.567 3.348-21.456 11.698-29.806l21.054-21.055c5.521-5.521 14.182-6.199 20.584-1.731a152.482 152.482 0 0 1 20.522 17.197zM467.547 44.449c-59.261-59.262-155.69-59.27-214.96 0l-67.2 67.2c-.12.12-.25.25-.36.37-58.566 58.892-59.387 154.781.36 214.59a152.454 152.454 0 0 0 20.521 17.196c6.402 4.468 15.064 3.789 20.584-1.731l21.054-21.055c8.35-8.35 12.094-19.239 11.698-29.806a16.037 16.037 0 0 0-6.947-12.606c-2.912-2.005-6.64-4.875-10.341-8.569-28.073-28.073-28.191-73.639 0-101.83l67.2-67.19c28.239-28.239 74.3-28.069 102.325.51 27.75 28.3 26.872 73.934-1.155 101.96l-13.087 13.087c-4.35 4.35-5.769 10.79-3.783 16.612 5.864 17.194 9.042 34.999 9.69 52.721.509 13.906 17.454 20.446 27.294 10.606l37.106-37.106c59.271-59.259 59.271-155.699.001-214.959z"/></svg>'; 3129 case 'chat': 3130 // return '<svg class="chat-icon" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><title>Email</title><path d="M464 64H48C21.49 64 0 85.49 0 112v288c0 26.51 21.49 48 48 48h416c26.51 0 48-21.49 48-48V112c0-26.51-21.49-48-48-48zm0 48v40.805c-22.422 18.259-58.168 46.651-134.587 106.49-16.841 13.247-50.201 45.072-73.413 44.701-23.208.375-56.579-31.459-73.413-44.701C106.18 199.465 70.425 171.067 48 152.805V112h416zM48 400V214.398c22.914 18.251 55.409 43.862 104.938 82.646 21.857 17.205 60.134 55.186 103.062 54.955 42.717.231 80.509-37.199 103.053-54.947 49.528-38.783 82.032-64.401 104.947-82.653V400H48z"/></svg>'; 3131 return '<svg class="chat-icon" viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg"><g><path d="m460.747 439.163c89.119-102.791 58.111-262.592-63.094-324.93-35.004-67.784-105.754-114.233-187.153-114.233-116.064 0-210.488 94.43-210.488 210.5 0 51.099 18.088 99.427 51.237 137.663l-46.774 46.16c-9.48 9.357-2.913 25.612 10.465 25.677l112.956.538c38.925 56.641 103.228 91.462 173.6 91.462.144 0 195.446-.999 195.561-1 13.333-.064 19.975-16.29 10.464-25.677zm-377.985-101.146c-34.017-34.08-52.752-79.367-52.752-127.517 0-99.528 80.968-180.5 180.49-180.5s180.49 80.972 180.49 180.5c0 95.373-75.473 181.269-186.343 180.403l-153.258-.73 31.293-30.882c5.918-5.842 5.953-15.389.08-21.274zm218.734 143.983c-52.634 0-101.557-22.489-135.565-61.281 57.104.376 41.945.281 44.569.281 135.402 0 236.506-127.009 204.689-259.617 82.966 67.774 89.761 191.779 14.045 267.634-5.874 5.885-5.838 15.433.08 21.274l31.293 30.882c-.119 0-158.995.827-159.111.827z"/><path d="m121.005 166h179.99c8.284 0 14.999-6.716 14.999-15s-6.715-15-14.999-15h-179.99c-8.284 0-14.999 6.716-14.999 15s6.716 15 14.999 15z"/><path d="m121.005 226h179.99c8.284 0 14.999-6.716 14.999-15s-6.715-15-14.999-15h-179.99c-8.284 0-14.999 6.716-14.999 15s6.716 15 14.999 15z"/><path d="m121.005 286h179.99c8.284 0 14.999-6.716 14.999-15s-6.715-15-14.999-15h-179.99c-8.284 0-14.999 6.716-14.999 15s6.716 15 14.999 15z"/></g></svg>'; 3132 default: 3133 return ''; 3134 } 3135} 3136 3137 }; 3138</script>
3138 3139
3140<script> 3141 window.customWidgetsFunctions["ca4188fe92024514a23a858f63ab6658~12"] = function (element, data, api) { 3142 null 3143 }; 3144</script>
3144 3145 3146
3147<script type="text/javascript"> 3148 3149 var d_version = "production_6817"; 3150 var build = "2026-10-01T14_02_32"; 3151 window['v' + 'ersion'] = d_version; 3152 3153 function buildEditorParent() { 3154 window.isMultiScreen = true; 3155 window.editorParent = {}; 3156 window.previewParent = {}; 3157 window.assetsCacheQueryParam = "?version=2026-10-01T14_02_32"; 3158 try { 3159 var _p = window.parent; 3160 if (_p && _p.document && _p.$ && _p.$.dmfw) { 3161 window.editorParent = _p; 3162 } else if (_p.isSitePreview) { 3163 window.previewParent = _p; 3164 } 3165 } catch (e) { 3166 3167 } 3168 } 3169 3170 buildEditorParent(); 3171</script>
3171 3172 3173 3174 3175
3176<script type="text/javascript" id='d-js-jquery' 3177 src="https://static-res-cdn.websites.hibu.com/libs/jquery/jquery-3.7.0.min.js"></script>
3177 3178 3179 3180 3181 3182<!-- Injecting site-wide before scripts --> 3183 3184
3185<script src="https://app.termly.io/resource-blocker/d96410ad-1c69-4ab0-89d4-61af5f695e9c?autoBlock=on" data-swh-uuid="378774925d5448db87520dca528486ab"> 3186</script>
3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205
3206<script type="text/javascript" id="d_track_campaign" data-entry-referrer> 3207 (function() { 3208 if (!window.location.search) { 3209 return; 3210 } 3211 const cleanParams = window.location.search.substring(1); // Strip ? 3212 const queryParams = cleanParams.split('&'); 3213 3214 const expires = 'expires=' + new Date().getTime() + 24 * 60 * 60 * 1000; 3215 const domain = 'domain=' + window.location.hostname; 3216 const path = "path=/"; 3217 3218 queryParams.forEach((param) => { 3219 const [key, value = ''] = param.split('='); 3220 if (key.startsWith('utm_')) { 3221 const cookieName = "_dm_rt_" + key.substring(4); 3222 const cookie = cookieName + "=" + value; 3223 const joined = [cookie, expires, domain, path].join(";"); 3224 document.cookie = joined; 3225 } 3226 }); 3227 }()); 3228</script>
3228 3229
3230<script type="text/javascript" > 3231 var _dm_gaq = {}; 3232 var _gaq = _gaq || []; 3233 var _dm_insite = []; 3234</script>
vendor: 68 bytes, lines 3234-3239
3234 3235 3236 3237 3238 3239<script async src="https://www.googletagmanager.com/gtag/js?id=
3239G-GCY3QZ593K
vendor: 13 bytes, lines 3239-3240
3239"></script> 3240
3241<script type="text/javascript" id="d_track_ga"> 3242 window.dataLayer = window.dataLayer || []; 3243 _dm_gaq.siteAlias = 'a18e963a07b74c3894ec4c687e53ed93'; 3244 _dm_gaq.externalGaqID = 'non-empty'; 3245 3246 function gtag() { dataLayer.push(arguments); } 3247 3248 function pushInsiteImpressions(id) { 3249 _dm_insite.forEach((rule) => { 3250 _dm_gaq.pushEvent(id, 'insite_impression', 'insite', rule.ruleType + '__' + rule.ruleId); 3251 }); 3252 } 3253 3254 _dm_gaq.pushEvent = function(trackingId, event, category, label, value, additionalParams = {}) { 3255 const eventProps = { 3256 event_category: category, 3257 event_label: label, 3258 value, 3259 ...additionalParams 3260 }; 3261 gtag('event', event, eventProps); 3262 } 3263 3264 gtag('js', new Date()) 3265 3266 3267gtag('set', 'developer_id.dMDU5Nj', true); 3268gtag('config', 'G-GCY3QZ593K', { 3269 'send_page_view': false, 3270 'linker': { 3271 'domains': ['www.fullservicegaragedoors.net'] 3272 } 3273}); 3274 3275 _dm_gaq.pushEvent('', 'page_view'); 3276 3277 pushInsiteImpressions(_dm_gaq.externalGaqID); 3278</script>
3278 3279 3280 3281 3282 3283 3284 3285<!-- End Injecting site-wide to the head --> 3286 3287 3288
3289<script> 3290 var _jquery = window.$; 3291 3292 var jqueryAliases = ['$', 'jquery', 'jQuery']; 3293 3294 jqueryAliases.forEach((alias) => { 3295 Object.defineProperty(window, alias, { 3296 get() { 3297 return _jquery; 3298 }, 3299 set() { 3300 console.warn("Trying to over-write the global jquery object!"); 3301 } 3302 }); 3303 }); 3304 window.jQuery.migrateMute = true; 3305</script>
3305 3306 3307
3308<script type="text/javascript"> 3309 window.popups = 3310 [{"title":"Hibu Video Splash","url":"/build-your-own-insite4","options":{"backgroundColor":"#FFFFFF","borderRadius":"5","width":"518.34375","previousAnimation":"zoomInUp","overlayColor":"rgba(195, 195, 195,0.5)","height":"360","animation":"none"},"name":"build-your-own-insite4"}] 3311</script>
3311 3312 3313 3314
3315<script> 3316 window.cookiesNotificationMarkupPreview = 'null'; 3317</script>
3317 3318 3319
3320<script id='d-js-params'> 3321 window.INSITE = window.INSITE || {}; 3322 window.INSITE.device = "desktop"; 3323 3324 window.rtCommonProps = {}; 3325 rtCommonProps["runtimecollector.url"] = 'https://rtc.hibuwebsites.com'; 3326 rtCommonProps["performance.tabletPreview.removeScroll"] = 'false'; 3327 rtCommonProps["inlineEditGrid.snap"] =true; 3328 rtCommonProps["popup.insite.cookie.ttl"] = '0.5'; 3329 rtCommonProps["common.mapbox.token"] = 'pk.eyJ1IjoiZGFubnliMTIzIiwiYSI6ImNqMGljZ256dzAwMDAycXBkdWxwbDgzeXYifQ.Ck5P-0NKPVKAZ6SH98gxxw'; 3330 rtCommonProps["common.mapbox.js.override"] =false; 3331 rtCommonProps["common.here.appId"] = 'iYvDjIQ2quyEu0rg0hLo'; 3332 rtCommonProps["common.here.appCode"] = '1hcIxLJcbybmtBYTD9Z1UA'; 3333 rtCommonProps["ecommerce.ecwid.script"] = 'https://app.multiscreenstore.com/script.js'; 3334 rtCommonProps["common.build.dist.folder"] = 'production/6817'; 3335 rtCommonProps["common.resources.cdn.host"] = 'https://static-res-cdn.websites.hibu.com'; 3336 rtCommonProps["common.resources.folder"] = 'https://static-res-cdn.websites.hibu.com/mnlt/production/6817'; 3337 rtCommonProps["common.fonts.api.v2.url"] = 'https://cdn.hibuwebsites.com/fonts/css2?family='; 3338 rtCommonProps["feature.flag.runtime.backgroundSlider.preload.slowly"] =true; 3339 rtCommonProps["feature.flag.runtime.newAnimation.jitAnimation.enabled"] =true; 3340 rtCommonProps["feature.flag.sites.google.analytics.gtag"] =true; 3341 rtCommonProps["feature.flag.runOnReadyNewTask"] =true; 3342 rtCommonProps["isAutomation.test"] =false; 3343 rtCommonProps["booking.cal.api.domain"] = 'api.cal.com'; 3344 3345 3346 rtCommonProps['common.mapsProvider'] = 'mapbox'; 3347 3348 rtCommonProps['common.mapsProvider.version'] = '0.52.0'; 3349 rtCommonProps['common.geocodeProvider'] = 'mapbox'; 3350 rtCommonProps['server.for.resources'] = ''; 3351 rtCommonProps['feature.flag.lazy.widgets'] = true; 3352 rtCommonProps['feature.flag.single.wow'] = false; 3353 rtCommonProps['feature.flag.disallowPopupsInEditor'] = true; 3354 rtCommonProps['feature.flag.mark.anchors'] = true; 3355 rtCommonProps['captcha.public.key'] = '6LffcBsUAAAAAMU-MYacU-6QHY4iDtUEYv_Ppwlz'; 3356 rtCommonProps['captcha.invisible.public.key'] = '6LeiWB8UAAAAAHYnVJM7_-7ap6bXCUNGiv7bBPME'; 3357 rtCommonProps["images.sizes.small"] =160; 3358 rtCommonProps["images.sizes.mobile"] =640; 3359 rtCommonProps["images.sizes.tablet"] =1280; 3360 rtCommonProps["images.sizes.desktop"] =1920; 3361 rtCommonProps["import.images.storage.imageCDN"] = 'https://le-cdn.hibuwebsites.com/'; 3362 rtCommonProps["feature.flag.performance.logs"] =false; 3363 rtCommonProps["site.widget.form.captcha.type"] = 'g_recaptcha'; 3364 rtCommonProps["friendly.captcha.site.key"] = 'FCMGSQG9GVNMFS8K'; 3365 rtCommonProps["cookiebot.mapbox.consent.category"] = 'marketing'; 3366 rtCommonProps["termly.mapbox.consent.category"] = 'performance'; 3367 // feature flags that's used out of runtime module (in legacy files) 3368 rtCommonProps["platform.monolith.personalization.dateTimeCondition.popupMsgAction.moveToclient.enabled"] =true; 3369 3370 window.rtFlags = {}; 3371 rtFlags["unsuspendEcwidStoreOnRuntime.enabled"] =false; 3372 rtFlags["scripts.widgetCount.enabled"] =true; 3373 rtFlags["fnb.animations.tracking.enabled"] =true; 3374 rtFlags["ecom.ecwidNewUrlStructure.enabled"] = false; 3375 rtFlags["ecom.ecwid.accountPage.emptyBaseUrl.enabled"] = true; 3376 rtFlags["ecom.ecwid.accountPage.repeatOrderRedirect.enabled"] = false; 3377 rtFlags["ecom.ecwid.oldStore.keepScrollOnLoad.enabled"] = true; 3378 rtFlags["ecom.ecwid.storefrontV3.enabled"] = false; 3379 rtFlags["ecom.monolith.legacy.js.api.disabled.for.new.sites"] = false; 3380 rtFlags["geocode.search.localize"] =false; 3381 rtFlags["feature.flag.runtime.newAnimation.asyncInit.setTimeout.enabled"] =false; 3382 rtFlags["twitter.heightLimit.enabled"] = true; 3383 rtFlags["streamline.monolith.personalization.supportMultipleConditions.enabled"] =false; 3384 rtFlags["flex.animation.design.panel.layout"] =true; 3385 rtFlags["runtime.cwv.report.cls.enabled"] =false; 3386 rtFlags["runtime.cwv.report.lcp.enabled"] =false; 3387 rtFlags["runtime.lcp.preload.selfheal.enabled"] =true; 3388 rtFlags["runtime.lcp.preload.bootstrap.enabled"] =true; 3389 rtFlags["runtime.lcp.preload.monitor.enabled"] =false; 3390 rtFlags["runtime.customwidget.heightpin.enabled"] =true; 3391 rtFlags["runtime.video.widget.lazy.enabled"] =true; 3392 rtFlags["contact.form.useActiveForm"] =true; 3393 rtFlags["contact.form.custom.errors.enabled"] =true; 3394 rtFlags["runtime.ssr.productStore.internal.observer"] =true; 3395 rtFlags["editor.widget.form.a11y"] =true; 3396</script>
vendor: 1 bytes, line 3396
3396
3397<script src="https://static-res-cdn.websites.hibu.com/mnlt/production/6817/_dm/s/rt/dist/scripts/d-js-one-runtime-unified-desktop.min.js" id="d-js-core"></script>
3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411
3411<script src="https://static-res-cdn.websites.hibu.com/mnlt/production/6817/_dm/s/rt/dist/scripts/d-js-jquery-migrate.min.js" ></script>
3411 3412 3413 3414 3415 3416
3417<script> 3418 3419 $(window).bind("orientationchange", function (e) { 3420 $.layoutManager.initLayout(); 3421 3422 }); 3423 $(document).resize(function () { 3424 3425 }); 3426</script>
3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445
3446<script type="text/javascript" id="d_track_sp"> 3447 ;(function(p,l,o,w,i,n,g){if(!p[i]){p.GlobalSnowplowNamespace=p.GlobalSnowplowNamespace||[]; 3448 p.GlobalSnowplowNamespace.push(i);p[i]=function(){(p[i].q=p[i].q||[]).push(arguments) 3449 };p[i].q=p[i].q||[];n=l.createElement(o);g=l.getElementsByTagName(o)[0];n.async=1; 3450 n.src=w;g.parentNode.insertBefore(n,g)}}(window,document,"script","//d32hwlnfiv2gyn.cloudfront.net/sp-2.0.0-dm-0.1.min.js","snowplow")); 3451 window.dmsnowplow = window.snowplow; 3452 3453 dmsnowplow('newTracker', 'cf', 'd32hwlnfiv2gyn.cloudfront.net', { // Initialise a tracker 3454 appId: 'a18e963a07b74c3894ec4c687e53ed93' 3455 }); 3456 3457 // snowplow queries element styles so we wait until CSS calculations are done. 3458 requestAnimationFrame(() => { 3459 dmsnowplow('trackPageView'); 3460 _dm_insite.forEach((rule) => { 3461 // Specifically in popup only the client knows if it is shown or not so we don't always want to track its impression here 3462 // the tracking is in popup.js 3463 if (rule.actionName !== "popup") { 3464 dmsnowplow('trackStructEvent', 'insite', 'impression', rule.ruleType, rule.ruleId); 3465 } 3466 window?.waitForDeferred?.('dmAjax', () => { 3467 $.DM.events.trigger('event-ruleTriggered', {value: rule}); 3468 }); 3469 }); 3470 }); 3471</script>
3471 3472 3473 3474 3475<div style="display:none;" id="P6iryBW0Wu"></div> 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487<div class="pswp" tabindex="-1" role="dialog" aria-hidden="true"> 3488 3489 3490 <div class="pswp__bg"></div> 3491 3492 3493 <div class="pswp__scroll-wrap"> 3494 3495 3496 <div class="pswp__container"> 3497 <div class="pswp__item"></div> 3498 <div class="pswp__item"></div> 3499 <div class="pswp__item"></div> 3500 </div> 3501 3502 3503 <div class="pswp__ui pswp__ui--hidden"> 3504 3505 <div class="pswp__top-bar"> 3506 3507 3508 3509 <div class="pswp__counter"></div> 3510 3511 <button class="pswp__button pswp__button--close" data-auto="pswp-close" title="Close (Esc)"></button> 3512 3513 <button class="pswp__button pswp__button--share" data-auto="pswp-share" title="Share"></button> 3514 3515 <button class="pswp__button pswp__button--fs" title="Toggle fullscreen"></button> 3516 3517 <button class="pswp__button pswp__button--zoom" title="Zoom in/out"></button> 3518 3519 3520 3521 <div class="pswp__preloader"> 3522 <div class="pswp__preloader__icn"> 3523 <div class="pswp__preloader__cut"> 3524 <div class="pswp__preloader__donut"></div> 3525 </div> 3526 </div> 3527 </div> 3528 </div> 3529 3530 <div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap"> 3531 <div class="pswp__share-tooltip"></div> 3532 </div> 3533 3534 <button class="pswp__button pswp__button--arrow--left" title="Previous (arrow left)"> 3535 </button> 3536 3537 <button class="pswp__button pswp__button--arrow--right" title="Next (arrow right)"> 3538 </button> 3539 3540 <div class="pswp__caption"> 3541 <div class="pswp__caption__center"></div> 3542 </div> 3543 3544 </div> 3545 3546 </div> 3547 3548</div> 3549<div id="fb-root" 3550 data-locale="en"></div> 3551<!-- Alias: a18e963a07b74c3894ec4c687e53ed93 --> 3552<div class="dmPopupMask" id="dmPopupMask"></div> 3553<div id="dmPopup" class="dmPopup" data-auto="popup"> 3554 <div class="dmPopupCloseWrapper"> <div class="dmPopupClose dm-common-icons-close oneIcon" data-auto="popup-close" onclick="dmHidePopup(event);"></div> </div> 3555 <div class="dmPopupTitle"> <span></span> Share by:</div> 3556 <div class="data"></div> 3557</div>
3557<script id="d_track_personalization"> 3558 window?.waitForDeferred?.('dmAjax', () => { 3559 // Collects client data and updates cookies used by smart sites 3560 window.expireDays = 365; 3561 window.visitLength = 30 * 60000; 3562 $.setCookie("dm_timezone_offset", (new Date()).getTimezoneOffset(), window.expireDays); 3563 setSmartSiteCookiesInternal("dm_this_page_view","dm_last_page_view","dm_total_visits","dm_last_visit"); 3564 }); 3565</script>
vendor: 1 bytes, line 3565
3565
3566<script type="text/javascript"> 3567 3568 Parameters.NavigationAreaParams.MoreButtonText = 'MORE'; 3569 3570 Parameters.NavigationAreaParams.LessButtonText = 'LESS'; 3571 Parameters.HomeLinkText = 'Home'; 3572 </script>
3572 3573<!-- Begin Body End Markup --> 3574<!-- Begin Body End Markup --><div id="placeholder_retargeting_pixel" style="display: none;" data-inject="placeholder_retargeting_pixel"> 3575 3576 {{placeholder_retargeting_pixel}} 3577</div> 3578<div id="placeholder_dpni" style="display: none;" data-inject="placeholder_dpni"> 3579 3580 {{placeholder_dpni}} 3581</div> 3582<div id="placeholder_analytics" style="display: none;" data-inject="placeholder_analytics"> 3583
3583<script> 3584//<![CDATA[ 3585 3586 //yellAnalyticsConfig need to set before s_code.js 3587 var yellAnalyticsConfig = { 3588 "global" : { 3589 "trackDownloadLinks": true, 3590 "downloadFileTypes": "exe,zip,wav,mp3,mov,mpg,avi,wmv,pdf,doc,docx,xls,xlsx,ppt,pptx", 3591 "currency": "USD", 3592 "trackExternalLinks": true, 3593 "internalDomains": "javascript:", 3594 "charset": "UTF-8" 3595 }, 3596 "omniture" : { 3597 "enabled": true, 3598 "server": "yellgroup.122.2o7.net", 3599 "serverSecure": "yellgroup.122.2o7.net", 3600 "namespace": "yellgroup", 3601 "account": "yelldudalive", 3602 "campaign": "CID|cam" 3603 }} 3604 3605 var hibuWebsiteConfig={ 3606 "prodSKU":"WBS-PRO-01", 3607 "assetID":"57669846", 3608 "customerID":"7016464108" 3609 } 3610 3611//]]> 3612 </script>
3612 3613
3613<script type="text/javascript" src="https://dh-static-files.s3.amazonaws.com/prod/AppMeasurement.js"> 3614 </script>
3614 3615
3615<script type="text/javascript" src="https://dh-static-files.s3.amazonaws.com/prod/hibu-analytics.min.js"> 3616 </script>
3616 3617
3617<script type="text/javascript" src="https://dh-static-files.s3.amazonaws.com/prod/omn_setting.js"> 3618 </script>
3618 3619</div> 3620<div id="placeholder_footer_reserve1" style="display: none;" data-inject="placeholder_footer_reserve1"> 3621 3622 {{placeholder_footer_reserve1}} 3623</div> 3624<div id="placeholder_footer_reserve2" style="display: none;" data-inject="placeholder_footer_reserve2"> 3625 <!-- Facebook Pixel Code -->
3625<script> 3626//<![CDATA[
vendor: 398 bytes, lines 3626-3634
3626 3627 3628!function(f,b,e,v,n,t,s){if(f.fbq)return;n=f.fbq=function(){n.callMethod? 3629n.callMethod.apply(n,arguments):n.queue.push(arguments)};if(!f._fbq)f._fbq=n; 3630n.push=n;n.loaded=!0;n.version='2.0';n.queue=[];t=b.createElement(e);t.async=!0; 3631t.src=v;s=b.getElementsByTagName(e)[0];s.parentNode.insertBefore(t,s)}(window, 3632document,'script','https://connect.facebook.net/en_US/fbevents.js'); 3633 3634fbq('init', '
3634223913138333460
vendor: 31 bytes, lines 3634-3635
3634'); 3635fbq('track', "PageView");
3636//]]> 3637 </script>
3637 3638 <noscript> 3639 <img height="1" width="1" style="display:none" src="https://www.facebook.com/tr?id=223913138333460&ev=PageView&noscript=1"/> 3640 </noscript> 3641 <!-- End Facebook Pixel Code --> 3642</div> 3643<div id="placeholder_footer_reserve3" style="display: none;" data-inject="placeholder_footer_reserve3"> 3644 3645 {{placeholder_footer_reserve3}} 3646</div> 3647<div id="placeholder_footer_reserve4" style="display: none;" data-inject="placeholder_footer_reserve4"> 3648 3649 {{placeholder_footer_reserve4}} 3650</div> 3651<div id="placeholder_footer_reserve5" style="display: none;" data-inject="placeholder_footer_reserve5"> 3652 3653 {{placeholder_footer_reserve5}} 3654</div> 3655<div id="placeholder_footer_reserve6" style="display: none;" data-inject="placeholder_footer_reserve6"> 3656 3657 {{placeholder_footer_reserve6}} 3658</div> 3659<div id="placeholder_footer_reserve7" style="display: none;" data-inject="placeholder_footer_reserve7"> 3660 3661 {{placeholder_footer_reserve7}} 3662</div> 3663<!-- End Body End Markup --><!-- End Body End Markup --> 3664<!-- Site Wide Html Markup --> 3665<div id="swh-c81483ea4a2b4a2a8bbfd647672fc650">
3665<script>/* v6.3:script */(function(){function safeAtob(str){try{return atob(str||'');}catch{return'';}}function hasNonEmptyText(node){if(!node)return false;const txt=(node.textContent||'').replace(/â/g,'').trim();return txt.length>0;}function decodedHasText(html){if(!html)return false;const t=html.replace(/<[^>]*>/g,'').replace(/s+/g,' ').trim();return t.length>0;}function rowHasLocDataBindingFn(row){let hasLoc=false;if(!row)return false;const rowDataBoundElements=row.querySelectorAll('[data-binding]');Array.prototype.slice.call(rowDataBoundElements).forEach((ele)=>{const encoded=ele.getAttribute('data-binding');if(!encoded)return;const decoded=safeAtob(encoded);try{const payload=JSON.parse(decoded);if(Array.isArray(payload)&&payload[0]?.value&&String(payload[0].value).includes(' loc ')){hasLoc=true;}}catch{}});return hasLoc;}function elementHasVisibleText(el){if(!el)return!1;const t=(el.textContent||"").replace(/â/g,"").trim();return t.length>0}function isHeadingWrapper(el){return!!(el&&el.matches&&el.matches(".dmNewParagraph")&&el.querySelector("h3"))}function bindingRendersText(el){if(!el)return!1;if(el.hasAttribute("data-binding"))return elementHasVisibleText(el);const inner=el.querySelector("[data-binding]");return inner?elementHasVisibleText(inner):!1}function hideEmptyLocDataHeadingsClassic(){const h3s=document.querySelectorAll(".dmNewParagraph h3");Array.prototype.slice.call(h3s).forEach((h3)=>{const h3parent=h3.closest(".dmNewParagraph");if(!h3parent)return;const nxt=h3parent.nextElementSibling;const nxtIsHeading=isHeadingWrapper(nxt);const nxtHasText=elementHasVisibleText(nxt)||bindingRendersText(nxt);if(nxtIsHeading||!nxtHasText){h3parent.style.setProperty("display","none","important")}})}function paragraphWrapperOf(node){return node?.closest?.('[data-auto="flex-element-widget-wrapper"][data-widget-type="paragraph"]')||null;}function findNextParagraphWrapper(wrapper){if(!wrapper)return null;let cur=wrapper.nextElementSibling;while(cur){if(cur.nodeType===1&&cur.matches?.('[data-auto="flex-element-widget-wrapper"][data-widget-type="paragraph"]')){return cur;}cur=cur.nextElementSibling;}return null;}function flexParagraphHasContent(dmNewParagraph){if(!dmNewParagraph)return false;const bindings=dmNewParagraph.querySelectorAll('.inline-data-binding, .inline-data-binding-markup');if(bindings.length>0){for(const b of bindings){if(hasNonEmptyText(b))return true;}return false;}return hasNonEmptyText(dmNewParagraph);}function maybeCollapseEmptyGroup(startWrapper){const group=startWrapper?.closest?.('[data-auto="flex-element-group"]');if(!group)return;const hasVisibleChild=Array.from(group.children).some((ch)=>{const cs=ch&&window.getComputedStyle(ch);return ch&&cs&&cs.display!=='none';});if(!hasVisibleChild)group.style.setProperty('display','none','important');}function hideEmptyLocDataHeadingsFlex(){const h3s=document.querySelectorAll('.dmNewParagraph h3');Array.prototype.slice.call(h3s).forEach((h3)=>{const h3Paragraph=h3.closest('.dmNewParagraph');if(!h3Paragraph)return;const h3Wrapper=paragraphWrapperOf(h3Paragraph);if(!h3Wrapper)return;const nextParaWrapper=findNextParagraphWrapper(h3Wrapper);const nextDmNewParagraph=nextParaWrapper?.querySelector?.('.dmNewParagraph')||null;const hasContent=flexParagraphHasContent(nextDmNewParagraph);if(!hasContent){if(nextParaWrapper)nextParaWrapper.style.setProperty('display','none','important');h3Wrapper.style.setProperty('display','none','important');maybeCollapseEmptyGroup(h3Wrapper);}});}const dmEnvironment=(window.dmAPI&&dmAPI.getCurrentEnvironment&&dmAPI.getCurrentEnvironment())||'live';const dmPageAlias=(window.Parameters&&window.Parameters.InitialPageAlias&&String(window.Parameters.InitialPageAlias).toUpperCase())||'';const isFlex=!!(window.Parameters&&window.Parameters.isFlexSite);if(dmEnvironment==='live'&&['ABOUT','ABOUT-US'].includes(dmPageAlias)){if(isFlex){hideEmptyLocDataHeadingsFlex();}else{hideEmptyLocDataHeadingsClassic();}}})();</script>
3665</div> 3666<div id="swh-aaa60eb03a6a4515a73c40fa25558e6d">
3666<script> if (window.location.search.match(/[?,&]preview=true/) && window.top !== window) { window.__AudioEyePreviewMode=true;}</script>
3666 3667
3667<script type="text/javascript">!function(){ 3668 var b=function(){ 3669 window.__AudioEyeSiteHash = "f2c6e8343864d6b2ef5ce340ceab2e94"; 3670 window.__AudioEyeInstallSource = "hibu"; 3671 var a=document.createElement("script"); 3672 a.src="https://wsmcdn.audioeye.com/aem.js"; 3673 a.type="text/javascript"; 3674 a.setAttribute("async",""); 3675 document.getElementsByTagName("body")[0].appendChild(a)}; 3676 "complete"!==document.readyState?window.addEventListener?window.addEventListener("load",b):window.attachEvent&&window.attachEvent("onload",b):b()}(); 3677 </script>
3677</div><!-- Site Wide Html Markup --> 3678<!-- Begin Product Custom HTML Markup --> 3679<div id="fb-root"></div>
3680<script>(function(d, s, id) { 3681var js, fjs = d.getElementsByTagName(s)[0]; 3682if (d.getElementById(id)) return; 3683js = d.createElement(s); js.id = id; 3684js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.8&appId=1822295708016537"; 3685fjs.parentNode.insertBefore(js, fjs); 3686}(document, 'script', 'facebook-jssdk'));</script>
vendor: 2 bytes, line 3686
3686
3687<script> 3688//make sure video's on iOS load first screen of the video. 3689dmAPI.runOnReady('russTest',function() { 3690 var _hibu_vid = document.getElementsByTagName('video'); 3691 for (var i = 0; i < _hibu_vid.length; i++) { 3692 _hibu_vid[i].load(); 3693 } 3694}) 3695</script>
vendor: 2 bytes, line 3695
3695
3696<script> 3697//simple addition by Russ to add consent banner link into footer - updated by Adrian to account for Termly installs. 3698(function () { 3699 var poweredByFirstAnchor = document.querySelector('.poweredBy a:first-child'); 3700 if (!poweredByFirstAnchor) return; 3701 3702 if (window.Termly) { 3703 var termlySpan = document.createElement('span'); 3704 termlySpan.className = 'termly-display-preferences'; 3705 termlySpan.textContent = 'Manage Consent Preferences'; 3706 poweredByFirstAnchor.insertAdjacentElement('afterend', termlySpan); 3707 } else { 3708 var spSpan = document.createElement('span'); 3709 spSpan.id = 'spConsentWrapper'; 3710 poweredByFirstAnchor.insertAdjacentElement('afterend', spSpan); 3711 window.localStorage.setItem('__springtime__repop__target', '#spConsentWrapper'); 3712 } 3713})(); 3714</script>
3714 3715<style> 3716 #spConsentWrapper:before, 3717 .poweredBy .termly-display-preferences:before { content: " | " } 3718 .poweredBy .termly-display-preferences { cursor: pointer; } 3719</style>
3720<script> 3721if (window.location.search.indexOf('preview') > 0) { 3722 window.localStorage.setItem('ae_user_consent_decision_has_been_made', true); 3723 var spEl = document.getElementById('spConsentWrapper'); 3724 if (spEl) spEl.remove(); 3725} 3726</script>
3726<!-- End Product Custom HTML Markup --> 3727</body> 3728</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.