:root{--green:#0d392e;--green2:#164c3e;--cream:#f4f0e7;--paper:#fffdf8;--gold:#f4b860;--ink:#15221d;--muted:#657069;--line:rgba(13,57,46,.16)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 Arial,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;object-fit:cover}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.02;letter-spacing:-.04em;margin-top:0}h1{font-size:clamp(3.7rem,8vw,8.5rem)}h2{font-size:clamp(2.6rem,5vw,5.2rem)}h3{font-size:1.7rem}.skip{position:fixed;left:1rem;top:-5rem;background:white;padding:1rem;z-index:100}.skip:focus{top:1rem}.topbar{height:34px;background:var(--green);color:white;display:flex;justify-content:space-between;align-items:center;padding:0 5vw;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.nav{height:82px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 5vw;background:rgba(244,240,231,.96);position:sticky;top:0;z-index:50;border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.brand{font:700 1.55rem Georgia,serif;letter-spacing:-.04em}.brand i{color:var(--gold);font-style:normal}.nav nav{display:flex;gap:1.6rem;font-size:.9rem}.nav nav a:hover{color:#8a5525}.nav .quote{justify-self:end;background:var(--green);color:white;padding:.65rem 1rem;font-weight:bold}.menu{display:none;border:0;background:none;font-size:1rem}.mobile-nav{display:none}.hero{position:relative;min-height:760px;height:calc(100svh - 116px);color:white;display:flex;align-items:flex-end;overflow:hidden;padding:clamp(2rem,6vw,6rem)}.hero>img,.hero-wash{position:absolute;inset:0;width:100%;height:100%}.hero-wash{background:linear-gradient(90deg,rgba(5,34,27,.92),rgba(5,34,27,.48) 53%,rgba(5,34,27,.08))}.hero-copy{position:relative;max-width:920px;z-index:1}.hero h1{max-width:850px;margin:.4rem 0 1.4rem}.hero-copy>p:not(.kicker){font-size:1.25rem;max-width:680px;color:#f4f1e9}.kicker{text-transform:uppercase;letter-spacing:.17em;font-size:.72rem;font-weight:bold;color:#f5cf96}.kicker.dark{color:#8a5525}.kicker.light{color:#f5cf96}.buttons{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.btn{min-height:52px;padding:.85rem 1.25rem;display:inline-flex;align-items:center;justify-content:center;font-weight:bold;border:1px solid transparent}.btn.gold{background:var(--gold);color:var(--ink)}.btn.outline{border-color:rgba(255,255,255,.6);color:white}.btn.dark-btn{background:var(--green);color:white}.hero-proof{position:absolute;z-index:2;right:5vw;bottom:5vw;width:250px;border-top:1px solid rgba(255,255,255,.6);padding-top:1rem;display:flex;flex-direction:column}.hero-proof span{color:#ddd;font-size:.87rem}.proof{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line)}.proof div{padding:1.4rem 3vw;display:flex;flex-direction:column;border-right:1px solid var(--line)}.proof span{color:var(--muted);font-size:.85rem}.section{padding:clamp(5rem,9vw,9rem) clamp(1.25rem,6vw,7rem)}.intro{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.lead{font:1.45rem/1.5 Georgia,serif}.text-link{font-weight:bold;color:#915b2c}.services{background:var(--paper)}.section-head{display:flex;justify-content:space-between;align-items:end;gap:3rem;margin-bottom:3rem}.section-head h2{margin-bottom:0}.section-head>p{max-width:440px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.service-grid>a{min-height:280px;padding:1.7rem;position:relative;border-right:1px solid var(--line);border-bottom:1px solid var(--line);transition:.2s}.service-grid>a:hover{background:var(--green);color:white}.service-grid span{font-size:.73rem;color:#9a6535}.service-grid h3{margin:3rem 0 .8rem}.service-grid p{color:var(--muted)}.service-grid>a:hover p{color:#c8d2cd}.service-grid b{position:absolute;bottom:1.5rem;right:1.5rem;font-size:.82rem}.feature{display:grid;grid-template-columns:1.15fr .85fr;background:var(--green);color:white}.feature>img{width:100%;height:100%;min-height:650px}.feature>div{padding:clamp(3rem,7vw,8rem);align-self:center}.feature p{color:#cbd7d1}.feature li{padding:.5rem 0}.feature.reverse{grid-template-columns:.85fr 1.15fr;background:#173f35}.process{text-align:center}.process>div{max-width:800px;margin:auto}.process ol{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;text-align:left;margin:4rem 0 2rem}.process li{border-top:1px solid var(--line);padding-top:1.5rem}.process li span{color:#9a6535;font-size:.75rem}.process h3{margin:1.5rem 0 .6rem}.guarantee{background:#b86f3a;color:white;display:flex;justify-content:space-between;align-items:end;gap:3rem}.guarantee>div{display:flex;align-items:center;gap:2rem}.guarantee h2{margin:.5rem 0}.guarantee p{max-width:650px}.seal{border:1px solid white;border-radius:50%;width:100px;height:100px;display:grid;place-items:center;font:3rem Georgia,serif}.light-link{color:white}.area-list{display:grid;grid-template-columns:repeat(5,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.area-list a{padding:1.3rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.area-list a:hover{background:var(--gold)}.cta{background:var(--green);color:white;text-align:center}.cta h2{margin:.5rem 0}.cta .buttons{justify-content:center}.footer{background:#081d18;color:white;padding:4rem 6vw 2rem;display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}.footer>div{display:flex;flex-direction:column;gap:.5rem}.footer strong{color:#f2cc92;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em}.footer small{grid-column:1/-1;border-top:1px solid #315047;padding-top:1.2rem;color:#93a39d}.mobile-bar{display:none}.page-hero{background:var(--green);color:white;padding:7rem 6vw 5rem}.page-hero h1{max-width:980px;margin:.5rem 0 1rem;font-size:clamp(3.5rem,7vw,7rem)}.page-hero>div>p:not(.kicker){max-width:680px;font-size:1.15rem;color:#cfdbd6}.content{padding:5rem 6vw}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:8vw}.list{list-style:none;padding:0}.list li{padding:1rem 0;border-top:1px solid var(--line)}.list li:before{content:"✓";color:#a96532;margin-right:.8rem}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.price-card{background:var(--paper);padding:2rem;border:1px solid var(--line)}.price-card .price{font:2.5rem Georgia,serif;color:var(--green)}.book-wrap{display:grid;grid-template-columns:.8fr 1.2fr;gap:6vw}.estimator{background:white;padding:2rem;border:1px solid var(--line)}.field{margin-bottom:1rem}.field label{display:block;font-weight:bold;font-size:.86rem;margin-bottom:.4rem}.field input,.field select,.field textarea{width:100%;padding:.85rem;border:1px solid #aeb8b3;background:white;font:inherit}.estimate{background:var(--green);color:white;padding:1.5rem;margin:1.5rem 0}.estimate strong{font:2.5rem Georgia,serif;display:block}.note{font-size:.8rem;color:var(--muted)}.faq details{border-top:1px solid var(--line);padding:1rem 0}.faq summary{font-weight:bold;cursor:pointer}.legal{max-width:850px}.legal h2{font-size:2rem;margin-top:2.5rem}
@media(max-width:900px){.nav{grid-template-columns:1fr auto auto}.nav nav{display:none}.nav .quote{margin-right:1rem}.menu{display:block}.mobile-nav.open{display:flex;position:fixed;z-index:49;top:116px;left:0;right:0;background:var(--cream);padding:1.5rem;flex-direction:column}.mobile-nav a{padding:1rem;border-bottom:1px solid var(--line)}.hero-proof{display:none}.service-grid{grid-template-columns:repeat(2,1fr)}.area-list{grid-template-columns:repeat(2,1fr)}.price-grid{grid-template-columns:1fr 1fr}}
@media(max-width:680px){body{padding-bottom:60px}.topbar{justify-content:center}.topbar span:last-child{display:none}.nav{height:70px;padding:0 1.1rem}.nav .quote{display:none}.mobile-nav.open{top:104px}.hero{min-height:700px;height:calc(100svh - 104px);padding:2rem 1.25rem 3rem}.hero-wash{background:linear-gradient(0deg,rgba(5,34,27,.94),rgba(5,34,27,.18) 80%)}.hero h1{font-size:3.7rem}.hero-copy>p:not(.kicker){font-size:1.05rem}.btn{width:100%}.proof{grid-template-columns:1fr 1fr}.proof div{padding:1rem}.intro,.two-col,.book-wrap{grid-template-columns:1fr}.section-head{align-items:start;flex-direction:column}.service-grid,.price-grid{grid-template-columns:1fr}.service-grid>a{min-height:240px}.feature,.feature.reverse{grid-template-columns:1fr}.feature.reverse>img{order:-1}.feature>img{min-height:380px}.feature>div{padding:4rem 1.25rem}.process ol{grid-template-columns:1fr}.guarantee,.guarantee>div{flex-direction:column;align-items:flex-start}.area-list{grid-template-columns:1fr}.footer{grid-template-columns:1fr}.mobile-bar{display:grid;position:fixed;z-index:80;bottom:0;left:0;right:0;height:60px;grid-template-columns:1fr 1fr;background:var(--green);color:white}.mobile-bar a{display:grid;place-items:center;font-weight:bold}.mobile-bar a:last-child{background:var(--gold);color:var(--ink)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.brand-logo{display:flex;align-items:center;width:178px;height:74px;overflow:hidden}.brand-logo img{display:block;width:178px;height:auto;max-height:92px;object-fit:contain}.topbar a,.terms-inline{text-decoration:underline;text-underline-offset:3px;font-weight:700}.hero-proof .terms-inline{color:#fff;display:inline-block;margin-top:.35rem}.guarantee .terms-inline{color:#fff}.footer .brand-logo{width:190px;height:96px}.footer .brand-logo img{width:190px}
@media(max-width:680px){.brand-logo{width:144px;height:64px}.brand-logo img{width:144px}.topbar{font-size:.65rem}}
/* SweepAway redesign */
:root{--green:#102743;--green2:#193b5d;--cream:#f4f9fc;--paper:#fff;--gold:#d5ed79;--ink:#142942;--muted:#52667a;--line:#d5e2ec}
body{font-family:Arial,Helvetica,sans-serif;line-height:1.55;background:white}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;font-weight:750;letter-spacing:-.05em;line-height:1.08}h1{font-size:clamp(3rem,6.8vw,6.7rem)}h2{font-size:clamp(2.3rem,4.7vw,4.6rem)}h3{font-size:1.5rem}p{margin-top:0}.kicker,.kicker.dark{color:#3478ad;font-size:.76rem}.kicker.light{color:var(--gold)}.topbar{height:auto;min-height:30px;font-size:.72rem;letter-spacing:0;text-transform:none}.nav{display:flex;gap:2rem;background:#fff;height:88px}.nav nav{margin-left:auto;font-weight:700}.nav .quote{border-radius:4px}.brand-logo{width:125px;height:76px;flex:none}.brand-logo img{width:120px;height:75px;max-height:75px}.btn,.nav .quote{border-radius:4px}.btn.gold{background:var(--gold)}.btn.gold:hover{background:#e8f6aa}.text-link{color:var(--green);text-decoration:underline;text-underline-offset:4px}.section{padding:clamp(4rem,7vw,7rem) 5vw}.hero-new{background:#eaf5fc}.hero-inner{width:min(90%,1320px);margin:auto;min-height:640px;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5vw;padding:3rem 0 4rem}.hero-new h1{margin:.2rem 0 1.2rem;max-width:720px}.hero-new .lead{max-width:560px;color:#38536a;font-size:1.18rem}.hero-visual{height:540px;position:relative}.hero-visual img{height:100%;width:100%;border-radius:95px 5px 5px 5px;object-fit:cover}.hero-note{position:absolute;left:-2rem;bottom:2rem;background:var(--green);color:white;padding:1.2rem 1.4rem;max-width:240px;box-shadow:0 12px 30px #10274344}.hero-note strong{display:block;font-size:1.2rem}.hero-note span{display:block;font-size:.85rem}.micro{font-size:.86rem;color:var(--muted);margin-top:1rem}.trust-strip{background:var(--green);color:white}.trust-inner{width:min(90%,1320px);margin:auto;display:grid;grid-template-columns:repeat(3,1fr)}.trust-inner>div{padding:1.2rem 2rem;border-right:1px solid #406080}.trust-inner>div:first-child{padding-left:0}.trust-inner>div:last-child{border:0}.trust-inner strong,.trust-inner span{display:block}.trust-inner span{color:#c6d8e8;font-size:.85rem}.section-inner{max-width:1320px;margin:auto}.services{background:white}.service-grid{gap:1rem;border:0}.service-grid>a{background:#eaf5fc;border:0;border-radius:4px;min-height:275px;display:flex;flex-direction:column}.service-grid>a:hover{background:#dcecf8;color:var(--ink);transform:translateY(-4px)}.service-grid h3{margin:2.2rem 0 .6rem}.service-grid>a:hover p{color:var(--muted)}.service-grid b{position:static;margin-top:auto}.split-panel{display:grid;grid-template-columns:1fr 1fr;min-height:500px;background:var(--green);color:white}.split-panel>img,.split-panel>video{width:100%;height:100%;min-height:500px;object-fit:cover}.split-panel>div{padding:clamp(3rem,7vw,7rem);align-self:center}.split-panel p{max-width:580px;color:#d7e4ee}.split-panel.reverse>img{order:2}.step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}.step-grid>div{border-top:2px solid #3478ad;padding-top:1.2rem}.step-grid span{font-size:.78rem;color:#3478ad;font-weight:800}.step-grid h3{margin:1rem 0 .5rem}.step-grid p{color:var(--muted)}.band{background:var(--gold)}.band-inner{max-width:1320px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:2rem}.band h2{margin:.2rem 0}.band p{max-width:660px;margin:0}.area-tags{display:flex;flex-wrap:wrap;gap:.7rem}.area-tags a{border:1px solid var(--line);padding:.6rem 1rem;border-radius:50px;background:white;font-weight:700}.area-tags a:hover{background:var(--cream)}.cta{background:var(--green)}.cta h2{max-width:800px;margin:.4rem auto}.cta p{color:#d7e5ef}.footer{background:#0c1f37;grid-template-columns:1.7fr 1fr 1fr 1fr;padding:4rem 5vw 2rem}.footer strong{color:var(--gold)}.footer .brand-logo{background:white;border-radius:4px;width:138px;height:82px;padding:.3rem}.footer .brand-logo img{width:130px;height:74px}.page-hero{padding:5rem 5vw}.page-hero h1{font-size:clamp(3rem,6vw,6rem)}.price-card{background:var(--cream)}.estimate{background:var(--green)}.feature.reverse>img{order:2}.guarantee{background:#246cad}.area-list a:hover{background:var(--cream)}.list li:before{color:#3478ad}.legal h2{letter-spacing:-.03em}.proof{background:var(--cream)}.service-grid span{color:#3478ad}.hero{min-height:670px;height:auto}.hero-wash{background:linear-gradient(90deg,#0c1f37e8,#0c1f3733)}.hero-copy>p:not(.kicker){font-size:1.2rem}
@media(max-width:980px){.nav{grid-template-columns:none;justify-content:space-between}.nav nav{display:none}.mobile-nav.open{top:118px}.hero-inner{min-height:580px}.hero-visual{height:460px}.footer{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.nav{height:74px}.brand-logo{width:105px;height:68px}.brand-logo img{width:103px;height:64px}.mobile-nav.open{top:104px}.hero-inner{width:calc(100% - 2.5rem);min-height:0;display:flex;flex-direction:column;align-items:stretch;gap:2rem;padding:3rem 0}.hero-new h1{font-size:clamp(3rem,13vw,4.4rem)}.hero-visual{height:300px}.hero-visual img{border-radius:60px 5px 5px 5px}.hero-note{left:auto;right:-.4rem;bottom:-1rem;max-width:185px;padding:.7rem}.hero-note strong{font-size:1rem}.hero-note span{font-size:.78rem}.trust-inner{grid-template-columns:1fr;width:calc(100% - 2.5rem)}.trust-inner>div,.trust-inner>div:first-child{padding:.85rem 0;border-right:0;border-bottom:1px solid #406080}.trust-inner>div:last-child{border:0}.service-grid{grid-template-columns:1fr}.service-grid>a{min-height:230px}.service-grid h3{margin:1.5rem 0 .5rem}.split-panel,.step-grid{grid-template-columns:1fr}.split-panel>img,.split-panel>video{height:300px;min-height:0}.split-panel>div{padding:3rem 1.25rem}.split-panel.reverse>img{order:0}.band-inner{display:block}.band .btn{margin-top:1.5rem}.footer{grid-template-columns:1fr;padding:3rem 1.25rem 2rem}.page-hero{padding:4rem 1.25rem}.section{padding:4rem 1.25rem}}
/* Illustrated SweepAway direction, inspired by the supplied page layout. */
:root{--green:#102743;--green2:#496fa7;--cream:#edf6ef;--paper:#fffdf8;--gold:#d7eb81;--ink:#262628;--muted:#505c63;--line:#cbd8d1}
body{background:#f9fbf7;color:var(--ink)}h1,h2,h3{font-family:Arial,Helvetica,sans-serif;font-weight:500;letter-spacing:-.065em}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #506faf;outline-offset:3px}.topbar{background:#243c59;color:#fff}.nav{background:#edf6ef;border-bottom:1px solid #d5e3d9;box-shadow:none}.nav .quote,.btn.dark-btn{background:#273c52;color:#fff;border-radius:100px;padding:.9rem 1.45rem}.nav .quote:hover,.btn.dark-btn:hover{background:#4b6fa8}.nav nav a:hover{color:#4b6fa8}.footer{background:#1f3348}.footer .brand-logo{background:transparent;width:122px;height:100px;padding:0}.footer .brand-logo img{width:120px;height:95px}.footer strong{color:#d7eb81}.footer p{max-width:330px}.mobile-bar a:last-child{background:#d7eb81}
.template-home .nav{position:relative}.template-home .topbar{display:none}.template-home .nav nav{margin-left:auto}.template-home .nav .brand-logo{width:125px}.template-home .nav .brand-logo img{width:120px}.template-home .nav .quote{margin-left:1rem}
.template-home .eyebrow{font-size:.79rem;letter-spacing:.12em;text-transform:uppercase;color:#526fad;font-weight:800;margin:0 0 1.4rem}.template-home h1,.template-home h2{line-height:.98;margin:0}.template-home h1{font-size:clamp(5rem,10vw,10rem);letter-spacing:-.075em}.template-home h2{font-size:clamp(3.1rem,5.5vw,6.3rem)}.period{color:#5579b3}.template-home .link-button{font-weight:800;text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px;display:inline-flex;gap:.5rem;align-items:center}.template-home .link-button:hover{color:#4b6fa8}.template-home .hero-actions{display:flex;align-items:center;gap:2rem;flex-wrap:wrap;margin-top:2rem}.template-home .btn{font-size:1rem;white-space:nowrap}
.template-hero{background:#edf6ef;overflow:hidden}.template-hero-inner{max-width:1600px;margin:auto;min-height:660px;padding:5rem 4.5vw 3rem;display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:0}.template-hero-copy{position:relative;z-index:2}.template-hero .hero-intro{font-size:clamp(1.15rem,1.6vw,1.5rem);max-width:460px;margin:1.8rem 0 0;line-height:1.4}.template-hero-art{margin-left:-6%;align-self:end}.template-hero-art img{display:block;width:115%;max-width:none;height:auto;object-fit:contain}.hero-phone{font-size:.94rem;margin:1.6rem 0 0;color:#45535c}.hero-phone a{font-weight:800;text-decoration:underline;text-underline-offset:3px}.hero-bottom{border-top:1px solid #d4e1da;padding:1rem 4.5vw;display:flex;justify-content:space-between;gap:1rem;text-transform:uppercase;letter-spacing:.1em;font-size:.74rem;font-weight:800;color:#55626a}
.statement-section{background:#f8faf5;padding:clamp(5rem,9vw,9rem) 5vw}.statement-inner{max-width:1180px;margin:auto}.statement-inner h2{max-width:1000px}.statement-inner h2 em{font-family:Georgia,serif;font-weight:400;color:#5579b3;letter-spacing:-.06em}.statement-inner>p:last-child{font-size:1.2rem;max-width:620px;margin:2rem 0 0 44%;line-height:1.55}
.template-services{background:#fff;padding:clamp(5rem,8vw,8rem) 5vw}.template-section-heading{max-width:1320px;margin:0 auto 4rem;display:flex;justify-content:space-between;align-items:end;gap:3rem}.template-section-heading>p{max-width:350px;color:#59656a;margin:0}.template-service-list{max-width:1320px;margin:auto;border-top:1px solid #bccdc7}.template-service-list a{display:grid;grid-template-columns:70px minmax(0,1fr) 220px 35px;gap:1rem;align-items:center;padding:2.3rem .5rem;border-bottom:1px solid #bccdc7;transition:background .2s,padding .2s}.template-service-list a:hover{background:#edf6ef;padding-left:1.2rem}.service-index{font-size:.88rem;color:#5878a9;font-weight:800}.service-name{font-size:clamp(1.8rem,3.5vw,3.7rem);letter-spacing:-.055em;line-height:1.05}.service-detail{color:#5b6667}.service-arrow{font-size:1.7rem;text-align:right;color:#5579b3}
.template-feature{display:grid;grid-template-columns:1fr 1fr;background:#dfeaf5}.feature-photo{min-height:640px}.feature-photo img{width:100%;height:100%;object-fit:cover;display:block}.feature-copy{padding:clamp(3rem,7vw,8rem);align-self:center}.feature-copy h2{font-size:clamp(2.9rem,4.4vw,5.5rem)}.feature-copy>p:not(.eyebrow){font-size:1.1rem;max-width:580px;margin:2rem 0}.feature-points{display:grid;border-top:1px solid #aebfd0;margin:2.5rem 0}.feature-points span{padding:.7rem 0;border-bottom:1px solid #aebfd0;font-weight:700}
.template-promise{padding:clamp(5rem,8vw,8rem) 5vw;background:#253c56;color:#fff;display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:end}.template-promise .eyebrow{color:#d7eb81}.template-promise>div:last-child{font-size:1.18rem;max-width:500px}.template-promise a{display:block;text-decoration:underline;text-underline-offset:5px;margin-top:1.4rem;font-weight:700}.template-promise small a{font-size:.85rem;color:#d1dce3;font-weight:400}
.template-areas{padding:clamp(5rem,8vw,8rem) 5vw;background:#fff;text-align:center}.template-areas h2{max-width:900px;margin:0 auto}.template-areas>p:not(.eyebrow){max-width:680px;margin:2rem auto;line-height:1.6;font-size:1.1rem}.template-cta{padding:clamp(5rem,8vw,8rem) 5vw;background:#edf6ef}.template-cta h2{font-size:clamp(5rem,10vw,10rem)}.template-cta>p:not(.eyebrow){font-size:1.25rem;margin:2rem 0 0}
.page-hero{background:#e7f1ec;color:#273c52}.page-hero .kicker.light{color:#5375a5}.page-hero>div>p:not(.kicker){color:#415564}.page-hero h1{font-weight:500}.content,.section{background:#fff}.price-card{background:#f2f7f3}.estimate{background:#273c52}.cta{background:#253c56}.cta .btn.outline{border-color:#fff}
@media(max-width:980px){.template-hero-inner{min-height:580px}.template-home .mobile-nav.open{top:88px}.template-service-list a{grid-template-columns:45px minmax(0,1fr) 32px}.service-detail{display:none}.template-feature{grid-template-columns:1fr 1fr}.feature-photo{min-height:520px}}
@media(max-width:680px){.template-home .mobile-nav.open{top:74px}.template-hero-inner{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:3.5rem 1.25rem 0}.template-home h1{font-size:clamp(4.7rem,19vw,7rem)}.template-hero .hero-intro{font-size:1.15rem;margin-top:1.1rem}.template-home .hero-actions{align-items:stretch;gap:1.1rem}.template-home .hero-actions .btn{width:100%}.template-hero-art{margin:2.5rem -1.4rem 0}.template-hero-art img{width:115%;max-width:none}.hero-bottom{padding:1rem 1.25rem}.hero-bottom span:last-child{display:none}.statement-section,.template-services,.template-promise,.template-areas,.template-cta{padding:5rem 1.25rem}.statement-inner>p:last-child{margin:1.7rem 0 0;font-size:1.05rem}.template-section-heading{display:block;margin-bottom:2rem}.template-section-heading>p{margin:1rem 0 0}.template-service-list a{grid-template-columns:27px minmax(0,1fr) 24px;padding:1.6rem 0;gap:.55rem}.service-name{font-size:1.8rem}.service-index{font-size:.75rem}.service-arrow{font-size:1.3rem}.template-feature{grid-template-columns:1fr}.feature-photo{height:350px;min-height:0}.feature-copy{padding:4rem 1.25rem}.template-promise{grid-template-columns:1fr;gap:2rem}.template-promise>div:last-child{font-size:1.05rem}.template-cta h2{font-size:clamp(4.8rem,17vw,7rem)}.template-home .btn{white-space:normal}}

/* Scroll and entrance motion */
.scroll-progress{position:fixed;z-index:120;left:0;right:0;top:0;height:4px;background:#5879b2;transform:scaleX(0);transform-origin:left center;will-change:transform}
.motion-ready .template-hero-copy .eyebrow,.motion-ready .template-hero-copy h1,.motion-ready .template-hero-copy .hero-intro,.motion-ready .template-hero-copy .hero-actions,.motion-ready .template-hero-copy .hero-phone{opacity:0;transform:translateY(34px);animation:hero-rise .9s cubic-bezier(.2,.72,.2,1) forwards}
.motion-ready .template-hero-copy h1{animation-delay:.1s}.motion-ready .template-hero-copy .hero-intro{animation-delay:.22s}.motion-ready .template-hero-copy .hero-actions{animation-delay:.34s}.motion-ready .template-hero-copy .hero-phone{animation-delay:.44s}
.motion-ready .template-hero-art{opacity:0;transform:translateX(70px) scale(.96);animation:art-enter 1.25s .16s cubic-bezier(.16,.75,.18,1) forwards}
.motion-ready .hero-bottom{opacity:0;animation:fade-in .8s .8s ease forwards}
@keyframes hero-rise{to{opacity:1;transform:none}}@keyframes art-enter{to{opacity:1;transform:none}}@keyframes fade-in{to{opacity:1}}
.motion-ready .motion-item{will-change:transform,opacity,clip-path}
.motion-ready .reveal-up{opacity:0;transform:translateY(54px);clip-path:inset(0 0 35% 0);transition:opacity .85s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms),transform .85s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms),clip-path .85s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms)}
.motion-ready .reveal-up.is-visible{opacity:1;transform:none;clip-path:inset(0)}
.motion-ready .reveal-row{opacity:0;transform:translateX(-42px);transition:opacity .75s ease var(--reveal-delay,0ms),transform .75s cubic-bezier(.2,.75,.2,1) var(--reveal-delay,0ms),background .2s,padding .2s}
.motion-ready .reveal-row.is-visible{opacity:1;transform:none}
.reveal-image{overflow:hidden}.motion-ready .reveal-image{opacity:0;clip-path:inset(10% 7% 10% 7%);transform:scale(.97);transition:opacity 1s ease,clip-path 1.1s cubic-bezier(.2,.72,.2,1),transform 1.1s cubic-bezier(.2,.72,.2,1)}.motion-ready .reveal-image.is-visible{opacity:1;clip-path:inset(0);transform:none}.feature-photo img{will-change:transform;transition:transform .12s linear}
.period{display:inline-block;transform-origin:50% 82%;animation:period-breathe 2.8s 1.2s ease-in-out infinite}@keyframes period-breathe{0%,70%,100%{transform:scale(1)}80%{transform:scale(1.35) rotate(7deg)}}
.service-arrow,.link-button span,.btn span{display:inline-block;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.template-service-list a:hover .service-arrow,.link-button:hover span,.btn:hover span{transform:translate(5px,-5px) rotate(4deg)}
.service-index{display:inline-block;transition:transform .35s ease,color .35s ease}.template-service-list a:hover .service-index{transform:rotate(-8deg) scale(1.15);color:#263c55}
.eyebrow:before{content:'';display:inline-block;width:0;height:1px;background:currentColor;vertical-align:middle;margin-right:0;transition:width .7s ease .25s,margin-right .7s ease .25s}.is-visible.eyebrow:before,.template-hero-copy .eyebrow:before{width:28px;margin-right:10px}
@media(max-width:680px){.motion-ready .reveal-up{transform:translateY(34px)}.motion-ready .reveal-row{transform:translateX(-20px)}.scroll-progress{height:3px}}
@media(prefers-reduced-motion:reduce){.scroll-progress{display:none}.period{animation:none}.motion-item,.template-hero-copy>*,.template-hero-art,.hero-bottom{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important;animation:none!important}.feature-photo img{transform:none!important}}

/* Animated Victoria service map */
.areas-map-section{padding:clamp(4rem,7vw,7rem) 5vw;background:#fff}.areas-intro{max-width:1320px;margin:0 auto 3rem;display:grid;grid-template-columns:1.15fr .85fr;gap:6vw;align-items:end}.areas-intro h2{margin:0;max-width:700px}.areas-intro>p{max-width:520px;color:#536675;margin:0;font-size:1.08rem}.service-map{max-width:1320px;margin:auto;background:#edf6ef;border:1px solid #ccddd3;border-radius:32px;padding:1rem;overflow:hidden;box-shadow:0 28px 80px rgba(31,51,72,.09)}.service-map svg{display:block;width:100%;height:auto;min-height:420px}.victoria-overview>path:first-child{fill:url(#map-fill);stroke:#5475a5;stroke-width:2}.victoria-overview>text{fill:#5475a5;font-size:17px;font-weight:800;letter-spacing:.16em}.overview-pulse{fill:none;stroke:#5879b2;stroke-width:3;transform-box:fill-box;transform-origin:center}.overview-core,.map-key circle{fill:#253c56}.inset-link{fill:none;stroke:#8aa3b6;stroke-width:2;stroke-dasharray:7 8}.inset-bg{fill:#fff;stroke:#c5d6dd;stroke-width:2}.inset-land{fill:#dfeaf5;stroke:#5475a5;stroke-width:2}.inset-title{fill:#5579b3;font-size:13px;font-weight:800;letter-spacing:.14em}.service-route{fill:none;stroke:#90aa43;stroke-width:5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:12 9}.map-marker line{stroke:#70869a;stroke-width:1.5}.marker-wave{fill:rgba(213,235,121,.38);stroke:#739329;stroke-width:2;transform-box:fill-box;transform-origin:center}.marker-dot{fill:#253c56;stroke:#fff;stroke-width:3}.map-marker text{font-size:14px;font-weight:800;fill:#253c56;paint-order:stroke;stroke:#fff;stroke-width:4;stroke-linejoin:round}.map-key text{font-size:13px;fill:#52667a}.map-caption{display:flex;justify-content:space-between;gap:1rem;padding:.4rem 1rem .8rem;color:#52667a;font-size:.85rem}.map-caption span:first-child{font-weight:800;color:#253c56}.map-caption i{display:inline-block;width:9px;height:9px;border-radius:50%;background:#253c56;margin-right:.4rem}.map-area-list{max-width:1320px;margin:2rem auto 0;grid-template-columns:repeat(3,1fr);border-color:#cbd8d1}.map-area-list a{background:#fff;transition:background .2s,color .2s,transform .25s}.map-area-list a:hover{background:#253c56;color:#fff;transform:translateY(-3px)}
.motion-ready .service-map:not(.map-active) .victoria-overview>path:first-child{opacity:0;transform:scale(.94);transform-origin:center}.motion-ready .service-map.map-active .victoria-overview>path:first-child{animation:map-arrive 1s cubic-bezier(.2,.72,.2,1) both}.motion-ready .service-map:not(.map-active) .inset-bg,.motion-ready .service-map:not(.map-active) .inset-land{opacity:0;transform:translateX(28px)}.motion-ready .service-map.map-active .inset-bg,.motion-ready .service-map.map-active .inset-land{animation:inset-arrive .8s .35s ease both}.motion-ready .service-map:not(.map-active) .service-route{stroke-dasharray:900;stroke-dashoffset:900}.motion-ready .service-map.map-active .service-route{animation:route-draw 2s .85s cubic-bezier(.3,.7,.2,1) both}.motion-ready .service-map:not(.map-active) .map-marker{opacity:0}.motion-ready .service-map.map-active .map-marker{animation:marker-arrive .55s calc(1.2s + var(--marker-delay)) ease both}.motion-ready .service-map.map-active .marker-wave{animation:marker-pulse 2.2s calc(1.7s + var(--marker-delay)) ease-out infinite}.motion-ready .service-map.map-active .overview-pulse{animation:overview-pulse 2.4s .6s ease-out infinite}.motion-ready .service-map:not(.map-active) .inset-link{stroke-dashoffset:180}.motion-ready .service-map.map-active .inset-link{animation:link-draw 1s .65s ease both}
@keyframes map-arrive{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}@keyframes inset-arrive{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:none}}@keyframes route-draw{to{stroke-dashoffset:0}}@keyframes link-draw{from{stroke-dasharray:180;stroke-dashoffset:180}to{stroke-dasharray:180;stroke-dashoffset:0}}@keyframes marker-arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes marker-pulse{0%{opacity:.9;transform:scale(.45)}70%,100%{opacity:0;transform:scale(1.8)}}@keyframes overview-pulse{0%{opacity:.85;transform:scale(.5)}75%,100%{opacity:0;transform:scale(2.1)}}
@media(max-width:800px){.areas-intro{grid-template-columns:1fr;gap:1.3rem}.service-map{border-radius:20px;padding:.35rem}.service-map svg{min-height:0}.map-area-list{grid-template-columns:1fr 1fr}.map-caption{font-size:.76rem}.map-caption span:last-child{display:none}.map-marker text{font-size:15px}.areas-map-section{padding:4rem 1.25rem}}
@media(max-width:520px){.service-map{overflow-x:auto}.service-map svg{width:760px;max-width:none;height:auto}.map-area-list{grid-template-columns:1fr}.map-caption{position:sticky;left:0;width:100%}}
@media(prefers-reduced-motion:reduce){.service-map *{animation:none!important;opacity:1!important;transform:none!important;stroke-dashoffset:0!important}}
