

:root{--navy:#071724;--navy-2:#0b2a40;--blue:#2b75a8;--electric:#88b9d8;--ink:#111820;--slate:#59656e;--mist:#f3f1ed;--line:#dcd9d2;--white:#fff;--green:#218b5b;--font:Arial,"Helvetica Neue",sans-serif;--serif:Georgia,"Times New Roman",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--white);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}img{max-width:100%;display:block}.topbar{height:88px;padding:0 max(3vw,22px);display:flex;align-items:center;justify-content:space-between;background:var(--navy);color:#fff;position:relative;z-index:20}.brand{width:230px;display:block}.brand img{width:100%;height:54px;object-fit:contain;object-position:left center}.topbar nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:700}.topbar nav>a:not(.nav-cta){color:#d4e0e9}.topbar nav>a:hover{color:#fff}.nav-cta{background:var(--blue);color:#fff!important;padding:13px 18px;border-radius:7px;box-shadow:0 10px 24px #0002}.hero{min-height:690px;display:grid;grid-template-columns:1.06fr .94fr;background:var(--mist);overflow:hidden}.hero-copy{padding:90px max(7vw,28px);align-self:center}.eyebrow{margin:0;color:var(--blue);font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}h1,h2,h3,p{overflow-wrap:break-word}h1{max-width:790px;margin:18px 0 26px;font-size:clamp(48px,6.2vw,92px);line-height:.94;letter-spacing:-.065em}h1 em{color:var(--blue);font-style:normal}.lead{max-width:650px;color:#465666;font-size:19px;line-height:1.65}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 23px;border:0;border-radius:8px;font-size:14px;font-weight:850;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button.primary{color:#fff;background:var(--blue);box-shadow:0 13px 30px #1677c833}.button.secondary{border:1px solid #bccad4;background:#fff}.trust-line{display:flex;flex-wrap:wrap;gap:24px;padding:0;margin:36px 0 0;list-style:none;color:#53606b;font-size:13px;font-weight:750}.trust-line li::before{content:"✓";color:var(--blue);margin-right:7px}.hero-visual{position:relative;min-height:590px;padding:56px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:linear-gradient(145deg,#020c16,#0a2d4c);isolation:isolate;overflow:hidden}.hero-visual::before{content:"";position:absolute;inset:0;z-index:-2;background:radial-gradient(circle at 78% 22%,#259eea55,transparent 26%),linear-gradient(120deg,transparent 20%,#ffffff0d 20.5%,transparent 21%)}.hero-logo-wrap{position:absolute;top:54px;left:54px;width:min(410px,72%);opacity:.98}.shine{position:absolute;width:360px;height:360px;right:-75px;top:70px;border:1px solid #40b3ff50;border-radius:50%;box-shadow:0 0 0 65px #38a9ff0a,0 0 0 130px #38a9ff08}.water-mark{position:absolute;right:-35px;bottom:115px;color:#fff;opacity:.035;font-size:clamp(110px,14vw,220px);font-weight:950;letter-spacing:-.09em;transform:rotate(-90deg);transform-origin:center}.hero-visual>p{position:relative;color:var(--electric);font-size:12px;font-weight:900;letter-spacing:.18em}.hero-visual>strong{position:relative;max-width:510px;font-size:clamp(39px,4.2vw,68px);line-height:.98;letter-spacing:-.055em}.service-strip{display:grid;grid-template-columns:repeat(3,1fr) 1.15fr;max-width:1240px;margin:-42px auto 0;position:relative;z-index:4;background:#fff;border-radius:14px;box-shadow:0 22px 70px #071a2d1b;overflow:hidden}.service-strip>*{min-height:155px;padding:28px;border-right:1px solid #e3e9ed;display:flex;flex-direction:column;justify-content:center}.service-strip span,.service-strip small{color:#61707c}.service-strip strong{margin:7px 0;font-size:34px;letter-spacing:-.04em}.service-strip>a{color:#fff;background:var(--blue);font-size:17px;font-weight:850;flex-direction:row;align-items:center;justify-content:space-between}.section{max-width:1240px;margin:0 auto;padding:110px 28px}.section-heading h2,.coverage-copy h2,.booking-copy h2,.final-cta h2{margin:14px 0 22px;font-size:clamp(38px,5vw,66px);line-height:.98;letter-spacing:-.055em}.section-heading>p:last-child,.coverage-copy>p,.booking-copy>p,.final-cta>p{color:var(--slate);font-size:17px;line-height:1.7}.section-heading.narrow{max-width:780px}.intro-section{display:grid;grid-template-columns:1.08fr .92fr;gap:100px;align-items:end}.intro-copy{padding-bottom:6px}.intro-copy>p{margin:0 0 28px;color:var(--slate);font-size:20px;line-height:1.75}.text-link{display:inline-flex;gap:22px;color:var(--blue);font-weight:850;border-bottom:1px solid #9dc9eb;padding-bottom:7px}.services-section{max-width:none;background:var(--navy);color:#fff;padding-left:max(calc((100vw - 1184px)/2),28px);padding-right:max(calc((100vw - 1184px)/2),28px)}.services-section .section-heading>p:last-child{color:#b7c7d3}.service-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:52px}.service-card{min-height:390px;padding:30px;display:flex;flex-direction:column;color:var(--ink);background:#fff;border-radius:12px}.card-number{color:#9bb0bf;font-size:12px;font-weight:850;letter-spacing:.12em}.service-card>div{margin:auto 0}.service-card>div>p{margin:0;color:var(--slate);font-weight:700}.service-card h3{margin:7px 0;font-size:42px;letter-spacing:-.05em}.service-card>div>span,.service-card>p{color:var(--slate)}.service-card>p{min-height:50px;line-height:1.55}.service-card>a{margin-top:24px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--blue);font-weight:850}.service-caveat{max-width:880px;margin:28px 0 0;color:#9eb2c1;font-size:13px;line-height:1.65}.process-section{padding-top:120px}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:50px 0 0;padding:0;list-style:none}.process-grid li{padding:32px;border:1px solid var(--line);border-radius:12px}.process-grid li>span{width:40px;height:40px;display:grid;place-items:center;color:#fff;background:var(--blue);border-radius:50%;font-size:13px;font-weight:900}.process-grid h3{margin:54px 0 10px;font-size:23px;letter-spacing:-.03em}.process-grid p{margin:0;color:var(--slate);line-height:1.6}.coverage-section{max-width:none;display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;background:var(--mist);padding-left:max(calc((100vw - 1184px)/2),28px);padding-right:max(calc((100vw - 1184px)/2),28px)}.coverage-copy{align-self:center}.coverage-copy .button{margin-top:18px}.area-list{background:#fff;border-radius:12px;overflow:hidden}.area-list>a{position:relative;min-height:78px;padding:0 26px;display:grid;grid-template-columns:1fr 1fr auto;align-items:center;border-bottom:1px solid var(--line)}.area-list>a:last-child{border-bottom:0}.area-list>a:hover{background:#f7fbfe}.area-list span{font-size:18px;font-weight:850}.area-list small{color:var(--slate)}.area-list b{color:var(--blue)}.proof-section{display:grid;grid-template-columns:1.12fr .88fr;gap:90px;align-items:center}.instagram-card{padding:28px;display:flex;align-items:center;gap:20px;background:var(--navy);color:#fff;border-radius:14px}.instagram-card img{width:86px;height:86px;border-radius:50%}.instagram-card span{display:flex;flex-direction:column;gap:6px}.instagram-card small{color:#9eb2c1}.instagram-card strong{font-size:18px}.instagram-card>b{margin-left:auto;font-size:22px;color:var(--electric)}.booking-section{max-width:none;display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;color:#fff;background:linear-gradient(145deg,var(--navy),var(--navy-2));padding-left:max(calc((100vw - 1184px)/2),28px);padding-right:max(calc((100vw - 1184px)/2),28px)}.booking-copy .eyebrow{color:var(--electric)}.booking-copy>p{color:#b8c7d2}.availability{margin-top:38px;display:grid;gap:12px}.availability span{display:flex;justify-content:space-between;padding:14px 0;border-bottom:1px solid #ffffff24;color:#b8c7d2}.availability strong{color:#fff}.booking-builder{align-self:center;padding:30px;display:grid;grid-template-columns:1fr 1fr;gap:18px;background:#fff;color:var(--ink);border-radius:14px;box-shadow:0 25px 60px #0003}.field-group{display:flex;flex-direction:column;gap:8px}.field-group label{font-size:13px;font-weight:800}.field-group input,.field-group select,.field-group textarea{width:100%;padding:14px;border:1px solid #cfdbe3;border-radius:7px;background:#f9fbfc;color:var(--ink);outline:0}.field-group input:focus,.field-group select:focus,.field-group textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1677c819}.field-wide{grid-column:1/-1}.booking-builder .whatsapp-button{grid-column:1/-1;background:var(--green);color:#fff;gap:12px}.form-note{grid-column:1/-1;margin:0;color:#6d7c87;font-size:11px;line-height:1.55}.booking-builder.compact{grid-template-columns:1fr;padding:25px}.booking-builder.compact .whatsapp-button,.booking-builder.compact .form-note{grid-column:auto}.faq-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{padding:24px 0;display:flex;justify-content:space-between;gap:30px;cursor:pointer;font-size:17px;font-weight:800;list-style:none}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{color:var(--blue);font-size:24px}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{margin:0;padding:0 44px 24px 0;color:var(--slate);line-height:1.65}.final-cta{padding:110px 28px;text-align:center;background:var(--mist)}.final-cta h2{font-size:clamp(48px,7vw,90px)}.final-cta>p{margin:0 auto 30px;max-width:640px}.site-footer{padding:74px max(calc((100vw - 1184px)/2),28px) 30px;color:#c3d0d9;background:#020b13}.footer-grid{display:grid;grid-template-columns:1.5fr .7fr .7fr;gap:70px}.footer-logo{width:270px}.footer-grid>div:first-child p{max-width:420px;color:#8194a3;line-height:1.65}.footer-grid h2{margin:0 0 18px;color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.13em}.footer-grid ul{margin:0;padding:0;list-style:none;display:grid;gap:12px}.footer-grid li a{color:#9caebc}.footer-bottom{margin-top:55px;padding-top:25px;border-top:1px solid #ffffff15;display:flex;justify-content:space-between;color:#617584;font-size:12px}.whatsapp-rail{position:fixed;right:20px;bottom:20px;z-index:30;padding:13px 17px;display:flex;flex-direction:column;color:#fff;background:var(--green);border-radius:9px;box-shadow:0 14px 35px #0004}.whatsapp-rail span{font-size:10px;letter-spacing:.12em;text-transform:uppercase}.whatsapp-rail strong{font-size:14px}.subpage{background:#fff}.area-hero{min-height:610px;padding:90px max(calc((100vw - 1184px)/2),28px);display:grid;grid-template-columns:1.15fr .85fr;gap:100px;align-items:center;background:var(--mist)}.area-hero h1,.service-hero h1{font-size:clamp(50px,6vw,82px)}.breadcrumb{display:flex;gap:9px;color:#71808b;font-size:12px}.breadcrumb a{color:var(--blue)}.area-content{display:grid;grid-template-columns:1.3fr .7fr;gap:110px}.area-content>div>p{color:var(--slate);font-size:18px;line-height:1.75}.area-content aside{padding:28px;background:var(--mist);border-radius:12px;display:flex;flex-direction:column;gap:0}.area-content aside strong{margin-bottom:14px}.area-content aside span{padding:12px 0;border-bottom:1px solid #d6e1e8;color:var(--slate)}.local-services{max-width:none;color:#fff;background:var(--navy);padding-left:max(calc((100vw - 1184px)/2),28px);padding-right:max(calc((100vw - 1184px)/2),28px)}.area-links{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.service-hero{padding:100px max(calc((100vw - 1184px)/2),28px);background:var(--mist)}.service-hero .lead{max-width:760px}.service-hero .button{margin-top:18px}.detailed-services{display:grid;gap:0}.detailed-services article{padding:52px 0;display:grid;grid-template-columns:80px 1fr auto;gap:40px;align-items:start;border-bottom:1px solid var(--line)}.detailed-services article>span{color:#91a4b2;font-weight:850}.detailed-services article h2{margin:8px 0 15px;font-size:clamp(34px,4vw,54px)}.detailed-services article p:not(.eyebrow){max-width:650px;color:var(--slate);line-height:1.7}.detailed-services article>strong{font-size:54px;letter-spacing:-.05em}.detailed-services article>strong small{display:block;color:var(--slate);font-size:11px;text-align:right;letter-spacing:.08em;text-transform:uppercase}.honest-scope{display:grid;grid-template-columns:1fr 1fr;gap:100px;background:var(--mist);max-width:none;padding-left:max(calc((100vw - 1184px)/2),28px);padding-right:max(calc((100vw - 1184px)/2),28px)}.honest-scope>div:last-child{color:var(--slate);font-size:17px;line-height:1.7}.honest-scope li{margin:9px 0}.legal-page{max-width:840px;margin:auto;padding:90px 28px 120px}.legal-page h1{font-size:clamp(48px,7vw,76px)}.legal-page h2{margin:42px 0 12px;font-size:28px;letter-spacing:-.03em}.legal-page p{color:var(--slate);line-height:1.75}
@media(max-width:960px){.topbar nav>a:not(.nav-cta){display:none}.hero,.area-hero{grid-template-columns:1fr}.hero-copy{padding:72px 28px}.hero-visual{min-height:460px}.service-strip{margin:0;border-radius:0;grid-template-columns:1fr 1fr}.service-strip>*{min-height:135px}.intro-section,.proof-section,.booking-section,.faq-section,.coverage-section,.area-content,.area-links,.honest-scope{grid-template-columns:1fr;gap:50px}.service-cards,.process-grid{grid-template-columns:1fr}.service-card{min-height:330px}.coverage-section{padding-top:80px;padding-bottom:80px}.area-hero{gap:45px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:620px){.topbar{height:74px;padding:0 16px}.brand{width:172px}.brand img{height:43px}.nav-cta{font-size:12px;padding:11px 12px}.hero-copy{padding:58px 20px 64px}.hero-visual{min-height:370px;padding:28px 22px}.hero-logo-wrap{top:30px;left:24px;width:70%}.service-strip{grid-template-columns:1fr 1fr}.service-strip>*{min-height:125px;padding:19px}.service-strip>a{font-size:14px}.section{padding:78px 20px}.service-cards{margin-top:35px}.service-card{padding:25px}.process-grid li{padding:25px}.area-list>a{padding:0 18px;grid-template-columns:1fr auto}.area-list small{display:none}.booking-builder{grid-template-columns:1fr;padding:20px}.booking-builder .whatsapp-button,.form-note,.field-wide{grid-column:auto}.availability span{font-size:13px}.area-hero,.service-hero{padding:65px 20px}.area-hero h1,.service-hero h1{font-size:48px}.detailed-services article{grid-template-columns:42px 1fr;padding:38px 0}.detailed-services article>strong{grid-column:2;font-size:42px}.detailed-services article>strong small{text-align:left}.footer-grid{grid-template-columns:1fr;gap:42px}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:grid;gap:8px}.whatsapp-rail{right:12px;bottom:12px}.proof-section{padding-top:78px;padding-bottom:78px}.instagram-card{padding:18px}.instagram-card img{width:64px;height:64px}.instagram-card strong{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Homepage refinement: one focused hero, direct quote form and real proof links. */
.hero{min-height:660px;padding:76px max(calc((100vw - 1184px)/2),28px);grid-template-columns:1.05fr .95fr;gap:82px;align-items:center;color:#fff;background:radial-gradient(circle at 85% 5%,#1677c84d,transparent 28%),linear-gradient(145deg,#03111f,var(--navy-2));overflow:visible}.hero-copy{padding:0}.hero h1{max-width:700px;margin:18px 0 26px;font-size:clamp(50px,5.7vw,78px);line-height:.98;letter-spacing:-.058em}.hero h1 em{color:var(--electric)}.hero .lead{max-width:610px;color:#c0d0dc}.hero .button.secondary{color:#fff;background:transparent;border-color:#ffffff4d}.hero .trust-line{color:#d1dee7}.hero-quote{padding:32px;background:#fff;color:var(--ink);border-radius:15px;box-shadow:0 28px 80px #0005}.hero-quote>h2{margin:8px 0 22px;font-size:30px;letter-spacing:-.04em}.hero-quote .booking-builder{padding:0;box-shadow:none}.service-strip{margin:0 auto;border-radius:0 0 14px 14px}.proof-links{display:grid;gap:12px}.proof-card{min-height:104px;padding:20px 22px;display:flex;align-items:center;gap:18px;color:#fff;background:var(--navy);border-radius:12px}.proof-card:hover{background:var(--navy-2)}.proof-card img,.proof-icon{width:60px;height:60px;flex:0 0 60px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#1769d2;font-size:28px;font-weight:900}.proof-card span:not(.proof-icon){display:flex;flex-direction:column;gap:5px}.proof-card small{color:#9eb2c1}.proof-card strong{line-height:1.3}.proof-card b{margin-left:auto;color:var(--electric);font-size:22px}.guide-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:46px}.guide-grid>a{min-height:310px;padding:28px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.guide-grid>a:hover{transform:translateY(-3px);border-color:#9ec8e8;box-shadow:0 18px 45px #071a2d12}.guide-grid span{color:var(--blue);font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.guide-grid h3{margin:48px 0 12px;font-size:25px;line-height:1.08;letter-spacing:-.035em}.guide-grid p{margin:0 0 28px;color:var(--slate);line-height:1.6}.guide-grid b{margin-top:auto;color:var(--blue);font-size:14px}.guides-link{margin-top:30px}

/* Guide hub and long-form article pages. */
.guide-hub-hero,.article-hero{padding:86px max(calc((100vw - 1184px)/2),28px);background:var(--mist)}.guide-hub-hero .breadcrumb,.article-hero .breadcrumb{margin-bottom:56px}.guide-hub-hero h1,.article-hero h1{margin:18px 0 24px;font-size:clamp(48px,6vw,80px);line-height:.98;letter-spacing:-.057em}.guide-hub-hero h1 em{color:var(--blue);font-style:normal}.guide-hub-list{padding-top:70px}.guide-hub-list article{padding:42px 0;display:grid;grid-template-columns:65px 1fr auto;gap:36px;align-items:center;border-bottom:1px solid var(--line)}.guide-hub-list article>span{align-self:start;color:#91a4b2;font-size:12px;font-weight:900}.guide-hub-list h2{margin:7px 0 11px;font-size:clamp(28px,3.4vw,44px);line-height:1.05;letter-spacing:-.045em}.guide-hub-list article div>p:last-child{max-width:710px;margin:0;color:var(--slate);line-height:1.65}.article-hero{padding-bottom:92px}.article-hero h1{max-width:900px}.article-hero .lead{max-width:780px}.article-layout{display:grid;grid-template-columns:280px minmax(0,720px);justify-content:space-between;gap:90px;padding-top:82px}.article-layout aside{height:max-content;position:sticky;top:28px;padding:24px;background:var(--mist);border-radius:10px}.article-layout aside strong{display:block;margin-bottom:12px;font-size:13px}.article-layout aside a{padding:10px 0;display:block;border-bottom:1px solid #d7e2e8;color:var(--slate);font-size:13px;line-height:1.35}.article-layout aside a:last-child{border-bottom:0}.article-copy>section{padding:0 0 58px;margin:0 0 58px;border-bottom:1px solid var(--line);scroll-margin-top:28px}.article-copy>section>span{color:var(--blue);font-size:11px;font-weight:900;letter-spacing:.12em}.article-copy h2{margin:10px 0 22px;font-size:clamp(30px,3.7vw,45px);line-height:1.08;letter-spacing:-.045em}.article-copy p,.article-copy li{color:var(--slate);font-size:17px;line-height:1.78}.article-copy ul{padding-left:22px}.article-copy li{margin:8px 0}.article-cta{padding:34px;background:var(--navy);color:#fff;border-radius:13px}.article-cta h2{margin:10px 0 15px}.article-cta>p:not(.eyebrow){color:#b9c9d5}.article-cta .button{margin-top:10px}

@media(max-width:960px){.hero{padding:65px 28px;grid-template-columns:1fr;gap:46px}.hero-copy{padding:0}.hero-quote{max-width:680px}.guide-grid{grid-template-columns:1fr}.guide-grid>a{min-height:0}.guide-grid h3{margin-top:28px}.guide-hub-list article{grid-template-columns:45px 1fr}.guide-hub-list article .button{grid-column:2;justify-self:start}.article-layout{grid-template-columns:1fr;gap:42px}.article-layout aside{position:static}.article-layout aside a{display:none}.article-layout aside strong{margin:0}}
@media(max-width:620px){.hero{padding:52px 20px;gap:38px}.hero-copy{padding:0}.hero h1{font-size:49px}.hero-quote{padding:20px}.hero-quote>h2{font-size:25px}.service-strip{grid-template-columns:1fr 1fr}.proof-card{padding:16px;gap:13px}.proof-card img,.proof-icon{width:48px;height:48px;flex-basis:48px}.proof-card strong{font-size:13px}.proof-card b{display:none}.guide-hub-hero,.article-hero{padding:58px 20px}.guide-hub-hero .breadcrumb,.article-hero .breadcrumb{margin-bottom:42px}.guide-hub-list article{padding:34px 0;grid-template-columns:1fr;gap:14px}.guide-hub-list article>span{display:none}.guide-hub-list article .button{grid-column:auto}.article-layout{padding-top:58px}.article-copy>section{padding-bottom:44px;margin-bottom:44px}.article-cta{padding:25px}}

/* Premium maintenance-plan brand system. */
h1,h2{font-family:var(--serif);font-weight:400}.topbar{height:94px;border-bottom:1px solid #ffffff12}.brand{width:248px}.brand img{height:58px}.nav-cta,.button{border-radius:4px;letter-spacing:.01em}.button.primary,.nav-cta{background:var(--blue)}.eyebrow{color:#397eaa}.hero{min-height:800px;background:radial-gradient(circle at 82% 9%,#356e9140,transparent 29%),linear-gradient(145deg,#030d15,#0a2234);gap:76px}.hero h1{font-size:clamp(58px,6vw,86px);line-height:.96;letter-spacing:-.045em}.hero h1 em{color:#a7cce3}.hero .lead{font-size:20px;line-height:1.7}.hero-quote{padding:34px;border:1px solid #fff3;border-radius:7px}.hero-quote>h2{font-family:var(--serif);font-weight:400;font-size:34px}.premium-strip{border-radius:0;background:#faf9f6}.premium-strip strong{font-family:var(--serif);font-weight:400}.premium-intro{padding-top:125px}.section-heading h2,.coverage-copy h2,.booking-copy h2,.final-cta h2{letter-spacing:-.04em}.services-section{background:#071724}.services-section .eyebrow,.booking-section .eyebrow,.local-services .eyebrow{color:#8ebbd5}

.plan-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:56px}.plan-card{min-height:390px;padding:34px;display:flex;flex-direction:column;border:1px solid #ffffff25;border-radius:6px;background:#ffffff09}.plan-card.featured{color:var(--ink);background:#f5f1e9;border-color:#f5f1e9}.plan-card>span{color:#8ebbd5;font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.plan-card.featured>span{color:var(--blue)}.plan-card h3{max-width:270px;margin:74px 0 12px;font-family:var(--serif);font-size:36px;font-weight:400;line-height:1.04}.plan-card .plan-price{margin:0 0 20px;color:#8ebbd5;font-size:17px;font-weight:900}.plan-card.featured .plan-price{color:var(--blue)}.plan-card>p:last-child{margin-top:auto;color:#afc0cc;line-height:1.65}.plan-card.featured>p:last-child{color:var(--slate)}

.pricing-section{max-width:1280px}.price-table-wrap{margin-top:48px;overflow-x:auto;border:1px solid var(--line);border-radius:6px}.price-table{width:100%;min-width:860px;border-collapse:collapse;background:#fff}.price-table th,.price-table td{padding:24px 20px;text-align:left;border-bottom:1px solid var(--line)}.price-table thead th{color:#72808a;background:#f6f5f1;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.price-table tbody tr:last-child>*{border-bottom:0}.price-table tbody th{width:39%}.price-table tbody th strong,.price-table tbody th small{display:block}.price-table tbody th strong{font-size:16px}.price-table tbody th small{margin-top:6px;color:var(--slate);font-weight:400;line-height:1.4}.price-table td{font-family:var(--serif);font-size:24px}.pricing-notes{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:20px}.pricing-notes p{margin:0;padding:22px;background:var(--mist);color:var(--slate);font-size:14px;line-height:1.65}

.scope-section{max-width:none;padding-left:max(calc((100vw - 1184px)/2),28px);padding-right:max(calc((100vw - 1184px)/2),28px);background:var(--mist)}.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:50px}.scope-grid article{padding:38px;background:#fff;border:1px solid var(--line);border-radius:6px}.scope-grid article>span{color:var(--blue);font-size:11px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.scope-grid h2,.scope-grid h3{margin:54px 0 24px;font-family:var(--serif);font-size:40px;font-weight:400}.included-list{margin:0;padding:0;list-style:none}.included-list li{padding:13px 0;border-bottom:1px solid var(--line);color:var(--slate)}.included-list li::before{content:"✓";margin-right:11px;color:var(--blue);font-weight:900}.included-list li:last-child{border-bottom:0}.add-ons{margin-top:60px}.add-on-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-top:20px}.add-on-grid>div{min-height:120px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:5px}.add-on-grid span{color:var(--slate);font-size:13px;line-height:1.4}.add-on-grid strong{font-family:var(--serif);font-size:23px;font-weight:400}.reward-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px}.reward-grid article{min-height:280px;padding:30px;border:1px solid var(--line);border-radius:6px}.reward-grid article>span{color:var(--blue);font-size:11px;font-weight:900}.reward-grid h3{margin:70px 0 12px;font-family:var(--serif);font-size:30px;font-weight:400}.reward-grid p{color:var(--slate);line-height:1.65}

.service-story{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}.service-story .intro-copy p{color:var(--slate);font-size:18px;line-height:1.8}.dark-scope{color:#fff;background:var(--navy)}.dark-scope .scope-grid{margin-top:0}.dark-scope .scope-grid article{background:#ffffff08;border-color:#ffffff20}.dark-scope .included-list li{color:#bfd0db;border-color:#ffffff20}.coverage-mini{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}.coverage-mini>div:first-child>p:last-child{color:var(--slate);font-size:17px;line-height:1.7}.coverage-mini h2{margin:14px 0 20px;font-size:clamp(38px,5vw,62px);line-height:.98}.related-content{background:var(--mist);max-width:none;padding-left:max(calc((100vw - 1184px)/2),28px);padding-right:max(calc((100vw - 1184px)/2),28px)}

.tier-price-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:46px 0 30px}.tier-price-grid article{padding:24px;background:#fff;color:var(--ink);border-radius:5px}.tier-price-grid article>span{font-weight:900}.tier-price-grid article>small{min-height:64px;margin:8px 0 20px;display:block;color:var(--slate);line-height:1.4}.tier-price-grid article div{border-top:1px solid var(--line)}.tier-price-grid article p{display:flex;justify-content:space-between;margin:0;padding:11px 0;border-bottom:1px solid var(--line);color:var(--slate);font-size:12px}.tier-price-grid article strong{color:var(--ink);font-size:15px}.light-link{color:#a9d2ec;border-color:#ffffff38}.area-content aside>a{margin-top:18px;color:var(--blue);font-size:13px;font-weight:800}.inline-link{color:var(--blue);text-decoration:underline;text-underline-offset:3px}

.area-hub-intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:end}.area-hub-grid{padding-top:20px;display:grid;grid-template-columns:1fr 1fr;gap:16px}.area-hub-grid article{min-height:350px;padding:34px;border:1px solid var(--line);border-radius:6px}.area-hub-grid article>span{color:#99a8b2;font-size:11px;font-weight:900}.area-hub-grid h2{margin:55px 0 14px;font-size:43px}.area-hub-grid article>p:not(.eyebrow){color:var(--slate);line-height:1.65}.area-hub-grid article>div{margin-top:32px;display:flex;flex-wrap:wrap;gap:20px;color:var(--blue);font-size:13px;font-weight:850}.faq-library{display:grid;grid-template-columns:1.25fr .75fr;gap:90px;align-items:start}.faq-library aside{padding:34px;position:sticky;top:25px;background:var(--mist);border-radius:6px}.faq-library aside h2{margin:12px 0 18px;font-size:38px;line-height:1.05}.faq-library aside>p:not(.eyebrow){color:var(--slate);line-height:1.65}.faq-library aside .button{width:100%;margin:15px 0 22px}.article-related{max-width:none;padding-left:max(calc((100vw - 1184px)/2),28px);padding-right:max(calc((100vw - 1184px)/2),28px);background:var(--mist)}
.values-section{padding-top:20px}.about-detail{max-width:none;display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;color:#fff;background:var(--navy);padding-left:max(calc((100vw - 1184px)/2),28px);padding-right:max(calc((100vw - 1184px)/2),28px)}.about-detail h2{margin:14px 0;font-size:clamp(42px,5vw,65px);line-height:.98}.about-detail>div:last-child p{color:#bed0dc;font-size:17px;line-height:1.75}.about-detail .text-link{margin-top:20px;color:#a9d2ec;border-color:#ffffff38}

@media(max-width:960px){.hero{min-height:0}.plan-cards,.reward-grid{grid-template-columns:1fr}.plan-card{min-height:300px}.plan-card h3{margin-top:45px}.pricing-notes,.scope-grid,.service-story,.coverage-mini,.area-hub-intro,.faq-library,.about-detail{grid-template-columns:1fr}.add-on-grid{grid-template-columns:1fr 1fr}.tier-price-grid{grid-template-columns:1fr 1fr}.area-hub-grid{grid-template-columns:1fr}.faq-library aside{position:static}}
@media(max-width:620px){.topbar{height:78px}.brand{width:178px}.hero{padding-top:58px}.hero h1{font-size:50px}.hero .lead{font-size:17px}.service-strip.premium-strip{grid-template-columns:1fr}.premium-strip>*{min-height:110px}.premium-intro{padding-top:85px}.plan-card{padding:26px}.price-table-wrap{margin-right:-20px}.pricing-notes,.scope-grid,.add-on-grid,.tier-price-grid{grid-template-columns:1fr}.scope-grid article{padding:27px}.reward-grid article{min-height:230px}.add-on-grid>div{min-height:100px}.area-hub-grid article{min-height:300px;padding:27px}}

/* ---------------------------------------------------------------
   v4 additions — plans page, quote estimator, mobile navigation
   --------------------------------------------------------------- */

.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* Mobile navigation — a pure-CSS disclosure, so it works without JS. */
.mobile-nav{display:none;position:relative}
.mobile-nav>summary{list-style:none;display:flex;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0 9px;cursor:pointer;border:1px solid #ffffff2e;border-radius:7px}
.mobile-nav>summary::-webkit-details-marker{display:none}
.mobile-nav>summary span{display:block;height:2px;background:#e8f0f5;border-radius:2px;transition:transform .2s ease,opacity .2s ease}
.mobile-nav[open]>summary span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.mobile-nav[open]>summary span:nth-child(2){opacity:0}
.mobile-nav[open]>summary span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-nav-panel{position:absolute;right:0;top:calc(100% + 12px);z-index:40;min-width:232px;padding:8px;display:flex;flex-direction:column;background:var(--navy-2);border:1px solid #ffffff1f;border-radius:10px;box-shadow:0 26px 60px #00000059}
.mobile-nav-panel a{padding:13px 15px;color:#dbe7ef;font-size:15px;font-weight:700;border-radius:7px}
.mobile-nav-panel a:hover{background:#ffffff12;color:#fff}
@media(max-width:960px){.mobile-nav{display:block}}

/* Live pricing estimate inside the quote builder. */
.quote-estimate{grid-column:1/-1;display:block;margin-top:4px;padding:17px 18px;background:#0b2033;border:1px solid #ffffff1c;border-radius:9px;color:#dbe8f1}
.booking-builder:not(.compact) .quote-estimate{background:#f7f5f1;border-color:var(--line);color:var(--ink)}
.estimate-title{margin-bottom:11px;color:var(--electric);font-size:10px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.booking-builder:not(.compact) .estimate-title{color:var(--blue)}
.estimate-loading{font-size:13px;opacity:.72}
.estimate-row{display:flex;align-items:baseline;gap:12px;padding:6px 0;font-size:13px}
.estimate-row span{flex:1}
.estimate-row b{font-family:var(--serif);font-size:19px;font-weight:400}
.estimate-row.launch b{color:var(--green)}
.booking-builder .estimate-row.launch b{color:#4fd39a}
.booking-builder:not(.compact) .estimate-row.launch b{color:var(--green)}
.estimate-note{margin-top:9px;font-size:11px;line-height:1.55;opacity:.72}

/* Add-on checkboxes. */
.addon-picker{border:0;padding:0;margin:0;min-width:0}
.addon-picker legend{margin:0 0 7px;padding:0;color:inherit;font-size:12px;font-weight:750;opacity:.8}
.addon-options{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.addon-options label{display:flex;align-items:flex-start;gap:10px;padding:12px 13px;font-size:13px;line-height:1.4;border:1px solid var(--line);border-radius:8px;cursor:pointer}
.addon-options label:hover{border-color:var(--blue)}
.addon-options label:has(input:checked){border-color:var(--blue);background:#2b75a80a}
.addon-options input{width:17px;height:17px;flex:0 0 17px;margin-top:1px;accent-color:var(--blue)}
.addon-options>label>span{flex:1;min-width:0}
.addon-options b{display:block;font-weight:800}
.addon-options small{display:block;margin-top:2px;color:var(--slate);font-size:11.5px;line-height:1.45}
.addon-options em{font-style:normal;font-weight:850;white-space:nowrap}
.addon-help{margin:0 0 10px;color:var(--slate);font-size:12.5px;line-height:1.5}
@media(max-width:620px){.addon-options{grid-template-columns:1fr}}

/* Plans page blocks. */
.frequency-grid,.payment-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:38px}
.frequency-grid article,.payment-grid article{padding:32px;background:var(--mist);border:1px solid var(--line);border-radius:11px}
.frequency-grid article.recommended{background:var(--navy);border-color:var(--navy);color:#e9f1f7}
.frequency-grid article.recommended p{color:#b9cdda}
.frequency-grid article>span{display:inline-block;margin-bottom:16px;padding:5px 10px;background:#ffffff1a;border-radius:20px;font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}
.frequency-grid article:not(.recommended)>span{background:#0717240f;color:var(--slate)}
.frequency-grid h3,.payment-grid h3{margin:0 0 10px;font-family:var(--serif);font-size:26px;font-weight:400}
.frequency-grid .plan-price{margin:0 0 14px;color:var(--blue);font-size:15px;font-weight:850}
.frequency-grid article.recommended .plan-price{color:var(--electric)}

.multicar-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:38px}
.multicar-grid article{padding:32px;border:1px solid var(--line);border-radius:11px}
.multicar-grid strong{display:block;color:var(--blue);font-family:var(--serif);font-size:42px;font-weight:400;line-height:1}
.multicar-grid h3{margin:14px 0 8px;font-size:17px}
.multicar-grid p{margin:0;color:var(--slate);font-size:14px}

.add-on-grid.detailed>div{display:flex;flex-direction:column;gap:6px;min-height:0;padding:22px}
.add-on-grid.detailed small{color:var(--slate);font-size:12.5px;line-height:1.5}
.pricing-notes.single{display:block;max-width:760px}
.launch-cell{color:var(--green);font-weight:850}
.muted-cell{color:var(--slate)}

.process-grid.four{grid-template-columns:repeat(4,1fr)}
@media(max-width:960px){.process-grid.four{grid-template-columns:1fr 1fr}.frequency-grid,.payment-grid,.multicar-grid{grid-template-columns:1fr}}
@media(max-width:620px){.process-grid.four{grid-template-columns:1fr}}

.included-list.compact{margin-top:18px;gap:5px}
.included-list.compact li{font-size:12.5px}

.tier-summary-section{text-align:left}
.tier-summary-section .button.secondary{margin-top:30px}
.coverage-tier+.coverage-tier{padding-top:0}
.area-hub-grid article.core{border-color:var(--blue);box-shadow:0 18px 44px #2b75a814}

.article-links{margin:0 0 42px;padding:26px 28px;background:var(--mist);border-radius:11px}
.article-links strong{display:block;margin-bottom:12px;color:var(--blue);font-size:10px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.article-links ul{margin:0;padding:0;list-style:none;display:grid;gap:9px}
.article-links li{font-size:14.5px}

.footer-contact{margin-top:14px;font-weight:750}
.footer-contact a:hover{color:var(--electric)}

/* ---------------------------------------------------------------
   v5 — four visit frequencies, one-off extras, restrained headlines
   --------------------------------------------------------------- */

/* The accent-coloured word in display headings read as a template tic. */
h1 em,h2 em{color:inherit;font-style:normal}

.plan-cards.two{grid-template-columns:1fr 1fr}
@media(max-width:960px){.plan-cards.two{grid-template-columns:1fr}}

.price-table thead th small{display:block;margin-top:3px;color:var(--slate);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:none}
.price-table td.setup-cell{font-weight:850}
.price-table td.recommended-cell{background:#2b75a80f;font-weight:850;color:var(--blue)}
.price-table thead th:nth-child(4){color:var(--blue)}

.frequency-grid{grid-template-columns:repeat(4,1fr)}
.frequency-grid article{padding:26px 22px}
.frequency-grid h3{font-size:22px}
@media(max-width:1000px){.frequency-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.frequency-grid{grid-template-columns:1fr}}

.estimate-row.total{margin-top:4px;padding-top:11px;border-top:1px solid #ffffff22}
.booking-builder:not(.compact) .estimate-row.total{border-top-color:var(--line)}
.estimate-row.total b{font-size:23px;font-weight:600}
.estimate-row.recurring{margin-top:4px;padding-top:11px;border-top:1px dashed #ffffff1f}
.booking-builder:not(.compact) .estimate-row.recurring{border-top-color:var(--line)}

/* ---------------------------------------------------------------
   v5 typography correction
   Section headings were running to 66px and the closing CTA to 90px,
   which is display scale. On a service business that reads as a
   template rather than a website, so the whole scale comes down and
   the editorial two-column intros become ordinary centred blocks.
   --------------------------------------------------------------- */
h1{font-size:clamp(36px,4.4vw,58px);line-height:1.03;letter-spacing:-.035em;margin:16px 0 22px}
.section-heading h2,.coverage-copy h2,.booking-copy h2,.final-cta h2{
  font-size:clamp(27px,2.9vw,38px);line-height:1.12;letter-spacing:-.025em;margin:10px 0 18px}
.final-cta h2{font-size:clamp(30px,3.2vw,42px)}
.article-hero h1,.guide-hub-hero h1,.service-hero h1,.area-hero h1{font-size:clamp(34px,4vw,52px)}
.hero h1{font-size:clamp(38px,4.8vw,62px)}
.section{padding-top:84px;padding-bottom:84px}
.final-cta{padding-top:88px;padding-bottom:88px}
.lead{font-size:17.5px;line-height:1.62}

/* Heading-left / body-right with a 90px gutter left large dead areas.
   A single centred column reads as a normal page. */
.area-hub-intro,.service-story,.coverage-mini,.about-detail{
  display:block;max-width:760px;margin-left:auto;margin-right:auto}
.area-hub-intro .section-heading,.service-story .section-heading{max-width:none;margin-bottom:6px}
.coverage-mini{max-width:1240px}
.coverage-mini>div:first-child{max-width:640px;margin-bottom:32px}
.about-detail>div:first-child{margin-bottom:18px}

@media(max-width:620px){
  .section{padding-top:60px;padding-bottom:60px}
  .final-cta{padding-top:66px;padding-bottom:66px}
  .hero h1,.area-hero h1,.service-hero h1,.guide-hub-hero h1,.article-hero h1{font-size:34px}
}

/* Full village list on the areas hub. */
.villages-section .villages-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px 40px;margin-top:38px}
.villages-grid>div{padding-top:18px;border-top:1px solid var(--line)}
.village-hub{display:flex;align-items:baseline;gap:10px;font-size:18px;font-weight:850;color:var(--ink)}
.village-hub:hover{color:var(--blue)}
.village-hub span{color:var(--slate);font-size:12px;font-weight:750;letter-spacing:.08em}
.villages-grid p{margin:8px 0 0;color:var(--slate);font-size:14px;line-height:1.7}
@media(max-width:760px){.villages-section .villages-grid{grid-template-columns:1fr;gap:22px}}

/* The add-on rows were rendering name and description on one run-on line
   because the earlier v4 rule for `.addon-options b` still applied. */
.addon-options label>span{display:block;flex:1;min-width:0}
.addon-options label>span>b{display:block;font-weight:800;line-height:1.35;white-space:normal}
.addon-options label>span>small{display:block;margin-top:3px;color:var(--slate);font-size:11.5px;line-height:1.45;white-space:normal}
.addon-options label>em{font-style:normal;font-weight:850;white-space:nowrap;align-self:flex-start}
.legal-page h1{font-size:clamp(30px,3.4vw,42px);line-height:1.15;letter-spacing:-.025em}
@media(max-width:620px){.legal-page h1{font-size:30px}}
