:root{--teal:#064f59;--deep:#034b55;--green:#88cf2e;--orange:#f4a900;--muted:#71808f;--light:#f7f9f8;--line:#e6ecea;--shadow:0 16px 40px rgba(5,59,66,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:#34515a;background:#fff;font:16px/1.75 Manrope,Arial,sans-serif}a{text-decoration:none;color:inherit}.wrap{width:min(1220px,calc(100% - 48px));margin:auto}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--teal);line-height:1.15}h1{font-size:clamp(3.2rem,6.2vw,5.8rem);letter-spacing:-.05em}h2{font-size:clamp(2.25rem,4vw,3.7rem);letter-spacing:-.035em}h3{font-size:1.3rem}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 22px;border-radius:9px;background:var(--green);color:#fff;font-weight:800;box-shadow:0 8px 20px rgba(136,207,46,.22);transition:.25s}.btn:hover{transform:translateY(-3px);filter:brightness(.95)}.btn.orange{background:var(--orange)}
header{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 2px 15px rgba(6,79,89,.08)}nav{height:90px;display:flex;align-items:center;justify-content:space-between;gap:28px}.logo{display:flex;align-items:center;color:var(--teal);font-weight:900;font-size:1.45rem}.logo:before{content:"〰";display:grid;place-items:center;width:43px;height:43px;margin-right:10px;border-radius:50%;background:var(--green);color:#fff}.links{display:flex;gap:25px;align-items:center;font-size:.92rem;font-weight:800;color:var(--teal)}.menu{display:none;border:0;background:none;color:var(--teal);font-size:1.8rem}
.hero{min-height:660px;display:flex;align-items:center;color:white;padding:85px 0 135px;background:linear-gradient(90deg,rgba(0,70,78,.95),rgba(0,70,78,.68) 55%,rgba(0,70,78,.12)),url('assets/hero-gutter.png') center/cover}.hero .kicker{display:inline-block;padding-bottom:4px;border-bottom:4px solid var(--green);font-weight:900;letter-spacing:.18em;text-transform:uppercase}.hero h1{color:white;max-width:850px;margin:26px 0 15px}.hero h2{color:white;font-size:clamp(1.45rem,2.6vw,2.3rem);max-width:760px}.hero p{max-width:740px;font-size:1.06rem}.actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:30px}
.quick{position:relative;z-index:4;margin:-75px auto 0}.quick-box{background:#fff;border-radius:30px;box-shadow:var(--shadow);padding:34px}.quick h2{font-size:2rem}.quick-copy{display:grid;grid-template-columns:repeat(3,1fr);counter-reset:q}.quick-copy p{padding:14px 25px;margin:0;border-right:1px solid var(--line);color:var(--muted)}.quick-copy p:before{counter-increment:q;content:counter(q,decimal-leading-zero);display:block;color:var(--green);font-size:2.2rem;font-weight:900}.quick-copy p:last-child{border:0}
.content-section{padding:90px 0}.content-section.alt{background:var(--light)}.section-label{display:inline-block;background:var(--green);color:white;border-radius:7px;padding:7px 13px;font-weight:800;margin-bottom:20px}.content-section h2{max-width:900px}.content-section p{max-width:930px;color:var(--muted)}.content-section h3{margin-top:36px}.content-list{display:grid;grid-template-columns:repeat(2,1fr);gap:11px 18px;padding:0;margin:28px 0;list-style:none;max-width:1000px}.content-list li{padding:15px 18px;border-radius:12px;background:#fff;box-shadow:var(--shadow);font-weight:700;color:var(--teal)}.content-list li:before{content:"✓";display:inline-grid;place-items:center;width:27px;height:27px;margin-right:11px;border-radius:50%;background:var(--green);color:white}.dark{position:relative;overflow:hidden;background:var(--deep)!important;color:white}.dark:before,footer:before{content:"";position:absolute;inset:0;opacity:.06;background:repeating-linear-gradient(35deg,transparent 0 35px,#fff 36px 37px,transparent 38px 74px)}.dark>.wrap,footer>.wrap{position:relative;z-index:1}.dark h2,.dark h3{color:white}.dark p{color:#d0dcde}.dark .content-list li{color:var(--teal)}
.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.process-card{background:#fff;border-radius:18px;padding:24px;border-top:45px solid var(--teal);box-shadow:var(--shadow);transition:.25s}.process-card h3{color:white;font-size:1rem;text-align:center;margin:-59px 0 35px}.process-card p{font-size:.92rem}.process-card:hover{transform:translateY(-8px)}.faq-list{display:grid;gap:16px;margin-top:30px}.faq-item{background:#fff;border-radius:14px;box-shadow:var(--shadow);padding:0 24px}.faq-item h3{position:relative;margin:0;padding:23px 45px 23px 0;cursor:pointer}.faq-item h3:after{content:"+";position:absolute;right:0;color:var(--green);font-size:1.6rem}.faq-item p{display:none;padding-bottom:24px}.faq-item.open p{display:block}.faq-item.open h3:after{content:"−"}
.final-cta{padding:90px 0;background:var(--green)}.final-cta h2,.final-cta p{color:white}.final-cta .btn{background:var(--deep)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-card{position:relative;overflow:hidden;background:#fff;border-radius:24px;padding:250px 25px 28px;box-shadow:var(--shadow);border-bottom:4px solid var(--green);transition:.3s}.service-card:before{content:"";position:absolute;left:20px;right:20px;top:20px;height:205px;border-radius:17px;background:url('assets/service-gutters.png') 0 0/300% 100% no-repeat;transition:.4s}.service-card:nth-child(3n+2):before{background-position:50% 0}.service-card:nth-child(3n):before{background-position:100% 0}.service-card:hover{transform:translateY(-9px)}.service-card:hover:before{transform:scale(1.04)}.service-card p{color:var(--muted)}
footer{position:relative;overflow:hidden;background:#033f48;color:white;padding:70px 0 28px}.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:65px}.footer-grid h3{color:white}.footer-grid a{display:block;margin:9px 0;color:#dbe7e8}.copy{margin-top:45px;padding-top:23px;border-top:1px solid rgba(255,255,255,.12);color:#a8c0c4;font-size:.84rem}@keyframes float{50%{transform:translateY(-9px)}}body:after{content:"☎";position:fixed;z-index:30;right:24px;bottom:22px;width:58px;height:58px;display:grid;place-items:center;border-radius:50%;background:var(--green);color:white;font-size:1.5rem;box-shadow:var(--shadow);animation:float 2.5s ease-in-out infinite}
@media(max-width:900px){.links,nav>.btn{display:none}.menu{display:block}.quick-copy,.service-grid,.process-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1fr 1fr}.hero{min-height:600px}}
@media(max-width:580px){.wrap{width:min(100% - 28px,1220px)}nav{height:76px}.logo{font-size:1.1rem}.hero{padding:65px 0 120px}.hero h1{font-size:3rem}.quick{margin-top:-65px}.quick-copy,.service-grid,.process-grid,.content-list,.footer-grid{grid-template-columns:1fr}.quick-copy p{border-right:0;border-bottom:1px solid var(--line)}.content-section{padding:68px 0}.service-card{padding-top:220px}.service-card:before{height:175px}}

/* Orange reference design */
:root{--teal:#151d22;--deep:#152129;--green:#ff6500;--orange:#ff6500;--muted:#67727a;--light:#f7f8f8;--line:#e1e5e7;--shadow:0 14px 34px rgba(21,29,34,.10)}
body{color:#536068;background:#fff;font-size:15px}.wrap{width:min(1140px,calc(100% - 48px))}h1,h2,h3{color:#121a1f}h1{font-size:clamp(3.4rem,6.5vw,6rem);line-height:.98}h2{font-size:clamp(2.15rem,3.8vw,3.45rem)}.btn{min-height:48px;padding:0 22px;border-radius:24px;background:#ff6500;box-shadow:none;font-size:.86rem}.btn.orange{background:#fff;color:#182127;border:1px solid #dce1e3}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(255,101,0,.20)}
header{box-shadow:0 3px 18px rgba(20,29,34,.08)}.contact-strip{background:#172127;color:#e8edef;font-size:.72rem}.contact-strip .wrap{height:28px;display:flex;align-items:center;justify-content:flex-end;gap:25px}.contact-strip a{color:#e8edef}nav{height:74px}.logo{color:#161e23;font-size:1.28rem}.logo:before{content:"⌂";width:34px;height:34px;border-radius:3px;background:#fff;color:#ff6500;border:1px solid #dce1e3;font-size:.8rem}.links{font-size:.8rem;color:#172127}.links a{padding:26px 0;border-bottom:2px solid transparent}.links a:hover{border-color:#ff6500}.menu{color:#172127}
.hero{min-height:590px;padding:70px 0 125px;color:#4f5c63;background:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.90) 43%,rgba(255,255,255,.25) 72%),url('assets/hero-gutter.png') center/cover}.hero .kicker{color:#ff6500;border:0;font-size:.83rem;letter-spacing:.1em}.hero .kicker:before{content:"";display:block;width:31px;height:2px;background:#ff6500;margin-bottom:12px}.hero h1{color:#10181d;max-width:700px;margin:22px 0 18px}.hero h2{color:#121a1f;font-size:clamp(1.35rem,2.2vw,2rem);max-width:720px}.hero p{max-width:710px;font-size:.94rem;line-height:1.75}.actions{margin-top:27px}
.quick{margin-top:-73px}.quick-box{border-radius:0 0 18px 18px;padding:30px 34px;box-shadow:0 18px 40px rgba(21,29,34,.11)}.quick h2{font-size:1.7rem}.quick-copy{grid-template-columns:repeat(3,1fr)}.quick-copy p{font-size:.82rem;line-height:1.65}.quick-copy p:before{display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:#fff0e8;color:#ff6500;font-size:1rem;margin-bottom:14px}
.content-section{padding:82px 0}.content-section.alt{background:#f7f8f8}.content-section:nth-of-type(odd){background-image:repeating-linear-gradient(45deg,transparent 0 34px,rgba(21,29,34,.025) 35px 36px,transparent 37px 72px)}.section-label{background:#ff6500;border-radius:4px;padding:4px 9px;font-size:.72rem}.content-section h2{max-width:780px}.content-section p{font-size:.91rem;line-height:1.8}.content-list{gap:10px 16px}.content-list li{padding:12px 15px;border:1px solid #e0e5e7;border-radius:8px;box-shadow:0 6px 18px rgba(20,29,34,.05);font-size:.83rem}.content-list li:before{width:22px;height:22px;background:#ff6500;font-size:.72rem}.dark{background:#f6f7f7!important;color:#536068}.dark:before{display:none}.dark h2,.dark h3{color:#121a1f}.dark p{color:#66727a}
.service-grid{gap:18px}.service-card{border:1px solid #dfe4e6;border-bottom:0;border-radius:15px;padding:215px 18px 22px;box-shadow:0 9px 24px rgba(21,29,34,.07)}.service-card:before{left:14px;right:14px;top:14px;height:180px;border-radius:10px}.service-card h3{font-size:1.1rem}.service-card p{font-size:.82rem;line-height:1.65}.service-card .btn{min-height:40px;border-radius:4px;padding:0 14px}.service-card:hover{transform:translateY(-6px);box-shadow:0 16px 34px rgba(21,29,34,.12)}
.process-grid{grid-template-columns:repeat(5,1fr);gap:12px}.process-card{border:1px solid #e1e5e7;border-top:3px solid #ff6500;border-radius:7px;padding:20px 16px;box-shadow:0 8px 20px rgba(20,29,34,.06)}.process-card h3{color:#121a1f;text-align:left;margin:0 0 18px;font-size:.9rem}.process-card p{font-size:.78rem}.faq-item{border:1px solid #e1e5e7;border-radius:7px;box-shadow:none}.faq-item h3{font-size:.94rem}.faq-item h3:after{color:#ff6500}
.final-cta{padding:76px 0;background:#f5f6f6;background-image:radial-gradient(circle at 92% 20%,rgba(255,101,0,.10) 0 70px,transparent 71px)}.final-cta h2{color:#121a1f}.final-cta p{color:#657078}.final-cta .btn{background:#ff6500}footer{background:#142129;border-top:3px solid #ff6500;padding-top:58px}footer:before{opacity:.035;background:repeating-linear-gradient(45deg,transparent 0 35px,#fff 36px 37px,transparent 38px 72px)}.footer-grid h3{color:#fff}.copy{text-align:center}body:after{content:"☎";background:#ff6500;width:48px;height:48px;font-size:1.15rem;right:20px;bottom:18px}
@media(max-width:900px){.process-grid{grid-template-columns:repeat(2,1fr)}.contact-strip span{display:none}.hero{background-position:65% center}.links.show{display:flex;position:absolute;top:102px;left:0;right:0;flex-direction:column;align-items:flex-start;padding:20px 25px;background:#fff;box-shadow:0 12px 25px rgba(20,29,34,.12)}.links.show a{padding:8px 0}}
@media(max-width:580px){.contact-strip .wrap{justify-content:center;gap:12px;font-size:.62rem}.hero{min-height:610px;background-position:72% center}.hero h1{font-size:3.25rem}.quick-copy,.process-grid{grid-template-columns:1fr}.quick-box{padding:25px 22px}.service-card{padding-top:205px}.service-card:before{height:170px}}

/* Unified service-page polish */
.logo:before{content:"⌂"}.content-list li:before{content:"✓"}.faq-item.open h3:after{content:"−"}body:after{content:"☎";pointer-events:none}.menu{cursor:pointer}.links a[aria-current="page"]{border-color:#ff6500;color:#ff6500}
.hero{position:relative;isolation:isolate;overflow:hidden}.hero:after{content:"";position:absolute;z-index:-1;width:420px;height:420px;right:-110px;bottom:-240px;border-radius:50%;border:70px solid rgba(255,101,0,.10)}.hero .wrap{position:relative;z-index:1}.section-label{letter-spacing:.04em;text-transform:uppercase}.content-section h2:after{content:"";display:block;width:44px;height:3px;margin-top:20px;background:#ff6500}.content-list li{position:relative;overflow:hidden;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}.content-list li:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#ff6500;transform:scaleX(0);transform-origin:left;transition:transform .28s ease}.content-list li:hover{transform:translateY(-4px);border-color:rgba(255,101,0,.38);box-shadow:0 13px 28px rgba(20,29,34,.10)}.content-list li:hover:after{transform:scaleX(1)}.process-card{position:relative;overflow:hidden}.process-card:after{content:"";position:absolute;inset:auto 0 0;height:3px;background:#ff6500;transform:scaleX(0);transform-origin:left;transition:.3s}.process-card:hover:after{transform:scaleX(1)}.faq-item{overflow:hidden;transition:border-color .25s ease,box-shadow .25s ease}.faq-item.open{border-color:rgba(255,101,0,.5);box-shadow:0 10px 25px rgba(20,29,34,.08)}.faq-item h3:focus-visible,.menu:focus-visible,.btn:focus-visible,a:focus-visible{outline:3px solid rgba(255,101,0,.35);outline-offset:3px}.service-intro{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}.service-intro>div:last-child{padding:34px;border:1px solid #e1e5e7;border-radius:14px;background:#fff;box-shadow:0 12px 30px rgba(20,29,34,.07)}.service-nav{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.service-nav a{padding:10px 15px;border:1px solid #dfe4e6;border-radius:24px;background:#fff;color:#172127;font-size:.8rem;font-weight:800;transition:.25s}.service-nav a:hover{border-color:#ff6500;color:#ff6500;transform:translateY(-2px)}
@media(max-width:760px){.service-intro{grid-template-columns:1fr;gap:24px}.hero:after{width:260px;height:260px;border-width:45px}}

/* Home-page matching Quick Answer interaction */
.quick-box{transition:transform .3s ease,box-shadow .3s ease}.quick-box:hover{transform:translateY(-5px);box-shadow:0 24px 50px rgba(21,29,34,.14)}.quick-copy{overflow:visible}.quick-copy p{position:relative;min-height:195px;padding:18px 28px 26px!important;background:linear-gradient(180deg,#fff,#fff);transition:transform .32s cubic-bezier(.2,.8,.2,1),background .32s ease,box-shadow .32s ease,color .32s ease;isolation:isolate}.quick-copy p:before{width:48px!important;height:48px!important;display:grid!important;place-items:center!important;margin-bottom:18px!important;border-radius:50%!important;background:#fff3eb!important;color:#ff6500!important;font-size:1.08rem!important;transition:transform .32s cubic-bezier(.2,.8,.2,1),background .32s ease,color .32s ease,box-shadow .32s ease}.quick-copy p:after{content:"";position:absolute;left:28px;right:28px;bottom:0;height:4px;border-radius:4px;background:#ff6500;transform:scaleX(0);transform-origin:left;transition:transform .35s ease}.quick-copy p:hover{z-index:2;transform:translateY(-9px);background:linear-gradient(155deg,#fff,#fff8f3);box-shadow:0 18px 38px rgba(29,39,46,.13);color:#26323a}.quick-copy p:hover:before{transform:scale(1.08) rotate(-5deg);background:#ff6500!important;color:#fff!important;box-shadow:0 8px 20px rgba(255,101,0,.28)}.quick-copy p:hover:after{transform:scaleX(1)}
@media(max-width:580px){.quick-copy p{min-height:0;padding:22px 18px 26px!important}.quick-copy p:after{left:18px;right:18px}.quick-copy p:hover{transform:translateY(-4px)}}
@media(prefers-reduced-motion:reduce){.quick-box,.quick-copy p,.quick-copy p:before,.quick-copy p:after{transition:none!important}.quick-box:hover,.quick-copy p:hover,.quick-copy p:hover:before{transform:none!important}}

/* Home-page effect system mapped across every sub-service section */
header{transition:box-shadow .3s ease,background .3s ease}header:hover{box-shadow:0 10px 32px rgba(24,33,38,.1)}header .logo{transition:transform .3s cubic-bezier(.2,.8,.2,1)}header .logo:hover{transform:translateY(-2px)}header .logo:before{transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .3s ease,box-shadow .3s ease}header .logo:hover:before{transform:rotate(-7deg) scale(1.08);border-color:#ff6500;box-shadow:0 7px 18px rgba(255,101,0,.18)}.links a{position:relative;transition:color .25s ease,transform .25s ease}.links a:hover{transform:translateY(-2px)}nav>.btn,.hero .btn,.final-cta .btn{position:relative;overflow:hidden;isolation:isolate}.btn:before{content:"";position:absolute;z-index:-1;top:-70%;bottom:-70%;left:-48%;width:28%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.72),transparent);transform:skewX(-18deg);transition:left .65s ease}.btn:hover:before{left:128%}

.hero .kicker{transition:letter-spacing .3s ease,color .3s ease}.hero:hover .kicker{letter-spacing:.13em}.hero h1{transition:transform .45s cubic-bezier(.2,.8,.2,1)}.hero:hover h1{transform:translateX(5px)}.hero:after{transition:transform .8s cubic-bezier(.2,.8,.2,1),border-color .5s ease}.hero:hover:after{transform:translate(-18px,-14px) scale(1.06);border-color:rgba(255,101,0,.16)}

.content-section>.wrap{position:relative}.content-section h2{transition:color .3s ease}.content-section h2:after{transition:width .35s ease,box-shadow .35s ease}.content-section>.wrap:hover>h2{color:#d95200}.content-section>.wrap:hover>h2:after{width:76px;box-shadow:0 0 15px rgba(255,101,0,.25)}.content-section h3{position:relative;transition:color .28s ease,transform .28s ease}.content-section h3:hover{color:#d95200;transform:translateX(4px)}.content-section>.wrap>p{transition:color .25s ease,transform .25s ease}.content-section>.wrap>p:hover{color:#344149;transform:translateX(3px)}

.content-list li{background:linear-gradient(135deg,#fff,#fbfcfc)}.content-list li:before{position:relative;z-index:1;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease}.content-list li:hover:before{transform:scale(1.13) rotate(8deg);box-shadow:0 6px 14px rgba(255,101,0,.28)}

.process-card{background:linear-gradient(155deg,#fff 0%,#fff 70%,#fff8f3 100%);transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .3s ease,box-shadow .35s ease}.process-card:before{content:"";position:absolute;top:-55%;left:-55%;width:35%;height:210%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);transform:skewX(-18deg);transition:left .7s ease;pointer-events:none}.process-card h3{transition:color .3s ease,transform .3s ease}.process-card:hover{transform:translateY(-10px);border-color:rgba(255,101,0,.45);box-shadow:0 22px 44px rgba(29,39,46,.14)}.process-card:hover h3{color:#d95200;transform:translateY(-2px)}.process-card:hover:before{left:130%}

.faq-item{transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}.faq-item h3{transition:color .25s ease,padding-left .25s ease}.faq-item:hover{transform:translateX(5px);border-color:rgba(255,101,0,.42);box-shadow:0 12px 28px rgba(29,39,46,.10)}.faq-item:hover h3,.faq-item.open h3{color:#d95200;padding-left:5px}.faq-item h3:after{transition:transform .28s ease,background .28s ease,color .28s ease}.faq-item:hover h3:after{transform:rotate(90deg)}.faq-item.open h3:after{transform:rotate(180deg)}

.service-card{background:linear-gradient(155deg,#fff 0%,#fff 78%,#fff8f3 100%);transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .3s ease,box-shadow .35s ease}.service-card h3{transition:color .3s ease}.service-card .btn{transition:transform .28s ease,box-shadow .28s ease}.service-card:hover{transform:translateY(-8px);border-color:rgba(255,101,0,.5);box-shadow:0 22px 44px rgba(29,39,46,.14)}.service-card:hover:before{transform:scale(1.04);filter:saturate(1.08) contrast(1.04)}.service-card:hover h3{color:#d95200}.service-card:hover .btn{transform:translateY(-2px);box-shadow:0 8px 18px rgba(255,101,0,.2)}

.service-intro>div:last-child{position:relative;overflow:hidden;transition:transform .35s ease,border-color .3s ease,box-shadow .35s ease}.service-intro>div:last-child:before{content:"";position:absolute;top:-70%;left:-45%;width:25%;height:240%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent);transform:skewX(-18deg);transition:left .75s ease;pointer-events:none}.service-intro>div:last-child:hover{transform:translateY(-7px);border-color:rgba(255,101,0,.4);box-shadow:0 20px 42px rgba(29,39,46,.13)}.service-intro>div:last-child:hover:before{left:130%}.service-nav a{position:relative;overflow:hidden}.service-nav a:hover{background:#ff6500;color:#fff;box-shadow:0 8px 18px rgba(255,101,0,.2)}

.final-cta{position:relative;overflow:hidden}.final-cta:before{content:"";position:absolute;width:330px;height:330px;right:-120px;top:-190px;border-radius:50%;border:55px solid rgba(255,101,0,.09);transition:transform .65s ease}.final-cta:hover:before{transform:translate(-15px,18px) scale(1.06)}.final-cta>.wrap{position:relative;z-index:1}.final-cta h2{transition:transform .3s ease}.final-cta:hover h2{transform:translateX(5px)}

.footer-grid a{transition:color .25s ease,transform .25s ease}.footer-grid a:hover{color:#ff8a42;transform:translateX(4px)}.footer-grid .logo:hover{transform:translateY(-3px)}

@media(max-width:580px){.hero:hover h1,.content-section>.wrap>p:hover,.content-section h3:hover,.final-cta:hover h2{transform:none}.faq-item:hover{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){header,header .logo,header .logo:before,.links a,.btn:before,.hero .kicker,.hero h1,.hero:after,.content-section h2,.content-section h2:after,.content-section h3,.content-section>.wrap>p,.content-list li,.content-list li:before,.content-list li:after,.process-card,.process-card:before,.process-card:after,.process-card h3,.faq-item,.faq-item h3,.faq-item h3:after,.service-card,.service-card:before,.service-card h3,.service-card .btn,.service-intro>div:last-child,.service-intro>div:last-child:before,.service-nav a,.final-cta:before,.final-cta h2,.footer-grid a{transition:none!important}.logo:hover,.links a:hover,.hero:hover h1,.content-section>.wrap>p:hover,.content-section h3:hover,.content-list li:hover,.content-list li:hover:before,.process-card:hover,.process-card:hover h3,.faq-item:hover,.service-card:hover,.service-card:hover:before,.service-card:hover .btn,.service-intro>div:last-child:hover,.service-nav a:hover,.final-cta:hover h2,.footer-grid a:hover{transform:none!important}}

/* Consistent compact buttons across service detail pages */
.btn{min-height:44px;padding:0 18px;border-radius:22px;font-size:.82rem;line-height:1.2}
nav>.btn{min-height:42px;padding:0 17px}.hero .btn,.final-cta .btn{min-height:46px;padding:0 20px}.service-card .btn{min-height:38px;padding:0 13px;font-size:.78rem}
@media(max-width:580px){.hero .actions{gap:9px}.hero .btn,.final-cta .btn{min-height:44px;padding:0 17px;font-size:.78rem}}

/* Match the primary navigation used on the home page */
header nav.wrap{width:min(1880px,calc(100% - 48px));height:104px}.contact-strip .wrap{height:38px}.logo{position:relative;display:block;padding-left:66px;color:#172127;font-size:1.55rem;font-weight:800;line-height:1}.logo:before{content:"⌂";position:absolute;left:0;top:50%;width:50px;height:40px;display:grid;place-items:center;margin:0;border:2px solid #d8dde0;border-radius:5px;background:#fff;color:#ff6500;font-size:1.1rem;transform:translateY(-50%)}.logo span{display:block;margin-top:10px;color:#737e84;font-size:.55rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.links{display:flex;gap:45px;color:#4f5960;font-size:.9rem;font-weight:700}.links a{padding:10px 0;border:0;position:relative}.links a:after{content:"";position:absolute;left:50%;right:50%;bottom:0;height:3px;background:#ff6500;transition:.3s}.links a:hover{border:0;color:#172127}.links a:hover:after{left:0;right:0}header nav>.btn{min-height:44px;padding:0 19px;font-size:.82rem}
@media(max-width:1180px){.links{gap:24px}header nav.wrap{width:min(100% - 32px,1880px)}}
@media(max-width:900px){header nav.wrap{height:80px}.logo span{display:none}}

/* Services dropdown */
.services-menu{position:relative;display:flex;align-items:center}.services-menu>a{display:inline-flex!important;align-items:center;gap:9px;line-height:1}.menu-caret{display:inline-block;width:8px;height:8px;font-size:0;border-right:2px solid currentColor;border-bottom:2px solid currentColor;position:relative;top:-2px;transform:rotate(45deg);transition:transform .25s ease}.services-dropdown{position:absolute;z-index:100;top:calc(100% + 18px);left:-20px;width:290px;padding:9px 0;border:1px solid #e1e5e7;border-top:3px solid var(--orange);border-radius:0 0 12px 12px;background:#fff;box-shadow:0 18px 42px rgba(23,31,36,.18);opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .25s ease,visibility .25s ease,transform .25s ease}.services-dropdown a{display:block!important;padding:12px 20px!important;border:0!important;color:#4f5960!important;font-size:.84rem!important;font-weight:700!important;line-height:1.35;transition:color .2s ease,background .2s ease,padding-left .2s ease!important}.services-dropdown a:after{display:none!important}.services-dropdown a:hover{padding-left:25px!important;background:#fff4ec;color:#e85b00!important;transform:none!important}.services-menu:hover .services-dropdown,.services-menu:focus-within .services-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.services-menu:hover .menu-caret,.services-menu:focus-within .menu-caret{transform:rotate(225deg)}
@media(max-width:900px){.links.show .services-menu{display:block;width:100%}.links.show .services-dropdown{position:static;width:100%;margin:3px 0 8px;padding:4px 0;border-top-width:2px;border-radius:8px;box-shadow:none;opacity:1;visibility:visible;transform:none}.links.show .services-dropdown a{padding:10px 18px!important;font-size:.8rem!important}}

/* Home-page FAQ treatment shared by every service page */
.faq-list{display:grid;gap:14px;max-width:940px;margin:30px auto 0}.faq-item{position:relative;overflow:hidden;padding:0 26px;border:1px solid #dfe3e6;border-radius:14px;background:#fff;box-shadow:none;transform:none;transition:border-color .3s ease,background .3s ease}.faq-item:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(255,107,8,.1),transparent 42%);opacity:0;pointer-events:none;transition:opacity .35s ease}.faq-item:hover{transform:none;border-color:rgba(255,107,8,.4);background:#fff8f3;box-shadow:none}.faq-item.open{border-color:rgba(255,107,8,.48);background:#fff8f3;box-shadow:none}.faq-item.open:before{opacity:1}.faq-item h3,.faq-item:hover h3,.faq-item.open h3{position:relative;z-index:1;margin:0;padding:25px 62px 25px 2px;color:#1d282e;font-size:1.08rem;transition:color .3s ease}.faq-item h3:after{content:"›";position:absolute;top:50%;right:4px;width:36px;height:36px;display:grid;place-items:center;border:1px solid #d6dbde;border-radius:50%;background:transparent;color:#343f46;font:400 1.8rem/1 Manrope;transform:translateY(-50%) rotate(90deg);transition:transform .4s cubic-bezier(.2,.8,.2,1),background .3s ease,border-color .3s ease,color .3s ease}.faq-item:hover h3:after{transform:translateY(-50%) rotate(90deg)}.faq-item.open h3:after{content:"›";color:#fff;background:#ff6500;border-color:#ff6500;transform:translateY(-50%) rotate(-90deg)}.faq-item p{position:relative;z-index:1;display:block!important;max-height:0;opacity:0;overflow:hidden;margin:0!important;padding:0 2px!important;color:#626d74;line-height:1.75;transform:translateY(-5px);transition:max-height .5s cubic-bezier(.2,.8,.2,1),opacity .3s ease,transform .4s ease,padding .4s ease}.faq-item.open p{max-height:260px;opacity:1;padding:0 2px 24px!important;transform:translateY(0)}
@media(max-width:580px){.faq-item{padding:0 18px}.faq-item h3,.faq-item:hover h3,.faq-item.open h3{padding:21px 50px 21px 0;font-size:.95rem}.faq-item h3:after{right:0;width:32px;height:32px}}

/* Centered FAQ section heading */
#faq>.wrap>.section-label{display:table;margin-left:auto;margin-right:auto}#faq>.wrap>h2{max-width:820px;margin-left:auto;margin-right:auto;text-align:center}#faq>.wrap>h2:after{margin-left:auto;margin-right:auto}
#faq .faq-heading{width:100%;max-width:940px;margin:0 auto 32px;text-align:center}#faq .faq-heading .section-label{display:table;margin:0 auto 14px}#faq .faq-heading h2{max-width:820px;margin:0 auto!important;text-align:center!important}#faq .faq-heading h2:after{margin-left:auto!important;margin-right:auto!important}

/* Refined heading scale */
h1{font-size:clamp(2.9rem,5vw,5.05rem);font-weight:700;line-height:1.07;letter-spacing:-.035em}h2{font-size:clamp(2rem,3.45vw,3.3rem);font-weight:700;line-height:1.13;letter-spacing:-.025em}h3{font-size:1.1rem;font-weight:700;line-height:1.38}.hero h1{font-size:clamp(3rem,5.1vw,5.1rem);line-height:1.05}.hero h2{font-size:clamp(1.35rem,2.1vw,1.9rem);font-weight:600;letter-spacing:-.015em}.quick h2{font-size:1.65rem}.content-section h2{max-width:820px}.final-cta h2{font-size:clamp(2rem,3.3vw,3.15rem)}
@media(max-width:580px){h1,.hero h1{font-size:2.7rem}h2,.final-cta h2{font-size:1.95rem}.hero h2{font-size:1.3rem}h3{font-size:1rem}}

/* Professionally top-aligned hero content */
.hero{align-items:flex-start;padding-top:64px;padding-bottom:92px}.hero h1{margin-top:18px;margin-bottom:16px}.hero h2{margin-bottom:16px}.hero p{margin-bottom:12px;line-height:1.72}.hero .actions{margin-top:25px}
@media(max-width:580px){.hero{padding-top:50px;padding-bottom:78px;min-height:auto}.hero h1{margin-top:15px;margin-bottom:14px}.hero .actions{margin-top:21px}}

/* Numbered service cards on the main Services page */
.centered-estimate{text-align:center}.centered-estimate h2{max-width:820px;margin-left:auto;margin-right:auto}.centered-estimate p{max-width:720px;margin-left:auto;margin-right:auto}.centered-estimate .actions{justify-content:center;margin-top:25px}
.content-section>.wrap>.btn:first-of-type{margin-right:12px}
@media(max-width:580px){.content-section>.wrap>.btn:first-of-type{margin-right:8px}}
/* Unified polished button interaction */
.btn{position:relative;transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease,filter .28s ease,letter-spacing .28s ease}
.btn:before,.btn:after{content:none!important}
.btn span,.btn .arrow{transition:transform .28s cubic-bezier(.2,.8,.2,1)}
.btn:hover{transform:translateY(-4px);box-shadow:inset 0 -52px 0 rgba(255,255,255,.14),0 14px 27px rgba(255,101,0,.27);filter:saturate(1.08);letter-spacing:.012em}
.btn:hover span,.btn:hover .arrow{transform:translateX(4px)}
.btn:active{transform:translateY(-1px) scale(.975);box-shadow:inset 0 -52px 0 rgba(0,0,0,.06),0 6px 13px rgba(255,101,0,.18)}
@media(prefers-reduced-motion:reduce){.btn{transition:none!important}.btn:hover,.btn:active{transform:none!important}}
/* Services dropdown opens by click only */
.services-menu:hover .services-dropdown,.services-menu:focus-within .services-dropdown{opacity:0;visibility:hidden;transform:translateY(10px)}
.services-menu:hover .menu-caret,.services-menu:focus-within .menu-caret{transform:rotate(45deg)}
.services-menu.open .services-dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.services-menu.open .menu-caret{transform:rotate(225deg)}
/* Compact two-column service-area list in every footer */
footer .footer-expanded{grid-template-columns:1.35fr 1.15fr .8fr 1.05fr 1.25fr!important}
footer .footer-areas{display:grid!important;grid-template-columns:repeat(2,minmax(76px,1fr))!important;column-gap:20px!important;row-gap:11px!important}
footer .footer-areas>strong{grid-column:1/-1!important}
footer .footer-areas>span{width:100%!important}
@media(max-width:1180px){footer .footer-expanded{grid-template-columns:1.25fr 1fr 1fr!important}footer .footer-areas{grid-template-columns:repeat(2,minmax(105px,1fr))!important}}
@media(max-width:760px){footer .footer-expanded{grid-template-columns:1fr 1fr!important}}
@media(max-width:520px){footer .footer-expanded{grid-template-columns:1fr!important}footer .footer-areas{grid-template-columns:repeat(2,minmax(100px,1fr))!important}}
/* Slightly smaller floating contact button */
.floating-contact{width:58px!important;height:58px!important;border-radius:19px!important}
.floating-contact svg{width:27px!important;height:27px!important}
@media(max-width:580px){.floating-contact{width:50px!important;height:50px!important;border-radius:16px!important}.floating-contact svg{width:24px!important;height:24px!important}}
#services .service-grid{counter-reset:serviceNumber}#services .service-card{counter-increment:serviceNumber}#services .service-card:after{content:counter(serviceNumber,decimal-leading-zero);position:absolute;z-index:3;top:174px;left:20px;width:43px;height:43px;display:grid;place-items:center;border:4px solid #fff;border-radius:50%;background:#ff6500;color:#fff;font-size:.82rem;font-weight:800;line-height:1;box-shadow:0 7px 18px rgba(255,101,0,.28);transition:transform .28s ease,box-shadow .28s ease}#services .service-card:hover:after{transform:translateY(-3px) scale(1.06);box-shadow:0 10px 22px rgba(255,101,0,.36)}
@media(max-width:580px){#services .service-card:after{top:158px;left:19px;width:40px;height:40px;font-size:.76rem}}

/* Shared floating contact button */
/* Refined FlowPeak brand logo */
header .logo{position:relative;display:block;padding-left:64px;color:#172127;font-family:Manrope,Arial,sans-serif;font-size:1.62rem;font-weight:800;line-height:.92;letter-spacing:-.035em;text-transform:none;transition:transform .3s cubic-bezier(.2,.8,.2,1)}header .logo:before{content:"FP";position:absolute;left:0;top:50%;width:48px;height:48px;display:grid;place-items:center;margin:0;border:0;border-radius:15px 15px 15px 5px;background:linear-gradient(145deg,#ff8a22 0%,#ff6500 58%,#e94b00 100%);color:#fff;font:800 .88rem/1 Manrope,Arial,sans-serif;letter-spacing:-.06em;box-shadow:0 9px 22px rgba(255,101,0,.25),inset 0 1px 0 rgba(255,255,255,.35);transform:translateY(-50%) rotate(-3deg);transition:transform .35s cubic-bezier(.2,.8,.2,1),border-radius .3s ease,box-shadow .3s ease}header .logo span{display:block;margin:9px 0 0;color:#7b858c;font:700 .55rem/1.2 Manrope,Arial,sans-serif;letter-spacing:.105em;text-transform:uppercase}header .logo:hover{color:#172127;transform:translateY(-2px)}header .logo:hover:before{border-radius:50%;transform:translateY(-50%) rotate(4deg) scale(1.06);box-shadow:0 12px 27px rgba(255,101,0,.34),inset 0 1px 0 rgba(255,255,255,.4)}@media(max-width:580px){header .logo{padding-left:52px;font-size:1.25rem}header .logo:before{width:40px;height:40px;border-radius:12px 12px 12px 4px;font-size:.75rem}header .logo span{margin-top:6px;font-size:.43rem;letter-spacing:.075em}}
header .logo:before{content:""!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M7 20 23 8l18 12' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10 23h28v5c-7 4-21 4-28 0v-5Z' fill='%23fff' fill-opacity='.22' stroke='%23fff' stroke-width='2.6' stroke-linejoin='round'/%3E%3Cpath d='M37 28v10c0 3 2 4 5 4' fill='none' stroke='%23fff' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M14 26h19' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E"),linear-gradient(145deg,%23ff8a22 0%25,%23ff6500 58%25,%23e94b00 100%25)!important;background-repeat:no-repeat!important;background-position:center!important;background-size:34px 34px,100% 100%!important}
header .logo{transition:none!important}header .logo:hover{transform:none!important}header .logo:before{content:""!important;border:2px solid #d8dde1!important;border-radius:7px!important;background-color:#fff!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M7 18 24 7l17 11' fill='none' stroke='%23ff6500' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M10 22h28v5c-7 4-21 4-28 0v-5Z' fill='none' stroke='%23ff6500' stroke-width='2.8' stroke-linejoin='round'/%3E%3Cpath d='M37 28v10c0 3 2 4 5 4' fill='none' stroke='%23ff6500' stroke-width='3' stroke-linecap='round'/%3E%3Cpath d='M15 25h17' fill='none' stroke='%23ff6500' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:center!important;background-size:34px 34px!important;box-shadow:none!important;transform:translateY(-50%)!important;transition:none!important}header .logo:hover:before{border-radius:7px!important;box-shadow:none!important;transform:translateY(-50%)!important}
header .logo:before{content:""!important;border:1px solid #26343b!important;border-radius:12px!important;background-color:#172127!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath d='M7 18 24 7l17 11' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9 22h29v5c-7 4-22 4-29 0v-5Z' fill='%23ff6500' stroke='%23ff8a42' stroke-width='2.4' stroke-linejoin='round'/%3E%3Cpath d='M37 28v9c0 3 2 5 5 5' fill='none' stroke='%23ff6500' stroke-width='3.4' stroke-linecap='round'/%3E%3Cpath d='M14 25h18' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' opacity='.9'/%3E%3Ccircle cx='16' cy='17' r='1.5' fill='%23ff8a42'/%3E%3Ccircle cx='32' cy='17' r='1.5' fill='%23ff8a42'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:center!important;background-size:36px 36px!important;box-shadow:0 7px 18px rgba(23,33,39,.16)!important;transform:translateY(-50%)!important;transition:none!important}header .logo:hover:before{border-radius:12px!important;box-shadow:0 7px 18px rgba(23,33,39,.16)!important;transform:translateY(-50%)!important}
header .logo{padding-left:68px!important;font-size:1.7rem!important;letter-spacing:-.045em!important}header .logo:before{content:""!important;width:54px!important;height:42px!important;border:0!important;border-radius:0!important;background-color:transparent!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 48'%3E%3Cpath d='M5 20 27 6l25 14' fill='none' stroke='%23172127' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9 25h43v5c-10 5-33 5-43 0v-5Z' fill='%23ff6500'/%3E%3Cpath d='M50 30v9c0 3 3 5 7 5' fill='none' stroke='%23ff6500' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M14 28h30' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' opacity='.9'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:center!important;background-size:54px 42px!important;box-shadow:none!important;transform:translateY(-50%)!important;transition:none!important}header .logo:hover,header .logo:hover:before{transform:translateY(0)!important;box-shadow:none!important}header .logo:hover:before{transform:translateY(-50%)!important}@media(max-width:580px){header .logo{padding-left:55px!important;font-size:1.3rem!important}header .logo:before{width:44px!important;height:35px!important;background-size:44px 35px!important}}
footer .logo{position:relative!important;display:block!important;width:max-content;padding-left:68px!important;color:#fff!important;font-family:Manrope,Arial,sans-serif!important;font-size:1.7rem!important;font-weight:800!important;line-height:.92!important;letter-spacing:-.045em!important;text-transform:none!important;transform:none!important;transition:none!important}footer .logo:before{content:""!important;position:absolute!important;left:0!important;top:50%!important;width:54px!important;height:42px!important;border:0!important;border-radius:0!important;background-color:transparent!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 48'%3E%3Cpath d='M5 20 27 6l25 14' fill='none' stroke='%23fff' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M9 25h43v5c-10 5-33 5-43 0v-5Z' fill='%23ff6500'/%3E%3Cpath d='M50 30v9c0 3 3 5 7 5' fill='none' stroke='%23ff6500' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M14 28h30' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' opacity='.9'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:center!important;background-size:54px 42px!important;box-shadow:none!important;transform:translateY(-50%)!important;transition:none!important}footer .logo span{display:block!important;margin:9px 0 0!important;color:#aeb8bd!important;font:700 .55rem/1.2 Manrope,Arial,sans-serif!important;letter-spacing:.105em!important;text-transform:uppercase!important}footer .logo:hover{color:#fff!important;transform:none!important}footer .logo:hover:before{transform:translateY(-50%)!important}@media(max-width:580px){footer .logo{padding-left:55px!important;font-size:1.3rem!important}footer .logo:before{width:44px!important;height:35px!important;background-size:44px 35px!important}footer .logo span{font-size:.43rem!important}}
footer{position:relative!important;overflow:hidden!important;padding:65px 0 28px!important;background:#142129!important;color:#dbe1e4!important;border-top:3px solid #ff6500!important}footer:before{content:""!important;position:absolute!important;inset:0!important;display:block!important;opacity:.035!important;background:repeating-linear-gradient(45deg,transparent 0 35px,#fff 36px 37px,transparent 38px 72px)!important;pointer-events:none!important}footer>.wrap{position:relative!important;z-index:1!important}footer .footer-grid{display:grid!important;grid-template-columns:1.15fr .8fr .65fr!important;gap:70px!important;align-items:start!important}footer .footer-contact,footer .footer-links{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:10px!important;min-width:0!important}footer .footer-contact strong,footer .footer-links strong{margin:0 0 6px!important;color:#fff!important;font-size:1rem!important}footer .footer-contact a,footer .footer-contact span,footer .footer-links a{display:block!important;margin:0!important;padding:0!important;border:0!important;color:#aeb8bd!important;font-size:.86rem!important;line-height:1.55!important;transition:color .2s ease!important}footer .footer-contact a:hover,footer .footer-links a:hover{color:#ff8a42!important;transform:none!important}footer .copy{margin-top:45px!important;padding-top:24px!important;border-top:1px solid rgba(255,255,255,.12)!important;color:#8f9b9f!important;font-size:.8rem!important;text-align:left!important}@media(max-width:850px){footer .footer-grid{grid-template-columns:1fr 1fr!important;gap:45px!important}footer .footer-links{grid-column:1/-1!important}}@media(max-width:580px){footer{padding:52px 0 24px!important}footer .footer-grid{grid-template-columns:1fr!important;gap:32px!important}footer .footer-links{grid-column:auto!important}footer .copy{margin-top:34px!important}}
footer{padding:78px 0 28px!important;background:linear-gradient(rgba(14,20,24,.94),rgba(14,20,24,.96)),url('assets/hero-gutter.png') center/cover!important;border-top:4px solid #ff6500!important}footer:before{opacity:.055!important;background:repeating-linear-gradient(135deg,transparent 0 70px,rgba(255,255,255,.18) 71px 72px,transparent 73px 142px)!important}footer .footer-expanded{display:grid!important;grid-template-columns:1.35fr 1.15fr .8fr .8fr 1.25fr!important;gap:48px!important;align-items:start!important}footer .footer-brand{min-width:0}footer .footer-brand p{max-width:290px;margin:27px 0 0;color:#b6bec3;font-size:.9rem;line-height:1.85}footer .footer-column,footer .footer-contact,footer .footer-areas{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:11px!important;min-width:0!important}footer .footer-column>strong,footer .footer-contact>strong{position:relative;margin:0 0 15px!important;padding-bottom:11px;color:#fff!important;font-size:.94rem!important;font-weight:800!important;letter-spacing:.08em!important;text-transform:uppercase!important}footer .footer-column>strong:after,footer .footer-contact>strong:after{content:"";position:absolute;left:0;bottom:0;width:34px;height:3px;border-radius:3px;background:#ff6500}footer .footer-column>a,footer .footer-column>span,footer .footer-contact>a,footer .footer-contact>span{display:block!important;margin:0!important;padding:0!important;border:0!important;color:#b6bec3!important;font-size:.84rem!important;line-height:1.55!important;text-decoration:none!important;transition:color .2s ease,transform .2s ease!important}footer .footer-column>a:hover,footer .footer-contact>a:hover{color:#fff!important;transform:translateX(4px)!important}footer .footer-contact>a,footer .footer-contact>span:not(.footer-hours){display:grid!important;grid-template-columns:24px 1fr!important;gap:9px!important;align-items:start!important}footer .footer-contact b{color:#ff6500;font-size:1rem;font-weight:700}footer .footer-hours{margin-top:9px!important;padding-top:15px!important;border-top:1px solid rgba(255,255,255,.13)!important;color:#929da3!important;font-size:.78rem!important}footer .footer-estimate-link{display:inline-flex!important;width:max-content!important;margin-top:7px!important;padding:9px 14px!important;border:1px solid rgba(255,101,0,.65)!important;border-radius:22px!important;color:#fff!important;font-weight:800!important;background:rgba(255,101,0,.1)!important}footer .footer-estimate-link:hover{background:#ff6500!important;transform:none!important}footer .copy{display:flex!important;justify-content:space-between!important;gap:25px!important;margin-top:58px!important;padding-top:24px!important;border-top:1px solid rgba(255,255,255,.13)!important;color:#879197!important;font-size:.76rem!important;text-align:left!important}@media(max-width:1180px){footer .footer-expanded{grid-template-columns:1.25fr 1fr 1fr!important;gap:48px 55px!important}footer .footer-contact{grid-column:2/4!important}.footer-areas{grid-column:1!important}}@media(max-width:760px){footer{padding-top:60px!important}footer .footer-expanded{grid-template-columns:1fr 1fr!important;gap:42px 35px!important}footer .footer-brand{grid-column:1/-1!important}footer .footer-contact{grid-column:auto!important}footer .footer-areas{grid-column:auto!important}footer .copy{flex-direction:column!important;gap:7px!important}}@media(max-width:520px){footer .footer-expanded{grid-template-columns:1fr!important}footer .footer-brand,footer .footer-contact,footer .footer-areas{grid-column:auto!important}footer .footer-brand p{max-width:100%}footer .copy{margin-top:42px!important}}
footer .footer-hours,footer .footer-estimate-link{display:none!important}
body:after{display:none!important}@keyframes contactPulse{0%,100%{box-shadow:0 12px 30px rgba(255,107,8,.32),0 0 0 0 rgba(255,107,8,.32)}50%{box-shadow:0 16px 38px rgba(255,107,8,.42),0 0 0 13px rgba(255,107,8,0)}}.floating-contact{position:fixed;z-index:100;right:26px;bottom:25px;width:66px;height:66px;display:grid;place-items:center;background:linear-gradient(145deg,#ff8b22 0%,#ff6500 55%,#e94b00 100%);color:#fff;border:2px solid rgba(255,255,255,.9);border-radius:22px;box-shadow:0 12px 30px rgba(255,107,8,.32);animation:contactPulse 2.4s ease-out infinite;transition:transform .28s cubic-bezier(.2,.8,.2,1),border-radius .28s ease,filter .28s ease}.floating-contact svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 2px rgba(130,35,0,.25));transition:transform .35s cubic-bezier(.2,.8,.2,1)}.floating-contact:after{content:"Contact Us";position:absolute;right:76px;padding:8px 12px;background:#15191d;color:#fff;border-radius:8px;white-space:nowrap;font-size:.75rem;font-weight:800;letter-spacing:.03em;opacity:0;transform:translateX(8px);pointer-events:none;box-shadow:0 8px 22px rgba(0,0,0,.2);transition:opacity .25s ease,transform .25s ease}.floating-contact:hover{color:#fff;transform:translateY(-6px) scale(1.04);border-radius:50%;filter:brightness(1.06)}.floating-contact:hover svg{transform:rotate(-8deg) scale(1.08)}.floating-contact:hover:after{opacity:1;transform:translateX(0)}.floating-contact:focus-visible{outline:3px solid #172127;outline-offset:4px}@media(max-width:580px){.floating-contact{width:56px;height:56px;right:16px;bottom:16px;border-radius:18px}.floating-contact svg{width:27px;height:27px}.floating-contact:after{display:none}}
/* Final footer-area layout override */
footer .footer-expanded{grid-template-columns:1.35fr 1.15fr .8fr 1.05fr 1.25fr!important}
footer .footer-areas{display:grid!important;grid-template-columns:repeat(2,minmax(76px,1fr))!important;grid-auto-flow:row!important;column-gap:20px!important;row-gap:10px!important;align-content:start!important}
footer .footer-areas>strong{grid-column:1/-1!important}
footer .footer-areas>span{display:block!important;width:100%!important}
@media(max-width:1180px){footer .footer-expanded{grid-template-columns:1.25fr 1fr 1fr!important}footer .footer-areas{grid-template-columns:repeat(2,minmax(105px,1fr))!important}}
@media(max-width:760px){footer .footer-expanded{grid-template-columns:1fr 1fr!important}}
@media(max-width:520px){footer .footer-expanded{grid-template-columns:1fr!important}footer .footer-areas{grid-template-columns:repeat(2,minmax(100px,1fr))!important}}
/* Final floating contact size */
.floating-contact{width:58px!important;height:58px!important;border-radius:19px!important}
.floating-contact svg{width:27px!important;height:27px!important}
@media(max-width:580px){.floating-contact{width:50px!important;height:50px!important;border-radius:16px!important}.floating-contact svg{width:24px!important;height:24px!important}}
/* Seamless Gutter Installation imagery */
.service-grid .service-card:first-child:before{background-image:url('assets/Seamless-gutter-installation.webp?v=20260726')!important;background-size:cover!important;background-position:center!important}
.seamless-service-page .hero{background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.9) 43%,rgba(255,255,255,.24) 72%),url('assets/Seamless-gutter-installation.webp?v=20260726')!important;background-position:center!important;background-size:cover!important}
.service-grid .service-card:nth-child(2):before{background-image:url('assets/i2.webp?v=20260727')!important;background-size:cover!important;background-position:center!important}
.gutter-repair-page .hero{background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.9) 43%,rgba(255,255,255,.24) 72%),url('assets/i2.webp?v=20260727')!important;background-position:center!important;background-size:cover!important}
.service-grid .service-card:nth-child(3):before{background-image:url('assets/gr.webp?v=20260727')!important;background-size:cover!important;background-position:center!important}
.gutter-replacement-page .hero{background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.9) 43%,rgba(255,255,255,.24) 72%),url('assets/gr.webp?v=20260727')!important;background-position:center!important;background-size:cover!important}
.service-grid .service-card:nth-child(4):before{background-image:url('assets/gi.webp?v=20260727')!important;background-size:cover!important;background-position:center!important}
.gutter-guard-service-page .hero{background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.9) 43%,rgba(255,255,255,.24) 72%),url('assets/gi.webp?v=20260727')!important;background-position:center!important;background-size:cover!important}
.service-grid .service-card:nth-child(5):before{background-image:url('assets/ds2.webp?v=20260727')!important;background-size:cover!important;background-position:center!important}
.downspout-service-page .hero{background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.9) 43%,rgba(255,255,255,.24) 72%),url('assets/ds2.webp?v=20260727')!important;background-position:center!important;background-size:cover!important}
.service-grid .service-card:last-child:before{background-image:url('assets/gg.webp?v=20260727')!important;background-size:cover!important;background-position:center!important}

/* Small visual separation between FAQ card borders on service pages. */
#faq .faq-item{
  margin-bottom:12px!important;
}
#faq .faq-item:last-child{
  margin-bottom:0!important;
}
.gutter-cleaning-page .hero{background-image:linear-gradient(90deg,rgba(255,255,255,.98) 0%,rgba(255,255,255,.9) 43%,rgba(255,255,255,.24) 72%),url('assets/gg.webp?v=20260727')!important;background-position:center!important;background-size:cover!important}
