{"id":4555,"date":"2026-02-03T02:31:28","date_gmt":"2026-02-03T02:31:28","guid":{"rendered":"https:\/\/prstaging1.wpengine.com\/?page_id=4555"},"modified":"2026-04-21T09:46:48","modified_gmt":"2026-04-21T09:46:48","slug":"storm-damage","status":"publish","type":"page","link":"https:\/\/premier-roofing.com\/storm-damage\/","title":{"rendered":"Storm Damage"},"content":{"rendered":"<p><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-1 fusion-flex-container has-pattern-background has-mask-background fusion-parallax-none nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-background-position-medium:center center;--awb-background-position-small:center center;--awb-border-color:var(--awb-color1);--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:0px;--awb-padding-right:0px;--awb-padding-bottom:120px;--awb-padding-left:0px;--awb-padding-top-medium:30px;--awb-padding-bottom-medium:70px;--awb-padding-top-small:20px;--awb-padding-right-small:20px;--awb-padding-bottom-small:25vh;--awb-padding-left-small:20px;--awb-margin-top:0px;--awb-margin-top-medium:0px;--awb-margin-bottom-medium:0px;--awb-margin-bottom-small:0px;--awb-min-height-small:500px;--awb-background-color:var(--awb-color4);--awb-background-image:url(&quot;https:\/\/premier-roofing.com\/wp-content\/uploads\/2026\/02\/Frame-286-2.avif&quot;);--awb-background-image-small:url(&#039;https:\/\/premier-roofing.com\/wp-content\/uploads\/2026\/02\/iPhone-16-3.avif&#039;);--awb-background-size:cover;--awb-flex-wrap:wrap;--awb-flex-wrap-medium:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:calc( 1200px + 0px );margin-left: calc(-0px \/ 2 );margin-right: calc(-0px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-0 fusion_builder_column_3_5 3_5 fusion-flex-column\" style=\"--awb-padding-right:30px;--awb-padding-left:30px;--awb-padding-top-medium:0px;--awb-padding-right-small:0px;--awb-padding-left-small:0px;--awb-bg-size:cover;--awb-width-large:60%;--awb-margin-top-large:85px;--awb-spacing-right-large:0px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:0px;--awb-width-medium:66.6666666667%;--awb-order-medium:0;--awb-margin-top-medium:30px;--awb-spacing-right-medium:20px;--awb-spacing-left-medium:40px;--awb-width-small:100%;--awb-order-small:0;--awb-margin-top-small:30px;--awb-spacing-right-small:0px;--awb-spacing-left-small:0px;\" data-scroll-devices=\"small-visibility,medium-visibility,large-visibility\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-1 fusion-sep-none fusion-title-text fusion-title-size-one\" style=\"--awb-text-color:var(--awb-color1);--awb-margin-bottom:0px;--awb-margin-top-small:0px;--awb-margin-right-small:0px;--awb-margin-bottom-small:0px;--awb-margin-left-small:0px;--awb-margin-top-medium:0px;--awb-margin-bottom-medium:0px;--awb-font-size:clamp(32px,3.75vw,55px);\"><h1 class=\"fusion-title-heading title-heading-left awb-responsive-type__disable\" style=\"margin:0;text-transform:capitalize;font-size:1em;line-height:1.2;\">Roof Storm Damage <br \/><span style=\"color: #fec80d;\">Signs &amp; What to Do<\/span><\/h1><\/div><div class=\"fusion-text fusion-text-1\" style=\"--awb-content-alignment:left;--awb-font-size:18px;--awb-line-height:1.3;--awb-text-color:var(--awb-color1);--awb-margin-top:20px;\"><p>Roof storm damage is rarely one single issue. It is the result of multiple forces hitting your home. You get clear guidance on what this damage truly means and the exact steps to take next without guessing.<\/p>\n<\/div><div>\n        <div class=\"ft-zip-search\">\n            <input  id=\"zipInput\" placeholder=\"Enter Your Zip Code\n\" maxlength=\"5\" \/>\n            <button id=\"zipGo\">Get Started<\/button>\n        <\/div>\n\n        <div id=\"zipError\"><\/div>\n\n<\/div><\/div><\/div><\/div><\/div><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-2 fusion-flex-container has-pattern-background has-mask-background nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:100px;--awb-padding-bottom:100px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:calc( 1200px + 80px );margin-left: calc(-80px \/ 2 );margin-right: calc(-80px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-1 fusion_builder_column_2_3 2_3 fusion-flex-column ft-post-col\" style=\"--awb-bg-size:cover;--awb-width-large:66.6666666667%;--awb-margin-top-large:0px;--awb-spacing-right-large:15px;--awb-margin-bottom-large:20px;--awb-spacing-left-large:40px;--awb-width-medium:66.6666666667%;--awb-order-medium:0;--awb-spacing-right-medium:15px;--awb-spacing-left-medium:40px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:40px;--awb-spacing-left-small:40px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-2 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-text-color:var(--awb-color5);--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:10px;--awb-margin-left-small:0px;--awb-font-size:34px;\"><h2 class=\"fusion-title-heading title-heading-left\" style=\"margin:0;text-transform:capitalize;font-size:1em;line-height:1.25;\">Signs You May Have Storm Damage<\/h2><\/div><div class=\"fusion-text fusion-text-2\"><p>Storm damage signs often appear outside immediately. You might see:<\/p>\n<ul>\n<li><strong>Shingles or debris scattered in your yard<\/strong><\/li>\n<li><strong>Granules collecting heavily in the gutters.<\/strong><\/li>\n<\/ul>\n<p>But sometimes, the worst signs show up inside days or weeks later. Watch for:<\/p>\n<ul>\n<li><strong>New ceiling stains<\/strong><\/li>\n<li><strong>Wall discoloration<\/strong><\/li>\n<li><strong>Unexpected moisture in the attic.<\/strong><\/li>\n<\/ul>\n<p>When you spot any of these red flags, you need a professional roof storm damage assessment right away. Ignoring small issues now means facing expensive structural repairs later. You secure your home&#8217;s integrity when you act quickly.<\/p>\n<\/div><div class=\"fusion-image-element \" style=\"--awb-margin-top:10px;--awb-margin-bottom:30px;--awb-caption-title-font-family:var(--h2_typography-font-family);--awb-caption-title-font-weight:var(--h2_typography-font-weight);--awb-caption-title-font-style:var(--h2_typography-font-style);--awb-caption-title-size:var(--h2_typography-font-size);--awb-caption-title-transform:var(--h2_typography-text-transform);--awb-caption-title-line-height:var(--h2_typography-line-height);--awb-caption-title-letter-spacing:var(--h2_typography-letter-spacing);\"><span class=\" fusion-imageframe imageframe-none imageframe-1 hover-type-none\"><img decoding=\"async\" width=\"1052\" height=\"480\" src=\"https:\/\/premier-roofing.com\/wp-content\/uploads\/2026\/02\/Frame-2811.avif\" alt class=\"img-responsive wp-image-4556\" srcset=\"https:\/\/premier-roofing.com\/wp-content\/uploads\/2026\/02\/Frame-2811-200x91.avif 200w, https:\/\/premier-roofing.com\/wp-content\/uploads\/2026\/02\/Frame-2811-400x183.avif 400w, https:\/\/premier-roofing.com\/wp-content\/uploads\/2026\/02\/Frame-2811-600x274.avif 600w, https:\/\/premier-roofing.com\/wp-content\/uploads\/2026\/02\/Frame-2811-800x365.avif 800w, https:\/\/premier-roofing.com\/wp-content\/uploads\/2026\/02\/Frame-2811.avif 1052w\" sizes=\"(max-width: 640px) 100vw, 800px\" \/><\/span><\/div><div class=\"fusion-title title fusion-title-3 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-text-color:var(--awb-color5);--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:10px;--awb-margin-left-small:0px;--awb-font-size:34px;\"><h2 class=\"fusion-title-heading title-heading-left\" style=\"margin:0;text-transform:capitalize;font-size:1em;line-height:1.25;\">What to Do Right After a Storm Hits<\/h2><\/div><div class=\"fusion-text fusion-text-3\"><p>efore the next storm season hits, take a moment to review your roof insurance policy so you know exactly what\u2019s covered\u2014and what\u2019s not. Understanding key terms like recoverable depreciation roof and roof actual cash value can make all the difference when it comes to filing a successful claim.<\/p>\n<p>At Premier Roofing, we\u2019re more than contractors\u2014we\u2019re your trusted local advocates. Our team simplifies the insurance process, manages all documentation, and ensures your home gets the full protection it deserves. Whether you need guidance on your coverage or a detailed inspection after a storm, we\u2019re here to help every step of the way.<\/p>\n<\/div><div ><a class=\"fusion-button button-flat button-xlarge button-custom fusion-button-default button-1 fusion-button-default-span fusion-button-default-type\" style=\"--button_accent_color:var(--awb-color1);--button_accent_hover_color:var(--awb-color4);--button_border_hover_color:var(--awb-color3);--button_gradient_top_color:var(--awb-color5);--button_gradient_bottom_color:var(--awb-color5);--button_gradient_top_color_hover:var(--awb-color3);--button_gradient_bottom_color_hover:var(--awb-color3);--button_margin-bottom:30px;\" target=\"_self\" href=\"\/get-a-quote\/\"><span class=\"fusion-button-text awb-button__text awb-button__text--default\">Get a FREE Inspection<\/span><\/a><\/div><div class=\"fusion-title title fusion-title-4 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-text-color:var(--awb-color5);--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:10px;--awb-margin-left-small:0px;--awb-font-size:34px;\"><h2 class=\"fusion-title-heading title-heading-left\" style=\"margin:0;text-transform:capitalize;font-size:1em;line-height:1.25;\">How Premier Roofing Approaches Storm Damage<\/h2><\/div><div class=\"fusion-text fusion-text-4\"><p>You get a thorough roof inspection focused on hidden wind, hail, and water damage, we never do simple spot checks. We clearly document every detail with photos and honest reports. This full picture gives you peace of mind and <a href=\"\/storm-damage-roof-insurance-claims\/\">simplifies your insurance claim<\/a>. You handle the complex process of storm damage restoration with confidence.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-5 fusion-sep-none fusion-title-text fusion-title-size-three\" style=\"--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:10px;--awb-margin-left-small:0px;--awb-font-size:26px;\"><h3 class=\"fusion-title-heading title-heading-left\" style=\"margin:0;text-transform:capitalize;font-size:1em;line-height:1.25;\">Step 1 \u2013 Roof Inspection<\/h3><\/div><div class=\"fusion-text fusion-text-5\"><p>You need clarity after a storm, not expensive guesswork. We start with a thorough <a href=\"\/roof-inspection-after-a-wind-storm\/\">roof storm damage assessment<\/a>. We meticulously check for lifted shingles, impact marks, and vulnerable spots like flashing and vents. You get accurate documentation of water entry points or hidden issues, ensuring you only pay for necessary repairs and regain complete peace of mind.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-6 fusion-sep-none fusion-title-text fusion-title-size-three\" style=\"--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:10px;--awb-margin-left-small:0px;--awb-font-size:26px;\"><h3 class=\"fusion-title-heading title-heading-left\" style=\"margin:0;text-transform:capitalize;font-size:1em;line-height:1.25;\">Step 2 \u2013 Roof Repair<\/h3><\/div><div class=\"fusion-text fusion-text-6\"><p>You get an honest assessment, allowing you to invest in repairs only when they provide a genuine, long-term solution for your roof. You gain confidence knowing if replacing missing shingles, repairing flashing, or fixing limited hail damage is enough. This clarity protects your home from future leaks.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-7 fusion-sep-none fusion-title-text fusion-title-size-three\" style=\"--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:10px;--awb-margin-left-small:0px;--awb-font-size:26px;\"><h3 class=\"fusion-title-heading title-heading-left\" style=\"margin:0;text-transform:capitalize;font-size:1em;line-height:1.25;\">Step 3 \u2013 Roof Installation &amp; Replacement<\/h3><\/div><div class=\"fusion-text fusion-text-7\"><p>When a <a href=\"\/storm-damage-roof-insurance-claims\/\">severe storm damages<\/a> your roof&#8217;s ability to protect your home, replacement is often necessary. You get an honest assessment detailing whether repair or replacement is the path to long-term safety. A new roof immediately restores full protection and delivers lasting peace of mind, eliminating worries about future leaks.<\/p>\n<\/div><div class=\"fusion-title title fusion-title-8 fusion-sep-none fusion-title-text fusion-title-size-three\" style=\"--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:10px;--awb-margin-left-small:0px;--awb-font-size:26px;\"><h3 class=\"fusion-title-heading title-heading-left\" style=\"margin:0;text-transform:capitalize;font-size:1em;line-height:1.25;\">Step 4 \u2013 Insurance Claim Support<\/h3><\/div><div class=\"fusion-text fusion-text-8\"><p>Your gutters protect your home&#8217;s foundation. We clear debris, reseal seams, and install seamless systems with guards to handle heavy rain. <a href=\"\/gutters-and-your-roof\/\">Right-sized downspouts<\/a> prevent overflow, protecting your fascia and walkways from damaging ice and water. For reliable exterior work, trust our team for roofing in Des Moines.<\/p>\n<\/div><div ><a class=\"fusion-button button-flat button-xlarge button-custom fusion-button-default button-2 fusion-button-default-span fusion-button-default-type\" style=\"--button_accent_color:var(--awb-color1);--button_accent_hover_color:var(--awb-color4);--button_border_hover_color:var(--awb-color3);--button_gradient_top_color:var(--awb-color5);--button_gradient_bottom_color:var(--awb-color5);--button_gradient_top_color_hover:var(--awb-color3);--button_gradient_bottom_color_hover:var(--awb-color3);\" target=\"_self\" href=\"\/get-a-quote\/\"><span class=\"fusion-button-text awb-button__text awb-button__text--default\">Get a FREE Inspection<\/span><\/a><\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-2 awb-sticky awb-sticky-medium awb-sticky-large fusion_builder_column_1_3 1_3 fusion-flex-column ft-col-sidebar-map\" style=\"--awb-bg-size:cover;--awb-width-large:33.3333333333%;--awb-margin-top-large:0px;--awb-spacing-right-large:40px;--awb-margin-bottom-large:20px;--awb-spacing-left-large:15px;--awb-width-medium:33.3333333333%;--awb-order-medium:0;--awb-spacing-right-medium:40px;--awb-spacing-left-medium:15px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:40px;--awb-spacing-left-small:40px;--awb-sticky-offset:150px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"ft-post-sidebar-form\">\n<div class=\"ft-post-sidebar-form--title\">\nGet a FREE quote from Premier Roofing\n<\/div>\n        <div class=\"ft-zip-search\" data-style=\"2\">\n            <input  id=\"zipInput\" placeholder=\"Enter Zip Code\" maxlength=\"5\" \/>\n            <button id=\"zipGo\">Get Started<\/button>\n        <\/div>\n\n        <div id=\"zipError\"  data-style=\"2\"><\/div>\n\n<\/div>\n  <style>\n    \/* \u2705 \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0432\u0438\u0434, \u043d\u043e \u0443\u0431\u0438\u0440\u0430\u0435\u043c \u043b\u043e\u043c\u0430\u044e\u0449\u0435\u0435 margin-top:-500px.\n       \u0422\u0435\u043f\u0435\u0440\u044c \u043a\u0430\u0440\u0442\u0430 \u0432\u0441\u0435\u0433\u0434\u0430 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u0430\u044f, \u0430 \u0441\u043b\u0430\u0439\u0434\u0435\u0440 \u043d\u0430\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0432\u0435\u0440\u0445. *\/\n\n    #mapcode-1 .mapSection{\n      height:500px;\n      width:100%;\n      position:relative;\n      overflow:hidden; \/* \u0432\u0430\u0436\u043d\u043e \u0447\u0442\u043e\u0431\u044b \u0441\u043b\u0430\u0439\u0434\u0435\u0440 \u043d\u0435 \u043b\u043e\u043c\u0430\u043b \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0435 \u0431\u043b\u043e\u043a\u0438 *\/\n    }\n\n    #mapcode-1 .mapCanvas{\n      height:500px;\n      width:100%;\n      position:absolute;\n      inset:0;\n      z-index:0;\n    }\n\n    \/* Slider *\/\n    #mapcode-1 .slider{\n      height:500px;\n      width:0;\n      position:absolute;\n      top:0;\n      left:0;\n      z-index:2;\n      background-color:#d8d8d8;\n      overflow-x:hidden;\n      overflow-y:unset;\n      transition:0.5s;\n      color:white;\n    }\n\n    #mapcode-1 .slider.open{ width:350px; }\n\n    #mapcode-1 .closebtn{\n      float:right;\n      margin:0 20px 0 0;\n      font-size:36px;\n      color:#000;\n      text-decoration:none;\n      cursor:pointer;\n    }\n\n    #mapcode-1 .slider-content{ padding:20px; }\n\n    #mapcode-1 .directionsForm{ margin-bottom:10px; }\n    #mapcode-1 .directionsForm h2{ font-size:25px; margin-bottom:0; margin-top:10px; color:#000; }\n\n    #mapcode-1 ::placeholder{ color:#9b9b9b !important; opacity:1; }\n    #mapcode-1 ::-ms-input-placeholder{ color:#9b9b9b !important; }\n\n    #mapcode-1 .mapSection .slider input[type=\"text\"]{\n      margin:10px 0;\n      padding:10px;\n      border-radius:3px;\n      width:100%;\n      height:32px;\n      color:#000;\n    }\n\n    #mapcode-1 .mapSection .slider button{\n      padding:10px;\n      margin-top:5px;\n      width:100%;\n      cursor:pointer;\n    }\n\n    #mapcode-1 .bgclass{\n      background-color:#f1f1f1;\n      margin-top:15px;\n      padding:10px;\n      font-weight:bold;\n      color:#000;\n      border-radius:8px 8px 0 0;\n    }\n\n    #mapcode-1 .suggestedRoutes{ font-family:arial; font-size:13px; }\n    #mapcode-1 .route-option{\n      cursor:pointer;\n      padding:3px 10px;\n      color:#000;\n      background-color:#f1f1f1;\n      transition:background-color 0.3s;\n    }\n    #mapcode-1 .route-option:hover{ background-color:#e0e0e0; }\n\n    #mapcode-1 .directionsPanel{ margin-top:15px; font-size:13px; font-family:arial; }\n    #mapcode-1 .direction-step{ display:flex; align-items:center; margin:5px 0; padding:5px; cursor:pointer; }\n    #mapcode-1 .direction-step:hover{ background-color:#f0f0f0; }\n    #mapcode-1 .direction-icon{ width:20px; height:20px; margin-right:10px; }\n    #mapcode-1 .direction-text{ flex-grow:1; color:#000; }\n    #mapcode-1 .distance{ color:gray; margin-left:10px; }\n\n  <\/style>\n\n  <div id=\"mapcode-1\" class=\"mapcode-wrap\">\n    <div class=\"mapSection\">\n\n      <div class=\"slider\">\n        <a class=\"closebtn\" aria-label=\"Close directions\">&times;<\/a>\n\n        <div class=\"slider-content\">\n          <div class=\"directionsForm\">\n            <h2>Get your route and directions<\/h2>\n            <input class=\"start\" type=\"text\" placeholder=\"Enter starting location\" \/>\n            <button class=\"useLocation\" type=\"button\">Use my location<\/button>\n            <input class=\"end\" type=\"text\" placeholder=\"Enter destination\" \/>\n            <button class=\"calc\" type=\"button\">Get Directions<\/button>\n          <\/div>\n\n          <div class=\"suggestedRoutes\"><\/div>\n          <div class=\"directionsPanel\"><\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"mapCanvas\"><\/div>\n    <\/div>\n  <\/div>\n\n  <script>\n  (function(){\n    const root = document.getElementById(\"mapcode-1\");\n    if (!root) return;\n\n    const mapEl = root.querySelector('.mapCanvas');\n    const sliderEl = root.querySelector('.slider');\n    const closeBtn = root.querySelector('.closebtn');\n\n    const startInput = root.querySelector('.start');\n    const endInput   = root.querySelector('.end');\n    const btnCalc    = root.querySelector('.calc');\n    const btnLoc     = root.querySelector('.useLocation');\n\n    const suggestedRoutesDiv = root.querySelector('.suggestedRoutes');\n    const directionsPanel    = root.querySelector('.directionsPanel');\n\n    \/\/ Disable until API loaded\n    btnCalc.disabled = true;\n    btnLoc.disabled = true;\n\n    let map, directionsService, directionsRenderer, stepMarker, startMarker, endMarker, infoWindow;\n\n    const iconImg = \"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/mappin.png\";\n    const maneuverIcons = {\n      \"turn-left\":  \"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/left-e1726778020634.png\",\n      \"turn-right\": \"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/right-e1726777990418.png\",\n      \"default\":    \"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/straight.png\"    };\n\n    const predefinedLocations = [{\"lat\":35.1598705,\"lng\":-80.7421151,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/CHA-Building-Photo-1200x675.jpg\",\"title\":\"7504 Independence Blvd, #111. Charlotte, NC 28227\",\"name\":\"Premier Roofing Charlotte\",\"phone\":\"704-601-7663\",\"phonelink\":\"tel:+17046017663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/charlotte-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Charlotte roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=7504 Independence Blvd, #111. Charlotte, NC 28227, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":38.8385179,\"lng\":-104.7631209,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/COS-Building-Photo2-1200x675.jpg\",\"title\":\"406 Auburn Drive Colorado Springs, CO 80909\",\"name\":\"Premier Roofing Colorado\",\"phone\":\"719-637-7663\",\"phonelink\":\"tel:+17196377663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/colorado-springs-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Colorado roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=406 Auburn Drive Colorado Springs, CO 80909, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":32.8518336,\"lng\":-97.1652811,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/Dallas-City.png\",\"title\":\"315 Harwood Road Bedford, TX 76021\",\"name\":\"Premier Roofing Dallas\",\"phone\":\"214-390-7663\",\"phonelink\":\"tel:+12143907663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/dallas-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Dallas roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=315 Harwood Road Bedford, TX 76021, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":39.7291469,\"lng\":-105.0190749,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/DEN-Building-Photo-3-1200x675.jpg\",\"title\":\"2570 W. 8th Avenue Denver, CO 80204\",\"name\":\"Premier Roofing Denver\",\"phone\":\"303-233-7663\",\"phonelink\":\"tel:+13032337663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/denver-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Denver roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=2570 W. 8th Avenue Denver, CO 80204, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":41.6667795,\"lng\":-93.6828564,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/DMO-Building-Photo-1200x675.jpg\",\"title\":\"5501 NW Beaver Drive Johnston, IA 50131\",\"name\":\"Premier Roofing Des Moines\",\"phone\":\"515-276-7663\",\"phonelink\":\"tel:+15152767663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/des-moines-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Des Moines roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=5501 NW Beaver Drive Johnston, IA 50131, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":40.5804649,\"lng\":-105.0180739,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/FCO-Building-Photo-1200x675.jpg\",\"title\":\"3201 E. Mulberry St. Fort Collins, CO 80524\",\"name\":\"Premier Roofing Fort Collins\",\"phone\":\"970-484-7663\",\"phonelink\":\"tel:+19704847663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/fort-collins-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Fort Collins roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=3201 E. Mulberry St. Fort Collins, CO 80524, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":38.9426729,\"lng\":-94.5832157,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/KCI-Building-Photo-1200x675.jpg\",\"title\":\"10200 Holmes Rd Kansas City, MO 64131\",\"name\":\"Premier Roofing Kansas City\",\"phone\":\"816-254-7663\",\"phonelink\":\"tel:+18162547663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/kansas-city-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Kansas City roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=10200 Holmes Rd Kansas City, MO 64131, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":44.8588788,\"lng\":-93.3822571,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/MIN-Building-Photo-2-1200x675.jpg\",\"title\":\"5929 Baker Rd #450 Minnetonka, MN 55345\",\"name\":\"Premier Roofing Minneapolis\",\"phone\":\"612-445-7663\",\"phonelink\":\"tel:+16124457663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/minneapolis-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Minneapolis roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=5929 Baker Rd #450 Minnetonka, MN 55345, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":41.272304,\"lng\":-95.932632,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/OMA-Building-Photo-1200x675.jpg\",\"title\":\"1111 N. 13th Street #101 Omaha, NE 68102, OK 73134\",\"name\":\"Premier Roofing Omaha\",\"phone\":\"402-778-7663\",\"phonelink\":\"tel:+14027787663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/omaha-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Omaha roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=1111 N. 13th Street #101 Omaha, NE 68102, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":35.816289,\"lng\":-78.8140506,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/RAL-Building-Photo-1200x675.jpg\",\"title\":\"15000 Weston Pkwy #117 Cary, NC 27513\",\"name\":\"Premier Roofing Raleigh\",\"phone\":\"919-752-7663\",\"phonelink\":\"tel:+19197527663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/raleigh-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Raleigh roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=15000 Weston Pkwy #117 Cary, NC 27513, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":38.56118,\"lng\":-90.2988779,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/STL-Building-Photo-1200x675.jpg\",\"title\":\"11406 Gravois Rd. St. Louis, MO 63126\",\"name\":\"Premier Roofing St. Louis\",\"phone\":\"314-833-7663\",\"phonelink\":\"tel:+13148337663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/st-louis-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated St. Louis roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=11406 Gravois Rd, St. Louis, MO 63126, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":37.744838,\"lng\":-97.244755,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/WIC-Building-Photo-1200x675.jpg\",\"title\":\"8847 W Monroe Cir #300 Wichita, KS 67209\",\"name\":\"Premier Roofing Wichita\",\"phone\":\"316-710-7663\",\"phonelink\":\"tel:+13167107663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/wichita-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Wichita roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=8847 W Monroe Cir #300 Wichita, KS 67209, United States\\\\\\\">Get Directions<\\\/a>\"}];\n\n    function openSlider(){\n      sliderEl.classList.add('open');\n    }\n    function closeSlider(){\n      sliderEl.classList.remove('open');\n    }\n\n    function getManeuverIcon(maneuver){\n      return maneuverIcons[maneuver] || maneuverIcons.default;\n    }\n\n    function addPredefinedLocations(){\n      predefinedLocations.forEach(location => {\n        const marker = new google.maps.Marker({\n          position: { lat: Number(location.lat), lng: Number(location.lng) },\n          map,\n          title: location.title || '',\n          icon: {\n            url: iconImg,\n            scaledSize: new google.maps.Size(40, 40)\n          }\n        });\n\n        const infoContent = `\n          <div style=\"max-width: 650px;\">\n            <center><img decoding=\"async\" src=\"${location.imageUrl}\" alt=\"${location.title}\" style=\"width: 50%; height: auto; border-radius: 5px;\"><\/center>\n            <h4 style=\"color: #0082CA;font-size: 16px;font-family: arial;text-transform: uppercase;font-weight: bold;\">\n              <a href=\"${location.url}\">${location.name}<\/a>\n            <\/h4>\n            <h3>${location.title}<\/h3>\n            <label><a href=\"${location.phonelink}\" target=\"_blank\" rel=\"noopener\">${location.phone}<\/a><\/label>\n            <p style=\"margin: 10px 0 0;\">${location.description}<\/p>\n          <\/div>\n        `;\n\n        marker.addListener('click', function() {\n          infoWindow.setContent(infoContent);\n          infoWindow.open(map, marker);\n        });\n      });\n    }\n\n    function displaySuggestedRoutes(routes, fullResult){\n      suggestedRoutesDiv.innerHTML = '<div class=\"bgclass\"><label>Suggested routes:<\/label><\/div>';\n\n      routes.forEach((route, index) => {\n        const distance = route.legs?.[0]?.distance?.text || '';\n        const duration = route.legs?.[0]?.duration?.text || '';\n        const summary  = route.summary || '';\n\n        const routeOption = document.createElement('div');\n        routeOption.className = 'route-option';\n        routeOption.textContent = `Route ${index + 1}: ${summary} - ${distance}, about ${duration}`;\n\n        routeOption.addEventListener('click', () => {\n          directionsRenderer.setDirections(fullResult);\n          directionsRenderer.setRouteIndex(index);\n\n          const leg = fullResult.routes[index]?.legs?.[0];\n          if (leg) displayDirections(leg);\n\n          const endLocation = leg?.end_location;\n          if (endLocation) {\n            if (endMarker) endMarker.setMap(null);\n            endMarker = new google.maps.Marker({\n              position: endLocation,\n              map,\n              icon: { url: iconImg, scaledSize: new google.maps.Size(40, 40) },\n              title: \"Destination\"\n            });\n          }\n        });\n\n        suggestedRoutesDiv.appendChild(routeOption);\n      });\n    }\n\n    function displayDirections(leg){\n      directionsPanel.innerHTML = '';\n\n      if (!stepMarker) {\n        stepMarker = new google.maps.Marker({\n          map,\n          icon: {\n            url: 'https:\/\/maps.google.com\/mapfiles\/kml\/paddle\/blu-circle.png',\n            scaledSize: new google.maps.Size(30, 30)\n          }\n        });\n      }\n\n      leg.steps.forEach((step) => {\n        const directionStep = document.createElement('div');\n        directionStep.className = 'direction-step';\n\n        const icon = document.createElement('img');\n        icon.className = 'direction-icon';\n        icon.src = getManeuverIcon(step.maneuver);\n        directionStep.appendChild(icon);\n\n        const directionText = document.createElement('div');\n        directionText.className = 'direction-text';\n        directionText.innerHTML = step.instructions;\n        directionStep.appendChild(directionText);\n\n        const distance = document.createElement('div');\n        distance.className = 'distance';\n        distance.textContent = step.distance?.text || '';\n        directionStep.appendChild(distance);\n\n        directionStep.addEventListener('click', () => {\n          map.panTo(step.start_location);\n          map.setZoom(8);\n          stepMarker.setPosition(step.start_location);\n          stepMarker.setMap(map);\n        });\n\n        directionsPanel.appendChild(directionStep);\n      });\n    }\n\n    function calculateRoute(){\n      const start = (startInput.value || '').trim();\n      const end   = (endInput.value || '').trim();\n\n      if (!start || !end) { alert(\"Please fill both fields.\"); return; }\n\n      directionsService.route({\n        origin: start,\n        destination: end,\n        travelMode: google.maps.TravelMode.DRIVING,\n        provideRouteAlternatives: true\n      }, function(result, status){\n        if (status === google.maps.DirectionsStatus.OK) {\n          directionsRenderer.setDirections(result);\n\n          const routes = result.routes || [];\n          if (routes.length) {\n            displaySuggestedRoutes(routes, result);\n\n            const leg0 = routes[0]?.legs?.[0];\n            if (leg0) displayDirections(leg0);\n\n            \/\/ Markers\n            if (startMarker) startMarker.setMap(null);\n            if (endMarker) endMarker.setMap(null);\n\n            if (leg0?.start_location) {\n              startMarker = new google.maps.Marker({\n                position: leg0.start_location,\n                map,\n                icon: { url: 'https:\/\/maps.google.com\/mapfiles\/kml\/paddle\/grn-circle.png', scaledSize: new google.maps.Size(40, 40) },\n                title: \"Start Location\"\n              });\n            }\n\n            if (leg0?.end_location) {\n              endMarker = new google.maps.Marker({\n                position: leg0.end_location,\n                map,\n                icon: { url: iconImg, scaledSize: new google.maps.Size(40, 40) },\n                title: \"Destination\"\n              });\n            }\n          }\n\n          openSlider();\n        } else {\n          alert(\"Directions request failed due to \" + status);\n        }\n      });\n    }\n\n    function initMapInstance(){\n      map = new google.maps.Map(mapEl, {\n        center: { lat: 39.8283, lng: -98.5795 },\n        zoom: 5\n      });\n\n      directionsService = new google.maps.DirectionsService();\n      directionsRenderer = new google.maps.DirectionsRenderer({\n        map,\n        suppressMarkers: true,\n        polylineOptions: { strokeColor: 'blue', strokeWeight: 5 }\n      });\n\n      infoWindow = new google.maps.InfoWindow();\n\n      addPredefinedLocations();\n\n      btnCalc.disabled = false;\n      btnLoc.disabled = false;\n    }\n\n    function loadGoogleMapsOnce(){\n      if (window.__googleMapsLoading) return window.__googleMapsLoading;\n\n      window.__googleMapsLoading = new Promise((resolve, reject) => {\n        if (window.google && window.google.maps) { resolve(); return; }\n        const s = document.createElement('script');\n        s.src = \"https:\/\/maps.googleapis.com\/maps\/api\/js?key=AIzaSyDd5Y06dwvDqh_hzZVP_KBZ-gGfCwvEGQM\";\n        s.async = true;\n        s.onload = resolve;\n        s.onerror = reject;\n        document.head.appendChild(s);\n      });\n\n      return window.__googleMapsLoading;\n    }\n\n    closeBtn.addEventListener('click', closeSlider);\n    btnCalc.addEventListener('click', calculateRoute);\n\n    btnLoc.addEventListener('click', function(){\n      if (!navigator.geolocation) { alert(\"Geolocation is not supported by this browser.\"); return; }\n      navigator.geolocation.getCurrentPosition(function(pos){\n        const geocoder = new google.maps.Geocoder();\n        const latlng = { lat: pos.coords.latitude, lng: pos.coords.longitude };\n        geocoder.geocode({ location: latlng }, function(results, status){\n          if (status === 'OK' && results[0]) startInput.value = results[0].formatted_address;\n          else alert('Geocoder failed due to: ' + status);\n        });\n      }, function(err){\n        switch(err.code){\n          case err.PERMISSION_DENIED: alert(\"User denied the request for Geolocation.\"); break;\n          case err.POSITION_UNAVAILABLE: alert(\"Location information is unavailable.\"); break;\n          case err.TIMEOUT: alert(\"The request to get user location timed out.\"); break;\n          default: alert(\"An unknown error occurred.\"); break;\n        }\n      });\n    });\n\n    loadGoogleMapsOnce().then(initMapInstance).catch(() => console.error('Google Maps failed to load'));\n  })();\n  <\/script>\n\n  <\/div><\/div>\n<\/div><\/div><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-3 fusion-flex-container has-pattern-background has-mask-background nonhundred-percent-fullwidth non-hundred-percent-height-scrolling ft-home-content-testimonials ft-testimonials--slider\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:100px;--awb-padding-right:0px;--awb-padding-bottom:100px;--awb-padding-left:0px;--awb-padding-top-small:0px;--awb-padding-right-small:0px;--awb-padding-bottom-small:0px;--awb-padding-left-small:0px;--awb-background-color:#002d5d;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-center fusion-flex-content-wrap\" style=\"max-width:calc( 1200px + 80px );margin-left: calc(-80px \/ 2 );margin-right: calc(-80px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-3 fusion_builder_column_1_2 1_2 fusion-flex-column fusion-flex-align-self-stretch\" style=\"--awb-padding-top:70px;--awb-padding-bottom:70px;--awb-padding-top-small:50px;--awb-padding-right-small:20px;--awb-padding-bottom-small:50px;--awb-padding-left-small:20px;--awb-bg-size:cover;--awb-width-large:50%;--awb-margin-top-large:0px;--awb-spacing-right-large:40px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:40px;--awb-width-medium:50%;--awb-order-medium:0;--awb-spacing-right-medium:40px;--awb-spacing-left-medium:40px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:40px;--awb-spacing-left-small:40px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-center fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-9 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-text-color:#ffffff;--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:10px;--awb-margin-left-small:0px;--awb-font-size:clamp(32px,3.75vw,48px);\"><h2 class=\"fusion-title-heading title-heading-left awb-responsive-type__disable\" style=\"margin:0;text-transform:capitalize;font-size:1em;\">What our customers are saying about our Roofing services<\/h2><\/div><div class=\"fusion-text fusion-text-9\" style=\"--awb-font-size:18px;--awb-line-height:1.5;--awb-text-color:#ffffff;\"><p>Homeowners across the country choose Premier Roofing services for quality they can see and service they can trust. With thousands of successful projects and countless 5-star reviews, our reputation speaks for itself. From quick repairs to full roof replacements, customers praise our professionalism, honesty, and lasting results.<\/p>\n<\/div><div ><a class=\"fusion-button button-flat fusion-button-default-size button-custom fusion-button-default button-3 fusion-button-default-span fusion-button-default-type\" style=\"--button_accent_color:var(--awb-color7);--button_border_color:var(--awb-color7);--button_accent_hover_color:var(--awb-color4);--button_border_hover_color:var(--awb-color3);--button_gradient_top_color:#002d5d;--button_gradient_bottom_color:#002d5d;--button_gradient_top_color_hover:var(--awb-color3);--button_gradient_bottom_color_hover:var(--awb-color3);--button_font_size:18px;--button_margin-top:30px;\" target=\"_self\" href=\"https:\/\/share.google\/BYxp16mr2MWO7pw5r\" id=\"ft-dlpc20\"><span class=\"fusion-button-text awb-button__text awb-button__text--default\">See All Reviews <\/span><i class=\"fa-angle-right fas awb-button__icon awb-button__icon--default button-icon-right\" aria-hidden=\"true\"><\/i><\/a><\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-4 fusion_builder_column_1_2 1_2 fusion-flex-column fusion-flex-align-self-stretch ft-testimonials--slider--col\" style=\"--awb-padding-top:70px;--awb-padding-right:30px;--awb-padding-bottom:70px;--awb-padding-left:30px;--awb-padding-top-small:50px;--awb-padding-right-small:20px;--awb-padding-bottom-small:50px;--awb-padding-left-small:20px;--awb-overflow:hidden;--awb-bg-color:#0082ca;--awb-bg-color-hover:#0082ca;--awb-bg-size:cover;--awb-border-radius:50px 50px 50px 50px;--awb-width-large:50%;--awb-margin-top-large:0px;--awb-spacing-right-large:40px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:40px;--awb-width-medium:50%;--awb-order-medium:0;--awb-spacing-right-medium:40px;--awb-spacing-left-medium:40px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:40px;--awb-spacing-left-small:40px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-center fusion-content-layout-column\"><div class=\"fusion-testimonials clean awb-speech-bubble-show fusion-testimonials-1\" style=\"--awb-textcolor:var(--awb-color6);--awb-backgroundcolor:rgba(255,255,255,0);--awb-testimonial-border-style:solid;--awb-testimonial-border-color:var(--awb-color3);--awb-navigation-size:12px;--awb-border-top-left-radius:0px;--awb-border-top-right-radius:0px;--awb-border-bottom-left-radius:0px;--awb-border-bottom-right-radius:0px;--testimonial-border-width-top:0px;--testimonial-border-width-right:0px;--testimonial-border-width-bottom:0px;--testimonial-border-width-left:0px;\" data-random=\"0\" data-speed=\"4000\"><div class=\"reviews\"><div class=\"review active-testimonial avatar-above no-avatar\"><blockquote class=\"testimonials-shortcode-blockquote\"><div class=\"awb-quote\"><div class=\"awb-quote-content\">\n<p>We had a great experience with Premier Roofing and are very grateful for their fast, high-quality work. After a hailstorm caused significant damage, we delayed repairs because the insurance process felt overwhelming. Steve made everything easy by clearly explaining our roofing needs and guiding us through the insurance claim step by step. He answered all our questions and made the process stress-free. Steve also made selecting roofing options enjoyable and collaborative. His professionalism and guidance made a big difference, and we would absolutely recommend Premier Roofing.<\/p>\n<\/div><\/div><\/blockquote><div class=\"author\"><span class=\"company-name\"><strong>Abby Tinberg<\/strong>, <span>Minneapolis, MN<\/span><\/span><\/div><\/div><div class=\"review avatar-above no-avatar\"><blockquote class=\"testimonials-shortcode-blockquote\"><div class=\"awb-quote\"><div class=\"awb-quote-content\">\n<p>Experienced a pretty significant storm and suspected some damage to my roof. A guy left a flyer at my house scheduled an appointment and got a new roof 3 weeks later. The Representative Alan Martin handled everything for me and kept in communication throughout the entire process. I have referred this company to anyone expressing interest in a roof without hesitation.<\/p>\n<\/div><\/div><\/blockquote><div class=\"author\"><span class=\"company-name\"><strong>J Harris<\/strong>, <span>Kansas City, KS<\/span><\/span><\/div><\/div><div class=\"review avatar-above no-avatar\"><blockquote class=\"testimonials-shortcode-blockquote\"><div class=\"awb-quote\"><div class=\"awb-quote-content\">\n<p>Chris Hodge of Premier Roofing was referred to me by a friend and was extremely professional and responsive throughout the entire process. He thoroughly inspected the roof, documented storm damage, and worked closely with the insurance adjuster to secure a full roof replacement. Chris kept me informed from contract to follow-up. The crew completed the installation in one day, painted vents and stacks to match the shingles, and performed exceptional cleanup. I\u2019ve since recommended Chris and Premier Roofing to friends and family.<\/p>\n<\/div><\/div><\/blockquote><div class=\"author\"><span class=\"company-name\"><strong>David Richards<\/strong>, <span>Denver, CO<\/span><\/span><\/div><\/div><\/div><div class=\"testimonial-pagination\" id=\"fusion-testimonials-1\"><a href=\"#\" aria-label=\"Testimonial Pagination\"  class=\"activeSlide\"><\/a><a href=\"#\" aria-label=\"Testimonial Pagination\" ><\/a><a href=\"#\" aria-label=\"Testimonial Pagination\" ><\/a><\/div><\/div><\/div><\/div><\/div><\/div><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-4 fusion-flex-container has-pattern-background has-mask-background fusion-parallax-none nonhundred-percent-fullwidth non-hundred-percent-height-scrolling ft-map-section\" style=\"--awb-background-position:center top;--awb-background-position-small:center center;--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:100px;--awb-padding-right:0px;--awb-padding-bottom:100px;--awb-padding-left:0px;--awb-padding-top-small:50px;--awb-padding-right-small:20px;--awb-padding-bottom-small:50px;--awb-padding-left-small:20px;--awb-margin-bottom:0px;--awb-background-color:#002d5d;--awb-background-image:url(&quot;https:\/\/premier-roofing.com\/wp-content\/uploads\/2025\/11\/Service-Area-1.png&quot;);--awb-background-image-small:url(&#039;https:\/\/premier-roofing.com\/wp-content\/uploads\/2025\/11\/Service-Area-m-1.png&#039;);--awb-background-size:cover;--awb-background-size-small:cover;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-center fusion-flex-content-wrap\" style=\"max-width:calc( 1200px + 0px );margin-left: calc(-0px \/ 2 );margin-right: calc(-0px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-5 fusion_builder_column_1_2 1_2 fusion-flex-column fusion-flex-align-self-stretch map-wraper\" style=\"--awb-padding-top:0px;--awb-padding-right:30px;--awb-padding-bottom:0px;--awb-padding-left:30px;--awb-padding-right-small:0px;--awb-padding-left-small:0px;--awb-overflow:hidden;--awb-bg-size:cover;--awb-width-large:50%;--awb-margin-top-large:0px;--awb-spacing-right-large:0px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:0px;--awb-width-medium:50%;--awb-order-medium:0;--awb-spacing-right-medium:0px;--awb-spacing-left-medium:0px;--awb-width-small:100%;--awb-order-small:2;--awb-spacing-right-small:0px;--awb-spacing-left-small:0px;\" data-scroll-devices=\"small-visibility,medium-visibility,large-visibility\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-center fusion-content-layout-column\"><div class=\"ft-map-container\">\n\n  <style>\n    \/* \u2705 \u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c \u0432\u043d\u0435\u0448\u043d\u0438\u0439 \u0432\u0438\u0434, \u043d\u043e \u0443\u0431\u0438\u0440\u0430\u0435\u043c \u043b\u043e\u043c\u0430\u044e\u0449\u0435\u0435 margin-top:-500px.\n       \u0422\u0435\u043f\u0435\u0440\u044c \u043a\u0430\u0440\u0442\u0430 \u0432\u0441\u0435\u0433\u0434\u0430 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u0430\u044f, \u0430 \u0441\u043b\u0430\u0439\u0434\u0435\u0440 \u043d\u0430\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u0432\u0435\u0440\u0445. *\/\n\n    #mapcode-2 .mapSection{\n      height:500px;\n      width:100%;\n      position:relative;\n      overflow:hidden; \/* \u0432\u0430\u0436\u043d\u043e \u0447\u0442\u043e\u0431\u044b \u0441\u043b\u0430\u0439\u0434\u0435\u0440 \u043d\u0435 \u043b\u043e\u043c\u0430\u043b \u0441\u043e\u0441\u0435\u0434\u043d\u0438\u0435 \u0431\u043b\u043e\u043a\u0438 *\/\n    }\n\n    #mapcode-2 .mapCanvas{\n      height:500px;\n      width:100%;\n      position:absolute;\n      inset:0;\n      z-index:0;\n    }\n\n    \/* Slider *\/\n    #mapcode-2 .slider{\n      height:500px;\n      width:0;\n      position:absolute;\n      top:0;\n      left:0;\n      z-index:2;\n      background-color:#d8d8d8;\n      overflow-x:hidden;\n      overflow-y:unset;\n      transition:0.5s;\n      color:white;\n    }\n\n    #mapcode-2 .slider.open{ width:350px; }\n\n    #mapcode-2 .closebtn{\n      float:right;\n      margin:0 20px 0 0;\n      font-size:36px;\n      color:#000;\n      text-decoration:none;\n      cursor:pointer;\n    }\n\n    #mapcode-2 .slider-content{ padding:20px; }\n\n    #mapcode-2 .directionsForm{ margin-bottom:10px; }\n    #mapcode-2 .directionsForm h2{ font-size:25px; margin-bottom:0; margin-top:10px; color:#000; }\n\n    #mapcode-2 ::placeholder{ color:#9b9b9b !important; opacity:1; }\n    #mapcode-2 ::-ms-input-placeholder{ color:#9b9b9b !important; }\n\n    #mapcode-2 .mapSection .slider input[type=\"text\"]{\n      margin:10px 0;\n      padding:10px;\n      border-radius:3px;\n      width:100%;\n      height:32px;\n      color:#000;\n    }\n\n    #mapcode-2 .mapSection .slider button{\n      padding:10px;\n      margin-top:5px;\n      width:100%;\n      cursor:pointer;\n    }\n\n    #mapcode-2 .bgclass{\n      background-color:#f1f1f1;\n      margin-top:15px;\n      padding:10px;\n      font-weight:bold;\n      color:#000;\n      border-radius:8px 8px 0 0;\n    }\n\n    #mapcode-2 .suggestedRoutes{ font-family:arial; font-size:13px; }\n    #mapcode-2 .route-option{\n      cursor:pointer;\n      padding:3px 10px;\n      color:#000;\n      background-color:#f1f1f1;\n      transition:background-color 0.3s;\n    }\n    #mapcode-2 .route-option:hover{ background-color:#e0e0e0; }\n\n    #mapcode-2 .directionsPanel{ margin-top:15px; font-size:13px; font-family:arial; }\n    #mapcode-2 .direction-step{ display:flex; align-items:center; margin:5px 0; padding:5px; cursor:pointer; }\n    #mapcode-2 .direction-step:hover{ background-color:#f0f0f0; }\n    #mapcode-2 .direction-icon{ width:20px; height:20px; margin-right:10px; }\n    #mapcode-2 .direction-text{ flex-grow:1; color:#000; }\n    #mapcode-2 .distance{ color:gray; margin-left:10px; }\n\n  <\/style>\n\n  <div id=\"mapcode-2\" class=\"mapcode-wrap\">\n    <div class=\"mapSection\">\n\n      <div class=\"slider\">\n        <a class=\"closebtn\" aria-label=\"Close directions\">&times;<\/a>\n\n        <div class=\"slider-content\">\n          <div class=\"directionsForm\">\n            <h2>Get your route and directions<\/h2>\n            <input class=\"start\" type=\"text\" placeholder=\"Enter starting location\" \/>\n            <button class=\"useLocation\" type=\"button\">Use my location<\/button>\n            <input class=\"end\" type=\"text\" placeholder=\"Enter destination\" \/>\n            <button class=\"calc\" type=\"button\">Get Directions<\/button>\n          <\/div>\n\n          <div class=\"suggestedRoutes\"><\/div>\n          <div class=\"directionsPanel\"><\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"mapCanvas\"><\/div>\n    <\/div>\n  <\/div>\n\n  <script>\n  (function(){\n    const root = document.getElementById(\"mapcode-2\");\n    if (!root) return;\n\n    const mapEl = root.querySelector('.mapCanvas');\n    const sliderEl = root.querySelector('.slider');\n    const closeBtn = root.querySelector('.closebtn');\n\n    const startInput = root.querySelector('.start');\n    const endInput   = root.querySelector('.end');\n    const btnCalc    = root.querySelector('.calc');\n    const btnLoc     = root.querySelector('.useLocation');\n\n    const suggestedRoutesDiv = root.querySelector('.suggestedRoutes');\n    const directionsPanel    = root.querySelector('.directionsPanel');\n\n    \/\/ Disable until API loaded\n    btnCalc.disabled = true;\n    btnLoc.disabled = true;\n\n    let map, directionsService, directionsRenderer, stepMarker, startMarker, endMarker, infoWindow;\n\n    const iconImg = \"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2024\\\/08\\\/mappin.png\";\n    const maneuverIcons = {\n      \"turn-left\":  \"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/left-e1726778020634.png\",\n      \"turn-right\": \"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/right-e1726777990418.png\",\n      \"default\":    \"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2024\\\/09\\\/straight.png\"    };\n\n    const predefinedLocations = [{\"lat\":35.1598705,\"lng\":-80.7421151,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/CHA-Building-Photo-1200x675.jpg\",\"title\":\"7504 Independence Blvd, #111. Charlotte, NC 28227\",\"name\":\"Premier Roofing Charlotte\",\"phone\":\"704-601-7663\",\"phonelink\":\"tel:+17046017663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/charlotte-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Charlotte roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=7504 Independence Blvd, #111. Charlotte, NC 28227, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":38.8385179,\"lng\":-104.7631209,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/10\\\/COS-Building-Photo2-1200x675.jpg\",\"title\":\"406 Auburn Drive Colorado Springs, CO 80909\",\"name\":\"Premier Roofing Colorado\",\"phone\":\"719-637-7663\",\"phonelink\":\"tel:+17196377663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/colorado-springs-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Colorado roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=406 Auburn Drive Colorado Springs, CO 80909, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":32.8518336,\"lng\":-97.1652811,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2024\\\/01\\\/Dallas-City.png\",\"title\":\"315 Harwood Road Bedford, TX 76021\",\"name\":\"Premier Roofing Dallas\",\"phone\":\"214-390-7663\",\"phonelink\":\"tel:+12143907663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/dallas-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Dallas roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=315 Harwood Road Bedford, TX 76021, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":39.7291469,\"lng\":-105.0190749,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/DEN-Building-Photo-3-1200x675.jpg\",\"title\":\"2570 W. 8th Avenue Denver, CO 80204\",\"name\":\"Premier Roofing Denver\",\"phone\":\"303-233-7663\",\"phonelink\":\"tel:+13032337663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/denver-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Denver roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=2570 W. 8th Avenue Denver, CO 80204, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":41.6667795,\"lng\":-93.6828564,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/DMO-Building-Photo-1200x675.jpg\",\"title\":\"5501 NW Beaver Drive Johnston, IA 50131\",\"name\":\"Premier Roofing Des Moines\",\"phone\":\"515-276-7663\",\"phonelink\":\"tel:+15152767663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/des-moines-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Des Moines roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=5501 NW Beaver Drive Johnston, IA 50131, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":40.5804649,\"lng\":-105.0180739,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/FCO-Building-Photo-1200x675.jpg\",\"title\":\"3201 E. Mulberry St. Fort Collins, CO 80524\",\"name\":\"Premier Roofing Fort Collins\",\"phone\":\"970-484-7663\",\"phonelink\":\"tel:+19704847663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/fort-collins-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Fort Collins roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=3201 E. Mulberry St. Fort Collins, CO 80524, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":38.9426729,\"lng\":-94.5832157,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/KCI-Building-Photo-1200x675.jpg\",\"title\":\"10200 Holmes Rd Kansas City, MO 64131\",\"name\":\"Premier Roofing Kansas City\",\"phone\":\"816-254-7663\",\"phonelink\":\"tel:+18162547663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/kansas-city-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Kansas City roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=10200 Holmes Rd Kansas City, MO 64131, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":44.8588788,\"lng\":-93.3822571,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/11\\\/MIN-Building-Photo-2-1200x675.jpg\",\"title\":\"5929 Baker Rd #450 Minnetonka, MN 55345\",\"name\":\"Premier Roofing Minneapolis\",\"phone\":\"612-445-7663\",\"phonelink\":\"tel:+16124457663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/minneapolis-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Minneapolis roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=5929 Baker Rd #450 Minnetonka, MN 55345, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":41.272304,\"lng\":-95.932632,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/OMA-Building-Photo-1200x675.jpg\",\"title\":\"1111 N. 13th Street #101 Omaha, NE 68102, OK 73134\",\"name\":\"Premier Roofing Omaha\",\"phone\":\"402-778-7663\",\"phonelink\":\"tel:+14027787663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/omaha-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Omaha roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=1111 N. 13th Street #101 Omaha, NE 68102, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":35.816289,\"lng\":-78.8140506,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/RAL-Building-Photo-1200x675.jpg\",\"title\":\"15000 Weston Pkwy #117 Cary, NC 27513\",\"name\":\"Premier Roofing Raleigh\",\"phone\":\"919-752-7663\",\"phonelink\":\"tel:+19197527663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/raleigh-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Raleigh roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=15000 Weston Pkwy #117 Cary, NC 27513, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":38.56118,\"lng\":-90.2988779,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/STL-Building-Photo-1200x675.jpg\",\"title\":\"11406 Gravois Rd. St. Louis, MO 63126\",\"name\":\"Premier Roofing St. Louis\",\"phone\":\"314-833-7663\",\"phonelink\":\"tel:+13148337663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/st-louis-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated St. Louis roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=11406 Gravois Rd, St. Louis, MO 63126, United States\\\\\\\">Get Directions<\\\/a>\"},{\"lat\":37.744838,\"lng\":-97.244755,\"icon\":null,\"imageUrl\":\"https:\\\/\\\/premier-roofing.com\\\/wp-content\\\/uploads\\\/2023\\\/08\\\/WIC-Building-Photo-1200x675.jpg\",\"title\":\"8847 W Monroe Cir #300 Wichita, KS 67209\",\"name\":\"Premier Roofing Wichita\",\"phone\":\"316-710-7663\",\"phonelink\":\"tel:+13167107663\",\"url\":\"https:\\\/\\\/premier-roofing.com\\\/locations\\\/wichita-roofing\\\/\",\"description\":\"Premier Roofing is your top-rated Wichita roofer for the restoration roofing needs of homeowners, business owners, and multi-family communities.<br\\\/><br\\\/><a target=\\\\\\\"_blank\\\\\\\" href=\\\\\\\"https:\\\/\\\/www.google.com\\\/maps\\\/dir\\\/?api=1&destination=8847 W Monroe Cir #300 Wichita, KS 67209, United States\\\\\\\">Get Directions<\\\/a>\"}];\n\n    function openSlider(){\n      sliderEl.classList.add('open');\n    }\n    function closeSlider(){\n      sliderEl.classList.remove('open');\n    }\n\n    function getManeuverIcon(maneuver){\n      return maneuverIcons[maneuver] || maneuverIcons.default;\n    }\n\n    function addPredefinedLocations(){\n      predefinedLocations.forEach(location => {\n        const marker = new google.maps.Marker({\n          position: { lat: Number(location.lat), lng: Number(location.lng) },\n          map,\n          title: location.title || '',\n          icon: {\n            url: iconImg,\n            scaledSize: new google.maps.Size(40, 40)\n          }\n        });\n\n        const infoContent = `\n          <div style=\"max-width: 650px;\">\n            <center><img decoding=\"async\" src=\"${location.imageUrl}\" alt=\"${location.title}\" style=\"width: 50%; height: auto; border-radius: 5px;\"><\/center>\n            <h4 style=\"color: #0082CA;font-size: 16px;font-family: arial;text-transform: uppercase;font-weight: bold;\">\n              <a href=\"${location.url}\">${location.name}<\/a>\n            <\/h4>\n            <h3>${location.title}<\/h3>\n            <label><a href=\"${location.phonelink}\" target=\"_blank\" rel=\"noopener\">${location.phone}<\/a><\/label>\n            <p style=\"margin: 10px 0 0;\">${location.description}<\/p>\n          <\/div>\n        `;\n\n        marker.addListener('click', function() {\n          infoWindow.setContent(infoContent);\n          infoWindow.open(map, marker);\n        });\n      });\n    }\n\n    function displaySuggestedRoutes(routes, fullResult){\n      suggestedRoutesDiv.innerHTML = '<div class=\"bgclass\"><label>Suggested routes:<\/label><\/div>';\n\n      routes.forEach((route, index) => {\n        const distance = route.legs?.[0]?.distance?.text || '';\n        const duration = route.legs?.[0]?.duration?.text || '';\n        const summary  = route.summary || '';\n\n        const routeOption = document.createElement('div');\n        routeOption.className = 'route-option';\n        routeOption.textContent = `Route ${index + 1}: ${summary} - ${distance}, about ${duration}`;\n\n        routeOption.addEventListener('click', () => {\n          directionsRenderer.setDirections(fullResult);\n          directionsRenderer.setRouteIndex(index);\n\n          const leg = fullResult.routes[index]?.legs?.[0];\n          if (leg) displayDirections(leg);\n\n          const endLocation = leg?.end_location;\n          if (endLocation) {\n            if (endMarker) endMarker.setMap(null);\n            endMarker = new google.maps.Marker({\n              position: endLocation,\n              map,\n              icon: { url: iconImg, scaledSize: new google.maps.Size(40, 40) },\n              title: \"Destination\"\n            });\n          }\n        });\n\n        suggestedRoutesDiv.appendChild(routeOption);\n      });\n    }\n\n    function displayDirections(leg){\n      directionsPanel.innerHTML = '';\n\n      if (!stepMarker) {\n        stepMarker = new google.maps.Marker({\n          map,\n          icon: {\n            url: 'https:\/\/maps.google.com\/mapfiles\/kml\/paddle\/blu-circle.png',\n            scaledSize: new google.maps.Size(30, 30)\n          }\n        });\n      }\n\n      leg.steps.forEach((step) => {\n        const directionStep = document.createElement('div');\n        directionStep.className = 'direction-step';\n\n        const icon = document.createElement('img');\n        icon.className = 'direction-icon';\n        icon.src = getManeuverIcon(step.maneuver);\n        directionStep.appendChild(icon);\n\n        const directionText = document.createElement('div');\n        directionText.className = 'direction-text';\n        directionText.innerHTML = step.instructions;\n        directionStep.appendChild(directionText);\n\n        const distance = document.createElement('div');\n        distance.className = 'distance';\n        distance.textContent = step.distance?.text || '';\n        directionStep.appendChild(distance);\n\n        directionStep.addEventListener('click', () => {\n          map.panTo(step.start_location);\n          map.setZoom(8);\n          stepMarker.setPosition(step.start_location);\n          stepMarker.setMap(map);\n        });\n\n        directionsPanel.appendChild(directionStep);\n      });\n    }\n\n    function calculateRoute(){\n      const start = (startInput.value || '').trim();\n      const end   = (endInput.value || '').trim();\n\n      if (!start || !end) { alert(\"Please fill both fields.\"); return; }\n\n      directionsService.route({\n        origin: start,\n        destination: end,\n        travelMode: google.maps.TravelMode.DRIVING,\n        provideRouteAlternatives: true\n      }, function(result, status){\n        if (status === google.maps.DirectionsStatus.OK) {\n          directionsRenderer.setDirections(result);\n\n          const routes = result.routes || [];\n          if (routes.length) {\n            displaySuggestedRoutes(routes, result);\n\n            const leg0 = routes[0]?.legs?.[0];\n            if (leg0) displayDirections(leg0);\n\n            \/\/ Markers\n            if (startMarker) startMarker.setMap(null);\n            if (endMarker) endMarker.setMap(null);\n\n            if (leg0?.start_location) {\n              startMarker = new google.maps.Marker({\n                position: leg0.start_location,\n                map,\n                icon: { url: 'https:\/\/maps.google.com\/mapfiles\/kml\/paddle\/grn-circle.png', scaledSize: new google.maps.Size(40, 40) },\n                title: \"Start Location\"\n              });\n            }\n\n            if (leg0?.end_location) {\n              endMarker = new google.maps.Marker({\n                position: leg0.end_location,\n                map,\n                icon: { url: iconImg, scaledSize: new google.maps.Size(40, 40) },\n                title: \"Destination\"\n              });\n            }\n          }\n\n          openSlider();\n        } else {\n          alert(\"Directions request failed due to \" + status);\n        }\n      });\n    }\n\n    function initMapInstance(){\n      map = new google.maps.Map(mapEl, {\n        center: { lat: 39.8283, lng: -98.5795 },\n        zoom: 5\n      });\n\n      directionsService = new google.maps.DirectionsService();\n      directionsRenderer = new google.maps.DirectionsRenderer({\n        map,\n        suppressMarkers: true,\n        polylineOptions: { strokeColor: 'blue', strokeWeight: 5 }\n      });\n\n      infoWindow = new google.maps.InfoWindow();\n\n      addPredefinedLocations();\n\n      btnCalc.disabled = false;\n      btnLoc.disabled = false;\n    }\n\n    function loadGoogleMapsOnce(){\n      if (window.__googleMapsLoading) return window.__googleMapsLoading;\n\n      window.__googleMapsLoading = new Promise((resolve, reject) => {\n        if (window.google && window.google.maps) { resolve(); return; }\n        const s = document.createElement('script');\n        s.src = \"https:\/\/maps.googleapis.com\/maps\/api\/js?key=AIzaSyDd5Y06dwvDqh_hzZVP_KBZ-gGfCwvEGQM\";\n        s.async = true;\n        s.onload = resolve;\n        s.onerror = reject;\n        document.head.appendChild(s);\n      });\n\n      return window.__googleMapsLoading;\n    }\n\n    closeBtn.addEventListener('click', closeSlider);\n    btnCalc.addEventListener('click', calculateRoute);\n\n    btnLoc.addEventListener('click', function(){\n      if (!navigator.geolocation) { alert(\"Geolocation is not supported by this browser.\"); return; }\n      navigator.geolocation.getCurrentPosition(function(pos){\n        const geocoder = new google.maps.Geocoder();\n        const latlng = { lat: pos.coords.latitude, lng: pos.coords.longitude };\n        geocoder.geocode({ location: latlng }, function(results, status){\n          if (status === 'OK' && results[0]) startInput.value = results[0].formatted_address;\n          else alert('Geocoder failed due to: ' + status);\n        });\n      }, function(err){\n        switch(err.code){\n          case err.PERMISSION_DENIED: alert(\"User denied the request for Geolocation.\"); break;\n          case err.POSITION_UNAVAILABLE: alert(\"Location information is unavailable.\"); break;\n          case err.TIMEOUT: alert(\"The request to get user location timed out.\"); break;\n          default: alert(\"An unknown error occurred.\"); break;\n        }\n      });\n    });\n\n    loadGoogleMapsOnce().then(initMapInstance).catch(() => console.error('Google Maps failed to load'));\n  })();\n  <\/script>\n\n  \n<\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-6 fusion_builder_column_1_2 1_2 fusion-flex-column ft-map-section--content\" style=\"--awb-padding-top:50px;--awb-padding-right:30px;--awb-padding-bottom:50px;--awb-padding-left:30px;--awb-padding-top-small:0px;--awb-padding-right-small:0px;--awb-padding-left-small:0px;--awb-bg-size:cover;--awb-width-large:50%;--awb-margin-top-large:0px;--awb-spacing-right-large:0px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:0px;--awb-width-medium:50%;--awb-order-medium:0;--awb-spacing-right-medium:0px;--awb-spacing-left-medium:0px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:0px;--awb-spacing-left-small:0px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-10 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-text-color:#ffffff;--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:10px;--awb-margin-left-small:0px;--awb-font-size:clamp(32px,3.75vw,48px);\"><h2 class=\"fusion-title-heading title-heading-left awb-responsive-type__disable\" style=\"margin:0;text-transform:capitalize;font-size:1em;\">Our Physical Locations<\/h2><\/div><ul style=\"--awb-iconcolor:var(--awb-color7);--awb-textcolor:var(--awb-color7);--awb-line-height:27.2px;--awb-icon-width:27.2px;--awb-icon-height:27.2px;--awb-icon-margin:11.2px;--awb-content-margin:38.4px;\" class=\"fusion-checklist fusion-checklist-1 fusion-checklist-default type-icons ft-map-checklist\"><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/minneapolis-roofing\/\">Minnetonka<\/a><\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/charlotte-roofing\/\">Charlotte<\/a><\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/colorado-springs-roofing\/\">Colorado Springs<\/a><\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/dallas-roofing\/\">Dallas<\/a><\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/fort-collins-roofing\/\">Fort Collins<\/a><\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/kansas-city-roofing\/\">Kansas<\/a><\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/des-moines-roofing\/\">Des Moines<\/a><\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/omaha-roofing\/\">Omaha<\/a><\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/denver-roofing\/\">Denver<\/a><\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/raleigh-roofing\/\">Raleigh<\/a><\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/st-louis-roofing\/\">St. Louis<\/a><\/p>\n<\/div><\/li><li class=\"fusion-li-item\" style=\"\"><span class=\"icon-wrapper circle-no\"><i class=\"fusion-li-icon fa-map-marker-alt fas\" aria-hidden=\"true\"><\/i><\/span><div class=\"fusion-li-item-content\">\n<p><a href=\"\/locations\/wichita-roofing\/\">Wichita<\/a><\/p>\n<\/div><\/li><\/ul><\/div><\/div><\/div><\/div>\n<div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-5 fusion-flex-container has-pattern-background has-mask-background fusion-parallax-none nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-background-position-medium:center center;--awb-background-position-small:left top;--awb-border-color:var(--awb-color1);--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:0px;--awb-padding-right:0px;--awb-padding-bottom:120px;--awb-padding-left:0px;--awb-padding-top-medium:30px;--awb-padding-bottom-medium:70px;--awb-padding-top-small:30px;--awb-padding-bottom-small:70vw;--awb-margin-top:0px;--awb-margin-top-medium:0px;--awb-margin-bottom-medium:0px;--awb-margin-bottom-small:0px;--awb-min-height:580px;--awb-min-height-small:0px;--awb-background-color:rgba(0,130,202,0.81);--awb-background-image:url(&quot;https:\/\/premier-roofing.com\/wp-content\/uploads\/2025\/10\/Desktop-2.png&quot;);--awb-background-image-small:url(&#039;https:\/\/premier-roofing.com\/wp-content\/uploads\/2025\/10\/54-1.png&#039;);--awb-background-size:cover;--awb-flex-wrap:wrap;--awb-flex-wrap-medium:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-center fusion-flex-content-wrap\" style=\"max-width:calc( 1200px + 80px );margin-left: calc(-80px \/ 2 );margin-right: calc(-80px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-7 fusion_builder_column_1_2 1_2 fusion-flex-column\" style=\"--awb-padding-right:30px;--awb-padding-left:30px;--awb-padding-top-medium:0px;--awb-padding-right-small:30px;--awb-bg-size:cover;--awb-width-large:50%;--awb-margin-top-large:85px;--awb-spacing-right-large:40px;--awb-margin-bottom-large:0px;--awb-spacing-left-large:40px;--awb-width-medium:66.6666666667%;--awb-order-medium:0;--awb-margin-top-medium:30px;--awb-spacing-right-medium:20px;--awb-spacing-left-medium:40px;--awb-width-small:100%;--awb-order-small:0;--awb-margin-top-small:30px;--awb-spacing-right-small:50px;--awb-spacing-left-small:50px;\" data-scroll-devices=\"small-visibility,medium-visibility,large-visibility\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-11 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-text-color:var(--awb-color4);--awb-margin-bottom:0px;--awb-margin-top-small:0px;--awb-margin-right-small:0px;--awb-margin-bottom-small:0px;--awb-margin-left-small:0px;--awb-margin-top-medium:0px;--awb-margin-bottom-medium:0px;--awb-font-size:clamp(32px,3.75vw,48px);\"><h2 class=\"fusion-title-heading title-heading-left awb-responsive-type__disable\" style=\"margin:0;text-transform:capitalize;font-size:1em;line-height:1.2;\">Ready for a Roof Inspection?<\/h2><\/div><div class=\"fusion-text fusion-text-10\" style=\"--awb-font-size:18px;--awb-line-height:1.5;--awb-margin-top:15px;\"><p>Don\u2019t wait until small roof issues become big problems. Schedule your free, no-obligation roof inspection with Premier Roofing today.<\/p>\n<\/div><div style=\"text-align:left;\"><a class=\"fusion-button button-flat button-xlarge button-custom fusion-button-default button-4 fusion-button-default-span fusion-button-default-type\" style=\"--button_accent_color:var(--awb-color4);--button_border_color:var(--awb-color7);--button_accent_hover_color:var(--awb-color4);--button_border_hover_color:var(--awb-color3);--button_gradient_top_color:var(--awb-color7);--button_gradient_bottom_color:var(--awb-color7);--button_gradient_top_color_hover:var(--awb-color3);--button_gradient_bottom_color_hover:var(--awb-color3);--button_margin-top:20px;\" target=\"_self\" href=\"https:\/\/premier-roofing.com\/get-a-quote\/\"><span class=\"fusion-button-text awb-button__text awb-button__text--default\">Request Inspection<\/span><\/a><\/div><\/div><\/div><\/div><\/div><div class=\"fusion-fullwidth fullwidth-box fusion-builder-row-6 fusion-flex-container has-pattern-background has-mask-background nonhundred-percent-fullwidth non-hundred-percent-height-scrolling\" style=\"--awb-border-radius-top-left:0px;--awb-border-radius-top-right:0px;--awb-border-radius-bottom-right:0px;--awb-border-radius-bottom-left:0px;--awb-padding-top:100px;--awb-padding-bottom:100px;--awb-padding-top-small:50px;--awb-padding-right-small:20px;--awb-padding-bottom-small:50px;--awb-padding-left-small:20px;--awb-flex-wrap:wrap;\" ><div class=\"fusion-builder-row fusion-row fusion-flex-align-items-flex-start fusion-flex-content-wrap\" style=\"max-width:calc( 1200px + 80px );margin-left: calc(-80px \/ 2 );margin-right: calc(-80px \/ 2 );\"><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-8 awb-sticky awb-sticky-medium awb-sticky-large fusion_builder_column_1_2 1_2 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:50%;--awb-margin-top-large:0px;--awb-spacing-right-large:40px;--awb-margin-bottom-large:20px;--awb-spacing-left-large:40px;--awb-width-medium:50%;--awb-order-medium:0;--awb-spacing-right-medium:40px;--awb-spacing-left-medium:40px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:40px;--awb-spacing-left-small:40px;--awb-sticky-offset:150px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"fusion-title title fusion-title-12 fusion-sep-none fusion-title-text fusion-title-size-two\" style=\"--awb-margin-top-small:10px;--awb-margin-right-small:0px;--awb-margin-bottom-small:10px;--awb-margin-left-small:0px;--awb-font-size:clamp(32px,3.75vw,48px);\"><h2 class=\"fusion-title-heading title-heading-left awb-responsive-type__disable\" style=\"margin:0;text-transform:capitalize;font-size:1em;line-height:1.2;\">Frequently Asked Questions<\/h2><\/div><div ><a class=\"fusion-button button-flat button-xlarge button-default fusion-button-default button-5 fusion-button-default-span fusion-button-default-type\" style=\"--button_margin-top:0px;--button_margin-bottom:30px;\" target=\"_self\" href=\"https:\/\/premier-roofing.com\/get-a-quote\/\"><span class=\"fusion-button-text awb-button__text awb-button__text--default\">Request Inspection<\/span><\/a><\/div><\/div><\/div><div class=\"fusion-layout-column fusion_builder_column fusion-builder-column-9 awb-sticky awb-sticky-medium awb-sticky-large fusion_builder_column_1_2 1_2 fusion-flex-column\" style=\"--awb-bg-size:cover;--awb-width-large:50%;--awb-margin-top-large:0px;--awb-spacing-right-large:40px;--awb-margin-bottom-large:20px;--awb-spacing-left-large:40px;--awb-width-medium:50%;--awb-order-medium:0;--awb-spacing-right-medium:40px;--awb-spacing-left-medium:40px;--awb-width-small:100%;--awb-order-small:0;--awb-spacing-right-small:40px;--awb-spacing-left-small:40px;--awb-sticky-offset:150px;\"><div class=\"fusion-column-wrapper fusion-column-has-shadow fusion-flex-justify-content-flex-start fusion-content-layout-column\"><div class=\"accordian fusion-accordian ft-faq-accordion\" style=\"--awb-border-size:0px;--awb-icon-size:24px;--awb-content-font-size:var(--awb-typography4-font-size);--awb-icon-alignment:right;--awb-hover-color:var(--awb-color1);--awb-border-color:var(--awb-color4);--awb-background-color:#f2f6f9;--awb-divider-color:var(--awb-color3);--awb-divider-hover-color:var(--awb-color3);--awb-icon-color:var(--awb-color4);--awb-title-color:var(--awb-color8);--awb-content-color:var(--awb-color8);--awb-icon-box-color:var(--awb-color7);--awb-toggle-hover-accent-color:var(--awb-color4);--awb-title-font-family:var(--awb-typography1-font-family);--awb-title-font-weight:var(--awb-typography1-font-weight);--awb-title-font-style:var(--awb-typography1-font-style);--awb-content-font-family:var(--awb-typography4-font-family);--awb-content-font-weight:var(--awb-typography4-font-weight);--awb-content-font-style:var(--awb-typography4-font-style);\"><div class=\"panel-group fusion-toggle-icon-right fusion-toggle-icon-unboxed\" id=\"accordion-4555-1\"><div class=\"fusion-panel panel-default panel-bd647eda6ef77e9a9 fusion-toggle-no-divider\"><div class=\"panel-heading\"><h3 class=\"panel-title toggle\" id=\"toggle_bd647eda6ef77e9a9\"><a aria-expanded=\"false\" aria-controls=\"bd647eda6ef77e9a9\" role=\"button\" data-toggle=\"collapse\" data-parent=\"#accordion-4555-1\" data-target=\"#bd647eda6ef77e9a9\" href=\"#bd647eda6ef77e9a9\"><span class=\"fusion-toggle-icon-wrapper\" aria-hidden=\"true\"><i class=\"fa-fusion-box active-icon fa-angle-right fas\" aria-hidden=\"true\"><\/i><i class=\"fa-fusion-box inactive-icon fa-angle-down fas\" aria-hidden=\"true\"><\/i><\/span><span class=\"fusion-toggle-heading\">How soon after a storm should a roof be checked?<\/span><\/a><\/h3><\/div><div id=\"bd647eda6ef77e9a9\" class=\"panel-collapse collapse \" aria-labelledby=\"toggle_bd647eda6ef77e9a9\"><div class=\"panel-body toggle-content fusion-clearfix\">\n<p>After a severe storm, you should <a href=\"\/free-inspection\">schedule a roof inspection<\/a> immediately as soon as it is safe, ideally within a few days. Why the rush? Acting quickly ensures you clearly distinguish recent storm damage from older wear and tear, which is crucial for any insurance claim. You catch small issues now, preventing wind, rain, or the sun from turning them into costly, complicated repairs later.<\/p>\n<\/div><\/div><\/div><div class=\"fusion-panel panel-default panel-e747e56aa91ebd74f fusion-toggle-no-divider\"><div class=\"panel-heading\"><h3 class=\"panel-title toggle\" id=\"toggle_e747e56aa91ebd74f\"><a aria-expanded=\"false\" aria-controls=\"e747e56aa91ebd74f\" role=\"button\" data-toggle=\"collapse\" data-parent=\"#accordion-4555-1\" data-target=\"#e747e56aa91ebd74f\" href=\"#e747e56aa91ebd74f\"><span class=\"fusion-toggle-icon-wrapper\" aria-hidden=\"true\"><i class=\"fa-fusion-box active-icon fa-angle-right fas\" aria-hidden=\"true\"><\/i><i class=\"fa-fusion-box inactive-icon fa-angle-down fas\" aria-hidden=\"true\"><\/i><\/span><span class=\"fusion-toggle-heading\">What parts of the roof are most affected during a storm?<\/span><\/a><\/h3><\/div><div id=\"e747e56aa91ebd74f\" class=\"panel-collapse collapse \" aria-labelledby=\"toggle_e747e56aa91ebd74f\"><div class=\"panel-body toggle-content fusion-clearfix\">\n<p>Storms hit the most vulnerable areas first: edges, ridges, valleys, flashing, and vents. These points absorb the highest wind pressure and water flow. Even if your shingles look intact from the ground, high winds often break their protective seal. This loss of adhesion lets moisture slowly work its way under the surface, causing hidden damage that grows over time. You need a detailed inspection focused on these critical points to ensure your home stays protected.<\/p>\n<\/div><\/div><\/div><div class=\"fusion-panel panel-default panel-0ecf1650b69dc5fe3 fusion-toggle-no-divider\"><div class=\"panel-heading\"><h3 class=\"panel-title toggle\" id=\"toggle_0ecf1650b69dc5fe3\"><a aria-expanded=\"false\" aria-controls=\"0ecf1650b69dc5fe3\" role=\"button\" data-toggle=\"collapse\" data-parent=\"#accordion-4555-1\" data-target=\"#0ecf1650b69dc5fe3\" href=\"#0ecf1650b69dc5fe3\"><span class=\"fusion-toggle-icon-wrapper\" aria-hidden=\"true\"><i class=\"fa-fusion-box active-icon fa-angle-right fas\" aria-hidden=\"true\"><\/i><i class=\"fa-fusion-box inactive-icon fa-angle-down fas\" aria-hidden=\"true\"><\/i><\/span><span class=\"fusion-toggle-heading\">What documentation helps confirm storm related roof issues?<\/span><\/a><\/h3><\/div><div id=\"0ecf1650b69dc5fe3\" class=\"panel-collapse collapse \" aria-labelledby=\"toggle_0ecf1650b69dc5fe3\"><div class=\"panel-body toggle-content fusion-clearfix\">\n<p>Clear records turn storm damage from a guess into proof:<\/p>\n<ul>\n<li>Photos grouped by roof section, not random close ups<\/li>\n<li>Notes showing where damage appears and how it lines up with the storm path<\/li>\n<li>A short written summary that explains what the photos mean<\/li>\n<\/ul>\n<p>When Premier Roofing inspects your roof, you receive a clear report that shows what was found, where it is located, and why it matters. This makes insurance claims easier because the damage is documented before weather or time can blur the details.<\/p>\n<\/div><\/div><\/div><div class=\"fusion-panel panel-default panel-955f91e21a6b3089c fusion-toggle-no-divider\"><div class=\"panel-heading\"><h3 class=\"panel-title toggle\" id=\"toggle_955f91e21a6b3089c\"><a aria-expanded=\"false\" aria-controls=\"955f91e21a6b3089c\" role=\"button\" data-toggle=\"collapse\" data-parent=\"#accordion-4555-1\" data-target=\"#955f91e21a6b3089c\" href=\"#955f91e21a6b3089c\"><span class=\"fusion-toggle-icon-wrapper\" aria-hidden=\"true\"><i class=\"fa-fusion-box active-icon fa-angle-right fas\" aria-hidden=\"true\"><\/i><i class=\"fa-fusion-box inactive-icon fa-angle-down fas\" aria-hidden=\"true\"><\/i><\/span><span class=\"fusion-toggle-heading\">What questions should I ask during a storm damage inspection?<\/span><\/a><\/h3><\/div><div id=\"955f91e21a6b3089c\" class=\"panel-collapse collapse \" aria-labelledby=\"toggle_955f91e21a6b3089c\"><div class=\"panel-body toggle-content fusion-clearfix\">\n<p>A storm damage inspection should leave you informed, not pressured. Ask which areas of the roof were checked and why those spots matter, how the contractor separates recent storm damage from normal aging, and which findings need immediate attention versus monitoring. These questions help you understand the real condition of your roof and prevent rushed decisions. You walk away knowing what truly needs to be done and what can wait without feeling pushed into unnecessary repairs.<\/p>\n<\/div><\/div><\/div><div class=\"fusion-panel panel-default panel-c002ec327e9f5fedc fusion-toggle-no-divider\"><div class=\"panel-heading\"><h3 class=\"panel-title toggle\" id=\"toggle_c002ec327e9f5fedc\"><a aria-expanded=\"false\" aria-controls=\"c002ec327e9f5fedc\" role=\"button\" data-toggle=\"collapse\" data-parent=\"#accordion-4555-1\" data-target=\"#c002ec327e9f5fedc\" href=\"#c002ec327e9f5fedc\"><span class=\"fusion-toggle-icon-wrapper\" aria-hidden=\"true\"><i class=\"fa-fusion-box active-icon fa-angle-right fas\" aria-hidden=\"true\"><\/i><i class=\"fa-fusion-box inactive-icon fa-angle-down fas\" aria-hidden=\"true\"><\/i><\/span><span class=\"fusion-toggle-heading\">How do I know if the storm actually damaged my roof or if I\u2019m just worrying?<\/span><\/a><\/h3><\/div><div id=\"c002ec327e9f5fedc\" class=\"panel-collapse collapse \" aria-labelledby=\"toggle_c002ec327e9f5fedc\"><div class=\"panel-body toggle-content fusion-clearfix\">\n<p>Uncertainty after a storm is normal, especially when damage is not obvious from the ground. Instead of guessing, the inspection focuses on specific signs like shifted materials, broken seals, and active moisture paths. These indicators help determine whether the issues line up with recent storm impact or are simply part of normal wear over time. Once this is explained clearly, you know exactly what you are dealing with and can move forward with confidence rather than doubt.<\/p>\n<\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":25,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"100-width.php","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"class_list":["post-4555","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.1 (Yoast SEO v27.1.1) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Roof Storm Damage: Signs &amp; What to Do | Premier-Roofing.com<\/title>\n<meta name=\"description\" content=\"Learn how roof storm damage happens, what warning signs to watch for after severe weather, and what to do next. Premier Roofing helps clarify your best next step.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/premier-roofing.com\/storm-damage\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Storm Damage\" \/>\n<meta property=\"og:description\" content=\"Learn how roof storm damage happens, what warning signs to watch for after severe weather, and what to do next. Premier Roofing helps clarify your best next step.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/premier-roofing.com\/storm-damage\/\" \/>\n<meta property=\"og:site_name\" content=\"Premier Roofing Company\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/premierroofing\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-21T09:46:48+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/premier-roofing.com\/wp-content\/uploads\/2023\/07\/Logo-4x4-1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"640\" \/>\n\t<meta property=\"og:image:height\" content=\"640\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"7 minutes\" \/>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Roof Storm Damage: Signs & What to Do | Premier-Roofing.com","description":"Learn how roof storm damage happens, what warning signs to watch for after severe weather, and what to do next. Premier Roofing helps clarify your best next step.","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:\/\/premier-roofing.com\/storm-damage\/","og_locale":"en_US","og_type":"article","og_title":"Storm Damage","og_description":"Learn how roof storm damage happens, what warning signs to watch for after severe weather, and what to do next. Premier Roofing helps clarify your best next step.","og_url":"https:\/\/premier-roofing.com\/storm-damage\/","og_site_name":"Premier Roofing Company","article_publisher":"https:\/\/www.facebook.com\/premierroofing\/","article_modified_time":"2026-04-21T09:46:48+00:00","og_image":[{"width":640,"height":640,"url":"https:\/\/premier-roofing.com\/wp-content\/uploads\/2023\/07\/Logo-4x4-1.png","type":"image\/png"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/premier-roofing.com\/storm-damage\/","url":"https:\/\/premier-roofing.com\/storm-damage\/","name":"Roof Storm Damage: Signs & What to Do | Premier-Roofing.com","isPartOf":{"@id":"https:\/\/premier-roofing.com\/#website"},"datePublished":"2026-02-03T02:31:28+00:00","dateModified":"2026-04-21T09:46:48+00:00","description":"Learn how roof storm damage happens, what warning signs to watch for after severe weather, and what to do next. Premier Roofing helps clarify your best next step.","breadcrumb":{"@id":"https:\/\/premier-roofing.com\/storm-damage\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/premier-roofing.com\/storm-damage\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/premier-roofing.com\/storm-damage\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/premier-roofing.com\/"},{"@type":"ListItem","position":2,"name":"Storm Damage"}]},{"@type":"WebSite","@id":"https:\/\/premier-roofing.com\/#website","url":"https:\/\/premier-roofing.com\/","name":"Premier Roofing Company","description":"Your Neighborhood Roofer","publisher":{"@id":"https:\/\/premier-roofing.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/premier-roofing.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/premier-roofing.com\/#organization","name":"Premier Roofing Company","alternateName":"Premier Roofing","url":"https:\/\/premier-roofing.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/premier-roofing.com\/#\/schema\/logo\/image\/","url":"https:\/\/premier-roofing.com\/wp-content\/uploads\/2023\/07\/Logo-4x4-1.png","contentUrl":"https:\/\/premier-roofing.com\/wp-content\/uploads\/2023\/07\/Logo-4x4-1.png","width":640,"height":640,"caption":"Premier Roofing Company"},"image":{"@id":"https:\/\/premier-roofing.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/premierroofing\/","https:\/\/www.instagram.com\/premierroofingcompany\/","https:\/\/www.tiktok.com\/@bepremierroofing","https:\/\/www.linkedin.com\/company\/the-premier-roofing-company"],"description":"At Premier Roofing, our dedicated team of over 200 full-time professionals is committed to elevating the roofing experience. With branches in Colorado, Texas, Oklahoma, Kansas, St. Louis, Iowa, Nebraska, Minnesota, Indiana, North Carolina, South Carolina, and Georgia, we aim to redefine what honesty and reliability mean in the roofing industry.","legalName":"Premier Roofing"}]}},"_links":{"self":[{"href":"https:\/\/premier-roofing.com\/wp-json\/wp\/v2\/pages\/4555","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/premier-roofing.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/premier-roofing.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/premier-roofing.com\/wp-json\/wp\/v2\/users\/25"}],"replies":[{"embeddable":true,"href":"https:\/\/premier-roofing.com\/wp-json\/wp\/v2\/comments?post=4555"}],"version-history":[{"count":0,"href":"https:\/\/premier-roofing.com\/wp-json\/wp\/v2\/pages\/4555\/revisions"}],"wp:attachment":[{"href":"https:\/\/premier-roofing.com\/wp-json\/wp\/v2\/media?parent=4555"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}