@font-face{font-family:Inter;src:url('./images/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2') format('woff2');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body.redesigned{margin:0;background:#f6f5ef;color:#12251f;font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input{font:inherit}img{display:block;max-width:100%}figure,p,h1,h2,h3{margin:0}.redesigned h1,.redesigned h2,.finance-numeral{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.055em;line-height:1.05}.redesigned h2{font-size:clamp(36px,4.2vw,64px)}.redesigned h3{line-height:1.3}.redesigned em{font-weight:400;color:#a98239}.skip-link{position:fixed;top:-100px;left:16px;background:white;padding:15px;z-index:100}.skip-link:focus{top:10px}:focus-visible{outline:3px solid #bf9546;outline-offset:5px}.review-ribbon{height:28px;background:#ecdfc3;color:#403923;display:flex;gap:20px;justify-content:center;align-items:center;font-size:10px;font-weight:700;letter-spacing:.15em}.review-ribbon span{font-weight:400;letter-spacing:.03em}.utility{padding:7px 4.5%;display:flex;justify-content:space-between;background:#101f35;color:#e7e9e9;font-size:10px;letter-spacing:.12em}.utility a{letter-spacing:.02em}.new-header{height:98px;display:flex;align-items:center;gap:32px;padding:15px 4.5%;background:#f6f5ef;border-bottom:1px solid #dcded5;position:sticky;top:0;z-index:50}.brand{margin-right:auto;flex-shrink:0}.brand img{height:58px;width:210px;object-fit:contain}.new-header nav{display:flex;gap:27px}.new-header nav a{font-size:13px;font-weight:550;white-space:nowrap}.new-header nav a:hover,.new-header nav a[aria-current]{color:#8a652a}.button{display:inline-flex;justify-content:center;align-items:center;gap:25px;background:#bc934c;color:#132137;padding:17px 23px;font-weight:650;font-size:13px;border:1px solid transparent;transition:background .2s,transform .2s;border-radius:2px;white-space:nowrap}.button:hover{background:#d1ad6d;transform:translateY(-2px)}.button.small{padding:13px 17px;gap:16px}.text-link{font-size:13px;font-weight:600;border-bottom:1px solid currentColor;padding:4px 0}.text-link:hover{color:#9b7434}.menu-toggle{display:none;border:0;background:transparent;font-size:27px;line-height:1}.new-menu{padding:20px 6%;background:#f6f5ef;position:fixed;inset:98px 0 auto;z-index:51;box-shadow:0 12px 18px #12251f15}.new-menu a{display:block;padding:13px;border-bottom:1px solid #deddd5}.new-menu[hidden]{display:none}.hero{display:grid;grid-template-columns:48% 52%;min-height:650px}.hero-copy{padding:67px 9% 38px 9.3%;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:10px;font-weight:650;letter-spacing:.18em;text-transform:uppercase;color:#8b723f}.hero h1{font-size:clamp(48px,4.9vw,76px);margin-top:27px;line-height:1.02;color:#112138}.hero h1 em{color:#9a7537}.hero-intro{font-size:14px;color:#596267;max-width:360px;line-height:1.8;margin-top:26px}.actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}.hero-foot{display:flex;gap:14px;align-items:center;border-top:1px solid #d7d8cf;margin-top:39px;padding-top:22px;width:100%}.hero-foot p{font-size:9px;letter-spacing:.12em;color:#6a716d}.hero-foot strong{display:block;font-weight:450;letter-spacing:0;font-size:11px;margin-top:4px}.line-mark{border:1px solid #babaaa;border-radius:50%;width:35px;height:35px;display:grid;place-items:center;color:#8e7036}.hero-image{position:relative;overflow:hidden;min-height:600px}.hero-image>img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;position:absolute;inset:0}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(transparent,#081321bb);color:white;padding:60px 35px 25px;display:flex;justify-content:space-between;align-items:end;gap:20px}.hero-image figcaption span{font-size:10px;letter-spacing:.14em}.hero-image figcaption small{font-size:9px;opacity:.8}.service-strip{display:flex;align-items:center;justify-content:space-around;padding:25px 4%;border-bottom:1px solid #ddded4;font-size:12px}.service-strip i{font-size:20px;color:#ab8b4a}.quote-section{background:#101f35;color:#f3f0e7;display:grid;grid-template-columns:40% 60%;padding:90px 7%;gap:6%;overflow:hidden}.quote-section .eyebrow{color:#c4a062}.quote-intro h2{margin:20px 0 24px}.quote-intro>p:not(.eyebrow){font-size:14px;line-height:1.8;max-width:320px;color:#b8c2cb}.quote-intro em{color:#c4a062}.plain-list{padding:0;margin:24px 0;list-style:none;max-width:340px}.plain-list li{border-top:1px solid #ffffff20;padding:15px 0;color:#c4a062;font-size:11px;display:flex;gap:26px}.plain-list li span{font-size:13px;color:#ebebdf}.quote-intro .small-copy{font-size:11px!important}.quote-tool{min-width:0;padding-right:10%;align-self:center}.tool-note{font-size:10px;color:#aeb9c5;margin-top:17px;text-align:center}.tool-note a{text-decoration:underline}#psr-roof-estimator{--psr-bg:#102034;--psr-panel:#172b43;--psr-panel-2:#223751;--psr-gold:#c4a062;--psr-gold-bright:#ddbd82;--psr-radius:3px;--psr-radius-sm:3px}#psr-roof-estimator .psr-card{background:#172b43;box-shadow:none;border-color:#ffffff26}#psr-roof-estimator h3{font-family:Georgia,serif;letter-spacing:-.025em;font-size:28px}#psr-roof-estimator .psr-progress{padding-top:26px}#psr-roof-estimator .psr-panel-body{padding:26px}#psr-roof-estimator .psr-btn{border-radius:2px}#psr-roof-estimator input{border-radius:2px}#psr-roof-estimator .psr-btn-primary{background:#c4a062;color:#102034}#free-quote:has(.psr-step-view[data-step="2"].active),#free-quote:has(.psr-step-view[data-step="4"].active){grid-template-columns:26% 74%;gap:2%}#free-quote:has(.psr-step-view[data-step="2"].active) .quote-tool,#free-quote:has(.psr-step-view[data-step="4"].active) .quote-tool{padding-right:3%}.wrap{max-width:1400px;margin:auto;padding-left:6%;padding-right:6%}.services-section{padding-top:98px;padding-bottom:98px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:40px}.section-heading h2{margin-top:17px}.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{min-width:0}.card-image{overflow:hidden;aspect-ratio:1.35;background:#d5d7c9}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.service-card:hover img{transform:scale(1.035)}.card-caption{padding:23px 0}.card-caption .eyebrow{font-size:9px}.card-caption h3{font-family:Georgia,serif;font-size:26px;letter-spacing:-.03em;margin:11px 0;display:flex;align-items:center;justify-content:space-between;color:#112138}.card-caption h3 span{font:20px Arial;font-weight:300}.card-caption p{font-size:13px;line-height:1.7;color:#626a6b}.service-rows{margin-top:24px;border-top:1px solid #cfd1c7}.service-rows a{display:grid;grid-template-columns:40px 1fr 1.2fr 28px;gap:24px;align-items:center;padding:25px 0;border-bottom:1px solid #cfd1c7}.service-rows a>span{font-size:11px;color:#9c824e}.service-rows h3{font-family:Georgia,serif;font-size:24px;color:#112138}.service-rows p{font-size:12px;color:#616a6c}.service-rows b{font:22px Arial}.service-rows a:hover h3{color:#9c7634}.craft-section{display:grid;grid-template-columns:50% 50%;background:#e8e8dd}.craft-section figure{position:relative;min-height:600px}.craft-section figure>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.craft-section figcaption{position:absolute;bottom:15px;left:20px;font-size:9px;color:white;text-shadow:0 1px 3px black}.craft-copy{padding:75px 13% 75px 12%}.craft-copy h2{margin:18px 0 25px;color:#112138}.craft-copy>p:not(.eyebrow){font-size:14px;color:#596467;line-height:1.8}.craft-points{margin:30px 0}.craft-points>div{position:relative;padding:20px 0 20px 34px;border-top:1px solid #c5c8bc}.craft-points span{position:absolute;top:20px;left:0;font-size:10px;color:#8c713e}.craft-points h3{font-size:14px;margin-bottom:8px}.craft-points p{font-size:12px;color:#596467}.finance-feature{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:98px;padding-bottom:98px}.finance-feature h2{margin:18px 0 23px}.finance-feature p:not(.eyebrow){font-size:14px;color:#5e686a;max-width:370px;margin-bottom:26px}.finance-teaser{padding:38px;background:#e6e7dc;border:1px solid #c9cdbd}.finance-numeral{font-size:54px;margin:28px 0 35px}.teaser-bottom{display:flex;justify-content:space-between;border-top:1px solid #bfc5b6;padding-top:22px;font-size:12px;align-items:center}.teaser-bottom a{background:#102138;color:white;width:45px;height:45px;display:grid;place-items:center;font-size:25px}.finance-teaser small{display:block;margin-top:20px;font-size:9px;color:#66706b}.closing{padding:90px 7%;text-align:center;background:#102138;color:#f8f4eb}.closing .eyebrow{color:#c4a062}.closing h2{margin-top:20px}.closing .actions{justify-content:center}.closing .text-link{color:#f8f4eb}.new-footer{padding:70px 6% 25px;background:#091629;color:#c2cbd5}.footer-top{display:grid;grid-template-columns:1.15fr .8fr 1.2fr 1fr;gap:36px;max-width:1280px;margin:auto}.footer-top img{background:white;padding:8px;height:63px;width:215px;object-fit:contain}.footer-top p{font-size:12px;line-height:1.9;margin:16px 0}.footer-top h3{font-family:Inter,Arial,sans-serif;font-size:12px;font-weight:600;color:#f8f5e9;margin-bottom:17px}.footer-top a:not(.button){display:block;font-size:12px;line-height:2.4}.footer-top a:hover{color:#d8b16f}.footer-bottom{display:flex;gap:28px;justify-content:space-between;border-top:1px solid #ffffff17;padding-top:24px;margin-top:55px;font-size:10px}.image-note{margin-top:20px;font-size:9px;color:#8190a0}.legacy-content{background:#0a1836;color:white;padding-bottom:50px}.legacy-content h1{font-size:clamp(42px,5vw,68px)!important;letter-spacing:-.04em}.legacy-content h2{letter-spacing:-.03em}.legacy-content p{line-height:1.8}.legacy-content>div>section:first-child{padding-top:65px;padding-bottom:50px}.legacy-content .rounded-2xl,.legacy-content .rounded-xl{border-radius:3px}.legacy-content img{object-fit:cover}.legacy-content .font-serif{font-family:Georgia,serif}.legacy-content>div{overflow:hidden}.legacy-content #psr-roof-estimator .psr-step-head h3{font-size:27px}.legacy-content a[href="./quote"]{border-radius:2px}.legacy-content section{scroll-margin-top:110px}
@media(min-width:1600px){.hero-copy{padding-left:14%}.hero{min-height:740px}.hero h1{font-size:83px}}
@media(max-width:1150px){.new-header{gap:18px;padding-inline:4%}.new-header nav{gap:16px}.brand img{width:175px}.new-header .button.small{padding:12px}.hero h1{font-size:59px}.hero-copy{padding-left:8%;padding-right:7%}.hero{min-height:650px}.hero-copy .actions{gap:17px}.hero-copy .button{padding:14px;font-size:12px}.hero-copy .text-link{font-size:11px}.quote-section{padding-inline:5%;gap:5%}.quote-tool{padding-right:8%}.craft-copy{padding:55px 10%}.finance-numeral{font-size:47px}.footer-top{grid-template-columns:1fr 1fr;gap:35px}.new-header nav a{font-size:12px}}
@media(max-width:900px){.new-header nav{display:none}.new-header{height:82px}.menu-toggle{display:block}.new-header .button{margin-left:auto}.new-menu{top:82px}.brand{margin-right:0}.hero{grid-template-columns:1fr 1fr}.hero h1{font-size:49px}.hero-copy{padding-top:42px}.hero-image{min-height:590px}.hero-intro{font-size:13px}.hero-foot{margin-top:28px}.quote-section{grid-template-columns:1fr!important;gap:35px;padding:60px 7%}.quote-intro h2{font-size:44px}.quote-intro h2 br{display:none}.quote-intro h2 em{display:block}.quote-intro>p:not(.eyebrow){max-width:100%}.plain-list{display:none}.quote-tool{padding:0!important}.service-cards{gap:18px}.card-caption h3{font-size:22px}.craft-copy{padding:45px 9%}.craft-section figure{min-height:590px}.finance-feature{gap:6%}.finance-numeral{font-size:42px}}
@media(max-width:650px){.review-ribbon{font-size:8px;gap:12px}.utility{justify-content:center;font-size:8px;padding:8px 12px}.utility>a{display:none}.new-header{padding:12px 5%;gap:14px;height:75px}.brand img{width:150px;height:45px}.new-header .button.small{font-size:10px;padding:11px;gap:10px}.menu-toggle{font-size:25px;padding:0}.new-menu{top:75px}.hero{display:flex;flex-direction:column}.hero-copy{padding:42px 7% 34px}.hero h1{font-size:58px;margin-top:22px}.hero .eyebrow{font-size:8px}.hero-intro{font-size:14px;max-width:330px;margin-top:23px}.hero .actions{margin-top:25px;gap:22px}.hero .button{font-size:12px;padding:16px 18px}.hero .text-link{font-size:12px}.hero-foot{margin-top:28px;padding-top:20px}.hero-image{min-height:410px}.hero-image>img{object-position:center}.hero-image figcaption{padding:40px 23px 20px}.service-strip{display:grid;grid-template-columns:1fr 1fr;gap:15px;text-align:center;font-size:10px;padding:22px 5%}.service-strip i{display:none}.quote-section{padding:55px 6%}.quote-intro h2{font-size:42px}.quote-intro h2 br{display:block}.quote-intro h2 em{display:inline}.quote-intro .small-copy{margin-top:20px}.quote-intro>p:not(.eyebrow){font-size:13px}.quote-tool{width:100%}#psr-roof-estimator .psr-panel-body{padding:20px 17px}#psr-roof-estimator .psr-progress{padding-left:10px;padding-right:10px}#psr-roof-estimator .psr-step .lbl{font-size:8px}.wrap{padding-left:7%;padding-right:7%}.services-section{padding-top:58px;padding-bottom:58px}.section-heading{display:block;margin-bottom:28px}.section-heading .text-link{display:inline-block;margin-top:22px}.service-cards{grid-template-columns:1fr;gap:25px}.card-image{aspect-ratio:1.5}.card-caption{padding:18px 0 5px}.card-caption h3{font-size:27px}.service-rows a{grid-template-columns:24px 1fr 25px;gap:10px;padding:24px 0}.service-rows p{grid-column:2;grid-row:2}.service-rows b{grid-column:3;grid-row:1}.service-rows h3{font-size:23px}.craft-section{grid-template-columns:1fr}.craft-section figure{min-height:370px}.craft-copy{padding:48px 7%}.finance-feature{grid-template-columns:1fr;padding-block:58px;gap:30px}.finance-teaser{padding:30px}.finance-numeral{font-size:49px}.closing{padding:62px 7%}.closing h2{font-size:42px}.closing .actions{gap:23px}.footer-top{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-top>div:first-child,.footer-top>div:last-child{grid-column:1/-1}.new-footer{padding:50px 7% 25px}.footer-top a:not(.button){font-size:11px;overflow-wrap:anywhere}.footer-bottom{display:grid;grid-template-columns:1fr 1fr;gap:15px;font-size:9px;margin-top:35px}.legacy-content h1{font-size:42px!important}.legacy-content .text-5xl{font-size:38px}.legacy-content .py-20{padding-top:50px;padding-bottom:50px}.legacy-content .psr-map-shell{min-height:300px}.legacy-content>div>section:first-child{padding-top:45px;padding-bottom:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.brand{background:#102138;padding:8px 14px;border-radius:2px}.brand img{height:49px;width:195px}.footer-top img{background:#102138}.new-header{gap:25px}@media(max-width:1150px){.brand img{width:165px}.new-header{gap:17px}}@media(max-width:650px){.brand{padding:6px 9px}.brand img{width:130px;height:39px}.new-header{gap:11px}}
/* Open, unboxed presentation requested for the review version. */
.brand{background:transparent;padding:0;border:0;border-radius:0}
.brand img{filter:brightness(0) saturate(100%) invert(11%) sepia(32%) saturate(1435%) hue-rotate(177deg) brightness(93%) contrast(94%)}
.footer-top img{background:transparent;padding:0}
.button,.button.small,.button:hover{background:transparent;color:inherit;border:0;border-bottom:1px solid #aa8547;border-radius:0;box-shadow:none;padding:13px 0;transform:none}
.button:hover{color:#a98239}
.hero .button{padding:13px 0}
.finance-teaser{background:transparent;border:0;box-shadow:none;padding-left:0;padding-right:0}
.teaser-bottom a{background:transparent;color:#102138}
.line-mark{border:0}
.new-menu{box-shadow:none}
#psr-roof-estimator .psr-card{background:transparent;border:0;box-shadow:none;backdrop-filter:none;overflow:visible}
#psr-roof-estimator .psr-btn,#psr-roof-estimator .psr-btn-primary,#psr-roof-estimator .psr-btn-ghost{background:transparent;color:var(--psr-gold);border:0;border-bottom:1px solid var(--psr-border);border-radius:0;box-shadow:none}
#psr-roof-estimator .psr-btn:hover{background:transparent;color:var(--psr-gold-bright)}
#psr-roof-estimator .psr-tier,#psr-roof-estimator .psr-tier.featured,#psr-roof-estimator .psr-pitch-card{background:transparent;box-shadow:none;border-radius:0;border-color:transparent}
#psr-roof-estimator .psr-pitch-card.selected{border-bottom-color:var(--psr-gold)}
#psr-roof-estimator .psr-tier .badge{background:transparent;color:var(--psr-gold)}
.legacy-content div.rounded-2xl,.legacy-content div.rounded-xl,.legacy-content div.rounded-lg{background:transparent!important;border-color:transparent!important;box-shadow:none!important;border-radius:0!important}
.legacy-content a[class*="bg-"],.legacy-content button[type="submit"]{background:transparent!important;color:#d4a943!important;border:0;border-bottom:1px solid #d4a94370;border-radius:0;box-shadow:none}
@media(prefers-reduced-motion:reduce){section{animation:none!important}}
/* Seamless wordmarks and text-only actions, including hover and mobile states. */
body.redesigned .brand,body.redesigned .footer-top img{background:none!important;border:0;box-shadow:none;border-radius:0;padding:0}
body.redesigned a.button,body.redesigned a.button:hover,body.redesigned a.button:active,body.redesigned a.button:focus{background:none!important;background-image:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:inherit;padding:12px 0;font-weight:550;letter-spacing:.025em;text-decoration:underline;text-decoration-color:#aa854775;text-underline-offset:9px;text-decoration-thickness:1px;transform:none}
body.redesigned a.button:hover{text-decoration-color:#aa8547;color:#a98239}
body.redesigned .closing a.button,body.redesigned .new-footer a.button{color:#d7bb85}
.button span{transition:transform .2s ease}.button:hover span{transform:translate(3px,-2px)}
.craft-section{background:#f6f5ef}.finance-teaser{background:none!important;border:0!important;box-shadow:none!important}
.closing,.new-footer{background:#101f35}.new-footer{border-top:1px solid #ffffff12}
.new-header{border-bottom-color:#deddd345}.hero-foot{border-top-color:#d7d8cf75}
.review-ribbon{background:#f6f5ef;color:#7b745f}.utility{background:#f6f5ef;color:#596267;border-bottom:1px solid #deddd345}

/* Manufacturer signature section and refined, larger company branding. */
body.redesigned .brand img{width:248px;height:auto;max-height:64px;object-fit:contain}
body.redesigned .footer-top img{width:255px;height:auto;max-width:100%;object-fit:contain}
.manufacturer-section{padding-top:12px;padding-bottom:68px}
.manufacturer-heading{text-align:center;border-top:1px solid #d5d6cc;padding-top:48px}
.manufacturer-heading h2{font-size:clamp(30px,3.1vw,44px);letter-spacing:-.04em;margin-top:13px;color:#112138}
.manufacturer-heading>p:last-child{font-size:13px;line-height:1.8;color:#596467;max-width:540px;margin:15px auto 0}
.manufacturer-logos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));align-items:center;gap:28px;list-style:none;padding:0;margin:32px 0 0}
.manufacturer-logos li{min-width:0;overflow:hidden}
.manufacturer-logos a{display:flex;justify-content:center;align-items:center;min-height:80px;padding:8px 2px;border-radius:0}
.manufacturer-logos img{width:100%;height:auto;max-height:58px;object-fit:contain;mix-blend-mode:multiply}
.manufacturer-logos a:hover{opacity:.78}
.manufacturer-logos a:focus-visible{outline-offset:-3px}
.manufacturer-logos .manufacturer-oc{max-width:160px}
.manufacturer-logos .manufacturer-tamko{max-width:143px}
.manufacturer-logos .manufacturer-certainteed{max-width:170px}
.manufacturer-logos .manufacturer-carlisle{max-width:175px}
.manufacturer-logos .manufacturer-mule{width:280px;max-width:none;max-height:60px;flex-shrink:0}
.manufacturer-logos .manufacturer-elevate{max-width:163px}
@media(max-width:1150px){body.redesigned .brand img{width:210px}.manufacturer-logos{gap:20px}}
@media(max-width:900px){.manufacturer-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 36px}.manufacturer-section{padding-bottom:54px}}
@media(max-width:650px){body.redesigned .brand img{width:170px;max-height:48px}.new-header{gap:10px}.new-header .button.small{gap:7px;padding:9px 0;font-size:10px}.manufacturer-heading{padding-top:35px}.manufacturer-heading .eyebrow{font-size:8px;letter-spacing:.12em}.manufacturer-heading>p:last-child{font-size:12px}.manufacturer-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 28px;margin-top:24px}.manufacturer-logos a{min-height:74px}.manufacturer-section{padding-top:0;padding-bottom:44px}}
@media(max-width:360px){body.redesigned .brand img{width:145px}.new-header{gap:8px}}

/* Align the visible logo artwork with footer columns; omit the old slogan. */
.footer-top{align-items:start}
.footer-brand-column{align-self:start;min-width:0}
.footer-top a.footer-brand{position:relative;display:block;width:255px;max-width:100%;aspect-ratio:729/173;overflow:hidden;line-height:1;margin:0}
body.redesigned .footer-top .footer-brand img{position:absolute;width:105.3498%;max-width:none;height:auto;left:-2.7435%;top:-2.8902%;margin:0;object-fit:initial}
@media(max-width:650px){.footer-top a.footer-brand{width:240px}}
/* Consistent location typography and footer column alignment. */
.new-footer .footer-bottom,.new-footer .image-note{max-width:1280px;margin-left:auto;margin-right:auto}
.psr-location strong{display:block;font-size:12px;font-weight:600;letter-spacing:.02em;margin-bottom:6px}
.psr-location p{margin:0;line-height:1.8}
.psr-location+.psr-location{margin-top:20px}
.psr-locations{margin-top:12px;font-size:14px;line-height:1.8;color:#ecf0f2}
.psr-footer-locations{margin-top:22px}
.new-footer .psr-footer-locations strong{color:#f3f0e7;font-size:11px}
.new-footer .psr-footer-locations p{font-size:12px;line-height:1.8}
@media(max-width:650px){.new-footer .psr-footer-locations p{font-size:12px}.psr-location+.psr-location{margin-top:18px}}
.footer-brand-row{max-width:1280px;margin:0 auto 38px}
.new-footer .footer-top{grid-template-columns:1fr 1.25fr 1fr;gap:56px;align-items:start}
.new-footer a.footer-brand{position:relative;display:block;width:255px;max-width:100%;aspect-ratio:729/173;overflow:hidden;line-height:1;margin:0}
body.redesigned .new-footer .footer-brand img{position:absolute;width:105.3498%;max-width:none;height:auto;left:-2.7435%;top:-2.8902%;margin:0;object-fit:initial}
@media(max-width:650px){.footer-brand-row{margin-bottom:32px}.new-footer a.footer-brand{width:240px}.new-footer .footer-top{grid-template-columns:1fr 1fr;gap:30px 22px}.new-footer .footer-top>div:first-child{grid-column:auto}.new-footer .footer-top>div:last-child{grid-column:1/-1}}
.psr-locations .psr-location+.psr-location{margin-top:28px}
.legacy-content .flex.items-center:has(.psr-locations){align-items:flex-start}
/* Readable footer typography and spacious location blocks on phones. */
.new-footer .footer-top h3{font-size:13px}
.new-footer .footer-top a:not(.button){font-size:13px;line-height:2.3}
.new-footer .footer-top p{font-size:13px;line-height:1.8}
.new-footer .psr-footer-locations strong{font-size:13px;margin-bottom:7px}
.new-footer .psr-footer-locations p{font-size:13px;margin:0}
.psr-locations .psr-location strong{font-size:13px}
/* Keep the specialty links in the same open visual flow as the services. */
.legacy-content .specialty-feature{background:transparent;color:#f3f0e7;padding-inline:32px;width:100%;max-width:1280px}
.legacy-content .specialty-feature h2,.legacy-content .specialty-feature h3{color:#f3f0e7}
.legacy-content .specialty-feature>p:not(.eyebrow),.legacy-content .specialty-feature-link p{color:#bdc7d4}
.legacy-content .specialty-feature .eyebrow,.legacy-content .specialty-feature .sp-link-label{color:#c4a062}
.legacy-content a[href="./gutters"]>div:first-child img{object-position:50% 85%}
.legacy-content a[href="./inspections"]>div:first-child img{object-position:50% 20%}
@media(max-width:650px){
 .legacy-content .specialty-feature{padding-inline:20px}
 .new-footer .footer-top{grid-template-columns:1fr;gap:34px}
 .new-footer .footer-top>div{grid-column:auto!important}
 .new-footer .footer-top>div:first-child{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
 .new-footer .footer-top>div:first-child h3{grid-column:1/-1}
 .new-footer .psr-location+.psr-location{margin-top:24px}
 .new-footer .psr-footer-locations p{font-size:13px}
}

/* Refined shared footer: a balanced brand row and four aligned information columns. */
.new-footer.psr-refined-footer{padding:52px 6% 24px;background:#101f35;color:#c2cbd5}
.psr-refined-footer .psr-footer-inner{max-width:1280px;margin:0 auto}
.psr-refined-footer .psr-footer-header{display:flex;justify-content:space-between;align-items:center;gap:40px;padding-bottom:32px;border-bottom:1px solid #ffffff17}
.psr-refined-footer .psr-footer-logo{position:relative;display:block;flex:0 0 auto;width:260px;max-width:100%;aspect-ratio:729/173;overflow:hidden;line-height:0}
.psr-refined-footer .psr-footer-logo img{position:absolute;display:block;width:105.3498%;max-width:none;height:auto;left:-2.7435%;top:-2.8902%;background:none;object-fit:initial}
.psr-refined-footer .psr-footer-quote{display:grid;grid-template-columns:auto auto;align-items:center;column-gap:32px;row-gap:4px}
.psr-refined-footer .psr-footer-quote p{font-size:18px;font-weight:600;color:#f6f2e9;line-height:1.4;margin:0}
.psr-refined-footer .psr-footer-quote>span{font-size:13px;line-height:1.6;grid-column:1}
.psr-refined-footer .psr-footer-quote>a{grid-column:2;grid-row:1/3;font-size:14px;font-weight:600;color:#d7bb85;text-decoration:underline;text-decoration-color:#d7bb8560;text-underline-offset:9px;white-space:nowrap;padding:12px 0}
.psr-refined-footer .psr-footer-quote>a span{padding-left:10px}
.psr-refined-footer .psr-footer-grid{display:grid;grid-template-columns:1fr 1.25fr 1fr 1.25fr;gap:40px;padding:36px 0 32px;align-items:start}
.psr-refined-footer .psr-footer-column{min-width:0}
.psr-refined-footer .psr-footer-column h2{font-family:Inter,Arial,sans-serif;font-size:13px;font-weight:600;letter-spacing:.035em;line-height:1.5;color:#f6f2e9;margin:0 0 16px}
.psr-refined-footer .psr-footer-column>a{display:block;width:fit-content;max-width:100%;font-size:13px;line-height:1.8;margin:0 0 9px;overflow-wrap:anywhere}
.psr-refined-footer .psr-footer-column address{font-size:13px;font-style:normal;line-height:1.8;margin:0}
.psr-refined-footer a:hover{color:#e7cc97}
.psr-refined-footer a:focus-visible{outline:2px solid #d7bb85;outline-offset:5px}
.psr-refined-footer .psr-footer-service{display:flex;align-items:baseline;gap:28px;border-top:1px solid #ffffff17;border-bottom:1px solid #ffffff17;padding:20px 0}
.psr-refined-footer .psr-footer-service>span{color:#f6f2e9;font-size:12px;font-weight:600;flex:0 0 auto}
.psr-refined-footer .psr-footer-service p{font-size:12px;line-height:1.8;margin:0}
.psr-refined-footer .psr-footer-legal{display:flex;justify-content:space-between;align-items:baseline;gap:24px;padding-top:22px;font-size:11px;line-height:1.8}
.psr-refined-footer .psr-footer-legal nav{display:flex;flex-wrap:wrap;gap:24px}
.psr-refined-footer .psr-footer-image-note{font-size:10px;line-height:1.7;color:#93a1b2;margin:14px 0 0}
@media(max-width:1050px){.psr-refined-footer .psr-footer-grid{grid-template-columns:1fr 1fr;gap:30px 64px}.psr-refined-footer .psr-footer-quote{display:block}.psr-refined-footer .psr-footer-quote>span{display:block;margin-top:5px}.psr-refined-footer .psr-footer-quote>a{display:inline-block;margin-top:6px}.psr-refined-footer .psr-footer-service{display:block}.psr-refined-footer .psr-footer-service p{margin-top:6px}}
@media(max-width:620px){.new-footer.psr-refined-footer{padding:38px 7% 24px}.psr-refined-footer .psr-footer-header{align-items:flex-start;flex-direction:column;gap:24px;padding-bottom:28px}.psr-refined-footer .psr-footer-logo{width:230px}.psr-refined-footer .psr-footer-quote p{font-size:18px}.psr-refined-footer .psr-footer-grid{grid-template-columns:1fr;gap:28px;padding:30px 0}.psr-refined-footer .psr-footer-column h2{margin-bottom:12px}.psr-refined-footer .psr-footer-column>a,.psr-refined-footer .psr-footer-column address{font-size:14px}.psr-refined-footer .psr-footer-legal{flex-direction:column;gap:12px}.psr-refined-footer .psr-footer-legal nav{gap:20px}.psr-refined-footer .psr-footer-service p{line-height:2}}

/* Align the visible header artwork with the home-page headline at every breakpoint. */
body.redesigned .new-header{height:112px;padding-inline:4.464%}
body.redesigned .new-header .brand{position:relative;display:block;width:300px;aspect-ratio:729/173;overflow:hidden;line-height:0}
body.redesigned .new-header .brand img{position:absolute;width:105.3498%;max-width:none;height:auto;max-height:none;left:-3.9781%;top:-2.8902%;object-fit:initial}
body.redesigned .new-menu{top:112px}
@media(min-width:1600px){body.redesigned .new-header{padding-inline:6.72%}body.redesigned .new-header .brand{width:330px}}
@media(max-width:1150px){body.redesigned .new-header{padding-inline:3.84%}body.redesigned .new-header .brand{width:270px}body.redesigned .new-header nav{display:none}body.redesigned .menu-toggle{display:block}body.redesigned .new-header .button{margin-left:auto}}
@media(max-width:900px){body.redesigned .new-header{height:104px;padding-inline:4%}body.redesigned .new-menu{top:104px}}
@media(max-width:650px){body.redesigned .new-header{height:96px;padding-inline:7%}body.redesigned .new-header .brand{width:230px}body.redesigned .new-menu{top:96px}}
@media(max-width:420px){body.redesigned .new-header .brand{width:210px}body.redesigned .new-header>.button{display:none}body.redesigned .menu-toggle{margin-left:auto}}

/* Carry the headline/logo alignment through the service-area strip. */
body.redesigned .utility{padding-inline:4.464%}
@media(min-width:1600px){body.redesigned .utility{padding-inline:6.72%}}
@media(max-width:1150px){body.redesigned .utility{padding-inline:3.84%}}
@media(max-width:900px){body.redesigned .utility{padding-inline:4%}}
@media(max-width:650px){body.redesigned .utility{padding-inline:7%;justify-content:flex-start;text-align:left}body.redesigned .utility>span{min-width:0;line-height:1.6}}

/* Center the logo visually between the service strip and home-page eyebrow. */
body.redesigned .new-header{border-bottom-color:transparent}
body.redesigned .new-header .brand{transform:translateY(30px)}
@media(max-width:900px){body.redesigned .new-header .brand{transform:translateY(17.5px)}}
@media(max-width:650px){body.redesigned .new-header .brand{transform:translateY(17px)}}

/* Eight manufacturer marks in balanced rows. */
.manufacturer-logos{grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 36px}
.manufacturer-logos .manufacturer-gentek{max-width:160px}
.manufacturer-logos .manufacturer-gaf{width:58px;height:58px;max-width:58px;object-fit:contain}
@media(max-width:900px){.manufacturer-logos{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.manufacturer-logos li:last-child{grid-column:auto}}
@media(max-width:650px){.manufacturer-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px}.manufacturer-logos li:last-child{grid-column:auto}}

/* Align the siding header with its content column at every screen width. */
body.redesigned.page-id-20 .new-header,body.redesigned.page-id-20 .utility{padding-inline:20px}
body.redesigned.page-id-20 .new-header .brand{transform:none}
@media(min-width:1024px){body.redesigned.page-id-20 .new-header,body.redesigned.page-id-20 .utility{padding-inline:max(32px,calc((100% - 1024px)/2 + 32px))}}

/* Inner-page header: keep the entire logo within the header at every width. */
body.redesigned:not(.home) .new-header .brand{transform:none}
body.redesigned:not(.home) .new-header,body.redesigned:not(.home) .utility{padding-inline:20px}
@media(min-width:1024px){
body.redesigned:not(.home) .new-header,body.redesigned:not(.home) .utility{padding-inline:max(32px,calc((100% - 1152px)/2 + 32px))}
body.redesigned:is(.page-id-12,.page-id-14,.page-id-17,.page-id-18,.page-id-20,.page-id-21) .new-header,body.redesigned:is(.page-id-12,.page-id-14,.page-id-17,.page-id-18,.page-id-20,.page-id-21) .utility{padding-inline:max(32px,calc((100% - 1024px)/2 + 32px))}
body.redesigned:is(.page-id-9,.page-id-15) .new-header,body.redesigned:is(.page-id-9,.page-id-15) .utility{padding-inline:6%}
}
.manufacturer-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 36px}
.manufacturer-logos .manufacturer-hardie{width:180px;max-width:100%;height:auto}
@media(max-width:900px){.manufacturer-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.manufacturer-logos li:last-child{grid-column:auto}}
@media(max-width:650px){.manufacturer-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 28px}.manufacturer-logos li:last-child{grid-column:1/-1}}
.hardie-feature{background:#f7f6f0;color:#102039;padding:80px 0}
.hardie-wrap{max-width:1024px;margin:auto;padding:0 32px}
.hardie-heading{display:flex;gap:32px;align-items:center;justify-content:space-between}
.hardie-heading h2{font-family:Georgia,serif;font-size:clamp(32px,3vw,44px);line-height:1.16;margin:12px 0 0}
.hardie-heading img{width:180px;height:auto;max-width:none}
.hardie-lead{max-width:760px;font-size:17px;line-height:1.8;color:#52606a;margin:26px 0 36px}
.hardie-styles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;border-top:1px solid #d9d9d0;padding-top:32px}
.hardie-styles span{font-size:10px;letter-spacing:.16em;color:#806020}
.hardie-feature h3{font-family:Georgia,serif;font-size:26px;font-weight:400;line-height:1.25;margin:14px 0}
.hardie-feature p{line-height:1.8}
.hardie-styles p,.hardie-details p,.hardie-next p:not(.eyebrow){color:#52606a;font-size:15px}
.hardie-styles a,.hardie-details a{display:inline-block;color:#102039;border-bottom:1px solid #ad873d;padding-bottom:4px;margin-top:16px;font-size:13px}
.hardie-details{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:48px;padding-top:32px;border-top:1px solid #d9d9d0}
.hardie-next{display:flex;align-items:center;justify-content:space-between;gap:36px;margin-top:48px;padding-top:32px;border-top:1px solid #d9d9d0}
.hardie-next>div{max-width:600px}.hardie-next .text-link{white-space:nowrap}
.hardie-photo-caption{font-size:11px;color:#b8c4d0;letter-spacing:.05em;margin-top:12px;line-height:1.6}
@media(max-width:700px){.hardie-feature{padding:56px 0}.hardie-wrap{padding:0 20px}.hardie-heading{align-items:flex-start;flex-direction:column;gap:24px}.hardie-styles,.hardie-details{grid-template-columns:1fr;gap:28px}.hardie-styles article+article{border-top:1px solid #d9d9d0;padding-top:26px}.hardie-next{align-items:flex-start;flex-direction:column;gap:20px}}

/* Paint content immediately; avoid delayed section fades and respect reduced motion. */
body.redesigned main section{animation:none!important}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body.redesigned *,body.redesigned *::before,body.redesigned *::after{animation:none!important;transition:none!important}}
