/* Roofing Giant: shared content components. Existing compatibility fixes remain. */
.rg-v2{--rg-ink:#142b43;--rg-muted:#4e6072;--rg-red:#bd252d;--rg-line:#dce4ec;--rg-paper:#f4f7fa;color:var(--rg-ink);font-family:inherit;line-height:1.65;overflow-wrap:break-word}
.rg-v2 *{box-sizing:border-box}.rg-v2 h1,.rg-v2 h2,.rg-v2 h3{color:var(--rg-ink);font-weight:750;line-height:1.14;letter-spacing:-.025em;margin:0 0 20px}.rg-v2 h1{font-size:clamp(2.25rem,4.5vw,4.25rem)}.rg-v2 h2{font-size:clamp(1.85rem,3.1vw,2.8rem)}.rg-v2 h3{font-size:1.35rem}.rg-v2 p{margin:0 0 20px}.rg-v2 a{color:#1d527b;text-underline-offset:.2em}.rg-v2 a:hover{text-decoration-thickness:2px}.rg-v2 img{display:block;max-width:100%;height:auto}.rg-v2 figure{margin:0}.rg-v2 figcaption{font-size:.88rem;color:var(--rg-muted);padding-top:12px}.rg-v2 .rg-wrap{width:min(1180px,calc(100% - 48px));margin-inline:auto}.rg-v2 .rg-section{padding-block:88px}.rg-v2 .rg-soft{background:var(--rg-paper)}.rg-v2 .rg-eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:16px;color:#536b81}.rg-v2 .rg-intro{font-size:1.12rem;color:var(--rg-muted);max-width:65ch}.rg-v2 .rg-section-head{max-width:780px;margin-bottom:34px}.rg-v2 .rg-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:26px}.rg-v2 .rg-button{display:inline-flex;justify-content:center;align-items:center;min-height:50px;padding:13px 22px;border:2px solid var(--rg-red);border-radius:5px;background:var(--rg-red);color:#fff;font-weight:750;font-size:.98rem;text-decoration:none;line-height:1.35;text-align:center;transition:background .15s,border-color .15s}.rg-v2 .rg-button:hover{background:#98202a;border-color:#98202a;color:#fff}.rg-v2 .rg-button-outline{color:var(--rg-ink);border-color:#8b9aac;background:transparent}.rg-v2 .rg-button-outline:hover{background:var(--rg-ink);border-color:var(--rg-ink);color:#fff}.rg-v2 a:focus-visible,.rg-v2 summary:focus-visible{outline:3px solid #f8b743;outline-offset:5px;border-radius:3px}.rg-v2 .rg-text-link{font-weight:750}.rg-v2 .rg-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.rg-v2 .rg-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.rg-home .rg-hero{position:relative;isolation:isolate;background:#142b43;color:#fff;min-height:600px;display:flex;align-items:center;padding-block:68px}.rg-home .rg-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.rg-home .rg-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,31,51,.97) 0%,rgba(12,31,51,.88) 43%,rgba(12,31,51,.15) 100%);z-index:-1}.rg-home .rg-hero-copy{max-width:730px}.rg-home .rg-hero h1{color:#fff;max-width:21ch}.rg-home .rg-hero .rg-eyebrow{color:#d3e0eb}.rg-home .rg-hero .rg-intro{color:#edf3f8;max-width:52ch}.rg-home .rg-hero .rg-button-outline{border-color:#fff;color:#fff}.rg-home .rg-hero .rg-button-outline:hover{color:#142b43;background:#fff}.rg-home .rg-hero-small{margin-top:22px;font-size:.92rem;color:#e0e9f1}.rg-home .rg-hero-small a{color:#fff;font-weight:700}.rg-home .rg-proof{padding-block:30px;border-bottom:1px solid var(--rg-line);background:#fff}.rg-home .rg-proof-item{padding-inline:24px;border-left:1px solid var(--rg-line)}.rg-home .rg-proof-item:first-child{padding-left:0;border:0}.rg-home .rg-proof strong{font-size:1.2rem;display:block}.rg-home .rg-proof p{font-size:.9rem;color:var(--rg-muted);margin:5px 0 0}.rg-home .rg-proof a{color:inherit}
.rg-v2 .rg-pathway,.rg-v2 .rg-service-card,.rg-v2 .rg-project-card{border:1px solid var(--rg-line);border-radius:8px;background:#fff;overflow:hidden}.rg-v2 .rg-pathway{padding:32px}.rg-v2 .rg-pathway p,.rg-v2 .rg-service-card p,.rg-v2 .rg-project-card p{color:var(--rg-muted)}.rg-v2 .rg-pathway .rg-eyebrow{color:#a82028}.rg-v2 .rg-service-card{padding:28px}.rg-v2 .rg-service-card h3 a,.rg-v2 .rg-project-card h3 a{color:var(--rg-ink);text-decoration:none}.rg-v2 .rg-service-card h3 a:hover,.rg-v2 .rg-project-card h3 a:hover{text-decoration:underline}.rg-v2 .rg-project-card{display:flex;flex-direction:column}.rg-v2 .rg-project-card .rg-project-photo{height:240px;width:100%;object-fit:cover;object-position:center}.rg-v2 .rg-project-content{padding:26px;display:flex;flex-direction:column;flex:1}.rg-v2 .rg-project-content .rg-text-link{margin-top:auto}.rg-v2 .rg-meta{font-size:.78rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase;color:#5b6b7b;margin-bottom:12px}.rg-v2 .rg-steps{list-style:none;padding:0;margin:0;counter-reset:rg-step}.rg-v2 .rg-step{counter-increment:rg-step;border-top:2px solid var(--rg-line);padding-top:24px}.rg-v2 .rg-step:before{content:"0" counter(rg-step);font-size:1rem;font-weight:800;color:var(--rg-red);display:block;margin-bottom:16px}.rg-v2 .rg-step p{color:var(--rg-muted)}.rg-v2 .rg-split{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:start}.rg-v2 .rg-callout{padding:32px;border-left:4px solid var(--rg-red);background:var(--rg-paper);border-radius:0 8px 8px 0}.rg-v2 .rg-callout p:last-child{margin:0}.rg-v2 .rg-checklist{padding-left:22px}.rg-v2 .rg-checklist li{margin-bottom:10px}.rg-v2 .rg-faq{max-width:900px}.rg-v2 .rg-faq details{border-top:1px solid var(--rg-line);padding:0}.rg-v2 .rg-faq details:last-child{border-bottom:1px solid var(--rg-line)}.rg-v2 .rg-faq summary{font-weight:750;font-size:1.06rem;cursor:pointer;padding:22px 30px 22px 0;line-height:1.45}.rg-v2 .rg-faq details p{color:var(--rg-muted);max-width:75ch;margin:0 0 24px}.rg-v2 .rg-final{background:var(--rg-ink);color:#fff;padding-block:66px}.rg-v2 .rg-final h2,.rg-v2 .rg-final a{color:#fff}.rg-v2 .rg-final .rg-intro{color:#d8e4ef}.rg-v2 .rg-final .rg-button-outline{border-color:#e4edf5}.rg-v2 .rg-final .rg-button-outline:hover{background:#fff;color:var(--rg-ink)}.rg-v2 .rg-breadcrumbs{font-size:.88rem;padding-top:22px;line-height:1.8}.rg-v2 .rg-breadcrumbs a{color:var(--rg-muted)}.rg-v2 .rg-page-hero{padding-block:54px 64px;background:var(--rg-paper)}.rg-v2 .rg-page-hero h1{max-width:24ch}.rg-v2 .rg-prose{max-width:820px}.rg-v2 .rg-prose h2{font-size:clamp(1.6rem,2.6vw,2.15rem);margin-top:44px}.rg-v2 .rg-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:24px;background:var(--rg-paper);gap:20px;border-radius:8px;margin:26px 0}.rg-v2 .rg-facts dt{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--rg-muted)}.rg-v2 .rg-facts dd{margin:6px 0 0;font-weight:750}.rg-v2 .rg-case-photo{max-height:600px;width:100%;object-fit:contain;background:#eef2f5;border-radius:8px}.rg-v2 .rg-gallery-heading{margin-top:56px}.rg-v2 .rg-gallery img{width:100%;height:240px;object-fit:cover}.rg-v2 .rg-gallery{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px!important}.rg-v2 .rg-gallery figure{width:100%!important;margin:0!important}.rg-v2 .rg-review-section{padding-block:72px}.rg-v2 .rg-review-section .ti-widget{margin-inline:auto}.rg-v2 .rg-review-quote{font-size:1.25rem;margin:0 0 30px;padding:24px 28px;border-left:4px solid var(--rg-red);background:var(--rg-paper)}.rg-v2 .rg-review-quote cite{display:block;font-style:normal;font-size:.9rem;margin-top:12px;color:var(--rg-muted)}
@media(min-width:900px){.rg-home .rg-proof .rg-grid-3{gap:0}.rg-v2 .rg-section-head-row{display:flex;justify-content:space-between;align-items:end;gap:28px}.rg-v2 .rg-section-head-row .rg-section-head{margin-bottom:0}.rg-v2 .rg-section-head-row{margin-bottom:34px}}
@media(max-width:899px){.rg-v2 .rg-section{padding-block:60px}.rg-home .rg-hero{min-height:auto;padding-block:54px}.rg-home .rg-hero::before{background:linear-gradient(90deg,rgba(12,31,51,.94),rgba(12,31,51,.72))}.rg-v2 .rg-grid-3{grid-template-columns:1fr 1fr}.rg-home .rg-proof .rg-grid-3{grid-template-columns:1fr}.rg-home .rg-proof-item{padding:16px 0;border-left:0;border-top:1px solid var(--rg-line)}.rg-home .rg-proof-item:first-child{padding-top:0}.rg-home .rg-proof-item:last-child{padding-bottom:0}.rg-v2 .rg-split{grid-template-columns:1fr;gap:30px}.rg-v2 .rg-facts{grid-template-columns:1fr 1fr}.rg-v2 .rg-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.rg-v2 .rg-section-head-row>.rg-text-link{display:inline-block;margin-bottom:28px}}
@media(max-width:599px){.rg-v2 .rg-wrap{width:calc(100% - 36px)}.rg-v2 .rg-grid-2,.rg-v2 .rg-grid-3{grid-template-columns:1fr}.rg-v2 .rg-actions{align-items:stretch;flex-direction:column}.rg-v2 .rg-button{width:100%;min-height:52px}.rg-home .rg-hero h1{font-size:2.45rem;max-width:100%}.rg-home .rg-hero-image{object-position:67% center}.rg-v2 .rg-intro{font-size:1.04rem}.rg-v2 .rg-pathway,.rg-v2 .rg-service-card{padding:26px}.rg-v2 .rg-project-card .rg-project-photo{height:245px}.rg-v2 .rg-page-hero{padding-block:36px 44px}.rg-v2 .rg-facts{grid-template-columns:1fr;padding:22px}.rg-v2 .rg-gallery img{height:155px}.rg-v2 .rg-callout{padding:24px}.rg-v2 .rg-review-quote{padding:20px}.rg-v2 .rg-final{padding-block:48px}}
@media(prefers-reduced-motion:reduce){.rg-v2 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.rg-header-v2.homedroid-header{background:#142b43!important;padding:0!important;color:#fff!important}.rg-header-v2 .rg-header-inner{max-width:1280px;margin:auto;padding:20px 32px;display:flex;align-items:center;justify-content:space-between;gap:30px}.rg-header-v2 .wp-block-site-logo{flex:0 0 160px}.rg-header-v2 .wp-block-site-logo img{width:160px!important;max-height:90px;object-fit:contain}.rg-header-v2 .rg-navigation-v2{margin:0!important;flex:1;font-size:15px}.rg-header-v2 .wp-block-navigation__container{gap:22px!important}.rg-header-v2 .wp-block-navigation-item__content,.rg-header-v2 .wp-block-navigation-submenu__toggle,.rg-header-v2 .wp-block-navigation__responsive-container-open{color:#fff!important;font-weight:650}.rg-header-v2 .wp-block-navigation__submenu-container{background:#fff!important;color:#142b43!important;border:1px solid #dce4ec!important;border-radius:6px;min-width:250px!important;padding:12px!important}.rg-header-v2 .wp-block-navigation__submenu-container .wp-block-navigation-item__content{color:#142b43!important;padding:6px 10px!important;line-height:1.5!important}.rg-header-v2 .rg-header-contact{display:flex;align-items:center;gap:16px}.rg-header-v2 .rg-header-phone{color:#fff!important;font-size:14px;font-weight:750;white-space:nowrap;text-decoration:none}.rg-header-v2 .rg-header-book{background:#bd252d;border:2px solid #bd252d;color:#fff!important;padding:11px 15px;border-radius:5px;font-size:14px;line-height:1.4;font-weight:750;text-decoration:none;text-align:center}.rg-header-v2 a:focus-visible,.rg-header-v2 button:focus-visible{outline:3px solid #f8b743!important;outline-offset:5px}.rg-skip-link{position:absolute;left:18px;top:0;transform:translateY(-150%);z-index:100000;background:#fff;color:#142b43!important;padding:14px 18px;font-weight:750}.rg-skip-link:focus{transform:translateY(10px)}
.rg-footer-v2{background:#102238;padding:66px 0 24px;color:#cbd7e3}.rg-footer-v2 .rg-footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:36px}.rg-footer-v2 .rg-footer-brand{font-size:1.8rem;font-weight:800;color:#fff;margin-bottom:12px}.rg-footer-v2 h2{font-size:1rem!important;line-height:1.4;color:#fff;letter-spacing:0;margin-bottom:18px}.rg-footer-v2 p{font-size:.91rem}.rg-footer-v2 a{color:#e1eaf2}.rg-footer-v2 ul{list-style:none;margin:0;padding:0;font-size:.91rem}.rg-footer-v2 li{margin-bottom:10px}.rg-footer-v2 .rg-button{font-size:.88rem;margin-top:4px}.rg-footer-v2 .rg-footer-bottom{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #34465a;padding-top:24px;margin-top:44px}.rg-footer-v2 .rg-footer-bottom p{margin:0;font-size:.82rem}.rg-footer-v2 .rg-footer-bottom nav{display:flex;gap:22px;font-size:.82rem}
@media(max-width:1100px){.rg-header-v2 .rg-header-phone{display:none}.rg-header-v2 .rg-header-inner{gap:20px;padding-inline:24px}.rg-header-v2 .wp-block-navigation__container{gap:17px!important}}
@media(max-width:899px){.rg-header-v2 .rg-header-inner{padding:14px 20px;min-height:88px;gap:20px}.rg-header-v2 .rg-header-contact{display:none}.rg-header-v2 .wp-block-site-logo{flex-basis:140px}.rg-header-v2 .wp-block-site-logo img{width:140px!important;max-height:64px}.rg-header-v2 .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}.rg-header-v2 .wp-block-navigation__responsive-container-open{display:flex!important;min-width:48px;min-height:48px;align-items:center;justify-content:center}.rg-header-v2 .rg-navigation-v2{justify-content:flex-end!important}.rg-header-v2 .wp-block-navigation__responsive-container.is-menu-open{background:#fff!important;color:#142b43!important;padding:70px 24px 40px!important}.rg-header-v2 .is-menu-open .wp-block-navigation-item__content,.rg-header-v2 .is-menu-open .wp-block-navigation-submenu__toggle,.rg-header-v2 .is-menu-open .wp-block-navigation__responsive-container-close{color:#142b43!important}.rg-header-v2 .is-menu-open .wp-block-navigation__container{width:100%;align-items:stretch!important;gap:12px!important}.rg-header-v2 .is-menu-open .wp-block-navigation-item__content{padding:9px 4px!important;min-height:44px}.rg-header-v2 .is-menu-open .wp-block-navigation__submenu-container{border:0!important;padding:0 0 0 18px!important}.rg-footer-v2 .rg-footer-grid{grid-template-columns:1fr 1fr;gap:34px}.rg-footer-v2 .rg-footer-bottom{flex-direction:column;gap:12px}}
@media(max-width:599px){.rg-footer-v2 .rg-footer-grid{grid-template-columns:1fr}.rg-footer-v2{padding-block:48px 32px}.rg-footer-v2 .rg-footer-bottom nav{flex-wrap:wrap}.rg-header-v2 .wp-block-site-logo{margin:0!important}.rg-header-v2 .rg-header-inner{width:100%}}
.rg-header-v2,.rg-header-v2 *{box-sizing:border-box}.rg-header-v2 .rg-header-inner,.rg-header-v2 .rg-navigation-v2{min-width:0}.rg-header-v2 .wp-block-site-logo img{filter:brightness(0) invert(1)}
@media(max-width:899px){.rg-js .rg-header-v2 .is-menu-open .wp-block-navigation-submenu>.wp-block-navigation__submenu-container{display:flex!important;flex-direction:column;gap:0!important;padding-bottom:12px!important}.rg-header-v2 .is-menu-open .wp-block-navigation__submenu-icon{display:none!important}.rg-header-v2 .rg-drawer-actions{width:100%;margin-top:22px}.rg-header-v2 .rg-drawer-actions .rg-call{background:#142b43!important;border:1px solid #142b43;color:#fff!important}.rg-header-v2 .rg-drawer-actions .rg-cta{background:#bd252d!important;color:#fff!important;padding:12px 18px;line-height:1.4}.rg-header-v2 .rg-drawer-meta{width:100%;color:#4e6072;opacity:1}.rg-header-v2 .wp-block-navigation__responsive-container-content{align-items:stretch!important}}

/* Shared service, information and workflow pages. */
.rg-service-page .rg-page-hero{padding-top:0}.rg-service-page .rg-breadcrumbs{margin-bottom:28px}.rg-service-page .rg-page-hero h1{max-width:25ch}.rg-service-page .rg-service-body{padding-block:40px 60px}.rg-service-page .rg-content-section{padding-block:32px}.rg-service-page .rg-content-section>p{max-width:80ch}.rg-service-page .rg-content-section>h2{max-width:33ch}.rg-service-page .rg-content-section .rg-grid-3{margin-top:26px}.rg-service-page .rg-reviewed{border-top:1px solid #dce4ec;padding-top:24px;margin-top:36px;font-size:.8rem;color:#4e6072}.rg-service-page .rg-service-photo{width:100%;height:350px;object-fit:cover;border-radius:8px}.rg-service-page .rg-booking-frame{display:block;width:100%;border:1px solid #dce4ec;border-radius:8px;min-height:920px;background:white}.rg-service-page .rg-video-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.rg-service-page .rg-video-grid details{border:1px solid #dce4ec;border-radius:8px;padding:18px}.rg-service-page .rg-video-grid summary{font-weight:700;cursor:pointer;min-height:44px}.rg-service-page .rg-video-frame{aspect-ratio:16/9;margin-block:16px}.rg-service-page .rg-video-frame iframe{width:100%;height:100%;border:0}.rg-form__privacy a{color:#1d527b;text-decoration:underline}.rg-form select:focus-visible,.rg-form button:focus-visible{outline:3px solid #bd252d;outline-offset:3px}
@media(max-width:599px){.rg-service-page .rg-service-body{padding-block:16px 40px}.rg-service-page .rg-content-section{padding-block:26px}.rg-service-page .rg-video-grid{grid-template-columns:1fr}.rg-service-page .rg-service-photo{height:280px}.rg-service-page .rg-form{padding:24px 20px}.rg-service-page .rg-page-hero h1{font-size:2.2rem}}

.rg-privacy-panel{position:fixed;z-index:9998;left:20px;bottom:20px;max-width:500px;width:calc(100% - 40px);box-sizing:border-box;background:#fff;color:#142b43;border:1px solid #c2cdd7;border-radius:8px;padding:22px;box-shadow:0 6px 30px #10223833;font-size:14px;line-height:1.55}.rg-privacy-panel[hidden]{display:none!important}.rg-privacy-panel h2{font-size:20px;margin:0 0 10px;color:#142b43}.rg-privacy-panel p{margin:0 0 16px}.rg-privacy-panel a{color:#1d527b;text-decoration:underline}.rg-privacy-actions{display:flex;gap:10px;flex-wrap:wrap}.rg-privacy-panel button{font:inherit;font-weight:700;background:#142b43;color:white;border:2px solid #142b43;border-radius:5px;min-height:44px;padding:10px 14px;cursor:pointer}.rg-privacy-panel button:last-child{background:#fff;color:#142b43}.rg-privacy-panel button:focus-visible{outline:3px solid #bd252d;outline-offset:3px}.rg-footer-v2 [data-rg-privacy]{background:none;border:0;padding:0;font:inherit;color:#e1eaf2;text-decoration:underline;cursor:pointer;min-height:32px}.rg-footer-v2 .rg-footer-bottom nav{align-items:center;flex-wrap:wrap}@media(max-width:899px){.rg-privacy-panel{bottom:88px;left:14px;width:calc(100% - 28px);padding:18px}}

/* Match quick-contact controls to the site palette. */
.rg-actionbar .rg-actionbar-call{background:#142b43!important;color:#fff!important}.rg-actionbar .rg-actionbar-book{background:#bd252d!important;color:#fff!important}.rg-actionbar a:focus-visible{outline:3px solid #142b43!important;outline-offset:3px}.rg-archive-notice{border-left:4px solid #bd252d;padding:20px 24px;background:#f4f7fa;margin:24px 0;color:#142b43}.rg-archive-notice h2{font-size:1.25rem;margin-top:0}.rg-archive-notice p{line-height:1.7;margin-bottom:0}
