:where(:not(html,iframe,canvas,img,svg,video,audio):not(svg*,symbol*)){all:unset;display:revert}*,::after,::before{box-sizing:border-box}html{-moz-text-size-adjust:none;-webkit-text-size-adjust:none;text-size-adjust:none}a,button{cursor:revert}menu,ol,summary,ul{list-style:none}img{max-inline-size:100%;max-block-size:100%}table{border-collapse:collapse}input,textarea{-webkit-user-select:auto}textarea{white-space:revert}meter{-webkit-appearance:revert;appearance:revert}:where(pre){all:revert;box-sizing:border-box}::placeholder{color:unset}:where([hidden]){display:none}:where([contenteditable]:not([contenteditable=false])){-moz-user-modify:read-write;-webkit-user-modify:read-write;overflow-wrap:break-word;-webkit-line-break:after-white-space;-webkit-user-select:auto}:where([draggable=true]){-webkit-user-drag:element}:where(dialog:modal){all:revert;box-sizing:border-box}::-webkit-details-marker{display:none}:root{--font-body:"Archivo", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--body:#383838;--black:#000;--white:#fff;--primary:#3C92D8;--primary-light:#7EA8D1;--primary-mid:#194893;--primary-dark:#021d49;--blue-overlay:hsla(217, 75%, 46%, 0.82);--primary-dark-overlay:hsla(216, 95%, 15%, 0.82);--gray-light:#eaeaea;--gray-mid:#A7A8A9;--gray:#676E76;--gray-bg:#eeeeee;--gray-bg-fa:#F1F3F5;--gray-darker-bg:#636364;--gray-overlay:rgba(99, 99, 99, 0.88);--space-5xs:clamp(0.25rem, 0.2283rem + 0.1087vw, 0.3125rem);--space-4xs:clamp(0.3125rem, 0.2908rem + 0.1087vw, 0.375rem);--space-3xs:clamp(0.375rem, 0.3315rem + 0.2174vw, 0.5rem);--space-2xs:clamp(0.5rem, 0.4565rem + 0.2174vw, 0.625rem);--space-xs:clamp(0.75rem, 0.6848rem + 0.3261vw, 0.9375rem);--space-s:clamp(1rem, 0.913rem + 0.4348vw, 1.25rem);--space-m:clamp(1.5rem, 1.3696rem + 0.6522vw, 1.875rem);--space-l:clamp(2rem, 1.8261rem + 0.8696vw, 2.5rem);--space-xl:clamp(3rem, 2.7391rem + 1.3043vw, 3.75rem);--space-2xl:clamp(4rem, 3.6522rem + 1.7391vw, 5rem);--space-3xl:clamp(6rem, 5.4783rem + 2.6087vw, 7.5rem);--space-5xs-4xs:clamp(0.25rem, 0.2065rem + 0.2174vw, 0.375rem);--space-4xs-3xs:clamp(0.3125rem, 0.2473rem + 0.3261vw, 0.5rem);--space-3xs-2xs:clamp(0.375rem, 0.288rem + 0.4348vw, 0.625rem);--space-2xs-xs:clamp(0.5rem, 0.3478rem + 0.7609vw, 0.9375rem);--space-xs-s:clamp(0.75rem, 0.5761rem + 0.8696vw, 1.25rem);--space-s-m:clamp(1rem, 0.6957rem + 1.5217vw, 1.875rem);--space-m-l:clamp(1.5rem, 1.1522rem + 1.7391vw, 2.5rem);--space-m-ll:clamp(1.5rem, 1.1522rem + 1.7591vw, 3rem);--space-l-xl:clamp(2rem, 1.3913rem + 3.0435vw, 3.75rem);--space-xl-2xl:clamp(3rem, 2.3043rem + 3.4783vw, 5rem);--space-2xl-3xl:clamp(4rem, 2.7826rem + 6.087vw, 7.5rem);--space-1-0:clamp(0.125rem, 1.4375rem - 1.3125vw, 1rem);--space-1-3:clamp(2.75rem, 1.4304rem + 2.3478vw, 3.25rem);--space-s-l:clamp(1rem, 0.4783rem + 2.6087vw, 2.5rem);--space-s-xl:clamp(1.125rem, 0.212rem + 4.5652vw, 3.75rem);--space-xs-xl:clamp(0.75rem, -0.2935rem + 5.2174vw, 3.75rem);--space-none-2xl:clamp(0rem, -1.0870rem + 5.4348vw, 5rem);--space-s-2xl:clamp(1.125rem, -0.2228rem + 6.7391vw, 5rem);--space-m-xl:clamp(1.5rem, 0.6304rem + 4.3478vw, 3.75rem);--space-m-2xl:clamp(1.5rem, -0.2555rem + 6.9875vw, 5rem);--space-m-3xl:clamp(1.6875rem, -0.3342rem + 10.1087vw, 7.5rem);--space-l-3xl:clamp(2.25rem, 0.4239rem + 9.1304vw, 7.5rem);--font-xs:clamp(0.64rem, -0.01vi + 0.64rem, 0.63rem);--font-sm:clamp(0.8rem, 0.08vi + 0.78rem, 0.84rem);--font-base:clamp(1rem, 0.23vi + 0.94rem, 1.125rem);--font-md:clamp(1.35rem, 0.45vi + 1.14rem, 1.5rem);--font-lg:clamp(1.75rem, 0.79vi + 1.36rem, 2.125rem);--font-xl:clamp(1.95rem, 1.29vi + 1.63rem, 2.66rem);--font-2xl:clamp(2.44rem, 2.02vi + 1.94rem, 3.55rem);--font-3xl:clamp(3.05rem, 3.06vi + 2.29rem, 4.73rem);--font-4xl:clamp(3.81rem, 4.54vi + 2.68rem, 6.31rem);--font-m-l:clamp(1rem, 0.9348rem + 0.3261vw, 1.25rem);--font-cta-hl:clamp(1.5rem, 1.5065rem + 1.1087vw, 1.875rem);--font-l-xl:clamp(2.125rem, 1.7065rem + 1.1087vw, 3rem);--font-m-l:clamp(1rem, 0.8261rem + 0.8696vw, 1.5rem);--font-l-2xl:clamp(2.375rem, 1.0978rem + 3.3967vw, 4rem);--font-hero-title:clamp(2rem, 0.7391rem + 3.2609vw, 5.25rem);--font-hero-text-top:clamp(0.875rem, 0.6875rem + 0.9375vw, 1.5rem);--font-hero-text-bottom:clamp(0.875rem, 0.6094rem + 1.3281vw, 1.688rem);}
*,
*::after,
*::before{-moz-box-sizing:border-box;box-sizing:border-box;text-rendering:optimizeLegibility;}
html{font-size:16px;scroll-behavior:smooth;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
body{font:400 16px/1.3 var(--font-body);color:var(--body);margin:0;padding:0;}
main{padding-bottom:var(--space-m-2xl);}
.about-us main, .roofing-financing-options main, .realtors main{padding-bottom:0;}
.clear::before, .clear::after{content:' ';display:table;}
.clear::after{clear:both;}
img {
max-width: 100%;
vertical-align: bottom;
} a{text-decoration:none;}
main a:not(.btn):not(.btn-sm),
main a:not(.btn):not(.btn-sm):not(.modal-phone-btn),
main a:not(.btn):not(.btn-sm):not(.modal-phone-btn):not(.call-now-cta){color:var(--primary);text-decoration:none;}
main a:not(.btn):not(.btn-sm):hover{color:var(--primary);}
main a:not(.btn):not(.btn-sm):focus{color:var(--primary-dark);outline:0;}
main a:not(.btn):not(.btn-sm):hover,
main a:not(.btn):not(.btn-sm):active{outline:0;}
a.btn, .btn{font-size:21px;color:var(--white);display:inline-block;text-transform:uppercase;padding:0.675rem 1.25rem;margin-block:auto;border:none;background:var(--primary);font-weight:700;transition:all 0.2s ease-in-out;align-items:center;}
a.btn-sm, .btn-sm{font-size:1rem;color:var(--white);display:inline-block;text-transform:uppercase;padding:0.625rem 0.85rem;margin-block:auto;border:none;background:var(--primary);font-weight:700;transition:all 0.2s ease-in-out;align-items:center;line-height:1;}
a.btn:hover, .btn:hover, a.btn:focus, .btn:focus, a.btn-sm:hover, .btn-sm:hover, a.btn-sm:focus, .btn-sm:focus{color:var(--white);background:var(--primary-dark);text-decoration:none;}
a.call-now-cta{position:relative;padding-left:1.125rem;font-size:1.4rem;font-weight:700;text-transform:uppercase;margin-left:1rem;}
a.call-now-cta{color:var(--white);}
a.call-now-cta::before{content:'';color:var(--primary);position:absolute;left:0;top:50%;transform:translateY(-50%);width:15px;height:23px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13.755' height='22.009' viewBox='0 0 13.755 22.009'%3E%3Cpath id='Path_422' data-name='Path 422' d='M12.38,0a1.249,1.249,0,0,1,.963.413,1.249,1.249,0,0,1,.413.963V20.633a1.41,1.41,0,0,1-1.376,1.376h-11A1.249,1.249,0,0,1,.413,21.6,1.249,1.249,0,0,1,0,20.633V1.376A1.249,1.249,0,0,1,.413.413,1.249,1.249,0,0,1,1.376,0Zm-.963,16.506V3.714H2.338V16.506Zm-5.5,3.714a1.249,1.249,0,0,0,.963.413,1.249,1.249,0,0,0,.963-.413,1.33,1.33,0,0,0,0-1.926,1.249,1.249,0,0,0-.963-.413,1.249,1.249,0,0,0-.963.413,1.33,1.33,0,0,0,0,1.926Z' fill='%231594E1'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain;}
.pagination{display:flex;flex-direction:row;justify-content:center;align-items:center;margin:2rem 0;}
.pagination .page-numbers{display:flex;justify-content:center;align-items:center;min-width:2rem;color:var(--body) !important;height:2rem;margin:0 0.25rem;padding:0.25rem 0.5rem;text-decoration:none;color:var(--body);border:1px solid #ddd;border-radius:0.25rem;transition:all 0.3s ease;}
.pagination a{color:var(--body);}
.pagination .page-numbers, .pagination .page-numbers a:link{color:var(--body);}
.pagination .page-numbers.current{background-color:var(--white);font-weight:bold;color:var(--body);}
.pagination .page-numbers:hover:not(.current){background-color:var(--gray-light) !important;color:var(--body);}
.pagination .next, .pagination .prev{background-color:var(--primary);color:var(--white) !important;border:none;padding:0.25rem 0.75rem;transition:all 0.3s ease;}
.pagination .next:hover, .pagination .prev:hover{background-color:var(--primary-dark);color:var(--black) !important;}
.pagination .dots{border:none;}
.pagination .dots:hover{background-color:none;}
body{font-family:var(--font-body);}
h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6{font-weight:700;line-height:1.3;margin:0.5rem 0;color:var(--primary);text-transform:uppercase;color:var(--primary);}
h1,.h1{font-size:var(--font-xl);font-weight:900;}
h2,.h2{font-size:var(--font-lg);font-weight:700;}
h3{font-size:var(--font-md);}
h4{font-size:1.4rem;}
h5{font-size:1.3rem;}
h6{font-size:1.2rem;}
h2+p, h3+p, h4+p, h5+p, h6+p{margin-block-end:0.5rem;}
p,ol,ul,blockquote,address{font-size:var(--font-base);line-height:1.4;margin-block:inherit;}
main p{margin-block-end:0.75rem;}
address{font-style:normal;}
strong{font-weight:700;}
main ul{font-size:var(--font-base);}
main ul>li{margin-block:var(--space-xs);list-style-type:inherit;}
main ul.wp-block-list>li{margin-block:var(--space-xs);list-style-type:disc;}
main ol{padding:0 0 20px 20px;color:var(--black);font-size:var(--font-base);line-height:1;}
main ol>li{margin-bottom:10px;list-style-type:decimal;}
body .vc_column_container>.vc_column-inner{box-sizing:border-box;padding-left:inherit;padding-right:inherit;width:100%;}
.text-center{text-align:center;}
.text-small{font-size:0.875rem;}
.disclaimer{font-size:0.875rem;max-width:550px;}
.edit-post {
text-align: center;
padding: 2rem 1rem;
font-size: 1.25rem;
background-color: var(--gray-light); a{color:var(--white);text-decoration:none;background-color:var(--primary);padding:1rem 2rem;}
.post-edit-link{margin-right:0.125rem;background-color:var(--primary-dark);}
} .header-spacer{display:block;width:100%;height:auto;padding-top:75px;}
header.header{box-shadow:0 0.25rem 17px 0 rgba(0, 0, 0, 0.25);position:fixed;top:0;z-index:9999;width:100%;background-color:var(--white);}
.header-inner{display:flex;flex-direction:row;max-width:1280px;margin:auto;justify-content:space-between;padding:var(--space-2xs) var(--space-xs);}
header .logo a{padding:2.5px 0 5px;display:flex;align-items:center;width:100%;height:auto;}
header .logo a img{width:100%;max-width:161px;height:auto;padding:5px 0;}
.header-right{display:flex;flex-direction:column;justify-content:flex-end;padding:0;margin:auto 0;text-transform:uppercase;font-weight:700;color:var(--primary-dark);}
.header-right .nav ul{list-style-type:none;margin-block-start:auto;margin-block-end:1rem;color:var(--primary-dark);}
.nav .menu-item-has-children .sub-menu li a{font-size:0.875rem;font-weight:500;text-transform:capitalize;}
.header-right .top-menu{display:flex;flex-direction:row;align-items:center;align-self:flex-end;margin:0;padding:var(--space-2xs) 0 var(--space-s);}
.header-right .menu li a{text-transform:uppercase;font-weight:700;color:var(--gray);}
.header nav.nav .menu-item-has-children ul.sub-menu{display:none;}
.nav{font-family:var(--font-body);}
.nav a{position:relative;cursor:pointer;}
.nav .menu-item-has-children>a::after{content:'\2303';position:absolute;font-size:12px;color:#A7A8A9;display:inline-block;font-weight:700;width:6px;height:3px;right:2px;bottom:12px;transform:translate(0, -50%) rotate(180deg);}
.mobile-menu{display:flex;flex-direction:row;justify-content:center;align-items:center;}
.mobile-menu svg{align-self:center;margin:auto auto;}
.mobile-phone{margin-top:0.25rem;}
.mobile-nav{display:flex;flex-direction:row;justify-content:space-between;align-items:center;}
.nav button.close-btn{position:absolute;top:16px;right:16px;background-color:transparent;border:none;cursor:pointer;color:var(--white);}
.nav-toggle{z-index:1;position:relative;margin:auto 10px auto 15px;width:37px;height:32px;}
.logo{min-width:150px;}
.logo-img{display:flex;}
header nav.nav{color:var(--white);}
#menu-top-bar{display:flex;flex-direction:row;margin-left:auto;font-size:0.9rem;}
.header-top-menu li a{color:var(--gray);}
#menu-top-bar li.menu-item{padding-left:1rem;padding-right:1rem;font-weight:400;}
#menu-top-bar li.menu-item:last-child{padding-left:1rem;padding-right:0;}
li.top-menu-blog{position:relative;padding-left:2rem;}
li.top-menu-blog::before{content:"";position:absolute;left:0;top:48%;transform:translateY(-50%);width:15.158px;height:12px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='15.158' height='12' viewBox='0 0 15.158 12'%3E%3Cpath id='Path_455' data-name='Path 455' d='M15.147,8.173C15.005,4.629,13.476,2.616,12.3,3.06c-.989.376-7.428,3.045-10.218,4.2A1.6,1.6,0,0,1,.5,6.969a3.407,3.407,0,0,0,.07,3.649,1.562,1.562,0,0,1,1.52-.458c2.8.887,9.611,3.034,10.634,3.347,1.3.4,2.569-1.79,2.428-5.334ZM13.46,11.314c-.342.951-1.01,1-1.43.063A8.952,8.952,0,0,1,11.8,5.234c.367-.95.986-.993,1.43-.063A8.952,8.952,0,0,1,13.46,11.314ZM8.973,13.6,7.791,14.746a.9.9,0,0,1-.9.211l-2.46-.772a.9.9,0,0,1-.6-.663l-.368-1.662,1.323.418.128.582a.6.6,0,0,0,.4.439l1.334.414a.593.593,0,0,0,.595-.14l.4-.393,1.324.417Z' transform='translate(0 -3)' fill='%233C92D8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;}
li.top-menu-blog a{padding-left:0.33rem;}
li.top-menu-reviews{position:relative;padding-left:2rem;}
li.top-menu-reviews::before{content:"";position:absolute;left:0.33rem;top:44.5%;transform:translateY(-50%);width:12.617px;height:12px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12.617' height='12' viewBox='0 0 12.617 12'%3E%3Cpath id='Path_440' data-name='Path 440' d='M6.309.587,8.237,4.566l4.38.605L9.429,8.235l.778,4.352L6.309,10.5l-3.9,2.086.779-4.352L0,5.171l4.38-.605Z' transform='translate(0 -0.587)' fill='%233C92D8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;}
li.top-menu-reviews a{padding-left:0.33rem;}
li.top-menu-company{position:relative;padding-left:2rem;}
li.top-menu-company::before{content:"";position:absolute;left:0.5rem;top:46%;transform:translateY(-50%);width:13px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='12' viewBox='0 0 10 12'%3E%3Cpath id='Path_441' data-name='Path_441' d='M5,12,6.5,7.5H2L9,0,7.5,4.5H12Z' transform='translate(-2)' fill='%233C92D8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;}
li.top-menu-company a{padding-left:0.33rem;}
li.top-menu-faq{position:relative;padding-left:2rem;}
li.top-menu-faq::before{content:"";position:absolute;left:0.25rem;top:48%;transform:translateY(-50%);width:16px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath id='Path_439' data-name='Path_439' d='M6,1A5,5,0,1,1,1,6,5.006,5.006,0,0,1,6,1ZM6,0a6,6,0,1,0,6,6A6,6,0,0,0,6,0Zm.625,8.5A.625.625,0,1,1,6,7.875.625.625,0,0,1,6.625,8.5Zm.7-5a1.765,1.765,0,0,0-1.276-.477A1.772,1.772,0,0,0,4.251,5H5.256c0-.743.415-1.007.769-1.007a.661.661,0,0,1,.682.613c.031.424-.2.638-.481.911A1.841,1.841,0,0,0,5.51,7.25h1A1.317,1.317,0,0,1,6.98,6.161,2.24,2.24,0,0,0,7.748,4.65,1.565,1.565,0,0,0,7.321,3.5Z' fill='%233C92D8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;}
li.top-menu-faq a{padding-left:0.33rem;}
li.top-menu-contact{position:relative;padding-left:2rem;}
li.top-menu-contact::before{content:"";position:absolute;left:0.55rem;top:46%;transform:translateY(-50%);width:8px;height:13px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='7.5' height='12' viewBox='0 0 7.5 12'%3E%3Cpath id='Path_422' data-name='Path_422' d='M6.75,0a.681.681,0,0,1,.525.225A.681.681,0,0,1,7.5.75v10.5a.769.769,0,0,1-.75.75h-6a.681.681,0,0,1-.525-.225A.681.681,0,0,1,0,11.25V.75A.681.681,0,0,1,.225.225.681.681,0,0,1,.75,0ZM6.225,9V2.025H1.275V9Zm-3,2.025a.681.681,0,0,0,.525.225.681.681,0,0,0,.525-.225.725.725,0,0,0,0-1.05A.681.681,0,0,0,3.75,9.75a.681.681,0,0,0-.525.225.725.725,0,0,0,0,1.05Z' fill='%233C92D8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;}
li.top-menu-contact a{padding-left:0.33rem;}
.wrapper{max-width:1280px;width:97.5%;margin:0 auto;position:relative;padding:0 var(--space-m);}
.home .page-header, .page-header{position:relative;z-index:1;}
.home .page-header{position:relative;width:100%;min-height:155px;margin:auto;overflow:hidden;}
.home .page-header video{position:absolute;width:100%;height:auto;}
.home .page-header{position:relative;width:100%;height:auto;margin:auto;overflow:hidden;top:0;}
.page-header{display:block;width:100%;height:auto;}
.page-header h1{color:var(--white);display:block;text-shadow:3px 5px 10px rgba(0, 0, 0, 0.5);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
.page-header .subhead{font-size:18px;font-weight:500;color:#D8D7D2;}
.page-header{margin:0 auto;}
.page-header .header-overlay{width:100%;height:auto;z-index:1;}
.page-header .header-text{max-width:1280px;margin:auto;}
#breadcrumbs{font-size:12px;font-weight:400;padding:0.6rem 0;margin:0 auto var(--space-m);color:var(--white);background:linear-gradient(150deg, var(--blue-overlay), var(--primary-dark-overlay));margin-block-end:var(--space-m-l);}
#breadcrumbs .wrapper{padding-inline:var(--space-xs);}
#breadcrumbs a{color:var(--white);}
.gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], [type="button"], [type="reset"]):where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)),
.gform-theme.gform-theme--framework.gform_wrapper input:is([type="submit"], [type="button"], [type="reset"]).button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)),
.gform-theme.gform-theme--framework.gform_wrapper input[type="submit"].button.gform_button:where(:not(.gform-theme-no-framework):not(.gform-theme__disable):not(.gform-theme__disable *):not(.gform-theme__disable-framework):not(.gform-theme__disable-framework *)){background:var(--primary);color:var(--black);border:none;padding:var(--space-m) var(--space-l);width:auto;text-align:center;margin:0.25rem auto;font-size:1.25rem;font-weight:700;}
.quote-box #gform_save_1_footer{display:none;}
input[type="submit"]{background:var(--primary);padding:1rem 2rem;color:var(--white);border:none;font-size:1.25rem;font-weight:700;cursor:pointer;transition:background-color 0.3s ease-in-out;}
input[type="submit"]:hover,
input[type="submit"]:focus{background:var(--primary-dark);}
.single {
h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6{font-weight:700;line-height:1;margin:var(--space-s-m) 0;color:var(--body);text-transform:none;color:var(--body);}
} .sidebar{margin:0 auto var(--space-m-2xl);}
.sidebar .social{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;margin:1rem 0;padding-top:0;}
.sidebar .social-icon a svg{color:var(--primary);margin-right:0.5rem;}
.sidebar .social-icon a:hover svg{color:var(--primary-darker);margin-right:0.5rem;}
.sidebar h2, .sidebar h3{color:var(--primary);margin-block:1rem;}
.sidebar a, .sidebar a:link{color:var(--primary);text-decoration:none;}
.sidebar .fb-page.fb_iframe_widget iframe{min-width:100%;margin-block:var(--space-s-m);}
ul.wp-block-latest-posts li{padding-block:0.25rem;font-size:1.25rem;}
.search-form{display:flex;flex-direction:row;min-width:100%;margin-bottom:1.5rem;}
.search-form .search-input{width:66%;padding:1rem;border:1px solid #ccc;border-right:none;font-size:0.9rem;}
.search-form .search-submit{width:34%;padding:0.5rem;background-color:var(--primary);color:white;font-weight:700;border:none;cursor:pointer;font-size:1rem;transition:background-color 0.3s ease;}
.search-form .search-submit:hover{background-color:var(--primary-dark);}
.search-form .search-container{width:100%;}
.search-bar{margin:auto auto var(--space-l);}
.search-bar{margin:var(--space-m-l) auto var(--space-s-m);max-width:55rem;}
.search.search-results .search-bar{padding:var(--space-m-xl) var(--space-m) var(--space-2xs);}
.search-bar ul{display:flex;flex-direction:row;justify-content:center;align-items:center;list-style-type:none;padding:0;margin:var(--space-m) auto;text-align:center;font-size:var(--font-size-m);list-style-type:none;}
.search-bar ul li a{color:var(--primary);}
.search-bar ul li{color:var(--gray);padding:0 var(--space-4xs-3xs);}
#post-grid{display:grid;grid-template-columns:repeat(1, 1fr);gap:var(--space-s-m);}
#post-grid article{background-color:var(--gray-bg);margin-block-end:0.25rem;}
#post-grid .post-thumb a img{width:100%;height:100%;object-fit:cover;max-height:210px;max-width:none;margin-block-end:var(--space-s);}
#post-grid h2{font-size:var(--font-m-l);list-style:1.3;margin-block-end:var(--space-xs);}
#post-grid .post-info{padding:var(--space-3xs-2xs) var(--space-s-m) var(--space-s-m);}
#post-grid article.no-results{grid-column:span 3;text-align:center;margin:var(--space-m-l) auto;font-size:var(--font-m-xl);background-color:var(--white);}
.padding-y-lg{padding-top:var(--space-m-2xl);padding-bottom:var(--space-m-2xl);}
#gray-bg,
.gray-bg, #types-grid{background-color:var(--gray-bg);padding:0;margin:auto;}
.sharethis-inline-share-buttons{padding-bottom:var(--space-m);}
#types-grid{padding:0 var(--space-m);}
#types-grid.padding-3xl-y{padding:var(--space-m-3xl) 0 var(--space-m-2xl);}
#fw-inner{max-width:1280px;margin:0 auto;padding:var(--space-none-2xl) 0;}
.residential-roofing #fw-inner .wpb_content_element,
.wpb_single_image.wpb_content_element.vc_align_center.wpb_content_element{margin-bottom:auto;}
.gray-bg .vc_row.wpb_row.vc_inner.vc_row-fluid.wrapper, #types-grid .vc_row.wpb_row.vc_inner.vc_row-fluid.wrapper{margin:auto auto;width:100%;padding:var(--space-m-l) 0;gap:2rem;}
#types-grid h2{font-size:var(--font-lg);max-width:700px;text-align:center;margin:auto;padding-bottom:var(--space-m-l);}
#types-grid h3{padding-top:1rem;margin-bottom:0;}
#types-grid #types-grid-inner{padding:var(--space-2xs) var(--space-xs-s);}
#types-grid #types-grid-inner p{padding-bottom:var(--space-m-l);}
.service-grid{max-width:850px;margin:0 auto;display:flex;flex-wrap:wrap;padding:0 var(--space-s);gap:var(--space-m);}
h2.service-grid-title{width:100%;text-align:center;padding:var(--space-m-xl) var(--space-m) var(--space-4xs);margin:auto auto;text-transform:uppercase;font-size:var(--font-l-xl);}
.roof-replacement h2.service-grid-title{padding:var(--space-m-xl) var(--space-m) 0;margin:auto auto;}
.service-item{display:flex;flex-direction:row;justify-content:center;align-items:flex-start;gap:var(--space-s-l);width:100%;}
.service-image{flex:0 0 33%;}
.service-image img{width:100%;height:100%;max-height:175px;object-fit:cover;}
.service-info{flex:1;padding:0;display:flex;flex-direction:column;}
.service-title{margin:0;padding:0 0 0.25rem;line-height:1.1;color:var(--primary);text-transform:uppercase;}
.service-info a, .service-info a:link{color:var(--primary);}
.services-text-area{text-align:center;max-width:875px;margin:auto;padding:var(--space-m);}
.roof-replacement .services-text-area{text-align:center;max-width:875px;margin:auto;padding:var(--space-2xs) var(--space-s) var(--space-m-l);}
.page-id-1279 .service-item:last-child{padding:var(--space-1-3) 0 var(--space-4xs);margin:var(--space-l-2xl) 0 auto;border-top:solid 5px var(--white);}
.footer{background:var(--primary-dark);color:var(--white);}
footer a, footer a:link{text-decoration:none;}
footer.footer{margin:0 auto;padding:2.5rem 0 0;background:linear-gradient(150deg, var(--primary-dark), var(--primary-mid));}
.footer-inner{width:100%;height:auto;}
.footer-top{display:flex;flex-direction:column;padding:0 0 var(--space-m-l);width:100%;height:auto;color:var(--white);font-weight:600;}
.footer-top h2{color:var(--white);font-size:22px;padding-bottom:0.25rem;margin-bottom:0.25rem;letter-spacing:-0.04rem;}
.footer-top a, .footer-top a:link{color:var(--white);}
.footer-grid{display:flex;flex-direction:row;margin:auto auto var(--space-m-l);padding-block-start:var(--space-s-m);}
.footer-top .phone{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;margin:0 0 0.1rem;padding-top:0;font-weight:700;}
.footer-top .phone svg{margin-right:0.375rem;}
.footer-top address{position:relative;padding-left:1rem;}
.footer-top address::before{content:"";position:absolute;left:0;top:0.2em;width:9.846px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='9.846' height='16' viewBox='0 0 9.846 16'%3E%3Cpath id='Subtraction_1' data-name='Subtraction 1' d='M4.923,16h0L.658,7.385H.665a4.923,4.923,0,1,1,8.518,0h.007L4.924,16Zm0-12.9a1.762,1.762,0,1,0,1.76,1.761A1.763,1.763,0,0,0,4.923,3.1Z' fill='%233C92D8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;}
footer a:hover, footer a:focus{text-decoration:underline;}
.footer-top .footer-social{display:flex;flex-direction:row;justify-content:center;align-items:flex-start;margin:0 auto;}
.footer-top .footer-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:auto;margin:auto auto 1rem;}
.footer-address-left, .footer-address-right{display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;width:auto;height:auto;min-width:20rem;margin:1rem auto;}
.footer-top .footer-logo a img{width:100%;height:auto;max-height:108px;margin:auto auto;padding:0.5rem;}
.footer-top .footer-social{margin:1.5rem auto auto;}
.footer-top .footer-social .social-icon a{margin:auto auto;padding:0 0.5rem;}
#menu-footer{display:flex;flex-direction:row;justify-content:center;align-items:center;text-align:center;list-style-type:none;padding:var(--space-xs) var(--space-s);margin:0 auto;}
#menu-footer .menu-item{position:relative;margin-right:0.5rem;padding-right:1rem;}
#menu-footer .menu-item:not(:last-child)::after{content:"\2022";position:absolute;top:0.075rem;right:-0.09rem;color:var(--gray-light);padding-right:0.125rem;}
#menu-footer .menu-item:last-child{margin-right:0;padding-right:0;}
footer.site-footer a, footer.site-footer a:link{color:var(--white);}
.footer-bottom{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:auto auto;font-size:0.75rem;background-color:var(--primary-dark);color:var(--gray-light);width:100%;height:auto;text-align:center;padding:0.675rem 1rem;}
footer.footer{color:var(--white);}
.footer-bottom p, .footer-bottom a{color:var(--primary-light);line-height:1.4;font-size:0.75rem;}
.footer-bottom .copyright{max-width:800px;font-size:0.75rem;}
.home-hero{position:relative;overflow:hidden;max-height:38.625rem;}
.home-hero video{position:absolute;top:50%;left:50%;width:100%;height:100%;object-fit:cover;transform:translate(-50%, -50%);max-height:38.625rem;}
.home-hero .hero-overlay{position:relative;z-index:1;background:linear-gradient(150deg, var(--blue-overlay), var(--primary-dark-overlay));height:100%;}
.hero-inner{max-width:980px;color:var(--white);text-align:center;margin:auto;display:flex;flex-direction:column;min-height:20vh;justify-content:center;align-items:center;position:relative;z-index:2;}
.hero-inner h1{font-size:var(--font-l-xl);font-weight:900;color:var(--white);text-transform:uppercase;line-height:1;padding:0;margin:0 auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;}
.hero-inner .hero-text{color:var(--white);text-transform:uppercase;}
.hero-inner .hero-text-top{font-size:var(--font-hero-text-top);line-height:1.1;padding:3vh 1rem 0;margin:auto auto 0.5rem;font-weight:700;}
.hero-inner .hero-text-bottom{font-size:var(--font-hero-text-bottom);padding:0 1rem 3vh;margin:0.5rem auto auto;}
#home-intro{margin:auto;padding:var(--space-s-xl) var(--space-s) var(--space-s-l);text-align:center;}
#home-intro .wpb_content_element:nth-child(2){margin-bottom:auto;}
#home-intro .intro-header-row{display:flex;flex-direction:row;justify-content:center;align-items:center;margin-block-end:var(--space-xs);}
#home-intro .intro-header-row h2{font-size:1.375rem;color:var(--black);}
#home-intro .intro-header-row strong{font-weight:400;color:var(--gray-mid);padding:0 0.125rem;}
#home-intro p{max-width:847px;margin:auto;}
.featured-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:20px;text-align:center;}
.featured-item{overflow:hidden;}
.featured-image-container{position:relative;overflow:hidden;}
.featured-image{width:100%;height:auto;display:block;transition:transform 0.3s ease;cursor:pointer;}
.featured-title{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(167, 168, 169, 0.83);color:white;font-size:2.75rem;line-height:1;text-transform:uppercase;margin:0;padding:10px;transition:background 0.3s ease;display:flex;justify-content:center;align-items:center;text-align:center;text-shadow:1px 1px 0.25rem rgba(0, 0, 0, 0.5);}
.featured-item:hover .featured-image{transform:scale(1.5);}
.featured-item:hover .featured-title{background:rgba(167, 168, 169, 0.9);}
.featured-content{padding:var(--space-s);}
.featured-content .btn{display:inline-block;color:white;text-decoration:none;}
.featured-item:hover .featured-image{transform:scale(1.1);}
.featured-item:hover .featured-title{background:rgba(167, 168, 169, 0)}
.cookies{position:relative;}
.cookies #cookieConsent{display:none;position:fixed;left:0;bottom:0;background-color:rgba(0, 0, 0, 0.75);color:#ffffff;line-height:1;padding:15px 35px 20px 25px;border-radius:0 5px 0 0;z-index:9999999;}
.cookies #cookieConsent a{color:var(--white);}
.cookies #cookieConsent p{margin:0;padding:0.5em 0 0;margin-left:1rem;font-size:var(--font-sm);line-height:1.2;}
.cookies #cookieConsent svg{fill:#fff;max-width:15px;max-height:15px;margin-left:auto;}
#cookieConsent .accept{cursor:pointer;position:absolute;right:10px;left:10px;}
section.cookies #cookieConsent a{color:#fff;}
section.cookies #cookieConsent a:hover{color:rgba(255, 255, 255, 0.5);}
.header-overlay{background:linear-gradient(150deg, var(--blue-overlay), var(--primary-dark-overlay));}
#text-block{padding:var(--space-m-xl) 0;}
#text-block.vc_row.wpb_row.vc_row-fluid.financing-mid{padding-bottom:var(--space-m);}
#fin-block{padding-block-end:var(--space-m-2xl);}
main #text-block:first-child{padding-top:var(--space-m-l);padding-bottom:var(--space-m-2xl);}
.realtors #text-block:last-child{padding-bottom:0;}
.financing-intro-text .wpb_text_column.wpb_content_element, .financing-intro-text .wpb_single_image.wpb_content_element{margin-bottom:var(--space-xs);}
.financing-cta-container{background-color:var(--gray-bg);padding:var(--space-s-xl) var(--space-s);margin:var(--space-l-2xl) auto auto;}
.financing-cta-container .wpb_wrapper{max-width:1280px;margin:auto;gap:var(--space-m);}
.financing-cta-container p{max-width:550px;}
.financing-cta-container-inner{display:flex;flex-wrap:wrap;align-items:center;gap:2rem;max-width:1280px;margin:auto;}
.financing-cta-image, .financing-cta-content{flex:1 1 300px;}
.financing-cta-image img{max-width:100%;height:auto;}
.financing-cta-content h2{margin-top:0;color:var(--primary);text-transform:uppercase;font-size:2rem;}
.financing-cta-content .btn{display:inline-block;color:var(--white);}
.logo-grid{display:grid;gap:1rem;grid-template-columns:repeat(2, 1fr);padding:var(--space-1-0) var(--space-2xs);}
.logo-item{display:flex;justify-content:center;align-items:center;place-content:center;padding:1rem 0.5rem;}
.logo-item img{max-width:100%;height:auto;max-height:6rem;}
.review-hero{background-image:url(https://roofwithfoster.com/wp-content/themes/balefire/img/foster-roofing-reviews-bg.webp);background-size:cover;background-position:center;background-repeat:no-repeat;}
.review-hero .review-overlay{background:var(--gray-overlay);}
.review-hero .inner{display:flex;flex-direction:column;max-width:80rem;margin:auto;padding:var(--space-m-3xl) var(--space-m);}
.review-hero .inner .stars{max-width:20rem;margin:auto auto;padding:var(--space-m) var(--space-m) 0;}
.review-hero .inner .review-content{display:flex;flex-direction:column;align-items:center;color:var(--white);text-align:center;max-width:50rem;margin:auto;}
.review-hero .inner .review-content p{font-size:var(--font-m-l);line-height:1.4;font-weight:500;margin:auto auto;}
.review-hero .inner .review-content h3{font-weight:400;font-size:var(--font-m-2xl);color:var(--white);padding-top:0;}
.review-hero .inner .review-content .review-btn{margin:var(--space-m) auto;}
.recent-updates{padding:var(--space-m-2xl) 0;}
.recent-updates h2{color:var(--primary-dark);text-align:center;font-size:var(--font-l-xl);margin-block-end:var(--space-l);}
.recent-updates .post-thumbnail{width:100%;height:auto;margin-bottom:auto;}
.recent-posts-grid{display:grid;grid-template-columns:repeat(3, calc(33.333% - 1rem));gap:1rem;margin:var(--space-m-l) auto auto;}
.recent-post{padding:1rem;}
.recent-post h3{margin:var(--space-m) 0 var(--space-s);font-size:1.2rem;text-transform:uppercase;color:var(--primary);margin:0.125rem 0 0.5rem;}
.recent-posts-grid .recent-post .post-excerpt{padding:var(--space-s) var(--space-xs);}
.view-all-posts{text-align:center;display:block;margin:auto auto;width:100%;height:auto;}
.view-all-posts a.btn{display:inline-block;color:var(--white);margin:auto;}
#types-grid{padding:var(--space-m-l) var(--space-m) var(--space-m-2xl);}
#type-grid-inner{gap:var(--space-m-l);}
#gallery h2{text-align:center;font-size:var(--font-l-xl);margin-block-start:var(--space-l-3xl);margin-block-end:var(--space-m);}
.home-builders #gallery h2{text-align:center;font-size:var(--font-l-xl);margin-block-start:var(--space-l-3xl);margin-block-end:var(--space-4xs);}
#gallery h2+p{margin-block-end:var(--space-s);}
#gallery p{text-align:center;font-size:var(--font-base);padding-block-end:var(--space-xs);max-width:875px;margin:auto;}
.roof-repair #gallery h2{text-align:center;font-size:var(--font-l-xl);margin-block-start:auto;margin-block-end:var(--space-l);}
.roof-repair #text-block-short{padding:var(--space-m-xl) var(--space-m) var(--space-xs);}
.gallery-grid{display:grid;grid-template-columns:1fr;gap:var(--space-xs);margin-block-end:var(--space-m);padding:0 var(--space-2xs);}
.contact-centered-cta{display:flex;flex-direction:column;align-items:center;width:100%;text-align:center;margin:auto auto;}
.contact-centered-cta a{display:block;width:fit-content;margin-block:0.5rem;}
.contact-cta{display:flex;flex-direction:column;align-items:center;margin-block:1.5rem;gap:1rem;}
.contact-cta a{display:block;width:fit-content;height:auto;align-items:center;justify-content:flex-start;}
.modal{display:none;position:fixed;z-index:99999999;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:rgba(2, 29, 73, 0.975);}
.modal-content{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:auto auto;padding:1rem;width:100%;max-width:975px;min-height:90vh;}
.modal-content h2{display:flex;flex-direction:column;text-align:center;font-size:var(--font-l-xl);padding-block-end:2rem;display:block;width:100%;margin-top:auto}
.modal-content a{color:var(--white);}
.hero-overlay .phone-locations-grid{display:none;}
.phone-locations-grid a.phone-location{color:var(--white) !important;}
.phone-modal{display:flex;flex-direction:column;justify-content:center;align-items:center;place-content:center;text-align:center;margin:0.5rem auto auto;}
.phone-locations-grid{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:1rem;place-content:center;text-align:center;margin:0 auto auto;}
a.modal-phone-btn{color:var(--primary-dark);background-color:rgba(9,176,227,0.16);border:solid 0.25rem rgba(255,255,255,0.1);border-radius:1rem;width:100%;height:auto;display:block;padding:2rem 2.5rem;transition:all 0.33s ease-in-out;}
a.modal-phone-btn:hover, a.modal-phone-btn:focus{background-color:rgba(9,176,227,0.24);border:solid 0.25rem rgba(255,255,255,0.2);}
a.modal-phone-btn span{color:var(--white);font-size:var(--font-cta-hl);font-weight:700;display:flex;justify-content:center;align-items:center;}
a.modal-phone-btn span svg{margin-inline-end:0.625rem;}
a.modal-phone-btn h3{color:var(--white);font-size:1.25rem;text-transform:capitalize;margin-bottom:0;margin-block-end:0;padding:0 1rem;}
.phone-modal a.phone-modal-trigger.call-now-cta{color:var(--white) !important;}
.phone-modal a.phone-modal-trigger.call-now-cta::before{content:'';color:var(--primary);position:absolute;left:0;top:50%;transform:translateY(-50%);width:15px;height:23px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13.755' height='22.009' viewBox='0 0 13.755 22.009'%3E%3Cpath id='Path_422' data-name='Path 422' d='M12.38,0a1.249,1.249,0,0,1,.963.413,1.249,1.249,0,0,1,.413.963V20.633a1.41,1.41,0,0,1-1.376,1.376h-11A1.249,1.249,0,0,1,.413,21.6,1.249,1.249,0,0,1,0,20.633V1.376A1.249,1.249,0,0,1,.413.413,1.249,1.249,0,0,1,1.376,0Zm-.963,16.506V3.714H2.338V16.506Zm-5.5,3.714a1.249,1.249,0,0,0,.963.413,1.249,1.249,0,0,0,.963-.413,1.33,1.33,0,0,0,0-1.926,1.249,1.249,0,0,0-.963-.413,1.249,1.249,0,0,0-.963.413,1.33,1.33,0,0,0,0,1.926Z' fill='%23FFFFFF'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain;}
.close{color:var(--gray-light);position:absolute;top:0.125rem;right:1rem;font-size:3.5rem;font-weight:bold;cursor:pointer;}
.insurance-assistance .financing-cta-container-inner .financing-cta-image{order:2;}
.insurance-assistance .financing-cta-container-inner .financing-cta-content{order:1;}
.insurance-assistance .financing-cta-container{margin-bottom:auto;}
#duo-col-img-cta{margin:var(--space-m-3xl) auto;}
#duo-col-img-cta h2{text-align:center;font-size:var(--font-l-xl);margin-block-end:var(--space-l);}
#duo-col-img-cta h3{margin-block-start:var(--space-xs-s);font-size:1.75rem;}
#duo-col-img-cta a img{opacity:1;transition:opacity 0.3s ease-in-out;}
#duo-col-img-cta a:hover img{opacity:0.8;}
.gallery-grid img{width:100%;height:auto;object-fit:cover;}
#text-block-short{max-width:850px;padding:var(--space-m-xl) 0 var(--space-4xs);margin:auto;}
.bma-checklist{margin:var(--space-l-2xl) auto;background-color:var(--gray-bg);}
.bma-checklist h2{text-align:center;font-size:var(--font-lg);padding-block-start:var(--space-m-2xl);padding-block-end:var(--space-l);padding-inline:var(--space-4xs);max-width:775px;margin:auto;}
ul.bma-checklist-grid{display:grid;grid-template-columns:repeat(1, 1fr);gap:var(--space-xs-s);padding-block-end:var(--space-2xs);max-width:1100px;margin:auto;padding:var(--space-s);list-style-type:none;}
ul.bma-checklist-grid li.bma-checklist-item{margin-block:auto;}
.home-builders ul.bma-checklist-grid{padding-block-end:var(--space-m-2xl);}
.home-builders .contact-list-centered-cta{padding-block-end:var(--space-m-2xl);}
.bma-checklist .contact-list-centered-cta{padding-block-end:var(--space-m-2xl);}
.home-builders .bma-checklist .contact-list-centered-cta, .realtors li.contact-list-cta{display:none;}
.vc_toggle_title h4{font-size:var(--font-hero-text-top);}
.vc_toggle_content{font-size:calc(var(--font-hero-text-top) * 0.875);}
.uppercase, strong.uppercase{text-transform:uppercase;}
.gray-bg .team-heading{display:block;text-align:center;padding-block-start:var(--space-m-xl);padding-block-end:var(--space-2xs-xs);max-width:1000px;margin:auto;}
.team-heading h2{font-size:var(--font-l);}
#team-grid{display:grid;grid-template-columns:repeat(1, 1fr);gap:1rem;padding:0 var(--space-m);max-width:1280px;margin:var(--space-xs-s) auto;place-content:center;}
.grid-item{display:flex;flex-direction:column;align-items:center;text-align:center;}
.grid-item img{width:100%;height:auto;object-fit:cover;margin-bottom:1rem;}
.grid-item h3{font-size:1.125rem;color:var(--black);margin-bottom:auto;padding:0 var(--space-xs-s);}
.team-title{font-size:1.1rem;font-style:italic;color:var(--black);margin:0 auto;padding:0 var(--space-m) var(--space-m);}
.team-single-grid{display:grid;grid-template-columns:repeat(1, 1fr);gap:1rem;padding:var(--space-m-2xl) 0;}
.team-single-grid-image img{width:100%;height:100%;object-fit:cover;}
.team-single-grid-image{order:1;}
.team-single-grid-text{order:2;}
.team-single-grid-text h2{font-size:1.375rem;margin:auto 0 var(--space-3xs);}
.team-single-grid-text p{max-width:30rem;}
a.team-btn{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;padding-block-start:var(--space-4xs);padding-block-end:var(--space-xs-s);}
a.team-btn svg{margin-right:0.125rem;}
.bma-checklist h3{position:relative;padding-left:var(--space-m);}
.bma-checklist-content{padding-left:2rem;}
.bma-checklist-grid .contact-cta{margin-top:0;padding:var(--space-s);}
.bma-checklist h3::before{content:'';position:absolute;left:0;top:48%;transform:translateY(-50%);width:20px;height:20px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 20 20'%3E%3Cpath id='iconmonstr-check-mark-circle-lined' d='M12,2A10,10,0,1,1,2,12,10,10,0,0,1,12,2Zm0,1.5A8.5,8.5,0,1,0,20.5,12a8.5,8.5,0,0,0-8.5-8.5ZM6.95,12.394,10.8,15.824a.751.751,0,0,0,1.051-.052l5.954-6.511a.745.745,0,0,0-.552-1.249.751.751,0,0,0-.554.243l-5.454,5.963-3.3-2.939a.748.748,0,1,0-1,1.113Z' transform='translate(-2 -2.005)' fill='%233C92D8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain;}
.blog-home{display:grid;grid-template-columns:repeat(1, 1fr);gap:1rem;padding:var(--space-m) var(--space-2xs);}
.blog-home article{display:flex;flex-direction:column;align-items:center;background-color:var(--gray-bg);}
.blog-home article .post-content{padding:var(--space-2xs) var(--space-s);}
.blog-home article h2{font-size:1.25rem;line-height:1.4;}
.blog-home article img, .medium-landscape{position:relative;aspect-ratio:16/9;width:100%;max-height:436px;height:auto;object-fit:cover;top:0;right:0;bottom:0;left:0;overflow:hidden;z-index:1;}
.blog-home article img, .medium-landscape img{width:100%;height:100%;object-fit:cover;}
#single-grid{display:grid;gap:2rem;margin-block-end:var(--space-m-2xl);}
main .post-thumbnail{margin:0 auto var(--space-m);width:100%;height:auto;}
.single .post-meta{margin-block:var(--space-s-m);}
blockquote.review{padding:var(--space-s) 0;text-align:center;max-width:60rem;margin:auto auto;}
blockquote.review svg{margin-bottom:var(--space-2xs);}
blockquote.review a.h2, blockquote.review h2{font-size:1.25rem;color:var(--body);font-weight:500;}
#faq-area{padding:var(--space-m) var(--space-s) var(--space-m-2xl);}
#faq-area .faq-cta{padding:var(--space-m);text-align:center;font-size:var(--font-m-l);font-weight:400;}
.commercial-roofing #gallery{padding-bottom:var(--space-m-3xl);}
.commercial-roofing #gallery .contact-centered-cta{display:none;}
.commercial-roofing #text-block:nth-child(2){padding-top:var(--space-2xs);}
#contact-page-form{margin-top:var(--space-m-2xl);padding-bottom:var(--space-xl-2xl);}
#contact-page-form .gform_wrapper,
.free-estimate .gform_wrapper{max-width:50rem;margin:auto auto;padding:0 var(--space-s);}
#contact-page-form .gform_title{text-align:center;font-size:var(--font-l-xl);padding-top:var(--space-l);}
#post-45 .wpb_single_image.wpb_content_element{margin-bottom:auto;}
.contact-rva, .contact-nwa{padding:var(--space-s) 0 var(--space-m-l);}
.contact-nwa .contact-inner a, .contact-rva .contact-inner a{color:var(--black);}
.contact-inner .phone a{display:flex;flex-direction:row;align-items:center;gap:var(--space-3xs);padding-block:var(--space-2xs);color:var(--black);font-size:var(--font-m-l);font-weight:700;line-height:1.4;}
.contact-inner .phone a:link{color:var(--black);text-decoration:none;}
.contact-inner .address{display:flex;flex-direction:row;align-items:center;gap:var(--space-3xs);padding-block:var(--space-2xs);color:var(--black);font-size:var(--font-m);font-weight:400;margin:auto 0;}
.contact-inner .email{display:flex;flex-direction:row;align-items:center;gap:var(--space-3xs);padding-block:var(--space-2xs);color:var(--black);font-size:var(--font-m);font-weight:400;margin:auto 0;}
.contact-rva h2, .contact-nwa h2{color:var(--primary-dark);padding:0 0 var(--space-2xs);}
.contact-rva .contact-inner, .contact-nwa .contact-inner{padding-left:var(--space-s);}
#post-344{padding-top:var(--space-m-xl);}
#text-block.financing-available-rr{max-width:1065px;margin:auto auto;padding:var(--space-s) 0;}
ul.blue-checklist{list-style:none;padding-inline-start:var(--space-s);}
ul.blue-checklist li{position:relative;padding-left:1.5rem;margin-bottom:0.5rem;}
ul.blue-checklist li::before{content:"";position:absolute;left:0;top:0.25rem;width:1.05rem;height:1.05rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.432' height='16.432' viewBox='0 0 16.432 16.432'%3E%3Cpath id='iconmonstr-check-mark-circle-lined' d='M10.217,2.005A8.216,8.216,0,1,1,2,10.221a8.22,8.22,0,0,1,8.217-8.216Zm0,1.233A6.983,6.983,0,1,0,17.2,10.221a6.987,6.987,0,0,0-6.983-6.983Zm-4.149,7.3,3.165,2.819a.617.617,0,0,0,.864-.043l4.892-5.349a.612.612,0,0,0-.454-1.026.617.617,0,0,0-.455.2L9.6,12.04,6.887,9.626a.614.614,0,1,0-.82.915Z' transform='translate(-2 -2.005)' fill='%233C92D8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain;}
.title-check h3{position:relative;padding-left:24px;align-items:center;}
.title-check h3::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:1.1rem;height:1.1rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16.432' height='16.432' viewBox='0 0 16.432 16.432'%3E%3Cpath id='iconmonstr-check-mark-circle-lined' d='M10.217,2.005A8.216,8.216,0,1,1,2,10.221a8.22,8.22,0,0,1,8.217-8.216Zm0,1.233A6.983,6.983,0,1,0,17.2,10.221a6.987,6.987,0,0,0-6.983-6.983Zm-4.149,7.3,3.165,2.819a.617.617,0,0,0,.864-.043l4.892-5.349a.612.612,0,0,0-.454-1.026.617.617,0,0,0-.455.2L9.6,12.04,6.887,9.626a.614.614,0,1,0-.82.915Z' transform='translate(-2 -2.005)' fill='%233C92D8'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;background-size:contain;}
.residential-roofing .service-grid-title{margin-bottom:var(--space-m-l);}
.contact-us main{padding-bottom:0;}
@media(max-width:599px){
.header-right .nav ul li.estimate-cta a{font-size:inherit;}
.home-hero .hero-inner{padding:5vh 0;}
.page-header .header-text{padding:0;max-width:97.5vw;padding:4vh 0;}
#gray-bg .contact-centered-cta,
.gray-bg .contact-centered-cta{padding-bottom:var(--space-s);}
.team-single-grid-image{margin-bottom:var(--space-s);}
.cookies #cookieConsent p{max-width:70vw;}
.footer-grid{display:flex;flex-direction:column;margin:auto auto 0.5rem;}
.footer-bottom .wrapper{display:flex;flex-direction:row;justify-content:center;align-items:center;}
.footer-bottom .wrapper{display:block;width:100%;height:auto;text-align:center;padding:0 15px 5px;}
.footer-bottom .copyright{display:block;flex-direction:column;width:100%;text-align:center;}
.footer-bottom .copyright{margin:1rem 1rem 0.25rem}
}
@media(min-width:480px){
body .vc_column_container>.vc_column-inner{width:100%;height:auto;box-sizing:border-box;padding-left:15px;padding-right:15px;width:100%;margin:auto}
}
@media(min-width:600px){
.logo-grid{grid-template-columns:repeat(5, 1fr);padding:var(--space-m-l) 0;place-items:center;margin-inline:auto;}
.footer-bottom{display:flex;}
.footer-bottom .copyright{display:flex;flex-direction:row;justify-content:space-between;align-items:center;}
.footer-bottom .wrapper{display:flex;flex-direction:row;justify-content:center;align-items:center;width:100%;height:auto;padding:1rem;margin:auto;}
.footer-bottom p, .footer-bottom a{display:flex;color:var(--gray-light);line-height:1.4;margin:inherit;padding:5px 0;}
.copyright{display:flex;}
}
@media screen and (min-width:768px){
.gallery-grid{grid-template-columns:repeat(3, 1fr);}
.gallery-grid img{width:100%;height:100%;max-height:238px;object-fit:cover;}
.team-single-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:1rem;padding:var(--space-m-2xl) 0;}
.team-single-grid-image{order:2;}
.team-single-grid-text{order:1;}
.team-single-grid-text p{max-width:90%;}
}
@media(max-width:768px){
.nav{flex-direction:column;position:fixed;top:0;left:0;width:90%;height:100%;max-width:326px;background-color:var(--primary-dark);z-index:9999;transition:transform 400ms ease-in-out;transform:translateX(-100%);}
.overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0, 0, 0, 0.9);z-index:9998;display:none;}
.nav.active{padding:20px 0;margin:auto 0;}
.nav.active ul{padding:0;margin:auto 0;}
.nav ul li{font-size:21px;}
.nav .menu-item-has-children .sub-menu li a{padding:0;font-size:20px;}
.nav .close-btn{position:absolute;top:1rem;right:1rem;background-color:transparent;border:none;cursor:pointer;color:var(--white);z-index:999999;}
.nav.active{padding:30px;}
.header-right .nav ul>li a{display:block;position:relative;color:var(--white);letter-spacing:-0.025rem;font-size:22px;padding:5px 0;}
.header-right .nav .sub-menu{font-size:21px;padding:0 30px;}
.menu-title{display:block;margin-bottom:1rem;color:var(--primary);}
.nav.active{transform:translateX(0);}
.menu-item-has-children li{margin:10px 0;}
.header-right .nav, .header-right .top-menu{display:none;}
.page-header .header-text{max-width:1280px;margin:auto;padding:var(--space-xl) var(--space-xs);}
.page-header .header-text h1{font-size:2.325rem;line-height:1;padding:var(--space-m) inherit;}
.featured-grid{grid-template-columns:1fr;padding:var(--space-m) var(--space-xs);}
.financing-cta-container{flex-direction:column;}
.recent-posts-grid{grid-template-columns:1fr;}
.service-item{flex-direction:column;}
.service-image{width:100%;height:100%;max-height:300px;object-fit:cover;}
.bma-checklist-grid{grid-template-columns:1fr;}
#single-grid{grid-template-columns:1fr;}
#single-grid main,
#single-grid .sidebar{grid-column:1 / -1;}
#types-grid .types-grid-inner{padding:var(--space-xs) var(--space-m);}
#types-grid .wpb_content_element{margin-bottom:var(--space-4xs);}
#types-grid h2{font-size:var(--font-lg);max-width:700px;text-align:center;margin:auto;padding-bottom:var(--space-4xs);}
#types-grid-inner .wpb_content_element{margin-bottom:var(--space-2xs);}
.contact-centered-cta{display:flex;flex-direction:column;align-items:center;width:100%;text-align:center;margin:0 auto auto;}
}
@media(min-width:769px){
body main{min-height:50vh}
header .logo a img{width:auto;flex-basis:1 1 100%;padding:5px 0;}
.header-text{display:block;position:relative;padding:var(--space-m-ll) var(--space-m);}
.header-text h1{font-size:3.125rem;padding:2vh 0;line-height:1;}
.header-right .nav ul>li{display:inline-block;position:relative;letter-spacing:-0.03rem;}
.header-right .nav ul a{display:block;padding:10px 6px;text-decoration:none;color:var(--black);position:relative;font-size:16.5px;}
.header-right .nav li.menu-item.hide-lg{display:none;}
.header-right .nav ul li.estimate-cta a{font-size:15px;padding:10px 12px;}
.header-right .nav .menu-item-has-children .sub-menu{display:block;position:absolute;top:100%;left:0;list-style-type:none;padding:0;color:var(--primary);background-color:#f0f0f0;border:1px solid #ccc;z-index:1000;width:auto;padding:var(--space-s);}
.header-right .nav .sub-menu li>a{font-size:18px;padding:5px 15px;display:block;width:200px;letter-spacing:-0.0125em;}
.header-right .nav ul li.estimate-cta a{font-size:1.063rem;text-align:center;color:var(--white);background:var(---primary);transition:background 0.33s ease-in-out;}
.header-right .nav ul li.estimate-cta a:hover, .header-right .nav ul li.estimate-cta a:focus{background:var(--primary-dark);}
.mobile-nav, .close-btn, .menu-title, .mobile-phone{display:none;}
.hero-inner{max-width:980px;color:var(--white);text-align:center;margin:auto;display:flex;flex-direction:column;min-height:620px;justify-content:center;align-items:center;}
.hero-inner h1{font-size:5.25rem;text-shadow:3px 5px 10px rgba(0, 0, 0, 0.5);line-height:1;padding:0;margin:0 auto;}
#breadcrumbs{font-size:12px;font-weight:400;padding:0.6rem var(--space-m);margin:0 auto var(--space-m);color:var(--white);background:linear-gradient(150deg, var(--blue-overlay), var(--primary-dark-overlay));margin-block-end:var(--space-m-l);}
#breadcrumbs .wrapper{padding-inline:var(--space-m);max-width:1280px;}
#single-grid{grid-template-columns:2fr 1fr;}
#single-grid main{grid-column:1 / 2;}
#single-grid .sidebar{grid-column:2 / 3;}
.contact-cta{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;margin-block:1rem;}
.contact-centered-cta{max-width:fit-content;display:flex;flex-direction:row;align-items:center;align-items:center;text-align:center;margin:var(--space-m) auto;}
.gray-bg .contact-centered-cta{padding-block-end:var(--space-m-2xl);}
#home-featured{margin:var(--space-m) auto var(--space-m-2xl);}
#post-grid{display:grid;grid-template-columns:repeat(3, 1fr);}
#post-grid .post-thumb{width:100%;height:auto;max-height:250px;}
#text-block.financing-available-rr{max-width:1065px;margin:auto auto;padding:var(--space-l) 0 var(--space-2xl);}
#post-grid .post-thumb a img{width:100%;height:210px;object-fit:cover;max-width:400px;}
.blog-home{display:grid;grid-template-columns:repeat(3, 1fr);gap:1rem;padding:var(--space-m) var(--space-2xs);}
.footer-bottom .copyright{width:100%;}
.footer-top{display:flex;flex-direction:row;justify-content:space-between;}
.footer-top .footer-logo, .footer-top .footer-address-left, .footer-top .footer-address-right, .footer-top .footer-social{width:calc(25% - 1rem);margin:auto;}
.footer-top .footer-social{display:flex;flex-direction:row;justify-content:flex-start;margin:0.75rem auto 1rem;}
.hero-overlay .phone-locations-grid{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:1.5rem;place-content:center;text-align:center;margin:0.5rem auto auto;}
.phone-locations-grid{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:3rem;place-content:center;text-align:center;margin:0.125rem auto auto;}
ul.bma-checklist-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:var(--space-xs-s);padding-block-end:var(--space-2xs);max-width:1100px;margin:auto;padding:var(--space-s);list-style-type:none;}
ul.bma-checklist-grid li.bma-checklist-item{margin-block:var(--space-2xs);}
#menu-footer .menu-item{position:relative;margin-right:0.5rem;padding-right:0.5rem;}
.bma-checklist-grid .contact-cta{margin-top:0;padding-left:2rem;padding-top:0.25rem;}
blockquote.review{padding:var(--space-m);text-align:center;max-width:60rem;margin:auto auto;}
#text-block-short{max-width:850px;padding:var(--space-m-xl) var(--space-m);margin:auto;}
#contact-page-form{padding-bottom:var(--space-m-2xl);}
.hero-overlay .phone-locations-grid{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:1rem;place-content:center;text-align:center;margin:0.5rem auto auto;}
.hero-overlay a.modal-phone-btn{background-color:rgba(2,29,73,0.55);border:solid 0.25rem rgb(21,70,150,1);border-radius:1rem;width:100%;height:auto;display:block;padding:1rem 2.5rem;transition:all 0.33s ease-in-out;}
.phone-modal{display:none;}
}
@media(min-width:768px) and (max-width:991px){
.nav .menu-item-has-children>a::after{content:'\2303';position:absolute;font-size:10px;color:var(--gray-light);display:inline-block;font-weight:700;width:0.25rem;height:2px;right:-0.25rem;bottom:10px;transform:translate(0, -50%) rotate(180deg);}
#team-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:1rem;padding:0 var(--space-m);max-width:1280px;margin:var(--space-xs-s) auto;place-content:center;}
}
@media(min-width:992px){
header .logo a img{width:100%;max-width:200px;padding:5px;}
.header-right .nav ul a{display:block;padding:10px 12px;text-decoration:none;position:relative;font-size:1.063rem;letter-spacing:-0.03rem;}
.header-right .nav ul li.estimate-cta a{font-size:1.063rem;text-align:center;padding:12px 15px;}
.home .page-header{position:relative;}
.home .page-header{position:relative;width:100%;min-height:526px;margin:auto;overflow:hidden;top:0;}
#types-grid .wpb_button,
#types-grid .wpb_content_element,
#types-gridul.wpb_thumbnails-fluid>li{margin-bottom:auto;}
#types-grid p{padding:0 var(--space-s);}
#text-block{padding:var(--space-m-3xl) 0;}
.wpb_wrapper .vc_figure{margin-block-end:auto;}
.roof-replacement .gray-bg:first-child{margin-block-start:var(--space-m-2xl);}
main #text-block:first-child{padding:var(--space-m-2xl) 0}
#team-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:1rem;padding:0 var(--space-m);max-width:1280px;margin:var(--space-xs-s) auto;place-content:center;}
}
@media(min-width:1024px){
.header-spacer{padding-top:137px;}
}
@media(min-width:769px) and (max-width:1040px){
header .logo{width:clamp(100px, 16vw, 200px);flex-grow:1;}
header .logo a img{width:100%;max-width:200px;height:auto;flex-grow:1;}
.header-right .nav ul{padding-inline-start:var(--space-4xs);}
.header-right .nav ul a{display:block;padding:10px 5px;text-decoration:none;position:relative;font-size:0.9rem;letter-spacing:-0.05rem;}
.header-right .nav ul li.estimate-cta a{font-size:0.9rem;padding:0.5rem 0.5rem;}
}
@media(min-width:601px) and (max-width:1024px){
.footer-grid{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap;margin:auto auto var(--space-m-l);}
.footer-grid .footer-logo{width:100%;display:flex;justify-content:center;align-items:center;flex-direction:column;}
.footer-grid .footer-address-left, .footer-grid .footer-address-right, .footer-grid .footer-social{display:flex;width:calc(25% - 1rem);margin:auto auto;justify-content:center;align-items:center;}
}
@media(min-width:1192px){
.header-right .nav ul a{display:block;padding:10px 16px;text-decoration:none;color:var(--primary-dark);position:relative;font-size:1.063rem;letter-spacing:normal;}
.header-right .nav ul li.estimate-cta a{font-size:1.063rem;background:var(--primary);font-weight:700;padding:12px 25px;transition:background 0.33s ease-in-out;}
}
@media(min-width:1025px){
header .logo a img{width:100%;height:auto;min-width:261px;min-height:110px;}
}
@media(min-width:1280px){
.header-right .nav ul li.estimate-cta{margin-left:8px;}
}
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min-resolution: 144dpi){}::selection{background:#04A4CC;color:#FFF;text-shadow:none;}::-webkit-selection{background:#04A4CC;color:#FFF;text-shadow:none;}::-moz-selection{background:#04A4CC;color:#FFF;text-shadow:none;}
.alignnone{margin:5px 20px 20px 0;}
.aligncenter, div.aligncenter{display:block;margin:5px auto 5px auto;}
.alignright{float:right;margin:5px 0 20px 20px;}
.alignleft{float:left;margin:5px 20px 20px 0;}
a img.alignright{float:right;margin:5px 0 20px 20px;}
a img.alignnone{margin:5px 20px 20px 0;}
a img.alignleft{float:left;margin:5px 20px 20px 0;}
a img.aligncenter{display:block;margin-left:auto;margin-right:auto;}
.wp-caption{background:#FFF;border:1px solid #F0F0F0;max-width:96%;padding:5px 3px 10px;text-align:center;}
.wp-caption.alignnone{margin:5px 20px 20px 0;}
.wp-caption.alignleft{margin:5px 20px 20px 0;}
.wp-caption.alignright{margin:5px 0 20px 20px;}
.wp-caption img{border:0 none;height:auto;margin:0;max-width:98.5%;padding:0;width:auto;}
.wp-caption .wp-caption-text, .gallery-caption{font-size:11px;line-height:1.4;margin:0;padding:0 0.25rem 5px;}
@media print {
* {
background: transparent !important;
color: #000 !important;
box-shadow: none !important;
text-shadow: none !important;
}
a, a:visited {
text-decoration: underline;
}
a[href]::after {
content: " (" attr(href) ")";
}
abbr[title]::after {
content: " (" attr(title) ")";
}
.ir a::after, a[href^="javascript: "]::after,
a[href^="#"]::after {
content: "";
}
pre, blockquote {
border: 1px solid #999;
page-break-inside: avoid;
}
thead {
display: table-header-group;
}
tr, img {
page-break-inside: avoid;
}
img {
max-width: 100% !important;
}
@page {
margin: 0.5cm;
}
p, h2, h3 {
orphans: 3;
widows: 3;
}
h2, h3 {
page-break-after: avoid;
}
}