{"id":13328,"date":"2025-08-12T08:55:03","date_gmt":"2025-08-12T12:55:03","guid":{"rendered":"https:\/\/roofmaxx.com\/learning-hub\/?page_id=13328"},"modified":"2026-03-24T12:37:32","modified_gmt":"2026-03-24T16:37:32","slug":"test","status":"publish","type":"page","link":"https:\/\/roofmaxx.com\/learning-hub\/test\/","title":{"rendered":"Test"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"13328\" class=\"elementor elementor-13328\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-00bfdfc post-lf-hero e-flex e-con-boxed e-con e-parent\" data-id=\"00bfdfc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;gradient&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2ce115d elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"2ce115d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">Test<\/h1>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-341a5a2 e-con-full e-flex e-con e-child\" data-id=\"341a5a2\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t<div class=\"elementor-element elementor-element-ca541e0 e-con-full e-flex e-con e-child\" data-id=\"ca541e0\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2221371 elementor-widget elementor-widget-heading\" data-id=\"2221371\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div class=\"elementor-heading-title elementor-size-default\">Updated on : March 24, 2026<\/div>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0a40ed6 elementor-absolute e-transform e-transform elementor-widget elementor-widget-image\" data-id=\"0a40ed6\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;_position&quot;:&quot;absolute&quot;,&quot;_transform_rotateZ_effect&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:-33,&quot;sizes&quot;:[]},&quot;_transform_translateX_effect&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:-266,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:0,&quot;sizes&quot;:[]},&quot;motion_fx_motion_fx_scrolling&quot;:&quot;yes&quot;,&quot;motion_fx_translateY_effect&quot;:&quot;yes&quot;,&quot;motion_fx_translateY_direction&quot;:&quot;negative&quot;,&quot;motion_fx_translateY_affectedRange&quot;:{&quot;unit&quot;:&quot;%&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:{&quot;start&quot;:0,&quot;end&quot;:50}},&quot;motion_fx_blur_effect&quot;:&quot;yes&quot;,&quot;motion_fx_blur_range&quot;:{&quot;unit&quot;:&quot;%&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:{&quot;start&quot;:0,&quot;end&quot;:41}},&quot;motion_fx_devices&quot;:[&quot;desktop&quot;,&quot;laptop&quot;],&quot;_transform_translateX_effect_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:-46,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect_mobile&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:-183,&quot;sizes&quot;:[]},&quot;motion_fx_translateY_speed&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:4,&quot;sizes&quot;:[]},&quot;motion_fx_blur_direction&quot;:&quot;out-in&quot;,&quot;motion_fx_blur_level&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:7,&quot;sizes&quot;:[]},&quot;_transform_rotateZ_effect_laptop&quot;:{&quot;unit&quot;:&quot;deg&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_rotateZ_effect_tablet&quot;:{&quot;unit&quot;:&quot;deg&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_rotateZ_effect_mobile_extra&quot;:{&quot;unit&quot;:&quot;deg&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_rotateZ_effect_mobile&quot;:{&quot;unit&quot;:&quot;deg&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateX_effect_laptop&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateX_effect_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateX_effect_mobile_extra&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect_laptop&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect_tablet&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]},&quot;_transform_translateY_effect_mobile_extra&quot;:{&quot;unit&quot;:&quot;px&quot;,&quot;size&quot;:&quot;&quot;,&quot;sizes&quot;:[]}}\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"87\" height=\"96\" src=\"https:\/\/roofmaxx.com\/learning-hub\/wp-content\/uploads\/2025\/10\/roof-maxx-icon-light-bg.svg\" class=\"attachment-large size-large wp-image-13686\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-cb89f1e e-con-full e-flex e-con e-child\" data-id=\"cb89f1e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-af62bfe elementor-widget elementor-widget-shortcode\" data-id=\"af62bfe\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\r\n<div class=\"rm-rdt-wrap\" id=\"rm-rdt-1\">\r\n\r\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n     STYLES  (scoped to this instance via .rm-rdt-wrap)\r\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\r\n<style>\r\n.rm-rdt-wrap{--rm-midnight:#003057;--rm-cerulean:#0088BB;--rm-cerulean-lt:#e6f4fa;--rm-orange:#CC6C27;--rm-orange-lt:#fdf0e8;--rm-gray:#9EA6B4;--rm-gray-lt:#f3f5f8;--rm-gray-bd:#dde3ea;--rm-white:#fff;--rm-text:#1a2a3a;--rm-muted:#5a6a7a;--rm-green:#1a7a45;--rm-green-lt:#eaf5ef;--rm-red:#b81c1c;--rm-red-lt:#fdeaea;--rm-urgent:#7a3200;--rm-urgent-lt:#fff3e8;--rm-r:8px;--rm-rl:14px;--rm-sh:0 4px 20px rgba(0,48,87,.10);--rm-sh-sm:0 2px 8px rgba(0,48,87,.08);--rm-t:.2s ease;--rm-fh:'Helvetica Neue','Arial Narrow',Helvetica,Arial,sans-serif;--rm-fb:Helvetica,Arial,sans-serif;font-family:var(--rm-fb);color:var(--rm-text);max-width:780px;margin:0 auto}\r\n.rm-rdt-wrap *{box-sizing:border-box}\r\n.rm-rdt-box{background:var(--rm-white);border-radius:var(--rm-rl);box-shadow:var(--rm-sh);overflow:hidden}\r\n\/* Header *\/\r\n.rm-rdt-header{background:var(--rm-midnight);padding:40px 44px 36px;position:relative;overflow:hidden}\r\n.rm-rdt-header::before{content:'';position:absolute;top:0;right:0;bottom:0;width:6px;background:var(--rm-cerulean)}\r\n.rm-rdt-header::after{content:'';position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--rm-orange)}\r\n.rm-rdt-title{font-family:var(--rm-fh);font-weight:900;font-size:clamp(20px,4vw,30px);line-height:1.2;color:var(--rm-white);margin:0 0 10px;text-transform:uppercase;letter-spacing:-.3px}\r\n.rm-rdt-desc{font-size:15px;line-height:1.6;color:rgba(255,255,255,.78);margin:0;max-width:600px}\r\n\/* Progress *\/\r\n.rm-rdt-prog-wrap{height:5px;background:var(--rm-gray-bd)}\r\n.rm-rdt-prog-bar{height:100%;background:linear-gradient(90deg,var(--rm-cerulean),var(--rm-midnight));width:0%;transition:width .4s cubic-bezier(.4,0,.2,1)}\r\n.rm-rdt-counter{font-family:var(--rm-fb);font-size:12px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--rm-cerulean);margin:0;padding:14px 44px 0}\r\n\/* Steps *\/\r\n.rm-rdt-step{padding:32px 44px 8px;animation:rm-rdt-in .25s ease forwards}\r\n@keyframes rm-rdt-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}\r\n.rm-rdt-step-title{font-family:var(--rm-fh);font-weight:900;font-size:clamp(17px,3.5vw,22px);color:var(--rm-midnight);margin:0 0 6px;line-height:1.25;text-transform:uppercase;letter-spacing:-.2px}\r\n.rm-rdt-step-note{font-size:13px;color:var(--rm-muted);margin:0 0 20px;font-style:italic}\r\n\/* Options *\/\r\n.rm-rdt-options{display:grid;gap:10px;margin-bottom:4px}\r\n.rm-rdt-single{grid-template-columns:1fr}\r\n.rm-rdt-multi{grid-template-columns:1fr}\r\n@media(min-width:540px){.rm-rdt-single{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.rm-rdt-multi{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}}\r\n.rm-rdt-option{display:flex;flex-direction:row;align-items:center;gap:12px;padding:14px 18px;border:2px solid var(--rm-gray-bd);border-radius:var(--rm-r);background:var(--rm-white);cursor:pointer;font-size:15px;line-height:1.4;color:var(--rm-text);transition:border-color .25s ease,background .25s ease,box-shadow .25s ease,color .25s ease;user-select:none;-webkit-user-select:none}\r\n.rm-rdt-option::before{content:'';flex-shrink:0;width:20px;height:20px;border-radius:50%;border:2px solid var(--rm-gray-bd);background:var(--rm-white);transition:border-color .25s ease,background .25s ease;display:flex;align-items:center;justify-content:center}\r\n.rm-rdt-option-text{display:flex;flex-direction:column}\r\n.rm-rdt-option strong{font-weight:700;font-size:15px;color:var(--rm-midnight);display:block;margin-bottom:2px;transition:color .25s ease}\r\n.rm-rdt-option span{font-size:13px;color:var(--rm-muted)}\r\n.rm-rdt-option:hover{border-color:var(--rm-cerulean);background:var(--rm-cerulean-lt);box-shadow:0 0 0 1px var(--rm-cerulean)}\r\n.rm-rdt-option:hover::before{border-color:var(--rm-cerulean)}\r\n.rm-rdt-option.selected{border-color:var(--rm-midnight);background:var(--rm-cerulean-lt);box-shadow:0 0 0 2px var(--rm-midnight);color:var(--rm-midnight);font-weight:700}\r\n.rm-rdt-option.selected::before{border-color:var(--rm-midnight);background:var(--rm-midnight);content:'\u2713';color:var(--rm-white);font-size:12px;font-weight:900;line-height:16px;text-align:center}\r\n.rm-rdt-multi .rm-rdt-option.selected{border-color:var(--rm-cerulean);box-shadow:0 0 0 2px var(--rm-cerulean)}\r\n.rm-rdt-multi .rm-rdt-option.selected::before{border-color:var(--rm-cerulean);background:var(--rm-cerulean)}\r\n@media(max-width:480px){.rm-rdt-option{flex-direction:column;align-items:flex-start;gap:8px}}\r\n\/* Nav *\/\r\n.rm-rdt-nav{display:flex;align-items:center;gap:12px;padding:24px 44px 36px;flex-wrap:wrap}\r\n.rm-rdt-nav button{font-family:var(--rm-fh) !important;font-weight:900 !important;font-size:14px !important;letter-spacing:.6px !important;text-transform:uppercase !important;border:none !important;border-radius:var(--rm-r) !important;padding:13px 28px !important;cursor:pointer !important;transition:background .25s ease,color .25s ease,box-shadow .25s ease,border-color .25s ease,opacity .25s ease !important;line-height:1 !important;text-decoration:none !important;display:inline-block !important;box-sizing:border-box !important}\r\n.rm-rdt-btn-next,.rm-rdt-btn-submit{background:var(--rm-midnight) !important;color:var(--rm-white) !important;box-shadow:0 3px 12px rgba(0,48,87,.25) !important;margin-left:auto !important}\r\n.rm-rdt-btn-next:hover:not(:disabled),.rm-rdt-btn-submit:hover:not(:disabled){background:var(--rm-cerulean) !important;box-shadow:0 3px 16px rgba(0,136,187,.35) !important;color:var(--rm-white) !important}\r\n.rm-rdt-btn-submit{background:var(--rm-cerulean) !important}\r\n.rm-rdt-btn-submit:hover:not(:disabled){background:var(--rm-midnight) !important;box-shadow:0 3px 12px rgba(0,48,87,.35) !important}\r\n.rm-rdt-btn-next:disabled,.rm-rdt-btn-submit:disabled{opacity:.35 !important;cursor:not-allowed !important}\r\n.rm-rdt-btn-submit{display:none}\r\n.rm-rdt-wrap .rm-rdt-hidden,.rm-rdt-wrap.rm-rdt-hidden{display:none !important}\r\n.rm-rdt-btn-back{background:transparent !important;color:var(--rm-muted) !important;border:2px solid var(--rm-gray-bd) !important;box-shadow:none !important;margin-left:0 !important}\r\n.rm-rdt-btn-back:hover{background:var(--rm-gray-lt) !important;border-color:var(--rm-gray) !important;color:var(--rm-text) !important}\r\n\/* Results *\/\r\n.rm-rdt-results{padding:32px 44px 0;animation:rm-rdt-in .35s ease forwards}\r\n.rm-rdt-result-card{background:var(--rm-white);border-radius:var(--rm-rl);border:1px solid var(--rm-gray-bd);padding:32px 36px;box-shadow:var(--rm-sh);animation:rm-rdt-in .35s ease forwards}\r\n.rm-rdt-result-card.res-rejuvenation{border-left:5px solid var(--rm-green)}\r\n.rm-rdt-result-card.res-repair{border-left:5px solid var(--rm-orange)}\r\n.rm-rdt-result-card.res-replacement{border-left:5px solid var(--rm-red)}\r\n.rm-rdt-result-card.res-urgent{border-left:5px solid var(--rm-orange)}\r\n.rm-rdt-result-card h3{font-family:var(--rm-fh);font-weight:900;font-size:clamp(17px,3.5vw,22px);color:var(--rm-midnight);text-transform:uppercase;line-height:1.25;margin:16px 0 12px;letter-spacing:-.2px}\r\n.rm-rdt-result-card p{font-size:15px;line-height:1.7;color:var(--rm-text);margin:0 0 20px}\r\n.rm-rdt-badge{display:inline-block;font-family:var(--rm-fh);font-weight:900;font-size:12px;letter-spacing:.7px;text-transform:uppercase;padding:6px 14px;border-radius:40px}\r\n.badge-green{background:var(--rm-green-lt);color:var(--rm-green);border:1px solid rgba(26,122,69,.25)}\r\n.badge-orange{background:var(--rm-orange-lt);color:var(--rm-orange);border:1px solid rgba(204,108,39,.25)}\r\n.badge-red{background:var(--rm-red-lt);color:var(--rm-red);border:1px solid rgba(184,28,28,.25)}\r\n.badge-urgent{background:var(--rm-urgent-lt);color:var(--rm-urgent);border:1px solid rgba(122,50,0,.25)}\r\n.rm-rdt-result-list{list-style:none;padding:0;margin:0 0 28px;display:flex;flex-direction:column;gap:8px}\r\n.rm-rdt-result-list li{font-size:14px;color:var(--rm-text);padding-left:22px;position:relative;line-height:1.5}\r\n.rm-rdt-result-list li::before{content:'\u2192';position:absolute;left:0;color:var(--rm-cerulean);font-weight:700}\r\n.rm-rdt-cta-group{display:flex;flex-wrap:wrap;gap:12px;margin-top:4px}\r\n.rm-rdt-cta-group:empty{display:none;margin:0}\r\n.rm-rdt-cta-p,.rm-rdt-cta-s{display:inline-block !important;font-family:var(--rm-fh) !important;font-weight:900 !important;font-size:13px !important;letter-spacing:.5px !important;text-transform:uppercase !important;text-decoration:none !important;padding:13px 24px !important;border-radius:var(--rm-r) !important;cursor:pointer !important;transition:background .25s ease,color .25s ease,border-color .25s ease,box-shadow .25s ease !important;line-height:1 !important;box-sizing:border-box !important}\r\n.rm-rdt-cta-p{background:var(--rm-midnight) !important;color:var(--rm-white) !important;border:2px solid var(--rm-midnight) !important;box-shadow:0 3px 12px rgba(0,48,87,.22) !important}\r\n.rm-rdt-cta-p:hover{background:var(--rm-cerulean) !important;border-color:var(--rm-cerulean) !important;box-shadow:0 3px 16px rgba(0,136,187,.32) !important;color:var(--rm-white) !important;text-decoration:none !important}\r\n.rm-rdt-cta-s{background:transparent !important;color:var(--rm-midnight) !important;border:2px solid var(--rm-midnight) !important}\r\n.rm-rdt-cta-s:hover{background:var(--rm-midnight) !important;color:var(--rm-white) !important;text-decoration:none !important}\r\n.res-urgent .rm-rdt-cta-p{background:var(--rm-orange) !important;border-color:var(--rm-orange) !important}\r\n.res-urgent .rm-rdt-cta-p:hover{background:var(--rm-midnight) !important;border-color:var(--rm-midnight) !important}\r\n.rm-rdt-disclaimer{font-size:12px;color:var(--rm-muted);line-height:1.6;margin:0;padding:16px 44px 24px;background:var(--rm-gray-lt);border-top:1px solid var(--rm-gray-bd)}\r\n.rm-rdt-btn-restart{font-family:var(--rm-fh) !important;font-weight:900 !important;font-size:13px !important;letter-spacing:.5px !important;text-transform:uppercase !important;background:transparent !important;color:var(--rm-muted) !important;border:2px solid var(--rm-gray-bd) !important;border-radius:var(--rm-r) !important;padding:11px 22px !important;cursor:pointer !important;transition:background .25s ease,color .25s ease,border-color .25s ease !important;line-height:1 !important;box-sizing:border-box !important;margin: 16px 0 !important; display:inline-block !important}\r\n.rm-rdt-btn-restart:hover{background:var(--rm-gray-lt) !important;border-color:var(--rm-gray) !important;color:var(--rm-text) !important}\r\n\/* Responsive *\/\r\n@media(max-width:680px){.rm-rdt-header{padding:28px 24px 26px}.rm-rdt-step{padding:24px 24px 8px}.rm-rdt-counter{padding:12px 24px 0}.rm-rdt-nav{padding:20px 24px 28px}.rm-rdt-results{padding:24px 24px 20px}.rm-rdt-result-card{padding:24px 22px}.rm-rdt-disclaimer{padding:16px 24px 20px}}\r\n@media(max-width:480px){.rm-rdt-header{padding:22px 18px 22px}.rm-rdt-title{font-size:20px}.rm-rdt-step{padding:20px 18px 4px}.rm-rdt-counter{padding:10px 18px 0}.rm-rdt-nav{padding:18px 18px 24px;flex-direction:column-reverse}.rm-rdt-nav button{width:100%;margin-left:0;text-align:center}.rm-rdt-results{padding:18px 18px 16px}.rm-rdt-result-card{padding:20px 16px}.rm-rdt-cta-group{flex-direction:column}.rm-rdt-cta-p,.rm-rdt-cta-s{text-align:center}.rm-rdt-disclaimer{padding:14px 18px 18px}}\r\n<\/style>\r\n\r\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n     HTML\r\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\r\n<div class=\"rm-rdt-box\">\r\n\r\n    <div class=\"rm-rdt-header\">\r\n        <h2 class=\"rm-rdt-title\">Should I Repair, Restore, or Replace My Roof?<\/h2>\r\n        <p class=\"rm-rdt-desc\">Answer a few quick questions and find out which option makes the most sense for your roof.<\/p>\r\n    <\/div>\r\n\r\n    <div class=\"rm-rdt-prog-wrap\"><div class=\"rm-rdt-prog-bar\"><\/div><\/div>\r\n    <p class=\"rm-rdt-counter\"><\/p>\r\n\r\n    <!-- STEP 1 -->\r\n    <div class=\"rm-rdt-step\" data-step=\"1\">\r\n        <h3 class=\"rm-rdt-step-title\">How old is your roof?<\/h3>\r\n        <div class=\"rm-rdt-options rm-rdt-single\" data-field=\"age\">\r\n            <div class=\"rm-rdt-option\" data-value=\"under5\"><span class=\"rm-rdt-option-text\">Less than 5 years<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"5to10\"><span class=\"rm-rdt-option-text\">5 \u2013 10 years<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"10to15\"><span class=\"rm-rdt-option-text\">10 \u2013 15 years<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"15to20\"><span class=\"rm-rdt-option-text\">15 \u2013 20 years<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"over20\"><span class=\"rm-rdt-option-text\">Over 20 years<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"notsure\"><span class=\"rm-rdt-option-text\">Not sure<\/span><\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!-- STEP 2 -->\r\n    <div class=\"rm-rdt-step\" data-step=\"2\" style=\"display:none;\">\r\n        <h3 class=\"rm-rdt-step-title\">What type of roof do you have?<\/h3>\r\n        <p class=\"rm-rdt-step-note\">Most residential roofs fall into the first two categories.<\/p>\r\n        <div class=\"rm-rdt-options rm-rdt-single\" data-field=\"roofType\">\r\n            <div class=\"rm-rdt-option\" data-value=\"asphalt\"><span class=\"rm-rdt-option-text\">Asphalt shingles<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"composite\"><span class=\"rm-rdt-option-text\">Composite \/ architectural shingles<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"other\"><span class=\"rm-rdt-option-text\">Other \/ not sure<\/span><\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!-- STEP 3 -->\r\n    <div class=\"rm-rdt-step\" data-step=\"3\" style=\"display:none;\">\r\n        <h3 class=\"rm-rdt-step-title\">What issues are you noticing?<\/h3>\r\n        <p class=\"rm-rdt-step-note\">Select all that apply.<\/p>\r\n        <div class=\"rm-rdt-options rm-rdt-multi\" data-field=\"issues\">\r\n            <div class=\"rm-rdt-option\" data-value=\"leaks\"><span class=\"rm-rdt-option-text\">Leaks or water spots<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"granules\"><span class=\"rm-rdt-option-text\">Granules in gutters or downspouts<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"curling\"><span class=\"rm-rdt-option-text\">Curling or brittle shingles<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"moss\"><span class=\"rm-rdt-option-text\">Moss or algae growth<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"storm\"><span class=\"rm-rdt-option-text\">Storm damage (wind \/ hail)<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"none\"><span class=\"rm-rdt-option-text\">No major issues \u2014 just aging<\/span><\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!-- STEP 3B (conditional) -->\r\n    <div class=\"rm-rdt-step\" data-step=\"3b\" style=\"display:none;\">\r\n        <h3 class=\"rm-rdt-step-title\">How widespread is the damage?<\/h3>\r\n        <div class=\"rm-rdt-options rm-rdt-single\" data-field=\"extent\">\r\n            <div class=\"rm-rdt-option\" data-value=\"minor\"><span class=\"rm-rdt-option-text\"><strong>Minor<\/strong><span>Small problems in isolated areas<\/span><\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"widespread\"><span class=\"rm-rdt-option-text\"><strong>Widespread<\/strong><span>Severe damage across large areas<\/span><\/span><\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!-- STEP 4 -->\r\n    <div class=\"rm-rdt-step\" data-step=\"4\" style=\"display:none;\">\r\n        <h3 class=\"rm-rdt-step-title\">Has your roof been repaired before?<\/h3>\r\n        <div class=\"rm-rdt-options rm-rdt-single\" data-field=\"repairs\">\r\n            <div class=\"rm-rdt-option\" data-value=\"none\"><span class=\"rm-rdt-option-text\">No repairs<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"minor\"><span class=\"rm-rdt-option-text\">Minor repairs (patching, flashing)<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"multiple\"><span class=\"rm-rdt-option-text\">Multiple repairs over time<\/span><\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!-- STEP 5 -->\r\n    <div class=\"rm-rdt-step\" data-step=\"5\" style=\"display:none;\">\r\n        <h3 class=\"rm-rdt-step-title\">Is there active water intrusion right now?<\/h3>\r\n        <div class=\"rm-rdt-options rm-rdt-single\" data-field=\"water\">\r\n            <div class=\"rm-rdt-option\" data-value=\"active\"><span class=\"rm-rdt-option-text\">Yes \u2014 active leaking<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"past\"><span class=\"rm-rdt-option-text\">No \u2014 past leaks only<\/span><\/div>\r\n            <div class=\"rm-rdt-option\" data-value=\"none\"><span class=\"rm-rdt-option-text\">No leaks<\/span><\/div>\r\n        <\/div>\r\n    <\/div>\r\n\r\n    <!-- NAV -->\r\n    <div class=\"rm-rdt-nav\">\r\n        <button type=\"button\" class=\"rm-rdt-btn-back rm-rdt-hidden\">\u2190 Back<\/button>\r\n        <button type=\"button\" class=\"rm-rdt-btn-next\"   disabled>Next \u2192<\/button>\r\n        <button type=\"button\" class=\"rm-rdt-btn-submit rm-rdt-hidden\">See My Results<\/button>\r\n    <\/div>\r\n\r\n    <!-- RESULTS -->\r\n    <div class=\"rm-rdt-results\" style=\"display:none;\">\r\n\r\n        <div class=\"rm-rdt-result-card res-rejuvenation\" style=\"display:none;\">\r\n            <span class=\"rm-rdt-badge badge-green\">\u2714 Roof Restoration Likely Effective<\/span>\r\n            <h3>Good news \u2014 your roof may have more life in it.<\/h3>\r\n            <p>Based on your answers, your roof is a strong candidate for restoration. Shingle treatment can restore flexibility and extend your roof's lifespan, often at a fraction of replacement cost.<\/p>\r\n            <ul class=\"rm-rdt-result-list\">\r\n                <li>Roof structure is still sound<\/li>\r\n                <li>Extending roof life is likely possible<\/li>\r\n                <li>Full replacement may not be necessary yet<\/li>\r\n            <\/ul>\r\n            <div class=\"rm-rdt-cta-group\">\r\n                <a class=\"rm-rdt-cta-p\" href=\"https:\/\/roofmaxx.com\/roof-restoration\/\" target=\"_blank\">Learn How Roof Restoration Works<\/a>                <a class=\"rm-rdt-cta-s\" href=\"https:\/\/roofmaxx.com\/find-a-dealer\/\" target=\"_blank\">Find a Roof Maxx Dealer Near You<\/a>            <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"rm-rdt-result-card res-repair\" style=\"display:none;\">\r\n            <span class=\"rm-rdt-badge badge-orange\">\u2692 Repair Recommended<\/span>\r\n            <h3>Some targeted repairs could get your roof back on track.<\/h3>\r\n            <p>Your roof appears to have isolated issues that can be addressed with focused repairs. Catching these early helps prevent them from spreading \u2014 and sets the stage for restoration if needed.<\/p>\r\n            <ul class=\"rm-rdt-result-list\">\r\n                <li>Targeted repairs can address current problems<\/li>\r\n                <li>Ongoing monitoring is important<\/li>\r\n                <li>Not all repairs mean replacement is needed<\/li>\r\n            <\/ul>\r\n            <div class=\"rm-rdt-cta-group\">\r\n                <a class=\"rm-rdt-cta-p\" href=\"https:\/\/roofmaxx.com\/find-a-dealer\/\" target=\"_blank\">Schedule an Inspection with a Local Dealer<\/a>                <a class=\"rm-rdt-cta-s\" href=\"https:\/\/roofmaxx.com\/learning-hub\/roof-repair-costs\/\" target=\"_blank\">Learn About the Cost of Roof Repairs<\/a>            <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"rm-rdt-result-card res-replacement\" style=\"display:none;\">\r\n            <span class=\"rm-rdt-badge badge-red\">\u2191 Replacement Likely Required<\/span>\r\n            <h3>It may be time to plan for a full roof replacement.<\/h3>\r\n            <p>Based on your answers, repairs or restoration may no longer be cost-effective. A full replacement can provide long-term protection and peace of mind.<\/p>\r\n            <ul class=\"rm-rdt-result-list\">\r\n                <li>Repairs may not be cost-effective long-term<\/li>\r\n                <li>Restoration may not be suitable<\/li>\r\n                <li>Replacement provides long-term reliability<\/li>\r\n            <\/ul>\r\n            <div class=\"rm-rdt-cta-group\">\r\n                <a class=\"rm-rdt-cta-p\" href=\"https:\/\/roofmaxx.com\/learning-hub\/roof-replacement-cost-calculator\/\" target=\"_blank\">Estimate Your Replacement Cost<\/a>                <a class=\"rm-rdt-cta-s\" href=\"https:\/\/roofmaxx.com\/find-a-dealer\/\" target=\"_blank\">Get Quotes from Local Professionals<\/a>            <\/div>\r\n        <\/div>\r\n\r\n        <div class=\"rm-rdt-result-card res-urgent\" style=\"display:none;\">\r\n            <span class=\"rm-rdt-badge badge-urgent\">\u26a0 Urgent Inspection Recommended<\/span>\r\n            <h3>Don't wait \u2014 get a professional assessment as soon as possible.<\/h3>\r\n            <p>Your answers indicate active damage or water intrusion that needs immediate attention. Acting quickly can prevent far more costly damage to your home's structure, insulation, and interior.<\/p>\r\n            <ul class=\"rm-rdt-result-list\">\r\n                <li>Immediate assessment helps prevent further damage<\/li>\r\n                <li>Roofing decisions depend on severity and scope<\/li>\r\n                <li>A professional can identify the safest path forward<\/li>\r\n            <\/ul>\r\n            <div class=\"rm-rdt-cta-group\">\r\n                <a class=\"rm-rdt-cta-p\" href=\"https:\/\/roofmaxx.com\/find-a-dealer\/\" target=\"_blank\">Find a Roof Maxx Dealer Now<\/a>            <\/div>\r\n        <\/div>\r\n\r\n        <button type=\"button\" class=\"rm-rdt-btn-restart\">\u2190 Start Over<\/button>\r\n\r\n    <\/div><!-- \/.rm-rdt-results -->\r\n\r\n    <p class=\"rm-rdt-disclaimer\"><em>This tool provides general educational guidance based on common roofing scenarios. Actual conditions vary by roof type, climate, and installation. A professional inspection is recommended before making any roofing decisions.<\/em><\/p>\r\n\r\n<\/div><!-- \/.rm-rdt-box -->\r\n\r\n<!-- \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\r\n     INLINE JAVASCRIPT\r\n     No external file \u2014 runs immediately, zero\r\n     dependency on wp_enqueue or script loading.\r\n     \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\r\n<script>\r\n(function(){\r\n    'use strict';\r\n\r\n    var wrap   = document.getElementById('rm-rdt-1');\r\n    if (!wrap) return;\r\n\r\n    \/\/ \u2500\u2500 State \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n    var answers    = { age:null, roofType:null, issues:[], extent:null, repairs:null, water:null };\r\n    var stepOrder  = ['1','2','3','4','5'];\r\n    var currentIdx = 0;\r\n\r\n    var FIELD_MAP  = {'1':'age','2':'roofType','3':'issues','3b':'extent','4':'repairs','5':'water'};\r\n\r\n    \/\/ \u2500\u2500 DOM refs \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n    var progBar  = wrap.querySelector('.rm-rdt-prog-bar');\r\n    var counter  = wrap.querySelector('.rm-rdt-counter');\r\n    var btnBack  = wrap.querySelector('.rm-rdt-btn-back');\r\n    var btnNext  = wrap.querySelector('.rm-rdt-btn-next');\r\n    var btnSub   = wrap.querySelector('.rm-rdt-btn-submit');\r\n    var btnRes   = wrap.querySelector('.rm-rdt-btn-restart');\r\n    var navArea  = wrap.querySelector('.rm-rdt-nav');\r\n    var results  = wrap.querySelector('.rm-rdt-results');\r\n\r\n    \/\/ \u2500\u2500 Option clicks \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n    wrap.addEventListener('click', function(e){\r\n        var opt = e.target.closest('.rm-rdt-option');\r\n        if (!opt) return;\r\n\r\n        var group   = opt.closest('.rm-rdt-options');\r\n        var isMulti = group.classList.contains('rm-rdt-multi');\r\n        var field   = group.dataset.field;\r\n        var value   = opt.dataset.value;\r\n\r\n        if (isMulti) {\r\n            handleMulti(opt, group, field, value);\r\n        } else {\r\n            handleSingle(opt, group, field, value);\r\n        }\r\n\r\n        updateNav();\r\n        updateStepOrder();\r\n    });\r\n\r\n    function handleSingle(opt, group, field, value){\r\n        group.querySelectorAll('.rm-rdt-option').forEach(function(o){ o.classList.remove('selected'); });\r\n        opt.classList.add('selected');\r\n        answers[field] = value;\r\n    }\r\n\r\n    function handleMulti(opt, group, field, value){\r\n        var wasSelected = opt.classList.contains('selected');\r\n        var noneOpt     = group.querySelector('[data-value=\"none\"]');\r\n\r\n        if (value === 'none') {\r\n            group.querySelectorAll('.rm-rdt-option').forEach(function(o){ o.classList.remove('selected'); });\r\n            if (!wasSelected) { opt.classList.add('selected'); answers[field] = ['none']; }\r\n            else { answers[field] = []; }\r\n        } else {\r\n            if (noneOpt) noneOpt.classList.remove('selected');\r\n            opt.classList.toggle('selected', !wasSelected);\r\n\r\n            var cur = (answers[field] || []).filter(function(v){ return v !== 'none'; });\r\n            if (!wasSelected) { if (cur.indexOf(value) === -1) cur.push(value); }\r\n            else { cur = cur.filter(function(v){ return v !== value; }); }\r\n            answers[field] = cur;\r\n        }\r\n    }\r\n\r\n    \/\/ \u2500\u2500 Conditional step 3b \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n    function updateStepOrder(){\r\n        var iss          = answers.issues || [];\r\n        var hasRealIssue = iss.length > 0 && !(iss.length === 1 && iss[0] === 'none');\r\n        var has3b        = stepOrder.indexOf('3b') !== -1;\r\n\r\n        if (hasRealIssue && !has3b) {\r\n            stepOrder.splice(stepOrder.indexOf('3') + 1, 0, '3b');\r\n        } else if (!hasRealIssue && has3b) {\r\n            stepOrder = stepOrder.filter(function(s){ return s !== '3b'; });\r\n            answers.extent = null;\r\n        }\r\n    }\r\n\r\n    \/\/ \u2500\u2500 Navigation \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n    btnBack.addEventListener('click', function(){ if (currentIdx > 0){ currentIdx--; renderStep(); } });\r\n    btnNext.addEventListener('click', function(){ if (currentIdx < stepOrder.length - 1){ currentIdx++; renderStep(); } });\r\n    btnSub.addEventListener('click',  showResults);\r\n    btnRes.addEventListener('click',  restart);\r\n\r\n    \/\/ \u2500\u2500 Render step \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n    function renderStep(){\r\n        var stepId = stepOrder[currentIdx];\r\n        var isLast = currentIdx === stepOrder.length - 1;\r\n\r\n        wrap.querySelectorAll('.rm-rdt-step').forEach(function(s){ s.style.display = 'none'; });\r\n        var cur = wrap.querySelector('.rm-rdt-step[data-step=\"' + stepId + '\"]');\r\n        if (cur) cur.style.display = 'block';\r\n\r\n        \/\/ Progress\r\n        var vis  = visibleNum(currentIdx);\r\n        var tot  = visibleTotal();\r\n        var pct  = Math.round((vis \/ tot) * 100);\r\n        progBar.style.width = pct + '%';\r\n        counter.textContent = 'Step ' + vis + ' of ' + tot;\r\n\r\n        \/\/ Buttons\r\n        if (currentIdx > 0) { btnBack.classList.remove('rm-rdt-hidden'); }\r\n        else { btnBack.classList.add('rm-rdt-hidden'); }\r\n\r\n        if (isLast) {\r\n            btnNext.classList.add('rm-rdt-hidden');\r\n            btnSub.classList.remove('rm-rdt-hidden');\r\n            btnSub.disabled = !isAnswered(stepId);\r\n        } else {\r\n            btnNext.classList.remove('rm-rdt-hidden');\r\n            btnSub.classList.add('rm-rdt-hidden');\r\n            btnNext.disabled = !isAnswered(stepId);\r\n        }\r\n\r\n        results.style.display = 'none';\r\n        navArea.style.display = 'flex';\r\n    }\r\n\r\n    function visibleNum(idx){\r\n        var c=0, prev=null;\r\n        for(var i=0;i<=idx;i++){ var s=stepOrder[i]; if(s!=='3b'||prev!=='3') c++; prev=s; }\r\n        return c;\r\n    }\r\n    function visibleTotal(){\r\n        var c=0, prev=null;\r\n        stepOrder.forEach(function(s){ if(s!=='3b'||prev!=='3') c++; prev=s; });\r\n        return c;\r\n    }\r\n    function isAnswered(stepId){\r\n        var v = answers[FIELD_MAP[stepId]];\r\n        if (Array.isArray(v)) return v.length > 0;\r\n        return v !== null && v !== undefined && v !== '';\r\n    }\r\n    function updateNav(){\r\n        var stepId = stepOrder[currentIdx];\r\n        var ok     = isAnswered(stepId);\r\n        btnNext.disabled = !ok;\r\n        btnSub.disabled  = !ok;\r\n    }\r\n\r\n    \/\/ \u2500\u2500 Decision engine \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n    \/\/ Logic incorporates Graham Miles comments (Mar 10):\r\n    \/\/ - No repairs + 5-20yr roof \u2192 Rejuvenation unless major damage or water intrusion\r\n    \/\/ - No repairs + outside 5-20yr \u2192 Repair unless major damage or water intrusion\r\n    \/\/ - Active leaking always \u2192 Urgent\r\n    function getResult(){\r\n        var age = answers.age, roofType = answers.roofType,\r\n            issues = answers.issues || [], extent = answers.extent,\r\n            repairs = answers.repairs, water = answers.water;\r\n\r\n        var issSet      = {};\r\n        issues.forEach(function(v){ issSet[v] = true; });\r\n        var hasIssues   = issues.length > 0 && !issSet['none'];\r\n        var isOtherRoof = roofType === 'other';\r\n\r\n        \/\/ 1. URGENT \u2014 always fires first, no exceptions\r\n        if (water === 'active' || issSet['storm']) return 'urgent';\r\n\r\n        \/\/ 2. REPLACEMENT \u2014 combinations that signal roof is past saving\r\n        var isVeryOld  = age === 'over20';\r\n        var isOld      = age === 'over20' || age === '15to20';\r\n        var multiRep   = repairs === 'multiple';\r\n        var widespread = extent === 'widespread';\r\n\r\n        if ((isVeryOld && multiRep) || (isVeryOld && widespread) ||\r\n            (multiRep && widespread) || (isVeryOld && isOtherRoof) ||\r\n            (isOld && isOtherRoof && multiRep)) return 'replacement';\r\n\r\n        \/\/ 3. GRAHAM MILES RULE \u2014 repairs = none weighting\r\n        \/\/ \"Major damage\" = widespread extent OR structural symptoms (leaks, curling)\r\n        \/\/ \"Water intrusion\" = past leaks (active already caught above)\r\n        var noRepairs   = repairs === 'none';\r\n        var isMidLife   = age === '5to10' || age === '10to15' || age === '15to20';\r\n        var majorDamage = widespread || issSet['leaks'] || issSet['curling'];\r\n        var waterIssue  = water === 'past';\r\n\r\n        if (noRepairs && !majorDamage && !waterIssue) {\r\n            \/\/ 5-20yr + no repairs + no major issues \u2192 Rejuvenation\r\n            if (isMidLife) return 'rejuvenation';\r\n            \/\/ Outside 5-20yr + no repairs \u2192 Repair (new\/very old roof needs attention)\r\n            return 'repair';\r\n        }\r\n\r\n        \/\/ 4. REPAIR \u2014 real but limited issues present\r\n        if (hasIssues && (extent === 'minor' || !extent)) {\r\n            if (issSet['leaks'] || issSet['curling'] || issSet['granules'] || issSet['moss']) return 'repair';\r\n        }\r\n        if (multiRep && hasIssues) return 'repair';\r\n        if (isOld && hasIssues)    return 'repair';\r\n\r\n        \/\/ 5. REJUVENATION \u2014 default: mid-life roof, sound condition\r\n        return 'rejuvenation';\r\n    }\r\n\r\n    \/\/ \u2500\u2500 Show results \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n    function showResults(){\r\n        var outcome = getResult();\r\n\r\n        wrap.querySelectorAll('.rm-rdt-result-card').forEach(function(c){ c.style.display = 'none'; });\r\n        var card = wrap.querySelector('.rm-rdt-result-card.res-' + outcome);\r\n        if (card) card.style.display = 'block';\r\n\r\n        wrap.querySelectorAll('.rm-rdt-step').forEach(function(s){ s.style.display = 'none'; });\r\n        navArea.style.display = 'none';\r\n        results.style.display = 'block';\r\n\r\n        \/\/ Smooth scroll\r\n        var top = wrap.getBoundingClientRect().top + window.pageYOffset - 80;\r\n        window.scrollTo({ top: top, behavior: 'smooth' });\r\n    }\r\n\r\n    \/\/ \u2500\u2500 Restart \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n    function restart(){\r\n        answers    = { age:null, roofType:null, issues:[], extent:null, repairs:null, water:null };\r\n        stepOrder  = ['1','2','3','4','5'];\r\n        currentIdx = 0;\r\n        wrap.querySelectorAll('.rm-rdt-option').forEach(function(o){ o.classList.remove('selected'); });\r\n        progBar.style.width = '0%';\r\n        results.style.display = 'none';\r\n        navArea.style.display = 'flex';\r\n        renderStep();\r\n        var top = wrap.getBoundingClientRect().top + window.pageYOffset - 80;\r\n        window.scrollTo({ top: top, behavior: 'smooth' });\r\n    }\r\n\r\n    \/\/ \u2500\u2500 Boot \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\r\n    renderStep();\r\n\r\n})();\r\n<\/script>\r\n\r\n<\/div><!-- \/.rm-rdt-wrap -->\r\n\r\n    <\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-89fa363 e-flex e-con-boxed e-con e-parent\" data-id=\"89fa363\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-87da5a8 elementor-widget-divider--view-line_icon elementor-view-default elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"87da5a8\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" id=\"Layer_1\" viewBox=\"0 0 87.16 96.25\"><path d=\"M57.11,53.38s-6.49-2.01-9.07-6.01c0,0,.99,2.3,2.51,3.7,1.51,1.4,5.22,3.39,5.22,3.39,0,0,1.15,10.62,8.54,21.08-2.14-3.86-6.49-12.73-7.2-22.15Z\" fill=\"#fff\"><\/path><path d=\"M48.04,13.91c-20.86,0-37.78,16.91-37.78,37.78h0,0c.5,0,1,0,1.49,0h.75c4.79-.03,9.11-.43,13.01-1.09v-2.02c0-11.15,9.08-20.23,20.23-20.23,4.17,0,8.21,1.32,11.58,3.66,2.91-4.75,6.84-8.82,11.48-11.88-5.96-3.93-13.09-6.22-20.76-6.22Z\" fill=\"#08b\"><\/path><polygon points=\"10.27 51.69 10.27 51.69 10.27 51.68 10.27 51.69\" fill=\"#262c48\"><\/polygon><path d=\"M56.69,28.01s-11.09-6.23-22.17.38c-11.09,6.6-12.04,16.54-12.04,16.54,0,0-3.76,4.8-12.16,6.75.49,0,.97.01,1.45.01h.75c4.79-.03,9.11-.43,13.01-1.09v-2.02c0-11.15,9.08-20.23,20.23-20.23,4.17,0,8.21,1.32,11.58,3.66,2.91-4.75,6.84-8.82,11.48-11.88,0,0-7.63,3-12.12,7.88Z\" fill=\"#003057\"><\/path><path d=\"M35.94,58.32l1.27-.85,1.27.85,21.91,14.61v-11.66c.81,0,2.41-.56,2.41-.56l-5.71-19.56.2-3.2c-2.81-3.78-7.31-6.22-12.38-6.22-8.52,0-15.42,6.91-15.42,15.42v6.2s0,3.71-.73,6.47c-.35,1.32-1.01,2.97-1.6,4.33l8.77-5.85Z\" fill=\"#003057\"><\/path><path d=\"M35.45,58.05l1.3-.86,1.3.86,22.32,14.88v-11.87c.83,0,2.46-.57,2.46-.57l-5.81-19.92,2.73-1.72c-2.86-3.85-9.97-7.88-15.14-7.88-8.68,0-15.71,7.03-15.71,15.71v6.32s0,3.78-.75,6.59c-.36,1.35-1.03,3.03-1.63,4.41l8.93-5.96Z\" fill=\"#08b\"><\/path><path d=\"M57.02,40.62h-2.94l.15-2.36c-2.43-2.79-5.88-4.36-9.62-4.36-7.05,0-12.79,5.74-12.79,12.79v6.32c0,.17-.02,4.2-.85,7.34-.07.27-.16.56-.25.86l4.73-3.16,1.3-.86,1.3.86,22.32,14.88v-11.87c.83,0,2.46-.57,2.46-.57l-5.8-19.87Z\" fill=\"#003057\"><\/path><path d=\"M60.41,72.93l3.91,2.61c-2.14-3.86-6.49-12.73-7.2-22.15,0,0-6.49-2.01-9.07-6.01,0,0,7.85,1.68,11.09,2.76,0,0,.14,6.98,1.22,9.04,0,0,.69.57,1.23.93.54.36,1.23.61,1.23.61-.03-.22-.57-2.35-.86-5.2-.17-1.62-.15-3.48-.17-5.33-.08-5.93,0-12.23,0-12.23h-8.29c-.22,0-3.61,0-3.83.01-7.79.32-12.42,6.39-12.42,12.69v6.81\" fill=\"#08b\"><\/path><path d=\"M49.13,38.86c4.32,0,9.72,0,12.64,0,0-.57,0-.9,0-.9h-8.29c-.22,0-3.61,0-3.83.01-4.71.19-8.27,2.49-10.34,5.68.06-.08,3.63-4.79,9.81-4.79Z\" fill=\"#fff\"><\/path><rect x=\"37.15\" y=\"74.25\" width=\"2.6\" height=\"3.28\" fill=\"#003057\"><\/rect><rect x=\"33\" y=\"74.25\" width=\"2.6\" height=\"3.28\" fill=\"#003057\"><\/rect><rect x=\"37.15\" y=\"79.07\" width=\"2.6\" height=\"3.28\" fill=\"#003057\"><\/rect><rect x=\"33\" y=\"79.07\" width=\"2.6\" height=\"3.28\" fill=\"#003057\"><\/rect><polygon points=\"37.22 66.42 28.53 72.22 37.24 68.76 57.61 82.34 61.1 82.34 37.22 66.42\" fill=\"#08b\"><\/polygon><polygon points=\"64.2 82.34 71.41 82.34 70.76 81.9 37.54 59.75 37.22 59.54 36.9 59.75 16.35 73.45 14.78 74.5 16.67 74.5 21.84 74.5 22.01 74.5 22.16 74.41 37.22 64.35 64.2 82.34\" fill=\"#9ea6b4\"><\/polygon><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-15ea09a e-flex e-con-boxed e-con e-parent\" data-id=\"15ea09a\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-451e24f animated-fast e-con-full e-flex elementor-invisible e-con e-child\" data-id=\"451e24f\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;,&quot;animation_delay&quot;:500}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1f2dcc3 elementor-widget__width-initial elementor-widget elementor-widget-heading\" data-id=\"1f2dcc3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Next steps for homeowners<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-338c425 elementor-widget elementor-widget-text-editor\" data-id=\"338c425\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Depending on what your roof needs, here\u2019s what you\u2019ll need to do:<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-74e46e3 e-grid animated-fast e-con-boxed elementor-invisible e-con e-child\" data-id=\"74e46e3\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;,&quot;animation_delay&quot;:500}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-9d227b3 e-con-full e-flex e-con e-child\" data-id=\"9d227b3\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-42df995 elementor-widget elementor-widget-spacer\" data-id=\"42df995\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-d0bcb7a e-con-full e-flex e-con e-child\" data-id=\"d0bcb7a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c80f384 elementor-widget elementor-widget-heading\" data-id=\"c80f384\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Repair<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-43034a4 elementor-widget elementor-widget-text-editor\" data-id=\"43034a4\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Contact a local roofing professional in your area and book an inspection of your roof. Don\u2019t be afraid to get a second opinion from a different contractor if the first one you call is unwilling to recommend repairs.<\/span><\/p><p><span style=\"font-weight: 400;\">\u00a0<\/span><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">All authorized Roof Maxx dealers can repair issues such as damaged shingles and nail pops as part of our roofing tune-up process.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">This also ensures that your shingles are able to absorb the Roof Maxx solution effectively if you decide to restore your roof at the same time and extend its lifespan.<\/span><\/li><\/ul><p><b>Learn More: <\/b><a href=\"https:\/\/roofmaxx.com\/learning-hub\/roof-repair-costs\/\"><span style=\"font-weight: 400;\">The Cost of Repairing Your Roof<\/span><\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-dcba803 e-grid animated-fast e-con-boxed elementor-invisible e-con e-child\" data-id=\"dcba803\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;,&quot;animation_delay&quot;:500}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-8d81962 e-con-full e-flex e-con e-child\" data-id=\"8d81962\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fe79c9a elementor-widget elementor-widget-spacer\" data-id=\"fe79c9a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0cfa0ec e-con-full e-flex e-con e-child\" data-id=\"0cfa0ec\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-674c9d5 elementor-widget elementor-widget-heading\" data-id=\"674c9d5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Restoration<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d14006f elementor-widget elementor-widget-text-editor\" data-id=\"d14006f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Reach out to a Roof Maxx dealer near you and schedule an appointment. Your dealer will visit your home to assess the condition of your roof and confirm whether it is a good candidate for our restoration process.<\/span><\/p><p><span style=\"font-weight: 400;\">\u00a0<\/span><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Roof Maxx uses a safe, all-natural solution to restore shingle flexibility and durability<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">This can extend the lifespan of asphalt shingles by up to 5 years per application, for a total of up to 15 additional years<\/span><\/li><\/ul><p><a href=\"https:\/\/roofmaxx.com\/find-a-dealer\/\"><span style=\"font-weight: 400;\">Find a Roof Maxx Dealer<\/span><\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5b00576 e-grid animated-fast e-con-full elementor-invisible e-con e-child\" data-id=\"5b00576\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;,&quot;animation_delay&quot;:500}\">\n\t\t<div class=\"elementor-element elementor-element-1dcf192 e-con-full e-flex e-con e-child\" data-id=\"1dcf192\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-bd47007 elementor-widget elementor-widget-spacer\" data-id=\"bd47007\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-448ea14 e-con-full e-flex e-con e-child\" data-id=\"448ea14\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-831b261 elementor-widget elementor-widget-heading\" data-id=\"831b261\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Replacement<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-05bf307 elementor-widget elementor-widget-text-editor\" data-id=\"05bf307\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">If your roof needs a complete replacement, you\u2019ll want to source several quotes from different contractors in your area and plan the necessary work well in advance.<\/span><\/p><p><span style=\"font-weight: 400;\">\u00a0<\/span><\/p><ul><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">Fully replacing a roof can be noisy, disruptive, and time consuming. Timelines often take days at minimum and can last over a week.<\/span><\/li><li style=\"font-weight: 400;\" aria-level=\"1\"><span style=\"font-weight: 400;\">The cost of a full roof replacement can be up to 80% more than restoration. Budget for your replacement in advance and make sure you understand the costs involved before committing.<\/span><\/li><\/ul><p><b>Learn More: <\/b><a href=\"https:\/\/roofmaxx.com\/learning-hub\/roof-replacement-cost-calculator\/\"><span style=\"font-weight: 400;\">Roof Replacement Cost Calculator<\/span><\/a><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-8f14181 e-flex e-con-boxed e-con e-parent\" data-id=\"8f14181\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2d65ee3 elementor-widget-divider--view-line_icon elementor-view-default elementor-widget-divider--element-align-center elementor-widget elementor-widget-divider\" data-id=\"2d65ee3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"divider.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-divider\">\n\t\t\t<span class=\"elementor-divider-separator\">\n\t\t\t\t\t\t\t<div class=\"elementor-icon elementor-divider__element\">\n\t\t\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" id=\"Layer_1\" viewBox=\"0 0 87.16 96.25\"><path d=\"M57.11,53.38s-6.49-2.01-9.07-6.01c0,0,.99,2.3,2.51,3.7,1.51,1.4,5.22,3.39,5.22,3.39,0,0,1.15,10.62,8.54,21.08-2.14-3.86-6.49-12.73-7.2-22.15Z\" fill=\"#fff\"><\/path><path d=\"M48.04,13.91c-20.86,0-37.78,16.91-37.78,37.78h0,0c.5,0,1,0,1.49,0h.75c4.79-.03,9.11-.43,13.01-1.09v-2.02c0-11.15,9.08-20.23,20.23-20.23,4.17,0,8.21,1.32,11.58,3.66,2.91-4.75,6.84-8.82,11.48-11.88-5.96-3.93-13.09-6.22-20.76-6.22Z\" fill=\"#08b\"><\/path><polygon points=\"10.27 51.69 10.27 51.69 10.27 51.68 10.27 51.69\" fill=\"#262c48\"><\/polygon><path d=\"M56.69,28.01s-11.09-6.23-22.17.38c-11.09,6.6-12.04,16.54-12.04,16.54,0,0-3.76,4.8-12.16,6.75.49,0,.97.01,1.45.01h.75c4.79-.03,9.11-.43,13.01-1.09v-2.02c0-11.15,9.08-20.23,20.23-20.23,4.17,0,8.21,1.32,11.58,3.66,2.91-4.75,6.84-8.82,11.48-11.88,0,0-7.63,3-12.12,7.88Z\" fill=\"#003057\"><\/path><path d=\"M35.94,58.32l1.27-.85,1.27.85,21.91,14.61v-11.66c.81,0,2.41-.56,2.41-.56l-5.71-19.56.2-3.2c-2.81-3.78-7.31-6.22-12.38-6.22-8.52,0-15.42,6.91-15.42,15.42v6.2s0,3.71-.73,6.47c-.35,1.32-1.01,2.97-1.6,4.33l8.77-5.85Z\" fill=\"#003057\"><\/path><path d=\"M35.45,58.05l1.3-.86,1.3.86,22.32,14.88v-11.87c.83,0,2.46-.57,2.46-.57l-5.81-19.92,2.73-1.72c-2.86-3.85-9.97-7.88-15.14-7.88-8.68,0-15.71,7.03-15.71,15.71v6.32s0,3.78-.75,6.59c-.36,1.35-1.03,3.03-1.63,4.41l8.93-5.96Z\" fill=\"#08b\"><\/path><path d=\"M57.02,40.62h-2.94l.15-2.36c-2.43-2.79-5.88-4.36-9.62-4.36-7.05,0-12.79,5.74-12.79,12.79v6.32c0,.17-.02,4.2-.85,7.34-.07.27-.16.56-.25.86l4.73-3.16,1.3-.86,1.3.86,22.32,14.88v-11.87c.83,0,2.46-.57,2.46-.57l-5.8-19.87Z\" fill=\"#003057\"><\/path><path d=\"M60.41,72.93l3.91,2.61c-2.14-3.86-6.49-12.73-7.2-22.15,0,0-6.49-2.01-9.07-6.01,0,0,7.85,1.68,11.09,2.76,0,0,.14,6.98,1.22,9.04,0,0,.69.57,1.23.93.54.36,1.23.61,1.23.61-.03-.22-.57-2.35-.86-5.2-.17-1.62-.15-3.48-.17-5.33-.08-5.93,0-12.23,0-12.23h-8.29c-.22,0-3.61,0-3.83.01-7.79.32-12.42,6.39-12.42,12.69v6.81\" fill=\"#08b\"><\/path><path d=\"M49.13,38.86c4.32,0,9.72,0,12.64,0,0-.57,0-.9,0-.9h-8.29c-.22,0-3.61,0-3.83.01-4.71.19-8.27,2.49-10.34,5.68.06-.08,3.63-4.79,9.81-4.79Z\" fill=\"#fff\"><\/path><rect x=\"37.15\" y=\"74.25\" width=\"2.6\" height=\"3.28\" fill=\"#003057\"><\/rect><rect x=\"33\" y=\"74.25\" width=\"2.6\" height=\"3.28\" fill=\"#003057\"><\/rect><rect x=\"37.15\" y=\"79.07\" width=\"2.6\" height=\"3.28\" fill=\"#003057\"><\/rect><rect x=\"33\" y=\"79.07\" width=\"2.6\" height=\"3.28\" fill=\"#003057\"><\/rect><polygon points=\"37.22 66.42 28.53 72.22 37.24 68.76 57.61 82.34 61.1 82.34 37.22 66.42\" fill=\"#08b\"><\/polygon><polygon points=\"64.2 82.34 71.41 82.34 70.76 81.9 37.54 59.75 37.22 59.54 36.9 59.75 16.35 73.45 14.78 74.5 16.67 74.5 21.84 74.5 22.01 74.5 22.16 74.41 37.22 64.35 64.2 82.34\" fill=\"#9ea6b4\"><\/polygon><\/svg><\/div>\n\t\t\t\t\t\t<\/span>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-97b203c e-flex e-con-boxed e-con e-parent\" data-id=\"97b203c\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-e6bd76e animated-fast e-flex e-con-boxed elementor-invisible e-con e-child\" data-id=\"e6bd76e\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;animation&quot;:&quot;fadeIn&quot;,&quot;animation_delay&quot;:500}\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7def14a elementor-widget elementor-widget-heading\" data-id=\"7def14a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">Frequently asked questions<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-cc5ea6a e-flex e-con-boxed e-con e-child\" data-id=\"cc5ea6a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-db84091 e-con-full e-flex e-con e-child\" data-id=\"db84091\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-40d9245 elementor-widget elementor-widget-n-accordion\" data-id=\"40d9245\" data-element_type=\"widget\" data-e-type=\"widget\" data-settings=\"{&quot;default_state&quot;:&quot;all_collapsed&quot;,&quot;max_items_expended&quot;:&quot;one&quot;,&quot;n_accordion_animation_duration&quot;:{&quot;unit&quot;:&quot;ms&quot;,&quot;size&quot;:400,&quot;sizes&quot;:[]}}\" data-widget_type=\"nested-accordion.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"e-n-accordion\" aria-label=\"Accordion. Open links with Enter or Space, close with Escape, and navigate with Arrow Keys\">\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-6790\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"1\" tabindex=\"0\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-6790\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><h3 class=\"e-n-accordion-item-title-text\"> How do I know if my roof is a good candidate for restoration? <\/h3><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus-circle\" viewBox=\"0 0 512 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm144 276c0 6.6-5.4 12-12 12h-92v92c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12v-92h-92c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h92v-92c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v92h92c6.6 0 12 5.4 12 12v56z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-6790\" class=\"elementor-element elementor-element-6443c7f e-con-full e-flex e-con e-child\" data-id=\"6443c7f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f800c2a elementor-widget elementor-widget-text-editor\" data-id=\"f800c2a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">The best candidates for restoration are asphalt or composite shingle roofs that are aging but still structurally intact (typically between 10 and 20 years old). If your shingles are curling, losing granules, or drying out but haven&#8217;t reached widespread failure, restoration may be a more cost-effective option than replacement. A Roof Maxx dealer can inspect your roof in person to make a definitive assessment before recommending treatment.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-6791\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"2\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-6791\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><h3 class=\"e-n-accordion-item-title-text\"> Can roof restoration still work on damaged shingles? <\/h3><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus-circle\" viewBox=\"0 0 512 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm144 276c0 6.6-5.4 12-12 12h-92v92c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12v-92h-92c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h92v-92c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v92h92c6.6 0 12 5.4 12 12v56z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-6791\" class=\"elementor-element elementor-element-c29a1cc e-con-full e-flex e-con e-child\" data-id=\"c29a1cc\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-5aed1fb elementor-widget elementor-widget-text-editor\" data-id=\"5aed1fb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Roof restoration is intended to restore the flexibility and durability of shingles that are aging but otherwise structurally sound. For this reason, effective restoration treatments like Roof Maxx use a two-part process that involves a tune-up for minor roofing damage before the restoration product is applied. Your dealer will find and fix lightly damaged shingles, nail pops, and other small issues before spraying your shingles with the Roof Maxx product. This ensures that there are no underlying problems that could undercut the ability of your newly restored roof to protect your home properly.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-6792\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"3\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-6792\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><h3 class=\"e-n-accordion-item-title-text\"> What if I'm not sure how old my roof is? <\/h3><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus-circle\" viewBox=\"0 0 512 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm144 276c0 6.6-5.4 12-12 12h-92v92c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12v-92h-92c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h92v-92c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v92h92c6.6 0 12 5.4 12 12v56z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-6792\" class=\"elementor-element elementor-element-3e4e71f e-con-full e-flex e-con e-child\" data-id=\"3e4e71f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-c30503f elementor-widget elementor-widget-text-editor\" data-id=\"c30503f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Roof age is one of the most important factors in determining your options, but it\u2019s hard to determine if you bought a previously-owned home. A few ways to find out: check your home inspection report, look at past permit records with your local building department, or ask a roofing professional to estimate age based on the shingles&#8217; condition. In the meantime, visible signs like granule loss, brittleness, and curling edges can serve as helpful proxies.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t\t<details id=\"e-n-accordion-item-6793\" class=\"e-n-accordion-item\" >\n\t\t\t\t<summary class=\"e-n-accordion-item-title\" data-accordion-index=\"4\" tabindex=\"-1\" aria-expanded=\"false\" aria-controls=\"e-n-accordion-item-6793\" >\n\t\t\t\t\t<span class='e-n-accordion-item-title-header'><h3 class=\"e-n-accordion-item-title-text\"> My roof has moss or algae on it. Does that mean I need a replacement? <\/h3><\/span>\n\t\t\t\t\t\t\t<span class='e-n-accordion-item-title-icon'>\n\t\t\t<span class='e-opened' ><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-minus\" viewBox=\"0 0 448 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M416 208H32c-17.67 0-32 14.33-32 32v32c0 17.67 14.33 32 32 32h384c17.67 0 32-14.33 32-32v-32c0-17.67-14.33-32-32-32z\"><\/path><\/svg><\/span>\n\t\t\t<span class='e-closed'><svg aria-hidden=\"true\" class=\"e-font-icon-svg e-fas-plus-circle\" viewBox=\"0 0 512 512\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\"><path d=\"M256 8C119 8 8 119 8 256s111 248 248 248 248-111 248-248S393 8 256 8zm144 276c0 6.6-5.4 12-12 12h-92v92c0 6.6-5.4 12-12 12h-56c-6.6 0-12-5.4-12-12v-92h-92c-6.6 0-12-5.4-12-12v-56c0-6.6 5.4-12 12-12h92v-92c0-6.6 5.4-12 12-12h56c6.6 0 12 5.4 12 12v92h92c6.6 0 12 5.4 12 12v56z\"><\/path><\/svg><\/span>\n\t\t<\/span>\n\n\t\t\t\t\t\t<\/summary>\n\t\t\t\t<div role=\"region\" aria-labelledby=\"e-n-accordion-item-6793\" class=\"elementor-element elementor-element-017e392 e-con-full e-flex e-con e-child\" data-id=\"017e392\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1ea6e46 elementor-widget elementor-widget-text-editor\" data-id=\"1ea6e46\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t<p><span style=\"font-weight: 400;\">Not necessarily. Moss and algae are common in humid or shaded climates and don&#8217;t automatically indicate structural damage. However, they shouldn&#8217;t be ignored \u2014 moss in particular can retain moisture and accelerate shingle deterioration over time. In many cases, growth can be treated and cleaned before restoration is applied. Your roofing professional can assess whether the underlying shingles are still sound. <\/span><a href=\"https:\/\/roofmaxx.com\/learning-hub\/remove-algae-and-mold-from-roof\/\"><span style=\"font-weight: 400;\">Learn more about removing moss, mold, and algae from your roof<\/span><\/a><span style=\"font-weight: 400;\">.<\/span><\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/details>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t<script type=\"application\/ld+json\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"How do I know if my roof is a good candidate for restoration?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"The best candidates for restoration are asphalt or composite shingle roofs that are aging but still structurally intact (typically between 10 and 20 years old). If your shingles are curling, losing granules, or drying out but haven&#8217;t reached widespread failure, restoration may be a more cost-effective option than replacement. A Roof Maxx dealer can inspect your roof in person to make a definitive assessment before recommending treatment.\"}},{\"@type\":\"Question\",\"name\":\"Can roof restoration still work on damaged shingles?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Roof restoration is intended to restore the flexibility and durability of shingles that are aging but otherwise structurally sound. For this reason, effective restoration treatments like Roof Maxx use a two-part process that involves a tune-up for minor roofing damage before the restoration product is applied. Your dealer will find and fix lightly damaged shingles, nail pops, and other small issues before spraying your shingles with the Roof Maxx product. This ensures that there are no underlying problems that could undercut the ability of your newly restored roof to protect your home properly.\"}},{\"@type\":\"Question\",\"name\":\"What if I'm not sure how old my roof is?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Roof age is one of the most important factors in determining your options, but it\\u2019s hard to determine if you bought a previously-owned home. A few ways to find out: check your home inspection report, look at past permit records with your local building department, or ask a roofing professional to estimate age based on the shingles&#8217; condition. In the meantime, visible signs like granule loss, brittleness, and curling edges can serve as helpful proxies.\"}},{\"@type\":\"Question\",\"name\":\"My roof has moss or algae on it. Does that mean I need a replacement?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Not necessarily. Moss and algae are common in humid or shaded climates and don&#8217;t automatically indicate structural damage. However, they shouldn&#8217;t be ignored \\u2014 moss in particular can retain moisture and accelerate shingle deterioration over time. In many cases, growth can be treated and cleaned before restoration is applied. Your roofing professional can assess whether the underlying shingles are still sound. Learn more about removing moss, mold, and algae from your roof.\"}}]}<\/script>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Next steps for homeowners Depending on what your roof needs, here\u2019s what you\u2019ll need to do: Repair Contact a local roofing professional in your area and book an inspection of your roof. Don\u2019t be afraid to get a second opinion from a different contractor if the first one you call is unwilling to recommend repairs. [&hellip;]<\/p>\n","protected":false},"author":6,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"class_list":["post-13328","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.3) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Test | Roof Maxx<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/roofmaxx.com\/learning-hub\/test\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Test\" \/>\n<meta property=\"og:description\" content=\"Next steps for homeowners Depending on what your roof needs, here\u2019s what you\u2019ll need to do: Repair Contact a local roofing professional in your area and book an inspection of your roof. Don\u2019t be afraid to get a second opinion from a different contractor if the first one you call is unwilling to recommend repairs. [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/roofmaxx.com\/learning-hub\/test\/\" \/>\n<meta property=\"og:site_name\" content=\"Roof Maxx\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/RoofMaxx\" \/>\n<meta property=\"article:modified_time\" content=\"2026-03-24T16:37:32+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/roofmaxx.com\/learning-hub\/wp-content\/uploads\/2025\/11\/social-image-roof-maxx.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"676\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"5 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/test\\\/\",\"url\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/test\\\/\",\"name\":\"Test | Roof Maxx\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/test\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/test\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/roof-maxx-icon-light-bg.svg\",\"datePublished\":\"2025-08-12T12:55:03+00:00\",\"dateModified\":\"2026-03-24T16:37:32+00:00\",\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/test\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/test\\\/#primaryimage\",\"url\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/roof-maxx-icon-light-bg.svg\",\"contentUrl\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/wp-content\\\/uploads\\\/2025\\\/10\\\/roof-maxx-icon-light-bg.svg\",\"width\":87,\"height\":96},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/#website\",\"url\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/\",\"name\":\"Roof Maxx\",\"description\":\"The Best Roof Repair &amp; Roof Restoration Treatment\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/roofmaxx.com\\\/learning-hub\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Test | Roof Maxx","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/roofmaxx.com\/learning-hub\/test\/","og_locale":"en_US","og_type":"article","og_title":"Test","og_description":"Next steps for homeowners Depending on what your roof needs, here\u2019s what you\u2019ll need to do: Repair Contact a local roofing professional in your area and book an inspection of your roof. Don\u2019t be afraid to get a second opinion from a different contractor if the first one you call is unwilling to recommend repairs. [&hellip;]","og_url":"https:\/\/roofmaxx.com\/learning-hub\/test\/","og_site_name":"Roof Maxx","article_publisher":"https:\/\/www.facebook.com\/RoofMaxx","article_modified_time":"2026-03-24T16:37:32+00:00","og_image":[{"width":1200,"height":676,"url":"https:\/\/roofmaxx.com\/learning-hub\/wp-content\/uploads\/2025\/11\/social-image-roof-maxx.jpg","type":"image\/jpeg"}],"twitter_misc":{"Est. reading time":"5 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/roofmaxx.com\/learning-hub\/test\/","url":"https:\/\/roofmaxx.com\/learning-hub\/test\/","name":"Test | Roof Maxx","isPartOf":{"@id":"https:\/\/roofmaxx.com\/learning-hub\/#website"},"primaryImageOfPage":{"@id":"https:\/\/roofmaxx.com\/learning-hub\/test\/#primaryimage"},"image":{"@id":"https:\/\/roofmaxx.com\/learning-hub\/test\/#primaryimage"},"thumbnailUrl":"https:\/\/roofmaxx.com\/learning-hub\/wp-content\/uploads\/2025\/10\/roof-maxx-icon-light-bg.svg","datePublished":"2025-08-12T12:55:03+00:00","dateModified":"2026-03-24T16:37:32+00:00","inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/roofmaxx.com\/learning-hub\/test\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/roofmaxx.com\/learning-hub\/test\/#primaryimage","url":"https:\/\/roofmaxx.com\/learning-hub\/wp-content\/uploads\/2025\/10\/roof-maxx-icon-light-bg.svg","contentUrl":"https:\/\/roofmaxx.com\/learning-hub\/wp-content\/uploads\/2025\/10\/roof-maxx-icon-light-bg.svg","width":87,"height":96},{"@type":"WebSite","@id":"https:\/\/roofmaxx.com\/learning-hub\/#website","url":"https:\/\/roofmaxx.com\/learning-hub\/","name":"Roof Maxx","description":"The Best Roof Repair &amp; Roof Restoration Treatment","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/roofmaxx.com\/learning-hub\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/roofmaxx.com\/learning-hub\/wp-json\/wp\/v2\/pages\/13328","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/roofmaxx.com\/learning-hub\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/roofmaxx.com\/learning-hub\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/roofmaxx.com\/learning-hub\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/roofmaxx.com\/learning-hub\/wp-json\/wp\/v2\/comments?post=13328"}],"version-history":[{"count":64,"href":"https:\/\/roofmaxx.com\/learning-hub\/wp-json\/wp\/v2\/pages\/13328\/revisions"}],"predecessor-version":[{"id":15377,"href":"https:\/\/roofmaxx.com\/learning-hub\/wp-json\/wp\/v2\/pages\/13328\/revisions\/15377"}],"wp:attachment":[{"href":"https:\/\/roofmaxx.com\/learning-hub\/wp-json\/wp\/v2\/media?parent=13328"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}