1<!doctype html > 2<html xmlns="http://www.w3.org/1999/xhtml" lang="en" 3 class=""> 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<script type="text/javascript"> 44 window._currentDevice = 'desktop'; 45 window.Parameters = window.Parameters || { 46 HomeUrl: 'https://www.guttersbyruby.com/', 47 48 SystemID: 'US_HIBU_PRODUCTION', 49 SiteAlias: '1be1080947e546b8be2e3066b35358c7', 50 SiteType: atob('RFVEQU9ORQ=='), 51 PublicationDate: 'Nov 28, 2023', 52 ExternalUid: '682887', 53 IsSiteMultilingual: false, 54 InitialPostAlias: '', 55 InitialPostPageUuid: '', 56 InitialDynamicItem: '', 57 DynamicPageInfo: { 58 isDynamicPage: false, 59 base64JsonRowData: 'null', 60 }, 61 InitialPageAlias: 'gutter-cleaning', 62 InitialPageUuid: '7cb1ad25410849269fc4c8f217b9c590', 63 InitialPageId: '73451955', 64 InitialEncodedPageAlias: 'Z3V0dGVyLWNsZWFuaW5n', 65 InitialHeaderUuid: '635d9e6b22fc4cf7836c0780fb8e418c', 66 CurrentPageUrl: '', 67 IsCurrentHomePage: false, 68 ThemeVersion: '6425', 69 DefaultPageAlias: '', 70 RemoveDID: true, 71 WidgetStyleID: null, 72 IsHeaderFixed: false, 73 IsHeaderSkinny: false, 74 StorePagesUrls: 'e30=', 75 IsNewStore: 'false', 76 StorePath: '', 77 StoreId: 'null', 78 StoreVersion: 0, 79 StoreBaseUrl: '', 80 StoreCleanUrl: true, 81 StoreDisableScrolling: true, 82 IsStoreSuspended: false, 83 showCookieNotification: false, 84 cookiesNotificationMarkup: 'null', 85 translatedPageUrl: '', 86 sidebarPosition: 'NA', 87 currentLanguage: 'en', 88 currentLocale: 'en', 89 NavItems: '{}', 90 91 mapConsent: { 92 message: 'This content is served by a third party, {0}. If enabled, {0} may collect information about your activity.', 93 enable: 'Enable' 94 }, 95 NavigationAreaParams: { 96 ShowBackToHomeOnInnerPages: true, 97 NavbarSize: -1, 98 NavbarLiveHomePage: 'https://www.guttersbyruby.com/', 99 NavbarSelector: '#dmNav:has(a)', 100 SubNavbarSelector: '#subnav_main' 101 }, 102 planID: '750', 103 disableTracking: false, 104 pageType: 'FROM_SCRATCH', 105 isRuntimeServer: true, 106 isInEditor: false, 107 isInPreview: false, 108 hasNativeStore: false, 109 defaultLang: 'en', 110 hamburgerMigration: null, 111 isFlexSite: false 112 }; 113 114 window.Parameters.LayoutID = {}; 115 window.Parameters.LayoutID[window._currentDevice] = 9; 116 window.Parameters.LayoutVariationID = {}; 117 window.Parameters.LayoutVariationID[window._currentDevice] = 5; 118</script>
118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141<!-- Injecting site-wide to the head --> 142 143 144 145 146 147<!-- End Injecting site-wide to the head --> 148 149 150 151 152 153<meta name="d-service-worker" content="unregister"> 154 155 156 157<link rel="canonical" href="https://www.guttersbyruby.com/gutter-cleaning"> 158 159<meta id="view" name="viewport" content="initial-scale=1, minimum-scale=1, maximum-scale=5, viewport-fit=cover"> 160 161<meta name="apple-mobile-web-app-capable" content="yes"> 162 163 164 165<link rel="icon" type="image/x-icon" href="https://static-res-cdn.websites.hibu.com/runtime/favicon_d1_res.ico"/> 166 167 168<link rel="preconnect" href="https://le-cdn.hibuwebsites.com"/> 169<link rel="preconnect" href="https://cdn.hibuwebsites.com" crossorigin/> 170<link rel="preconnect" href="https://static-res-cdn.websites.hibu.com"/> 171<link rel="preconnect" href="https://cdn.hibuwebsites.com"/> 172 173 174 175
176<script id='d-js-dmapi'> 177 window.SystemID = 'US_HIBU_PRODUCTION'; 178 179 if (!window.dmAPI) { 180 window.dmAPI = { 181 registerExternalRuntimeComponent: function () { 182 }, 183 getCurrentDeviceType: function () { 184 return window._currentDevice; 185 }, 186 runOnReady: (ns, fn) => { 187 const safeFn = dmAPI.toSafeFn(fn); 188 ns = ns || 'global_' + Math.random().toString(36).slice(2, 11); 189 const eventName = 'afterAjax.' + ns; 190 191 if (document.readyState === 'complete') { 192 $.DM.events.off(eventName).on(eventName, safeFn); 193 setTimeout(function () { 194 safeFn({ 195 isAjax: false, 196 }); 197 }, 0); 198 } else { 199 window?.waitForDeferred?.('dmAjax', () => { 200 $.DM.events.off(eventName).on(eventName, safeFn); 201 safeFn({ 202 isAjax: false, 203 }); 204 }); 205 } 206 }, 207 toSafeFn: (fn) => { 208 if (fn?.safe) { 209 return fn; 210 } 211 const safeFn = function (...args) { 212 try { 213 return fn?.apply(null, args); 214 } catch (e) { 215 console.log('function failed ' + e.message); 216 } 217 }; 218 safeFn.safe = true; 219 return safeFn; 220 } 221 }; 222 } 223 224 if (!window.requestIdleCallback) { 225 window.requestIdleCallback = function (fn) { 226 setTimeout(fn, 0); 227 } 228 } 229</script>
229 230 231 232 233 234 235 236 237
238<script id="d-js-load-css"> 239/** 240 * There are a few <link> tags with CSS resource in them that are preloaded in the page 241 * in each of those there is a "onload" handler which invokes the loadCSS callback 242 * defined here. 243 * We are monitoring 3 main CSS files - the runtime, the global and the page. 244 * When each load we check to see if we can append them all in a batch. If threre 245 * is no page css (which may happen on inner pages) then we do not wait for it 246 */ 247(function () { 248 let cssLinks = {}; 249 function loadCssLink(link) { 250 link.onload = null; 251 link.rel = "stylesheet"; 252 link.type = "text/css"; 253 } 254 255 function checkCss() { 256 const pageCssLink = document.querySelector("[id*='CssLink']"); 257 const widgetCssLink = document.querySelector("[id*='widgetCSS']"); 258 259 if (cssLinks && cssLinks.runtime && cssLinks.global && (!pageCssLink || cssLinks.page) && (!widgetCssLink || cssLinks.widget)) { 260 const storedRuntimeCssLink = cssLinks.runtime; 261 const storedPageCssLink = cssLinks.page; 262 const storedGlobalCssLink = cssLinks.global; 263 const storedWidgetCssLink = cssLinks.widget; 264 265 storedGlobalCssLink.disabled = true; 266 loadCssLink(storedGlobalCssLink); 267 268 if (storedPageCssLink) { 269 storedPageCssLink.disabled = true; 270 loadCssLink(storedPageCssLink); 271 } 272 273 if(storedWidgetCssLink) { 274 storedWidgetCssLink.disabled = true; 275 loadCssLink(storedWidgetCssLink); 276 } 277 278 storedRuntimeCssLink.disabled = true; 279 loadCssLink(storedRuntimeCssLink); 280 281 requestAnimationFrame(() => { 282 setTimeout(() => { 283 storedRuntimeCssLink.disabled = false; 284 storedGlobalCssLink.disabled = false; 285 if (storedPageCssLink) { 286 storedPageCssLink.disabled = false; 287 } 288 if (storedWidgetCssLink) { 289 storedWidgetCssLink.disabled = false; 290 } 291 // (SUP-4179) Clear the accumulated cssLinks only when we're 292 // sure that the document has finished loading and the document 293 // has been parsed. 294 if(document.readyState === 'interactive') { 295 cssLinks = null; 296 } 297 }, 0); 298 }); 299 } 300 } 301 302 303 function loadCSS(link) { 304 try { 305 var urlParams = new URLSearchParams(window.location.search); 306 var noCSS = !!urlParams.get("nocss"); 307 var cssTimeout = urlParams.get("cssTimeout") || 0; 308 309 if (noCSS) { 310 return; 311 } 312 if (link.href && link.href.includes("d-css-runtime")) { 313 cssLinks.runtime = link; 314 checkCss(); 315 } else if (link.id === "siteGlobalCss") { 316 cssLinks.global = link; 317 checkCss(); 318 } 319 320 else if (link.id && link.id.includes("CssLink")) { 321 cssLinks.page = link; 322 checkCss(); 323 } else if (link.id && link.id.includes("widgetCSS")) { 324 cssLinks.widget = link; 325 checkCss(); 326 } 327 328 else { 329 requestIdleCallback(function () { 330 window.setTimeout(function () { 331 loadCssLink(link); 332 }, parseInt(cssTimeout, 10)); 333 }); 334 } 335 } catch (e) { 336 throw e 337 } 338 } 339 window.loadCSS = window.loadCSS || loadCSS; 340})(); 341</script>
341 342 343 344
345<script data-role="deferred-init" type="text/javascript"> 346 /* usage: window.getDeferred(<deferred name>).resolve() or window.getDeferred(<deferred name>).promise.then(...)*/ 347 function Def() { 348 this.promise = new Promise((function (a, b) { 349 this.resolve = a, this.reject = b 350 }).bind(this)) 351 } 352 353 const defs = {}; 354 window.getDeferred = function (a) { 355 return null == defs[a] && (defs[a] = new Def), defs[a] 356 } 357 window.waitForDeferred = function (b, a, c) { 358 let d = window?.getDeferred?.(b); 359 d 360 ? d.promise.then(a) 361 : c && ["complete", "interactive"].includes(document.readyState) 362 ? setTimeout(a, 1) 363 : c 364 ? document.addEventListener("DOMContentLoaded", a) 365 : console.error(`Deferred does not exist`); 366 }; 367</script>
367 368<style id="forceCssIncludes"> 369 /* This file is auto-generated from a `scss` file with the same name */ 370 371.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}} 372 373 374</style> 375<style id="cssVariables" type="text/css"> 376 377</style> 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421<link type="text/css" rel="stylesheet" href="https://cdn.hibuwebsites.com/fonts/css2?family=Lobster+Two:ital,wght@0,400;0,700;1,400;1,700&family=Raleway:ital,wght@0,100..900;1,100..900&family=Creepster:ital,wght@0,400&family=Gudea:ital,wght@0,400;0,700;1,400&family=Creepster:ital,wght@0,400&family=Signika:ital,wght@0,300..700;1,300..700&family=Lobster:ital,wght@0,400&family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Arvo:ital,wght@0,400;0,700;1,400;1,700&family=Lora:ital,wght@0,400..700;1,400..700&family=Jura:ital,wght@0,300..700;1,300..700&family=Oswald:ital,wght@0,200..700;1,200..700&family=Source+Sans+Pro:ital,wght@0,200;0,300;0,400;0,600;0,700;0,900;1,200;1,300;1,400;1,600;1,700;1,900&family=Eater:ital,wght@0,400&family=Abril+Fatface:ital,wght@0,400&subset=latin-ext&display=swap" /> 422 423 424 425 426 427 428<link rel="stylesheet" type="text/css" href="https://static-res-cdn.websites.hibu.com/mnlt/production/6839/_dm/s/rt/dist/css/d-css-runtime-desktop-one-package-new.min.css" /> 429 430 431 432<link type="text/css" rel="stylesheet" href="https://cdn.hibuwebsites.com/WIDGET_CSS/b70108864754814660635631faae8c32.css" id="widgetCSS" /> 433 434 435<style>img[width][height] { 436 height: auto; 437}</style> 438 439 440<style> 441 body[data-page-alias="gutter-cleaning"] #dm [data-show-on-page-only="gutter-cleaning"] { 442 display: block !important; 443 } 444</style> 445 446 447<style id="pageAdditionalWidgetsCss" type="text/css"> 448</style> 449 450 451 452 453 454<link type="text/css" rel="stylesheet" href="https://cdn.hibuwebsites.com/1be1080947e546b8be2e3066b35358c7/files/1be1080947e546b8be2e3066b35358c7_1.min.css?v=22" id="siteGlobalCss" /> 455 456 457 458<link 459 type="text/css" rel="stylesheet" 460 href="/_dm/s/rt/css/hibu/hibu-runtime.css?version=2026-10-08T12_48_49" 461/> 462 463 464<style id="customWidgetStyle" type="text/css"> 465 466</style> 467<style id="innerPagesStyle" type="text/css"> 468 469</style> 470 471 472<style 473 id="additionalGlobalCss" type="text/css" 474> 475</style> 476 477<style id="pagestyle" type="text/css"> 478 *#dm *.dmBody h3.u_1543727747 479{ 480 border-style:solid !important; 481 border-width:1px !important; 482 border-color:rgba(73,73,73,1) !important; 483} 484*#dm *.dmBody div.u_1675764719 485{ 486 background-color:rgb(255,255,255) !important; 487} 488*#dm *.dmBody div.u_1818004597 489{ 490 background-color:rgba(153,22,44,1) !important; 491} 492*#dm *.dmBody div.u_1783127960 493{ 494} 495 496</style> 497 498<style id="pagestyleDevice" type="text/css"> 499 *#dm *.dmBody div.u_1847058443 500{ 501 padding-top:30px !important; 502 padding-bottom:55px !important; 503} 504*#dm *.dmBody h3.u_1543727747 505{ 506 display:block !important; 507 float:none !important; 508 top:0px !important; 509 left:0px !important; 510 width:100% !important; 511 position:relative !important; 512 height:auto !important; 513 padding-top:30px !important; 514 padding-left:20px !important; 515 padding-bottom:30px !important; 516 margin-right:0px !important; 517 margin-left:0px !important; 518 max-width:calc(100% - 0px) !important; 519 margin-top:42px !important; 520 margin-bottom:20px !important; 521 padding-right:20px !important; 522 min-width:25px !important; 523 text-align:center !important; 524} 525*#dm *.dmBody div.u_1033333782 526{ 527 float:none !important; 528 top:0px !important; 529 left:0px !important; 530 width:100% !important; 531 position:relative !important; 532 height:auto !important; 533 padding-top:2px !important; 534 padding-left:0px !important; 535 padding-bottom:2px !important; 536 margin-right:0px !important; 537 margin-left:0px !important; 538 max-width:calc(100% - 0px) !important; 539 margin-top:-8px !important; 540 margin-bottom:8px !important; 541 padding-right:0px !important; 542 min-width:25px !important; 543 text-align:left !important; 544} 545*#dm *.dmBody h3.u_1659025338 546{ 547 float:none !important; 548 top:0px !important; 549 left:0px !important; 550 width:100% !important; 551 position:relative !important; 552 height:auto !important; 553 padding-top:2px !important; 554 padding-left:0px !important; 555 padding-bottom:0px !important; 556 margin-right:0px !important; 557 margin-left:0px !important; 558 max-width:calc(100% - 0px) !important; 559 margin-top:40px !important; 560 margin-bottom:20px !important; 561 padding-right:0px !important; 562 min-width:25px !important; 563 text-align:left !important; 564} 565*#dm *.dmBody div.u_1463153874 566{ 567 float:none !important; 568 top:0px !important; 569 left:0px !important; 570 width:100% !important; 571 position:relative !important; 572 height:auto !important; 573 padding-top:2px !important; 574 padding-left:0px !important; 575 padding-bottom:2px !important; 576 margin-right:0px !important; 577 margin-left:0px !important; 578 max-width:calc(100% - 0px) !important; 579 margin-top:-15px !important; 580 margin-bottom:8px !important; 581 padding-right:0px !important; 582 min-width:25px !important; 583 text-align:left !important; 584} 585*#dm *.dmBody div.u_1675764719 586{ 587 float:none !important; 588 top:0px !important; 589 left:0 !important; 590 width:100% !important; 591 position:relative !important; 592 height:auto !important; 593 padding-top:0px !important; 594 padding-left:28.7031px !important; 595 padding-bottom:0px !important; 596 max-width:none !important; 597 padding-right:28.7031px !important; 598 min-width:0 !important; 599 text-align:center !important; 600} 601*#dm *.dmBody div.u_1984550153 602{ 603 padding-top:2px !important; 604 padding-left:0px !important; 605 display:block !important; 606 padding-bottom:10px !important; 607 float:none !important; 608 margin-right:0 !important; 609 margin-left:0 !important; 610 top:0px !important; 611 max-width:100% !important; 612 left:0px !important; 613 width:906px !important; 614 margin-top:0 !important; 615 position:relative !important; 616 margin-bottom:0 !important; 617 padding-right:0px !important; 618 min-width:0 !important; 619 text-align:center !important; 620 height:auto !important; 621} 622*#dm *.dmBody div.u_1776063293 623{ 624 padding-top:15px !important; 625 padding-left:0px !important; 626 display:block !important; 627 padding-bottom:15px !important; 628 float:none !important; 629 top:0px !important; 630 max-width:100% !important; 631 left:0 !important; 632 width:899.594px !important; 633 position:relative !important; 634 padding-right:0px !important; 635 min-width:0 !important; 636 text-align:center !important; 637 height:auto !important; 638 margin-right:auto !important; 639 margin-left:auto !important; 640 margin-top:0px !important; 641 margin-bottom:0px !important; 642} 643*#dm *.dmBody div.u_1818004597 644{ 645 padding-top:30px !important; 646 padding-right:20px !important; 647 padding-bottom:30px !important; 648 padding-left:20px !important; 649 display:block !important; 650 float:none !important; 651 top:0px !important; 652 left:0 !important; 653 width:100% !important; 654 position:relative !important; 655 height:auto !important; 656 margin-right:auto !important; 657 margin-left:auto !important; 658 max-width:100% !important; 659 margin-top:8px !important; 660 margin-bottom:8px !important; 661 min-width:0 !important; 662 text-align:center !important; 663} 664*#dm *.dmBody h1.u_1840173643 665{ 666 float:none !important; 667 top:0px !important; 668 left:0px !important; 669 width:100% !important; 670 position:relative !important; 671 height:auto !important; 672 padding-top:2px !important; 673 padding-left:0px !important; 674 padding-bottom:2px !important; 675 margin-right:0px !important; 676 margin-left:0px !important; 677 max-width:calc(100% - 0px) !important;
678 margin-top:-7px !important; 679 margin-bottom:8px !important; 680 padding-right:0px !important; 681 min-width:25px !important; 682 text-align:left !important; 683} 684*#dm *.dmBody a.u_1419581190 685{ 686 padding-top:0px !important; 687 padding-left:0px !important; 688 display:block !important; 689 padding-bottom:0px !important; 690 float:none !important; 691 top:0px !important; 692 max-width:100% !important; 693 left:0 !important; 694 width:280px !important; 695 position:relative !important; 696 padding-right:0px !important; 697 min-width:0 !important; 698 text-align:center !important; 699 height:46px !important; 700} 701*#dm *.dmBody div.u_1783127960 702{ 703 margin-bottom:10px !important; 704 margin-top:42px !important; 705 float:none !important; 706 top:0px !important; 707 left:0px !important; 708 width:100% !important; 709 position:relative !important; 710 height:172px !important; 711 padding-top:0px !important; 712 padding-left:0px !important; 713 padding-bottom:0px !important; 714 margin-right:0px !important; 715 margin-left:0px !important; 716 max-width:calc(100% - 0px) !important; 717 padding-right:0px !important; 718 min-width:25px !important; 719 text-align:center !important; 720} 721 722</style> 723 724 725 726 727 728 729 730 731 732<style id="globalFontSizeStyle" type="text/css"> 733 .font-size-20, .size-20, .size-20 > font { font-size: 20px !important; }.font-size-24, .size-24, .size-24 > font { font-size: 24px !important; }.font-size-22, .size-22, .size-22 > font { font-size: 22px !important; } 734</style> 735<style id="pageFontSizeStyle" type="text/css"> 736</style> 737 738 739 740 741<style id="hideAnimFix"> 742 .dmDesktopBody:not(.editGrid) [data-anim-desktop]:not([data-anim-desktop='none']), .dmDesktopBody:not(.editGrid) [data-anim-extended] { 743 visibility: hidden; 744 } 745 746 .dmDesktopBody:not(.editGrid) .dmNewParagraph[data-anim-desktop]:not([data-anim-desktop='none']), .dmDesktopBody:not(.editGrid) .dmNewParagraph[data-anim-extended] { 747 visibility: hidden !important; 748 } 749 750 #dmRoot:not(.editGrid) .flex-element [data-anim-extended] { 751 visibility: hidden; 752 } 753 754</style> 755 756 757 758 759<style id="fontFallbacks"> 760 @font-face { 761 font-family: "Lobster Two Fallback"; 762 src: local('Arial'); 763 ascent-override: 123.9905%; 764 descent-override: 30.9976%; 765 size-adjust: 80.6513%; 766 line-gap-override: 0%; 767 }@font-face { 768 font-family: "Raleway Fallback"; 769 src: local('Arial'); 770 ascent-override: 89.616%; 771 descent-override: 22.3087%; 772 size-adjust: 104.892%; 773 line-gap-override: 0%; 774 }@font-face { 775 font-family: "Creepster Fallback"; 776 src: local('Arial'); 777 ascent-override: 104.0992%; 778 descent-override: 23.8338%; 779 size-adjust: 91.3717%; 780 line-gap-override: 0%; 781 }@font-face { 782 font-family: "Gudea Fallback"; 783 src: local('Arial'); 784 ascent-override: 100.9522%; 785 descent-override: 27.4191%; 786 size-adjust: 96.2832%; 787 line-gap-override: 0%; 788 }@font-face { 789 font-family: "Creepster Fallback"; 790 src: local('Arial'); 791 ascent-override: 104.0992%; 792 descent-override: 23.8338%; 793 size-adjust: 91.3717%; 794 line-gap-override: 0%; 795 }@font-face { 796 font-family: "Signika Fallback"; 797 src: local('Arial'); 798 ascent-override: 97.9745%; 799 descent-override: 30.4346%; 800 size-adjust: 95.9434%; 801 line-gap-override: 0%; 802 }@font-face { 803 font-family: "Lobster Fallback"; 804 src: local('Arial'); 805 ascent-override: 114.651%; 806 descent-override: 28.6627%; 807 size-adjust: 87.2212%; 808 line-gap-override: 0%; 809 }@font-face { 810 font-family: "Lato Fallback"; 811 src: local('Arial'); 812 ascent-override: 101.3181%; 813 descent-override: 21.865%; 814 size-adjust: 97.4159%; 815 line-gap-override: 0%; 816 }@font-face { 817 font-family: "Arvo Fallback"; 818 src: local('Arial'); 819 ascent-override: 87.6577%; 820 descent-override: 22.538%; 821 line-gap-override: 2.4498%; 822 size-adjust: 109.6239%; 823}@font-face { 824 font-family: "Lora Fallback"; 825 src: local('Arial'); 826 ascent-override: 95.2907%; 827 descent-override: 25.9539%; 828 size-adjust: 105.5717%; 829 line-gap-override: 0%; 830 }@font-face { 831 font-family: "Jura Fallback"; 832 src: local('Arial'); 833 ascent-override: 89.3929%; 834 descent-override: 20.1945%; 835 size-adjust: 107.9504%; 836 line-gap-override: 0%; 837 }@font-face { 838 font-family: "Oswald Fallback"; 839 src: local('Arial'); 840 ascent-override: 145.0682%; 841 descent-override: 35.1423%; 842 size-adjust: 82.2372%; 843 line-gap-override: 0%; 844 }@font-face { 845 font-family: "Eater Fallback"; 846 src: local('Arial'); 847 ascent-override: 100.9625%; 848 descent-override: 32.0168%; 849 size-adjust: 140.1549%; 850 line-gap-override: 0%; 851 }@font-face { 852 font-family: "Abril Fatface Fallback"; 853 src: local('Arial'); 854 ascent-override: 102.6391%; 855 descent-override: 28.2306%; 856 size-adjust: 103.0796%; 857 line-gap-override: 0%; 858 } 859</style> 860 861 862 863 864 865 866 867 868 869 870 871<meta property="og:type" content="website"> 872<meta property="og:url" content="https://www.guttersbyruby.com/gutter-cleaning"> 873 874 <title> 875 Gutter Cleaning | Seam Repairs | Marina Del Rey, CA 876 </title> 877 <meta name="description" content="310-473-7800 - Gutters by Ruby - FREE estimates. Emergency services. Gutter cleaning. Downspout cleaning."/> 878 879 <meta name="twitter:card" content="summary"/> 880 <meta name="twitter:title" content="Gutter Cleaning | Seam Repairs | Marina Del Rey, CA"/> 881 <meta name="twitter:description" content="310-473-7800 - Gutters by Ruby - FREE estimates. Emergency services. Gutter cleaning. Downspout cleaning."/> 882 <meta property="og:description" content="310-473-7800 - Gutters by Ruby - FREE estimates. Emergency services. Gutter cleaning. Downspout cleaning."/> 883 <meta property="og:title" content="Gutter Cleaning | Seam Repairs | Marina Del Rey, CA"/> 884 885 886 887 888<!-- SYS- VVNfSElCVV9QUk9EVUNUSU9O --> 889</head> 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911<body id="dmRoot" data-page-alias="gutter-cleaning" class="dmRoot dmDesktopBody fix-mobile-scrolling addCanvasBorder dmResellerSite dmLargeBody " 912 style="padding:0;margin:0;" 913 914 > 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931<div id="dm" class='dmwr'> 932 933 <div class="dm_wrapper standard-var5 widgetStyle-3 standard"> 934 <div dmwrapped="true" id="1427157872"> <div dmtemplateid="skinnyHeaderLayout" class="skinnyHeaderLayout dm-bfs dm-layout-sec hasAnimations hasStickyHeader dmPageBody d-page-1572496665 input
934s-css-clean dmFreeHeader" id="dm-outer-wrapper" data-page-class="1572496665" data-buttonstyle="THICK_BORDER"> <div id="dmStyle_outerContainer" class="dmOuter"> <div id="dmStyle_innerContainer" class="dmInner" data-auto="page-inner"> <div class="dmLayoutWrapper standard-var dmStandardDesktop"> <div class="dmHeaderContainer fHeader d-header-wrapper"> <div id="hcontainer" class="u_hcontainer dmHeader p_hfcontainer" freeheader="true" data-auto="header"> <div dm:templateorder="75" class="dmHeaderResp dmHeaderStack" id="1711207515"> <div class="u_1502307109 dmRespRow fullBleedChanged hide-for-large" style="text-align: center;" id="1502307109"> <div class="dmRespColsWrapper" id="1021860926"> <div class="dmRespCol small-12 medium-6 large-6" id="1284795291"> <span id="1243619164"></span> 935 <div class="u_1599822418 dmNewParagraph" id="1599822418">Supporting copy for the <b><span style="font-weight: 700;">Request Service</span></b> 936call out button.</div></div> 937 <div class="dmRespCol small-12 medium-6 large-6" id="1222979426"> <span id="1473828031"></span> 938 <a data-display-type="block" class="u_1351455433 align-center dmButtonLink dmWidget dmWwr default dmOnlyButton dmDefaultGradient" file="false" href="/request-service" id="1351455433" link_type="popup" popup_target="request-service" data-element-type="dButtonLinkId"> <span class="iconBg" id="1400615226"> <span class="icon hasFontIcon icon-star" id="1109171690"></span> 939</span> 940 <span class="text" id="1339791287">New Button</span> 941</a> 942</div> 943</div> 944</div> 945 <div class="u_1960198561 dmRespRow" style="text-align: center;" id="1960198561"> <div class="dmRespColsWrapper" id="1785241600"> <div class="u_1400127841 dmRespCol small-12 medium-4 large-4" id="1400127841"> <span id="1206702874"></span> 946 <div class="u_1143475144 imageWidget align-center" data-widget-type="image" id="1143475144" data-element-type="image"> <a href="/" id="1606202148"><img src="https://le-cdn.hibuwebsites.com/1be1080947e546b8be2e3066b35358c7/dms3rep/multi/opt/01-1920w.png" id="1111906750" class="" data-dm-image-path="https://cdn.websites.hibu.com/1be1080947e546b8be2e3066b35358c7/dms3rep/multi/01.png" alt="Gutters by Ruby-Logo" onerror="handleImageLoadError(this)"/></a> 947</div> 948</div> 949 <div class="dmRespCol small-12 medium-4 large-4" id="1389970186"> <div class="u_1234481769 dmNewParagraph" id="1234481769"><b><span style="font-weight: 700;">Licensed Bonded and Insured </span></b><div><br/></div></div></div> 950 <div class="u_1650217102 dmRespCol small-12 medium-4 large-4" id="1650217102"> <span id="1282182143"></span> 951 <div class="u_1220580834 dmNewParagraph" id="1220580834" style="display: block;"><span> Marina Del Rey, CA </span><div><span style="font-weight: 700;" class="font-size-20 lh-1"><font color="#99162c">310-473-7800</font></span></div></div> <div class="u_1759735314 default hide-for-large dmLinksMenu desktopNavWrapper" data-auto="links-menu" id="1759735314" dmle_extension="onelinksmenu" data-element-type="onelinksmenu" wr="true" icon="true" surround="true" adwords=""> <ul class="dmNavWrapper dmn menuContainer " data-auto="old-nav-widget"> <li class=" desktopTopNav navListLi navButtonLi "> <a href="/" class="dmUDNavigationItem_00 " target="" data-target-page-alias=""> <span class="navItemText ">HOME</span> 952</a> 953</li> 954 <li class=" desktopTopNav navListLi navButtonLi navItemSelectedServer "> <a href="/gutter-cleaning" class="dmUDNavigationItem_010101990331 " target="" data-target-page-alias="" aria-current="page"> <span class="navItemText ">GUTTER CLEANING</span> 955</a> 956</li> 957 <li class=" desktopTopNav navListLi navButtonLi "> <a href="/gutter-repair" class="dmUDNavigationItem_01010127381 " target="" data-target-page-alias=""> <span class="navItemText ">GUTTER REPAIR</span> 958</a> 959</li> 960 <li class=" desktopTopNav navListLi navButtonLi "> <a href="/contact" class="dmUDNavigationItem_010101961426 " target="" data-target-page-alias=""> <span class="navItemText ">CONTACT</span> 961</a> 962</li> 963</ul> 964</div> 965</div> 966</div> 967</div> 968 <div class="u_1892735938 dmRespRow" style="text-align: center;" id="1892735938"> <div class="dmRespColsWrapper" id="1269248552"> <div class="dmRespCol small-12 medium-12 large-12" id="1613717079"> <nav class="u_1922206079 effect-background main-navigation unifiednav dmLinksMenu" data-auto="links-menu" role="navigation" layout-main="horizontal_nav_layout_7" layout-sub="submenu_horizontal_2" data-show-vertical-sub-items="HOVER" id="1922206079" dmle_extension="onelinksmenu" data-element-type="onelinksmenu" wr="true" icon="true" surround="true" adwords="" navigation-id="unifiedNav"> <ul role="menubar" class="unifiednav__container unav-top " data-auto="navigation-pages"> <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_00 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 969 HOME 970 " data-auto="page-text-style">HOME<span class="icon icon-angle-down"></span> 971</span> 972</a> 973</li> 974 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/gutter-cleaning" class="unifiednav__item unav-item unav-top-item dmNavItemSelected dmUDNavigationItem_010101990331 " target="" data-target-page-alias="" aria-current="page" data-auto="selected-page"> <span class="nav-item-text " data-link-text=" 975 GUTTER CLEANING 976 " data-auto="page-text-style">
976GUTTER CLEANING<span class="icon icon-angle-down"></span> 977</span> 978</a> 979</li> 980 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/gutter-repair" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_01010127381 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 981 GUTTER REPAIR 982 " data-auto="page-text-style">GUTTER REPAIR<span class="icon icon-angle-down"></span> 983</span> 984</a> 985</li> 986 <li role="menuitem" class=" unifiednav__item-wrap " data-auto="more-pages" data-depth="0"> <a href="/contact" class="unifiednav__item unav-item unav-top-item dmUDNavigationItem_010101961426 " target="" data-target-page-alias=""> <span class="nav-item-text " data-link-text=" 987 CONTACT 988 " data-auto="page-text-style">CONTACT<span class="icon icon-angle-down"></span> 989</span> 990</a> 991</li> 992</ul> 993</nav> 994</div> 995</div> 996</div> 997</div> 998</div> 999</div> 1000 <div class="stickyHeaderSpacer" id="stickyHeaderSpacer" data-auto="sticky-header-spacer" data-new="true"></div> 1001 <div id="desktopBodyBox"> <div id="iscrollBody"> <div id="site_content"> <div class="dmRespRow dmRespRowStable dmRespRowNoPadding dmPageTitleRow dmInnerBarRow"> <div class="dmRespColsWrapper"> <div class="large-12 dmRespCol"> <div id="innerBar" class="innerBar lineInnerBar dmDisplay_None"> <div class="titleLine display_None"><hr/></div> 1002<!-- 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 class="innerPageTitle">GUTTER CLEANING</div> 1003</div> 1004 <div class="titleLine display_None"><hr/></div> 1005</div> 1006</div> 1007</div> 1008</div> 1009 <div dmwrapped="true" id="dmFirstContainer" class="dmBody u_dmStyle_template_gutter-cleaning"> <div id="allWrapper" class="allWrapper" data-auto="all-wrapper"><!-- navigation placeholders --> <div id="dm_content" class="dmContent" role="main"> <div dm:templateorder="1" class="dmDefaultRespTmpl" id="1572496665"> <div class="innerPageTmplBox dmDefaultPage dmRespRowsWrapper" id="1896113735"> <div class="u_1675764719 dmRespRow hide-for-large" style="text-align: center;" id="1675764719"> <div class="dmRespColsWrapper" id="1339068516"> <div class="dmRespCol small-12 medium-12 large-12" id="1850245028"> <div class="u_1776063293 dmNewParagraph hide-for-small" id="1776063293" style="display: block;"><span> Serving Marina Del Rey, CA </span><span style="color: rgb(153, 22, 44); font-size: 20px; font-weight: 700;">310-473-7800</span></div> <div class="u_1984550153 dmNewParagraph hide-for-medium" id="1984550153"> Serving Marina Del Rey, CA</div> <a class="u_1419581190 default dmDefaultGradient hide-for-medium dmCall voipReplacement dmWidget dmNoMark dmWwr" href="tel:310-473-7800" contenteditable="false" onclick=";return dm_gaq_push_event('ClickToCall', 'Call',null,'1be1080947e546b8be2e3066b35358c7', this);" id="1419581190" dmle_extension="clicktocall" data-element-type="clicktocall" wr="true" data-display-type="block" icon="true" surround="true" description="Call Us Today" adwords="" icon-name="icon-phone" phone="310-473-7800" text="" image=""> <span class="iconBg" data-auto="button-icon-bg" aria-hidden="true"> <span class="icon hasFontIcon icon-phone" data-auto="button-icon"></span> 1010</span> 1011 <span class="text" data-auto="button-text">Call Us Today</span> 1012</a> 1013</div> 1014</div> 1015</div> 1016 <div class="u_1847058443 dmRespRow" style="text-align: center;" id="1847058443"> <div class="dmRespColsWrapper" id="1275430673"> <div class="u_1860367241 dmRespCol small-12 large-8 medium-8" id="1860367241"> <h1 class="u_1840173643 dmNewParagraph" id="1840173643" style="display: block;" data-element-type="paragraph"><span style="font-weight: 400;"><font style="color: rgb(153, 22, 44);">Convenient Gutter Cleaning Services</font></span></h1> <div class="u_1033333782 dmNewParagraph GINGER_SOFTWARE_control" id="1033333782" style="" spellcheck="false" ginger_software_editor="true"><div>Clogged gutters filled with leaves, silt, and other debris can lead to damage to your building, lawn, and more. Get convenient gutter cleaning services from the experts at Gutters by Ruby. All gutters aren't the same. Overhanging trees may mean your gutters need to be cleaned more often.</div><div> </div><div>Let us work with you to devise a regimen to keep your gutters flowing freely all year long. <a href="/contact" runtime_url="/contact">Call us today</a>!</div></div> <h3 class="u_1659025338 dmNewParagraph" id="1659025338" data-element-type="paragraph">Keep Your Gutters Flowing Freely</h3> <div class="u_1463153874 dmNewParagraph GINGER_SOFTWARE_control" id="1463153874" spellcheck="false" ginger_softw
1016are_editor="true">Prevent extensive water damage to your building with regular gutter maintenance and cleaning from Gutters by Ruby. Settle for nothing less than the best and remember that all our work is guaranteed.<div><ul class="innerList defaultList"><li>Gutter and downspout cleaning<br/></li><li>Leaf removal<br/></li><li>Hole patching<br/></li><li>Seam repairs<br/></li><li><a href="/gutter-repair" runtime_url="/gutter-repair">General gutter repairs</a><br/></li><li>Water checking system to ensure proper flow<br/></li></ul></div></div></div> 1017 <div class="u_1629499466 dmRespCol small-12 large-4 medium-4" id="1629499466"> <span id="1071415767"></span> 1018 <div class="u_1818004597 dmNewParagraph" id="1818004597" style="transition-duration: 1s; transition-timing-function: ease-in-out; transition-delay: initial; transition-property: opacity;"><div><span style="" class="font-size-24 lh-1"><font style="color: rgb(255, 255, 255);">Call <b><span style="font-weight: 700;">310-473-7800</span></b> 1019for FREE estimates.</font></span></div></div> <h3 class="u_1543727747 dmNewParagraph" id="1543727747" data-element-type="paragraph"><span style="" class="lh-1 font-size-22"><font color="#494949">We provide emergency services!</font></span></h3> <div class="u_1783127960 dmCustomHtml" id="1783127960" data-element-type="html"> <video id="1492742315" controls="" preload="auto" width="640" height="100%" style="margin:0 auto;padding:0;"> <source src="//videos.hibustudio.com/2017/gutters-by-ruby-ckcxn8zzp-837283.mp4" type="video/mp4"></source> 1020</video> 1021</div> 1022 <div class="dmNewParagraph" data-element-type="paragraph" data-version="5" id="1462558238" style="transition: opacity 1s ease-in-out 0s;"><p class="text-align-center"><a href="/build-your-own-insite2" runtime_url="/build-your-own-insite2" popup_target="build-your-own-insite2" type="popup" link_type="popup" style="display: initial;">Click here for Closed Captioning</a></p></div> 1023</div> 1024</div> 1025</div> 1026</div> 1027</div> 1028</div> 1029</div> 1030</div> 1031 <div class="dmFooterContainer"> <div id="fcontainer" class="f_hcontainer dmFooter p_hfcontainer"> <div dm:templateorder="14" class="dmFooterResp dmFullFooterResp" id="1661156628"> <div class="dmRespRow dmDividerRow" id="1680538314"> <div class="dmRespColsWrapper" id="1932746489"> <div class="large-12 medium-12 small-12 dmRespCol" id="1242730306"> <div class="dmDividerWrapper clearfix" id="1704446958" data-element-type="dDividerId"><hr class="dmDivider defaultDivider" id="1736681207"/></div> 1032</div> 1033</div> 1034</div> 1035 <div class="u_1073181907 dmRespRow" style="text-align: center;" id="1073181907"> <div class="dmRespColsWrapper" id="1037598064"> <div class="u_1500055941 dmRespCol small-12 medium-6 large-6" id="1500055941"> <span id="1447208157"></span> 1036 <div class="u_1520505133 dmSocialHub gapSpacing" id="1520505133" dmle_extension="social_hub" data-element-type="social_hub" wr="false" icon="true" surround="false"> <div class="socialHubWrapper"> <div class="socialHubInnerDiv vertical" data-auto="social-hub-inner"> <a href="https://www.facebook.com/Gutters-By-Ruby-1707322119542853/" target="_blank" dm_dont_rewrite_url="true" aria-label="facebook" onclick="dm_gaq_push_event && dm_gaq_push_event('socialLink', 'click', 'Facebook')"> <span class="dmSocialFacebook dm-social-icons-facebook oneIcon socialHubIcon style9" aria-hidden="true" data-hover-effect=""></span> 1037</a> 1038 <a href="https://www.yelp.com/biz/gutters-by-ruby-marina-del-rey" 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 style9" aria-hidden="true" data-hover-effect=""></span> 1039</a> 1040</div> 1041</div> 1042</div> 1043</div> 1044 <div class="dmRespCol small-12 medium-6 large-6" id="1076656684"> <span id="1643983551"></span> 1045 <h3 class="u_1081162752 dmNewParagraph hide-for-small" id="1081162752" data-element-type="paragraph"><font style="color: rgb(39, 39, 39);" id="1681748507">310-473-7800</font></h3></div> 1046</div> 1047</div> 1048 <div class="dmRespRow dmReadySection u_1225203257" dm:templateid="Footer" id="1225203257"> <div class="dmRespColsWrapper footerSection" id="1961204949"> <div class="dmRespCol small-12 medium-4 large-4" id="1229722715"> <h3 id="1327245714" class="u_1327245714" style="">Learn More About Us</h3> <div class="u_1028997776 sectionContactBox" id="1028997776" style="display: block;"> <div style="">Gutters by Ruby provides comprehensive gutter solutions. We have over 30 years of experience in this business. Contact us for a FREE estimate.</div><div style=""><span style=""><br/></span></div><div style=""><span style="">License: 848891</span></div><div style=""><br/></div></div></div> 1049 <div class="u_1714293783 dmRespCol small-12 medium-4 large-4" id="1714293783"> <h3 id="1011940612" class="u_1011940612" style="">Our Service Area</h3> <div class="u_1181218683 imageWidget align-center" data-widget-type="image" id="1181218683" data-element-type="image"><img src="https://le-cdn.hibuwebsites.com/1be1080947e546b8be2e3066b35358c7/dms3rep/multi/opt/09-1920w.jpg" id="1829059165" class="" data-dm-image-path="https://cdn.websites.hibu.com/1be1080947e546b8be2e3066b35358c7/dms3rep/multi/09.jpg" alt="Gutters by Ruby - 310-473-7800" onerror="handleImageLoadError(this)"/></div> 1050 <a class="u_1468666538 default dmDefaultGradient hide-for-medium hide-for-large dmCall voipReplacement dmWidget dmNoMark dmWwr" href="tel:310-473-7800" contenteditable="false" onclick=";
1050return dm_gaq_push_event('ClickToCall', 'Call',null,'1be1080947e546b8be2e3066b35358c7', this);" id="1468666538" dmle_extension="clicktocall" data-element-type="clicktocall" wr="true" data-display-type="block" icon="true" surround="true" description="Call Us Today" adwords="" icon-name="icon-phone" phone="310-473-7800" text="" image=""> <span class="iconBg" data-auto="button-icon-bg" aria-hidden="true"> <span class="icon hasFontIcon icon-phone" data-auto="button-icon"></span> 1051</span> 1052 <span class="text" data-auto="button-text">Call Us Today</span> 1053</a> 1054</div> 1055 <div class="dmRespCol small-12 medium-4 large-4" id="1346805824"> <h3 id="1008403237" class="u_1008403237 hide-for-small">Contact Us</h3> 1056 <div class="u_1362952846 sectionContactBox hide-for-small" id="1362952846"> <div style=""><b></b></div><span style="font-weight: 700;"><div style=""><b>Gutters by Ruby</b></div><div style=""></div></span><div style=""><span style="font-size: 1em;">Marina Del Rey, CA 90292-5620</span><br/></div><div style=""><b><u><font style="color: rgb(0, 63, 134);"><font style="color: rgb(0, 63, 134);">info@</font></font><a style="color: rgb(0, 63, 134);
1056" href="mailto:[email protected]" runtime_url="mailto:[email protected]"><font style="color: rgb(0, 63, 134);">guttersbyruby.com</font></a></u></b></div><div style=""><b><span style="font-weight: 700;">Tel:</span></b> 1057310-473-7800</div></div> <div class="u_1094124453 imageWidget" data-widget-type="image" id="1094124453" data-element-type="image"><img src="https://le-cdn.hibuwebsites.com/1be1080947e546b8be2e3066b35358c7/dms3rep/multi/opt/03-1920w.png" id="1117281638" dm_changed="true" class="u_1117281638" data-dm-image-path="https://cdn.websites.hibu.com/1be1080947e546b8be2e3066b35358c7/dms3rep/multi/03.png" alt="Payment methods" onerror="handleImageLoadError(this)"/></div> 1058</div> 1059</div> 1060</div> 1061 <div id="1720814807" 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> 1062</div> 1063 <div class="poweredLine2">© <span id="hibuYear">2026</span> 1064The content on this website is owned by us and our licensors. Do not copy any content (including images) without our consent.</div> 1065</div> 1066</div> 1067</div> 1068</div> 1069</div> 1070</div> 1071</div> 1072</div> 1073</div> 1074</div> 1075</div> 1076</div> 1077 1078 </div> 1079</div> 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118
1119<script> 1120 var isWLR = true; 1121 1122 window.customWidgetsFunctions = {}; 1123 window.customWidgetsStrings = {}; 1124 window.collections = {}; 1125 window.currentLanguage = "ENGLISH" 1126 window.isSitePreview = false; 1127</script>
1127 1128 1129 1130 1131
1132<script type="text/javascript"> 1133 1134 var d_version = "production_6839"; 1135 var build = "2026-10-08T12_48_49"; 1136 window['v' + 'ersion'] = d_version; 1137 1138 function buildEditorParent() { 1139 window.isMultiScreen = true; 1140 window.editorParent = {}; 1141 window.previewParent = {}; 1142 try { 1143 var _p = window.parent; 1144 if (_p && _p.document && _p.$ && _p.$.dmfw) { 1145 window.editorParent = _p; 1146 } else if (_p.isSitePreview) { 1147 window.previewParent = _p; 1148 } 1149 } catch (e) { 1150 1151 } 1152 } 1153 1154 buildEditorParent(); 1155</script>
1155 1156 1157 1158 1159
1160<script type="text/javascript" id='d-js-jquery' 1161 src="https://static-res-cdn.websites.hibu.com/libs/jquery/jquery-3.7.0.min.js"></script>
1161 1162 1163 1164 1165 1166<!-- Injecting site-wide before scripts --> 1167 1168
1169<script src="https://app.termly.io/resource-blocker/e02e1485-a65c-498f-b471-c3e7b3fe554b?autoBlock=on" data-swh-uuid="81750647a16d4b6b805320464e06b899"> 1170</script>
1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189
1190<script type="text/javascript" id="d_track_campaign" data-entry-referrer data-utm-cookies></script>
1190 1191
1192<script type="text/javascript" > 1193 var _dm_gaq = {}; 1194 var _gaq = _gaq || []; 1195 var _dm_insite = []; 1196</script>
1196 1197 1198 1199 1200 1201 1202 1203 1204<!-- End Injecting site-wide to the head --> 1205 1206 1207
1208<script> 1209 var _jquery = window.$; 1210 1211 var jqueryAliases = ['$', 'jquery', 'jQuery']; 1212 1213 jqueryAliases.forEach((alias) => { 1214 Object.defineProperty(window, alias, { 1215 get() { 1216 return _jquery; 1217 }, 1218 set() { 1219 console.warn("Trying to over-write the global jquery object!"); 1220 } 1221 }); 1222 }); 1223 window.jQuery.migrateMute = true; 1224</script>
1224 1225 1226
1227<script type="text/javascript"> 1228 window.popups = 1229 [{"title":"Info","url":"/build-your-own-insite2","options":{"backgroundColor":"#FFFFFF","borderRadius":"5","width":"500","overlayColor":"rgba(195, 195, 195,0.5)","height":"350","animation":"shake"},"name":"build-your-own-insite2"},{"title":"Request Service","url":"/request-service","options":{"backgroundColor":"#FFFFFF","borderRadius":"5","width":"887","overlayColor":"rgba(44, 44, 44,0.5)","height":"660"},"name":"request-service"}] 1230</script>
1230 1231 1232 1233
1234<script> 1235 window.cookiesNotificationMarkupPreview = 'null'; 1236</script>
1236 1237 1238
1239<script id='d-js-params'> 1240 window.INSITE = window.INSITE || {}; 1241 window.INSITE.device = "desktop"; 1242 1243 window.rtCommonProps = {}; 1244 rtCommonProps["runtimecollector.url"] = 'https://rtc.hibuwebsites.com'; 1245 rtCommonProps["performance.tabletPreview.removeScroll"] = 'false'; 1246 rtCommonProps["inlineEditGrid.snap"] =true; 1247 rtCommonProps["popup.insite.cookie.ttl"] = '0.5'; 1248 rtCommonProps["common.mapbox.token"] = 'pk.eyJ1IjoiZGFubnliMTIzIiwiYSI6ImNqMGljZ256dzAwMDAycXBkdWxwbDgzeXYifQ.Ck5P-0NKPVKAZ6SH98gxxw'; 1249 rtCommonProps["common.mapbox.js.override"] =false; 1250 rtCommonProps["common.here.appId"] = 'iYvDjIQ2quyEu0rg0hLo'; 1251 rtCommonProps["common.here.appCode"] = '1hcIxLJcbybmtBYTD9Z1UA'; 1252 rtCommonProps["ecommerce.ecwid.script"] = 'https://app.multiscreenstore.com/script.js'; 1253 rtCommonProps["common.build.dist.folder"] = 'production/6839'; 1254 rtCommonProps["common.resources.cdn.host"] = 'https://static-res-cdn.websites.hibu.com'; 1255 rtCommonProps["common.resources.folder"] = 'https://static-res-cdn.websites.hibu.com/mnlt/production/6839'; 1256 rtCommonProps["common.fonts.api.v2.url"] = 'https://cdn.hibuwebsites.com/fonts/css2?family='; 1257 rtCommonProps["feature.flag.runtime.backgroundSlider.preload.slowly"] =true; 1258 rtCommonProps["feature.flag.runtime.newAnimation.jitAnimation.enabled"] =true; 1259 rtCommonProps["feature.flag.sites.google.analytics.gtag"] =true; 1260 rtCommonProps["feature.flag.runOnReadyNewTask"] =true; 1261 rtCommonProps["isAutomation.test"] =false; 1262 rtCommonProps["booking.cal.api.domain"] = 'api.cal.com'; 1263 1264 1265 rtCommonProps['common.mapsProvider'] = 'mapbox'; 1266 1267 rtCommonProps['common.mapsProvider.version'] = '0.52.0'; 1268 rtCommonProps['common.geocodeProvider'] = 'mapbox'; 1269 rtCommonProps['server.for.resources'] = ''; 1270 rtCommonProps['feature.flag.lazy.widgets'] = true; 1271 rtCommonProps['feature.flag.single.wow'] = false; 1272 rtCommonProps['feature.flag.disallowPopupsInEditor'] = true; 1273 rtCommonProps['feature.flag.mark.anchors'] = true; 1274 rtCommonProps['captcha.public.key'] = '6LffcBsUAAAAAMU-MYacU-6QHY4iDtUEYv_Ppwlz'; 1275 rtCommonProps['captcha.invisible.public.key'] = '6LeiWB8UAAAAAHYnVJM7_-7ap6bXCUNGiv7bBPME'; 1276 rtCommonProps["images.sizes.small"] =160; 1277 rtCommonProps["images.sizes.mobile"] =640; 1278 rtCommonProps["images.sizes.tablet"] =1280; 1279 rtCommonProps["images.sizes.desktop"] =1920; 1280 rtCommonProps["import.images.storage.imageCDN"] = 'https://le-cdn.hibuwebsites.com/'; 1281 rtCommonProps["feature.flag.performance.logs"] =false; 1282 rtCommonProps["site.widget.form.captcha.type"] = 'g_recaptcha'; 1283 rtCommonProps["friendly.captcha.site.key"] = 'FCMGSQG9GVNMFS8K'; 1284 rtCommonProps["cookiebot.mapbox.consent.category"] = 'marketing'; 1285 rtCommonProps["termly.mapbox.consent.category"] = 'performance'; 1286 // feature flags that's used out of runtime module (in legacy files) 1287 rtCommonProps["platform.monolith.personalization.dateTimeCondition.popupMsgAction.moveToclient.enabled"] =true; 1288 1289 window.rtFlags = {}; 1290 rtFlags["unsuspendEcwidStoreOnRuntime.enabled"] =false; 1291 rtFlags["scripts.widgetCount.enabled"] =true; 1292 rtFlags["fnb.animations.tracking.enabled"] =true; 1293 rtFlags["ecom.ecwidNewUrlStructure.enabled"] = false; 1294 rtFlags["ecom.ecwid.accountPage.emptyBaseUrl.enabled"] = true; 1295 rtFlags["ecom.ecwid.accountPage.repeatOrderRedirect.enabled"] = false; 1296 rtFlags["ecom.ecwid.oldStore.keepScrollOnLoad.enabled"] = true; 1297 rtFlags["ecom.ecwid.storefrontV3.enabled"] = false; 1298 rtFlags["ecom.monolith.legacy.js.api.disabled.for.new.sites"] = false; 1299 rtFlags["geocode.search.localize"] =false; 1300 rtFlags["feature.flag.runtime.newAnimation.asyncInit.setTimeout.enabled"] =false; 1301 rtFlags["twitter.heightLimit.enabled"] = true; 1302 rtFlags["streamline.monolith.personalization.supportMultipleConditions.enabled"] =false; 1303 rtFlags["flex.animation.design.panel.layout"] =true; 1304 rtFlags["runtime.cwv.report.cls.enabled"] =false; 1305 rtFlags["runtime.cwv.report.lcp.enabled"] =false; 1306 rtFlags["runtime.lcp.preload.selfheal.enabled"] =true; 1307 rtFlags["runtime.lcp.preload.bootstrap.enabled"] =true; 1308 rtFlags["runtime.lcp.preload.monitor.enabled"] =false; 1309 rtFlags["runtime.customwidget.heightpin.enabled"] =true; 1310 rtFlags["runtime.video.widget.lazy.enabled"] =true; 1311 rtFlags["contact.form.useActiveForm"] =true; 1312 rtFlags["contact.form.custom.errors.enabled"] =false; 1313 rtFlags["runtime.ssr.productStore.internal.observer"] =true; 1314 rtFlags["editor.widget.form.a11y"] =true; 1315</script>
vendor: 1 bytes, line 1315
1315
1316<script src="https://static-res-cdn.websites.hibu.com/mnlt/production/6839/_dm/s/rt/dist/scripts/d-js-one-runtime-unified-desktop.min.js" id="d-js-core"></script>
1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330
1330<script src="https://static-res-cdn.websites.hibu.com/mnlt/production/6839/_dm/s/rt/dist/scripts/d-js-jquery-migrate.min.js" ></script>
1330 1331 1332 1333 1334 1335
1336<script> 1337 1338 $(window).bind("orientationchange", function (e) { 1339 $.layoutManager.initLayout(); 1340 1341 }); 1342 $(document).resize(function () { 1343 1344 }); 1345</script>
1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364
1365<script type="text/javascript" id="d_track_sp"> 1366 ;(function(p,l,o,w,i,n,g){if(!p[i]){p.GlobalSnowplowNamespace=p.GlobalSnowplowNamespace||[]; 1367 p.GlobalSnowplowNamespace.push(i);p[i]=function(){(p[i].q=p[i].q||[]).push(arguments) 1368 };p[i].q=p[i].q||[];n=l.createElement(o);g=l.getElementsByTagName(o)[0];n.async=1; 1369 n.src=w;g.parentNode.insertBefore(n,g)}}(window,document,"script","//d32hwlnfiv2gyn.cloudfront.net/sp-2.0.0-dm-0.1.min.js","snowplow")); 1370 window.dmsnowplow = window.snowplow; 1371 1372 dmsnowplow('newTracker', 'cf', 'd32hwlnfiv2gyn.cloudfront.net', { // Initialise a tracker 1373 appId: '1be1080947e546b8be2e3066b35358c7' 1374 }); 1375 1376 // snowplow queries element styles so we wait until CSS calculations are done. 1377 requestAnimationFrame(() => { 1378 dmsnowplow('trackPageView'); 1379 _dm_insite.forEach((rule) => { 1380 // Specifically in popup only the client knows if it is shown or not so we don't always want to track its impression here 1381 // the tracking is in popup.js 1382 if (rule.actionName !== "popup") { 1383 dmsnowplow('trackStructEvent', 'insite', 'impression', rule.ruleType, rule.ruleId); 1384 } 1385 window?.waitForDeferred?.('dmAjax', () => { 1386 $.DM.events.trigger('event-ruleTriggered', {value: rule}); 1387 }); 1388 }); 1389 }); 1390</script>
1390 1391 1392 1393 1394<div style="display:none;" id="P6iryBW0Wu"></div> 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406<div class="pswp" tabindex="-1" role="dialog" aria-hidden="true"> 1407 1408 1409 <div class="pswp__bg"></div> 1410 1411 1412 <div class="pswp__scroll-wrap"> 1413 1414 1415 <div class="pswp__container"> 1416 <div class="pswp__item"></div> 1417 <div class="pswp__item"></div> 1418 <div class="pswp__item"></div> 1419 </div> 1420 1421 1422 <div class="pswp__ui pswp__ui--hidden"> 1423 1424 <div class="pswp__top-bar"> 1425 1426 1427 1428 <div class="pswp__counter"></div> 1429 1430 <button class="pswp__button pswp__button--close" data-auto="pswp-close" title="Close (Esc)"></button> 1431 1432 <button class="pswp__button pswp__button--share" data-auto="pswp-share" title="Share"></button> 1433 1434 <button class="pswp__button pswp__button--fs" title="Toggle fullscreen"></button> 1435 1436 <button class="pswp__button pswp__button--zoom" title="Zoom in/out"></button> 1437 1438 1439 1440 <div class="pswp__preloader"> 1441 <div class="pswp__preloader__icn"> 1442 <div class="pswp__preloader__cut"> 1443 <div class="pswp__preloader__donut"></div> 1444 </div> 1445 </div> 1446 </div> 1447 </div> 1448 1449 <div class="pswp__share-modal pswp__share-modal--hidden pswp__single-tap"> 1450 <div class="pswp__share-tooltip"></div> 1451 </div> 1452 1453 <button class="pswp__button pswp__button--arrow--left" title="Previous (arrow left)"> 1454 </button> 1455 1456 <button class="pswp__button pswp__button--arrow--right" title="Next (arrow right)"> 1457 </button> 1458 1459 <div class="pswp__caption"> 1460 <div class="pswp__caption__center"></div> 1461 </div> 1462 1463 </div> 1464 1465 </div> 1466 1467</div> 1468<div id="fb-root" 1469 data-locale="en"></div> 1470<!-- Alias: 1be1080947e546b8be2e3066b35358c7 --> 1471<div class="dmPopupMask" id="dmPopupMask"></div> 1472<div id="dmPopup" class="dmPopup" data-auto="popup"> 1473 <div class="dmPopupCloseWrapper"> <div class="dmPopupClose dm-common-icons-close oneIcon" data-auto="popup-close" onclick="dmHidePopup(event);"></div> </div> 1474 <div class="dmPopupTitle"> <span></span> Share by:</div> 1475 <div class="data"></div> 1476</div>
1476<script id="d_track_personalization"> 1477 window?.waitForDeferred?.('dmAjax', () => { 1478 // Collects client data and updates cookies used by smart sites 1479 window.expireDays = 365; 1480 window.visitLength = 30 * 60000; 1481 $.setCookie("dm_timezone_offset", (new Date()).getTimezoneOffset(), window.expireDays); 1482 setSmartSiteCookiesInternal("dm_this_page_view","dm_last_page_view","dm_total_visits","dm_last_visit"); 1483 }); 1484</script>
vendor: 1 bytes, line 1484
1484
1485<script type="text/javascript"> 1486 1487 Parameters.NavigationAreaParams.MoreButtonText = 'MORE'; 1488 1489 Parameters.NavigationAreaParams.LessButtonText = 'LESS'; 1490 </script>
1490 1491<!-- Begin Body End Markup --> 1492<!-- Begin Body End Markup --> 1493<div id="placeholder_retargeting_pixel" style="display: none;" data-inject="placeholder_retargeting_pixel"> 1494 {{placeholder_retargeting_pixel}} 1495</div> 1496<div id="placeholder_dpni" style="display: none;" data-inject="placeholder_dpni"> 1497 {{placeholder_dpni}} 1498</div> 1499<div id="placeholder_analytics" style="display: none;" data-inject="placeholder_analytics"> 1500
1500<script> 1501 //yellAnalyticsConfig need to set before s_code.js 1502 var yellAnalyticsConfig = { 1503 "global" : { 1504 "trackDownloadLinks": true, 1505 "downloadFileTypes": "exe,zip,wav,mp3,mov,mpg,avi,wmv,pdf,doc,docx,xls,xlsx,ppt,pptx", 1506 "currency": "USD", 1507 "trackExternalLinks": true, 1508 "internalDomains": "javascript:", 1509 "charset": "UTF-8" 1510 }, 1511 "omniture" : { 1512 "enabled": true, 1513 "server": "yellgroup.122.2o7.net", 1514 "serverSecure": "yellgroup.122.2o7.net", 1515 "namespace": "yellgroup", 1516 "account": "yelldudalive", 1517 "campaign": "CID|cam" 1518 }} 1519 1520 var hibuWebsiteConfig={ 1521 "prodSKU":"WBS-DT3O-01-US", 1522 "assetID":"682887", 1523 "customerID":"7016648570" 1524 } 1525 </script>
1525 1526
1526<script type="text/javascript" src="https://dh-static-files.s3.amazonaws.com/prod/AppMeasurement.js"> 1527 </script>
1527 1528
1528<script type="text/javascript" src="https://dh-static-files.s3.amazonaws.com/prod/hibu-analytics.min.js"> 1529 </script>
1529 1530
1530<script type="text/javascript" src="https://dh-static-files.s3.amazonaws.com/prod/omn_setting.js"> 1531 </script>
1531 1532</div> 1533<div id="placeholder_footer_reserve1" style="display: none;" data-inject="placeholder_footer_reserve1"> 1534 {{placeholder_footer_reserve1}} 1535</div> 1536<div id="placeholder_footer_reserve2" style="display: none;" data-inject="placeholder_footer_reserve2"> 1537 {{placeholder_footer_reserve2}} 1538</div> 1539<div id="placeholder_footer_reserve3" style="display: none;" data-inject="placeholder_footer_reserve3"> 1540 {{placeholder_footer_reserve3}} 1541</div> 1542<div id="placeholder_footer_reserve4" style="display: none;" data-inject="placeholder_footer_reserve4"> 1543 {{placeholder_footer_reserve4}} 1544</div> 1545<div id="placeholder_footer_reserve5" style="display: none;" data-inject="placeholder_footer_reserve5"> 1546 {{placeholder_footer_reserve5}} 1547</div> 1548<div id="placeholder_footer_reserve6" style="display: none;" data-inject="placeholder_footer_reserve6"> 1549 {{placeholder_footer_reserve6}} 1550</div> 1551<div id="placeholder_footer_reserve7" style="display: none;" data-inject="placeholder_footer_reserve7"> 1552 {{placeholder_footer_reserve7}} 1553</div> 1554<!-- End Body End Markup --><!-- End Body End Markup --> 1555<!-- Site Wide Html Markup --> 1556<div id="swh-e73864b86f394cd1b5b4e415ec7731d9">
1556<script> 1557// Set AE Preview mode within Site Editor Preview 1558if (window.location.search.match(/[?,&]preview=true/) && window.top !== window) { 1559 window.__AudioEyePreviewMode = true; 1560} 1561</script>
vendor: 1 bytes, line 1561
1561
1562<script type="text/javascript">!function(){var b=function(){window.__AudioEyeSiteHash = "337042f48b9a0dbf1af18fab27f56773"; var a=document.createElement("script");a.src="https://wsmcdn.audioeye.com/aem.js";a.type="text/javascript";a.setAttribute("async","");document.getElementsByTagName("body")[0].appendChild(a)};"complete"!==document.readyState?window.addEventListener?window.addEventListener("load",b):window.attachEvent&&window.attachEvent("onload",b):b()}();</script>
1562</div><!-- Site Wide Html Markup --> 1563<!-- Begin Product Custom HTML Markup --> 1564<div id="fb-root"></div>
1565<script>(function(d, s, id) { 1566var js, fjs = d.getElementsByTagName(s)[0]; 1567if (d.getElementById(id)) return; 1568js = d.createElement(s); js.id = id; 1569js.src = "//connect.facebook.net/en_US/sdk.js#xfbml=1&version=v2.8&appId=1822295708016537"; 1570fjs.parentNode.insertBefore(js, fjs); 1571}(document, 'script', 'facebook-jssdk'));</script>
vendor: 2 bytes, line 1571
1571
1572<script> 1573//make sure video's on iOS load first screen of the video. 1574dmAPI.runOnReady('russTest',function() { 1575 var _hibu_vid = document.getElementsByTagName('video'); 1576 for (var i = 0; i < _hibu_vid.length; i++) { 1577 _hibu_vid[i].load(); 1578 } 1579}) 1580</script>
vendor: 2 bytes, line 1580
1580
1581<script> 1582//simple addition by Russ to add consent banner link into footer - updated by Adrian to account for Termly installs. 1583(function () { 1584 var poweredByFirstAnchor = document.querySelector('.poweredBy a:first-child'); 1585 if (!poweredByFirstAnchor) return; 1586 1587 if (window.Termly) { 1588 var termlySpan = document.createElement('span'); 1589 termlySpan.className = 'termly-display-preferences'; 1590 termlySpan.textContent = 'Manage Consent Preferences'; 1591 poweredByFirstAnchor.insertAdjacentElement('afterend', termlySpan); 1592 } else { 1593 var spSpan = document.createElement('span'); 1594 spSpan.id = 'spConsentWrapper'; 1595 poweredByFirstAnchor.insertAdjacentElement('afterend', spSpan); 1596 window.localStorage.setItem('__springtime__repop__target', '#spConsentWrapper'); 1597 } 1598})(); 1599</script>
1599 1600<style> 1601 #spConsentWrapper:before, 1602 .poweredBy .termly-display-preferences:before { content: " | " } 1603 .poweredBy .termly-display-preferences { cursor: pointer; } 1604</style>
1605<script> 1606if (window.location.search.indexOf('preview') > 0) { 1607 window.localStorage.setItem('ae_user_consent_decision_has_been_made', true); 1608 var spEl = document.getElementById('spConsentWrapper'); 1609 if (spEl) spEl.remove(); 1610} 1611</script>
1611<!-- End Product Custom HTML Markup --> 1612</body> 1613</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.