@font-face{font-family:Manrope;src:url('/assets/manrope.woff2') format('woff2');font-style:normal;font-weight:400 800;font-display:swap}
:root{--ink:#252b27;--muted:#656b66;--gold:#c6a25c;--gold-dark:#80622b;--paper:#f5f4ef;--line:#dedfd7;--dark:#202621;--white:#fff;--max:1280px;--font:Manrope,'Avenir Next',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font:15px/1.75 var(--font);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--gold-dark);outline-offset:5px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold-dark);outline-offset:2px}[hidden]{display:none!important}::selection{background:#e8d9b6;color:#202621}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-weight:600;line-height:1.15;letter-spacing:-.045em}h1{font-size:clamp(42px,5.1vw,70px)}h2{font-size:clamp(30px,3.4vw,44px)}h3{font-size:21px;letter-spacing:-.025em}p{color:var(--muted)}img{max-width:100%;height:auto;display:block}svg{flex-shrink:0}a>svg,button>svg{width:21px;height:21px}.icon{width:24px;height:24px;flex-shrink:0}.container{width:calc(100% - 96px);max-width:var(--max);margin:0 auto}.section{padding:100px 0}.eyebrow{font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.17em;color:var(--gold-dark);margin-bottom:20px;line-height:1.6}.gold-text{color:var(--gold-dark)}.gold-line{display:inline-block;width:26px;height:1px;background:var(--gold-dark);vertical-align:middle;margin-right:10px}.button{min-height:52px;background:var(--gold);color:#202621;border:1px solid var(--gold);display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:14px 23px;font-size:12px;font-weight:800;letter-spacing:.01em;white-space:nowrap;transition:background .2s,transform .2s,border-color .2s}.button:hover{background:#d7b773;border-color:#d7b773;transform:translateY(-2px)}.button-secondary{background:transparent;border-color:#c3c6bd;color:var(--ink)}.button-secondary:hover{background:#eeeee7;border-color:#aeb5a8}.text-link{display:inline-flex;align-items:center;gap:18px;font-size:12px;font-weight:800;line-height:1.5;border-bottom:1px solid var(--gold);padding-bottom:7px}.text-link:hover{color:var(--gold-dark)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:42px}.section-heading>.text-link{flex-shrink:0;margin-bottom:4px}.section-intro{max-width:610px;font-size:14px;margin-top:20px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;left:20px;top:-80px;padding:12px 24px;background:var(--dark);color:#fff;z-index:100}.skip-link:focus{top:12px}.preview-bar{background:#eeede7;border-bottom:1px solid #e5e4dc;font-size:9px;font-weight:800;letter-spacing:.13em}.preview-bar>.container{display:flex;align-items:center;justify-content:space-between;height:32px}.preview-bar span{display:inline-flex;align-items:center;gap:8px}.preview-bar .preview-dot{width:5px;height:5px;border-radius:100%;background:var(--gold-dark);display:inline-block}.preview-bar-note{color:#777d73;margin-left:1px}.preview-bar a{font-size:9px;letter-spacing:.03em}.preview-bar a:hover{text-decoration:underline}.site-header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line)}.header-inner{height:92px;display:flex;align-items:center;gap:45px}.brand{background:#202421;padding:10px 12px;display:flex;align-items:center;flex-shrink:0;width:180px;height:62px}.brand img{width:100%;height:auto}.desktop-nav{display:flex;align-items:center;gap:26px;margin-left:auto;font-size:11px;font-weight:700}.desktop-nav>a{padding:12px 0}.desktop-nav>[aria-current=page],.desktop-nav .current{color:var(--gold-dark)}.desktop-nav>a:hover{color:var(--gold-dark)}.header-actions{display:flex;align-items:center;gap:24px}.header-phone{font-size:11px;font-weight:800;white-space:nowrap}.header-phone .icon{display:none}.header-actions .button{min-height:43px;padding:10px 17px;font-size:11px;gap:12px}.header-actions .button svg{width:17px}.services-dropdown{position:relative}.services-dropdown>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:7px;padding:12px 0}.services-dropdown>summary::-webkit-details-marker{display:none}.services-dropdown>summary svg{width:11px;height:11px}.dropdown-panel{position:absolute;top:45px;left:-24px;width:330px;background:#fff;border:1px solid var(--line);padding:22px;box-shadow:0 15px 35px #24302715}.dropdown-panel>.eyebrow{margin-bottom:12px;font-size:9px}.dropdown-panel>a{display:flex;gap:14px;align-items:center;padding:13px 0;border-top:1px solid #ecede8}.dropdown-panel>a>.icon{color:var(--gold-dark);width:22px}.dropdown-panel>a>svg:last-child{width:17px;margin-left:auto}.dropdown-panel strong{font-size:13px;display:block}.dropdown-panel small{display:block;font-size:10px;font-weight:500;color:var(--muted)}.dropdown-panel a:hover strong{color:var(--gold-dark)}.menu-toggle{display:none}.mobile-navigation{display:none}.home-hero{padding:58px 0 70px;background:linear-gradient(90deg,#fff 0%,#fff 52%,#f5f4ef 52%,#f5f4ef 100%)}.hero-grid{display:grid;grid-template-columns:1fr 1.02fr;gap:58px;align-items:center}.hero-copy .eyebrow{margin-bottom:24px;font-size:9px}.hero-copy h1{margin-left:-3px}.hero-description{font-size:14px;line-height:1.95;max-width:490px;margin-top:25px}.hero-buttons{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:30px}.hero-buttons .button{font-size:11px;padding:13px 20px;gap:17px}.hero-location{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--muted);margin-top:30px}.hero-location .icon{width:15px;height:15px}.hero-visual{position:relative;height:506px}.hero-image{width:100%;height:100%;object-fit:cover;object-position:53% 50%}.hero-visual:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#171d1973);pointer-events:none}.image-label{position:absolute;bottom:35px;left:32px;z-index:1;color:#fff}.image-label span{font-size:8px;letter-spacing:.2em;display:block;margin-bottom:10px}.image-label strong{font-size:23px;font-weight:500;letter-spacing:-.03em}.availability-card{position:absolute;bottom:29px;right:-24px;z-index:2;background:#fff;box-shadow:0 9px 30px #20262114;display:flex;align-items:center;gap:13px;padding:20px 22px;transform:translateY(50%)}.availability-card strong{font-size:11px;display:block}.availability-card small{font-size:9px;color:var(--muted);display:block}.availability-card>svg{width:18px;margin-left:10px}.availability-dot{background:#688164;width:7px;height:7px;border-radius:50%;display:inline-block;box-shadow:0 0 0 4px #68816415;flex-shrink:0}.trust-strip{background:#f6f6f1;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.trust-strip>.container{display:grid;grid-template-columns:repeat(4,1fr);padding-top:28px;padding-bottom:28px}.trust-strip>.container>div{display:flex;align-items:center;gap:15px;border-left:1px solid var(--line);padding:0 24px}.trust-strip>.container>div:first-child{border-left:0;padding-left:0}.trust-strip .icon{color:var(--gold-dark);width:25px;height:25px}.trust-strip strong{display:block;font-size:11px;font-weight:700}.trust-strip small{display:block;font-size:9px;color:var(--muted);margin-top:2px}.services-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:120px}.services-intro>p:not(.eyebrow){font-size:13px;max-width:370px;margin:25px 0}.services-mini-note{display:flex;align-items:center;gap:14px;margin-top:40px;font-size:10px;color:var(--muted)}.services-mini-note>.icon{color:var(--gold-dark);width:25px;height:25px}.service-list>a{display:flex;align-items:center;gap:24px;padding:26px 0;border-bottom:1px solid var(--line)}.service-list>a:first-child{border-top:1px solid var(--line)}.service-number{align-self:flex-start;padding-top:4px;font-size:9px;color:var(--gold-dark)}.service-list h3{font-size:25px;font-weight:500}.service-list p{font-size:11px;margin-top:6px}.round-arrow{display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:50%;width:36px;height:36px;margin-left:auto;flex-shrink:0;transition:background .2s,transform .2s}.round-arrow svg{width:17px;height:17px}.service-list>a:hover .round-arrow{background:var(--gold);border-color:var(--gold);transform:rotate(-30deg)}.feature-section{background:var(--paper)}.feature-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:95px;align-items:center}.photo{position:relative}.photo img{width:100%;height:100%;object-fit:cover}.photo figcaption{font-size:8px;line-height:1.5;color:var(--muted);margin-top:10px;letter-spacing:.02em}.feature-photo{height:510px}.feature-photo img{height:100%;object-position:65% center}.feature-copy>p:not(.eyebrow){font-size:13px;margin-top:22px}.feature-copy .button{margin-top:8px}.check-list{padding:0;margin:26px 0;list-style:none}.check-list li{display:flex;gap:11px;align-items:flex-start;font-size:11px;margin:12px 0;line-height:1.65}.check-list .icon{width:16px;height:16px;margin-top:1px;color:var(--gold-dark)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:52px}.process-grid article{border-top:1px solid var(--line);padding-top:25px}.process-grid article>span{font-size:11px;color:var(--gold-dark);display:block;margin-bottom:24px}.process-grid h3{font-size:19px;margin-bottom:15px}.process-grid p{font-size:12px;max-width:320px}.reviews-section{background:#f5f5f0}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.review-grid figure{background:#fff;border:1px solid #e6e7de;padding:30px;display:flex;flex-direction:column;min-height:248px}.stars{font-size:14px;letter-spacing:.16em;color:var(--gold-dark)}.review-grid blockquote{font-size:18px;letter-spacing:-.025em;line-height:1.65;padding:20px 0 28px;font-weight:500}.review-grid figcaption{display:flex;align-items:center;gap:12px;margin-top:auto}.review-avatar{width:31px;height:31px;display:flex;align-items:center;justify-content:center;background:#f0f1eb;border-radius:50%;font-size:9px;color:#687065}.review-grid figcaption strong{display:block;font-size:10px}.review-grid figcaption small{display:block;color:var(--muted);font-size:9px}.county-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.county-grid>a{padding:30px 32px 30px 0;position:relative}.county-grid>a+a{border-left:1px solid var(--line);padding-left:32px}.county-grid span{font-size:9px;letter-spacing:.09em;color:var(--gold-dark);text-transform:uppercase}.county-grid h3{font-size:19px;line-height:1.65;margin-top:18px;font-weight:500}.county-grid>a>svg{position:absolute;right:26px;top:30px;width:18px}.county-grid>a:hover{background:#fafaf7}.cta-section{padding:0 0 60px}.cta-inner{padding:56px;background:var(--dark);display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-inner .eyebrow{color:#cdb27b;margin-bottom:12px}.cta-inner h2{font-size:34px;max-width:700px;color:#fff}.cta-inner p:not(.eyebrow){color:#c4c9be;font-size:12px;margin-top:18px}.cta-actions{display:flex;flex-direction:column;align-items:center;gap:18px;flex-shrink:0}.cta-phone{display:flex;align-items:center;gap:8px;color:#fff;font-size:12px}.cta-phone .icon{width:14px;height:14px}.site-footer{background:var(--dark);color:#fff;padding:65px 0 24px}.footer-top{display:grid;grid-template-columns:1.5fr .8fr .9fr 1fr;gap:55px;padding-bottom:46px}.footer-brand>a{display:block;width:183px}.footer-brand img{width:100%;height:auto;aspect-ratio:150 / 41;object-fit:contain}.footer-brand>p{font-size:21px;line-height:1.5;color:#e6e8e1;letter-spacing:-.03em;margin-top:22px}.footer-brand>span{font-size:8px;color:#a7b09f;display:block;margin-top:18px;letter-spacing:.06em}.footer-top h3{font-size:10px;font-weight:700;letter-spacing:.06em;margin:5px 0 22px;color:#cbb17b}.footer-top>div:not(.footer-brand)>a{display:block;font-size:10px;color:#d5d9cf;padding:4px 0}.footer-top a:hover{color:var(--gold)}.footer-contact>a{font-size:15px!important;letter-spacing:-.015em}.footer-contact>a .icon{display:none}.footer-contact>p{font-size:10px;color:#aeb8a6;line-height:2;margin:14px 0}.footer-contact>a:last-child{font-size:10px!important;display:flex!important;align-items:center;gap:16px;color:#d3bb8a!important}.footer-contact>a:last-child svg{width:15px;height:15px}.footer-bottom{padding-top:23px;border-top:1px solid #ffffff20;display:flex;justify-content:space-between;gap:20px}.footer-bottom p{font-size:9px;color:#aeb8a6}.footer-bottom>div{display:flex;gap:20px;font-size:9px;color:#bac1b4}.footer-preview{font-size:8px;color:#a6af9f;margin-top:20px}.mobile-callbar{display:none}.breadcrumb{display:flex;align-items:center;gap:12px;padding-top:25px;font-size:9px;color:var(--muted)}.breadcrumb>span:first-of-type{color:#b6bbaf}.breadcrumb a:hover{text-decoration:underline}.service-hero{padding:44px 0 70px}.service-hero-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:64px;align-items:center}.service-hero h1{font-size:clamp(38px,4.4vw,61px)}.service-hero .hero-description{max-width:540px}.service-hero-visual{height:390px;position:relative}.service-hero-visual>img{width:100%;height:100%;object-fit:cover}.service-hero-visual.radiator-photo>img{object-position:50% 90%}.service-photo-label{position:absolute;bottom:18px;left:18px;right:18px;padding:16px;background:#fff;display:flex;gap:13px;align-items:center;font-size:10px}.service-photo-label .icon{color:var(--gold-dark);width:22px;height:22px}.simple-phone{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;padding:12px}.simple-phone>.icon{width:16px}.service-hero+.section{border-top:1px solid var(--line)}.topic-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.topic-card{border:1px solid var(--line);padding:29px;display:flex;flex-direction:column;min-height:258px}.topic-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.topic-top>span{font-size:10px;color:var(--gold-dark)}.topic-top>.icon,.topic-card>.icon{color:var(--gold-dark)}.topic-card>.icon{margin-bottom:24px}.topic-card h3{font-size:20px;font-weight:600;margin-bottom:13px;line-height:1.35}.topic-card p{font-size:12px;line-height:1.85;margin-bottom:25px}.topic-card>a{display:flex;align-items:center;gap:10px;font-size:10px;font-weight:800;margin-top:auto;width:max-content}.topic-card>a>svg{width:16px;height:16px}.topic-card:hover{border-color:#b6a275}.topic-card>a:hover{color:var(--gold-dark)}.approach-section{background:var(--paper)}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:120px;align-items:center}.approach-grid>div>p:not(.eyebrow){font-size:13px;max-width:490px;margin-top:25px}.advice-card{background:#fff;border:1px solid var(--line);padding:40px}.advice-icon{width:48px;height:48px;border:1px solid #dfd4b9;color:var(--gold-dark);display:flex;align-items:center;justify-content:center;margin-bottom:24px}.advice-card h3{font-size:29px;font-weight:500}.advice-card>p{font-size:12px;margin:20px 0 24px;max-width:350px}.advice-card>span{display:flex;gap:8px;align-items:center;font-size:10px;color:var(--muted);margin-top:20px;flex-wrap:wrap}.advice-card>span>a{font-weight:700;color:var(--ink)}.advice-card>span .icon{display:none}.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.faq-layout>div>p:not(.eyebrow){font-size:12px;margin-top:25px;line-height:2}.faq-layout .text-link{margin-top:12px}.faqs{border-top:1px solid var(--line)}.faqs>details{border-bottom:1px solid var(--line);padding:24px 0}.faqs summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:13px;font-weight:700;cursor:pointer;line-height:1.7}.faqs summary::-webkit-details-marker{display:none}.faqs summary>span{font-size:21px;font-weight:400;color:var(--gold-dark);transition:transform .2s}.faqs details[open] summary>span{transform:rotate(45deg)}.faqs details>div{padding:18px 24px 0 0}.faqs p{font-size:12px}.coverage-strip{padding:28px 0;background:#f5f5ef;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:70px}.coverage-strip>.container{display:flex;align-items:center;justify-content:space-between;gap:25px}.coverage-strip>.container>div{display:flex;align-items:center;gap:18px}.coverage-strip .icon{width:23px;height:23px;color:var(--gold-dark)}.coverage-strip p{font-size:11px}.coverage-strip strong{font-weight:700;color:var(--ink)}.gas-note{background:#f4eee0;border-block:1px solid #e5dcc5;padding:20px 0}.gas-note>.container{display:flex;gap:18px;align-items:center}.gas-note .icon{color:#80622b;width:23px;height:23px}.gas-note p{font-size:11px;color:#5c5545;line-height:1.9}.gas-note p>strong{font-weight:700}.gas-note a{font-weight:800;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.gas-note .safety-source{font-size:9px;font-weight:500;margin-left:6px}.emergency-hero{background:var(--dark);margin-top:25px;padding:65px 0 70px;color:#fff}.emergency-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:90px;align-items:center}.emergency-hero .eyebrow{color:#cdb27b;display:flex;align-items:center;gap:12px}.emergency-hero h1{font-size:clamp(39px,4.6vw,64px)}.emergency-hero .hero-description{color:#c7cec1;max-width:540px}.emergency-hero .button-secondary{color:#fff;border-color:#66705f}.emergency-hero .button-secondary:hover{background:#374031}.emergency-small{font-size:10px;margin-top:25px;color:#b9c2b2;line-height:1.9}.price-card{background:#fff;color:var(--ink);padding:36px}.price-card>.eyebrow{display:block;color:var(--gold-dark);font-size:9px;margin-bottom:18px}.price{font-size:64px;line-height:1.1;font-weight:500;letter-spacing:-.05em}.price>span{display:block;font-size:11px;letter-spacing:0;font-weight:600;margin-top:10px}.price-ex-vat{font-size:9px;margin:12px 0 20px}.price-card>.check-list{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0;margin:20px 0}.price-card>p:not(.price-ex-vat){font-size:10px;line-height:1.9}.price-card>.text-link{font-size:9px;margin-top:18px}.text-hero{padding:55px 0 75px}.areas-hero-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:100px;align-items:center}.text-hero .button{margin-top:27px}.area-statement{background:#efefe7;padding:40px 45px;position:relative;border-left:2px solid var(--gold)}.area-statement>p{font-size:26px;color:var(--ink);letter-spacing:-.04em;line-height:1.5}.area-statement p>strong{font-weight:600}.area-statement>span:last-child{display:block;font-size:11px;margin-top:20px;color:var(--muted)}.area-statement-symbol{position:absolute;right:25px;top:25px;color:var(--gold-dark)}.area-statement-symbol>.icon{width:32px;height:32px}.area-browser-section{background:var(--paper);border-block:1px solid var(--line)}.area-controls{display:flex;align-items:center;justify-content:space-between;gap:30px}.area-filters{display:flex;gap:7px;flex-wrap:wrap}.area-filters>button{border:1px solid #c7cbbc;background:transparent;padding:9px 18px;font-size:11px;color:var(--ink);font-weight:600}.area-filters>button.active{background:var(--dark);border-color:var(--dark);color:#fff}.area-filters>button:hover:not(.active){background:#e9e9e1}.area-search{position:relative;display:flex;align-items:center;flex:0 1 300px}.area-search>.icon{position:absolute;left:14px;width:17px;height:17px;color:#7d8575}.area-search>input{background:#fff;border:1px solid #c7cbbc;width:100%;padding:11px 15px 11px 42px;font-size:12px;color:var(--ink);border-radius:0}.area-count{font-size:10px;margin:22px 0 14px}.town-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.town-card{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:23px;background:#fff;border:1px solid var(--line)}.town-card span{font-size:9px;color:var(--gold-dark)}.town-card h3{font-size:18px;letter-spacing:-.03em;margin-top:8px}.town-card>svg{width:17px;height:17px}.town-card:hover{border-color:var(--gold)}.area-footnote{font-size:11px;margin-top:28px}.area-footnote a{text-decoration:underline;text-underline-offset:3px}.area-empty{background:#fff;border:1px solid var(--line);padding:40px}.area-empty>p{font-size:12px;margin:15px 0 22px}.about-statement{background:var(--paper);padding:35px 42px;border-bottom:2px solid var(--gold)}.big-number{font-size:110px;line-height:1;letter-spacing:-.08em;color:#79633a;display:block}.big-number>span{font-size:20px;letter-spacing:-.03em;margin-left:12px}.about-statement>p{font-size:20px;line-height:1.65;letter-spacing:-.025em;margin-top:22px}.about-statement>div{display:flex;align-items:center;gap:9px;font-size:10px;border-top:1px solid #d8d9cd;padding-top:20px;margin-top:24px}.about-statement .icon{color:var(--gold-dark);width:18px;height:18px}.about-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:95px;align-items:center}.about-photo{height:480px}.about-story>div>p:not(.eyebrow){font-size:13px;margin-top:22px}.about-story .text-link{margin-top:25px}.standards-section{background:var(--paper)}.standards-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.standards-grid article{border-top:1px solid var(--line);padding-top:25px}.standards-grid .icon{color:var(--gold-dark);margin-bottom:25px;width:28px;height:28px}.standards-grid h3{font-size:20px;line-height:1.5}.standards-grid p{font-size:12px;margin-top:16px}.contact-hero{padding:45px 0 55px}.contact-hero h1{font-size:clamp(38px,4.8vw,66px)}.contact-hero .hero-description{max-width:650px}.contact-section{padding:0 0 90px}.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:95px;align-items:start}.contact-aside{padding-top:10px}.contact-block{position:relative;border-top:1px solid var(--line);padding:26px 0 32px 40px}.contact-icon{position:absolute;left:0;top:28px;color:var(--gold-dark)}.contact-icon>.icon{width:22px;height:22px}.contact-block .eyebrow{font-size:9px;margin-bottom:10px}.contact-number{font-size:25px;font-weight:600;letter-spacing:-.05em}.contact-number>.icon{display:none}.contact-block>p:not(.eyebrow){font-size:11px;margin-top:13px;max-width:290px}.contact-block h2{font-size:18px;letter-spacing:-.03em}.opening-hours{font-size:11px;margin:18px 0}.opening-hours>div{display:flex;justify-content:space-between;gap:15px;max-width:290px;margin:8px 0}.opening-hours dt{color:var(--muted)}.opening-hours dd{margin:0;font-weight:600}.contact-block .text-link{font-size:10px;margin-top:18px}.enquiry-panel{border:1px solid var(--line);padding:38px;background:#fbfbf8}.form-heading>.eyebrow{font-size:9px;margin-bottom:11px}.form-heading>h2{font-size:30px}.form-heading>p:last-child{font-size:12px;margin-top:14px}.demo-form-note{display:flex;gap:11px;align-items:flex-start;background:#eeeee4;border-left:2px solid var(--gold);padding:15px;margin:25px 0}.demo-form-note>.icon{width:17px;height:17px;color:var(--gold-dark);margin-top:2px}.demo-form-note>p{font-size:10px;line-height:1.8;color:#5d6557}.demo-form-note strong{font-weight:800;color:#35402e}form{display:flex;flex-direction:column;gap:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}form label{display:block;font-size:10px;font-weight:700;line-height:1.8;min-width:0}form label>span{color:var(--gold-dark);font-size:10px}input,textarea,select{border-radius:0}form input:not([type=file]),form textarea,form select{width:100%;display:block;background:#fff;border:1px solid #ced1c5;color:var(--ink);padding:12px 13px;margin-top:8px;font-size:12px;line-height:1.6;min-width:0}form select{min-height:45px}form textarea{resize:vertical;min-height:130px}input::placeholder,textarea::placeholder{color:#7e8577;opacity:1}form input:hover,form textarea:hover,form select:hover{border-color:#9aab89}.optional{float:right;font-size:9px!important;font-weight:500;color:var(--muted)!important}.attachment-label>input{display:block;margin-top:10px;width:100%;font-size:10px;font-weight:500}.attachment-label>input::file-selector-button{background:#fff;border:1px solid #cdd1c3;padding:8px 15px;font:inherit;margin-right:10px;color:var(--ink);cursor:pointer}.attachment-help{display:block;font-size:9px!important;font-weight:400;color:var(--muted)!important;margin-top:8px;overflow-wrap:anywhere}.form-required{font-size:9px;margin-top:-7px}.form-submit{width:100%;border-radius:0}.form-footnote{font-size:9px;line-height:1.9;text-align:center;margin-top:-6px}.form-footnote a{text-decoration:underline;text-underline-offset:2px}.enquiry-result{scroll-margin-top:110px}.enquiry-result:focus{outline:none}.result-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #c5d2bd;background:#edf2e8;color:#657b51;margin:8px 0 22px}.enquiry-result>.eyebrow{font-size:9px;margin-bottom:10px}.enquiry-result>h2{font-size:31px}.result-notice{font-size:12px;margin-top:20px}.enquiry-result dl{margin:24px 0}.enquiry-result dl>div{display:grid;grid-template-columns:110px 1fr;gap:18px;border-top:1px solid var(--line);padding:13px 0;font-size:11px}.enquiry-result dt{color:var(--muted)}.enquiry-result dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.enquiry-result>.text-link{font-size:10px;margin-top:24px;display:flex;width:max-content;max-width:100%;white-space:normal}
@media(min-width:1400px){.hero-grid{gap:75px}.hero-visual{height:535px}.home-hero{padding-top:70px;padding-bottom:80px}.header-inner{gap:48px}.desktop-nav{gap:30px}}
@media(max-width:1200px){.container{width:calc(100% - 64px)}.header-inner{gap:25px}.desktop-nav{gap:19px}.header-actions{gap:18px}.header-phone{display:none}.brand{width:165px;height:57px}.hero-grid{gap:36px}.hero-copy .eyebrow{font-size:8px}.hero-visual{height:480px}.hero-buttons{gap:10px}.hero-buttons .button{padding:12px 16px;font-size:10px;gap:12px}.services-layout{gap:70px}.feature-grid{gap:60px}.trust-strip>.container>div{padding:0 18px;gap:10px}.trust-strip small{font-size:8px}.footer-top{gap:35px}.service-hero-grid{gap:45px}.emergency-grid{gap:55px}.areas-hero-grid{gap:65px}.contact-grid{gap:60px}.cta-inner{padding:45px}.cta-inner h2{font-size:30px}.topic-card{padding:24px}.about-story{gap:60px}}
@media(max-width:1060px){.desktop-nav,.header-actions{display:none}.header-inner{height:80px;justify-content:space-between}.brand{width:162px;height:55px}.menu-toggle{display:flex;align-items:center;gap:15px;border:0;background:transparent;padding:12px 0 12px 15px;color:var(--ink);font-size:11px;font-weight:700}.menu-lines{display:block;width:23px;height:12px;border-top:1px solid currentColor;border-bottom:1px solid currentColor;position:relative}.menu-lines:before{content:'';position:absolute;top:5px;left:0;width:23px;border-top:1px solid currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] .menu-lines{border:0}.menu-toggle[aria-expanded=true] .menu-lines:before{top:6px;transform:rotate(45deg)}.menu-toggle[aria-expanded=true] .menu-lines:after{content:'';position:absolute;top:6px;left:0;width:23px;border-top:1px solid currentColor;transform:rotate(-45deg)}.mobile-navigation{display:block;position:absolute;top:80px;left:0;right:0;background:#fff;border-top:1px solid var(--line);height:calc(100dvh - 80px);overflow:auto;padding:28px 0 110px}.mobile-navigation .eyebrow{margin-bottom:12px}.mobile-navigation .container>a{display:block;padding:10px 0;font-size:19px;border-bottom:1px solid #ebede5;letter-spacing:-.03em;font-weight:500}.mobile-navigation [aria-current=page]{color:var(--gold-dark)}.mobile-nav-bottom{margin-top:25px}.mobile-nav-bottom>a{display:flex;align-items:center;gap:10px;font-size:17px}.mobile-nav-bottom>span{display:block;font-size:10px;color:var(--muted);margin-top:10px}.hero-grid{gap:30px;grid-template-columns:1fr .95fr}.hero-visual{height:450px}.hero-copy h1{font-size:52px}.hero-description{font-size:12px}.hero-buttons .button{gap:10px;min-height:47px}.hero-buttons .button-secondary{padding-inline:12px}.image-label{left:23px;bottom:36px}.image-label strong{font-size:19px}.availability-card{right:-10px;padding:17px}.trust-strip strong{font-size:10px}.trust-strip>.container>div{padding:0 12px}.trust-strip .icon{width:20px;height:20px}.services-layout{gap:55px}.services-intro h2{font-size:35px}.services-intro>p:not(.eyebrow){font-size:12px}.section{padding:78px 0}.feature-grid{gap:45px}.feature-photo{height:455px}.process-grid{gap:30px}.section-heading{gap:25px}.review-grid{gap:17px}.review-grid figure{padding:24px}.review-grid blockquote{font-size:16px}.county-grid h3{font-size:16px}.county-grid>a+a{padding-left:23px}.county-grid>a>svg{right:17px}.cta-inner{padding:38px}.cta-inner h2{font-size:28px}.cta-inner p:not(.eyebrow){font-size:11px}.footer-top{grid-template-columns:1.25fr .8fr .9fr 1fr;gap:25px}.footer-brand>a{width:150px}.footer-brand>p{font-size:18px}.footer-brand>span{font-size:7px}.service-hero-grid{gap:35px;grid-template-columns:1.1fr 1fr}.service-hero h1{font-size:43px}.service-hero-visual{height:355px}.service-photo-label{font-size:9px;padding:13px}.topic-card h3{font-size:18px}.topic-card p{font-size:11px}.approach-grid{gap:60px}.advice-card{padding:32px}.faq-layout{gap:60px}.emergency-grid{gap:40px;grid-template-columns:1.1fr .9fr}.emergency-hero h1{font-size:46px}.price-card{padding:28px}.areas-hero-grid{gap:45px}.area-statement{padding:30px}.area-controls{gap:20px}.area-filters>button{padding:9px 13px;font-size:10px}.town-grid{grid-template-columns:repeat(3,1fr)}.town-card{padding:20px}.contact-grid{gap:40px;grid-template-columns:.75fr 1.25fr}.enquiry-panel{padding:28px}.form-row{gap:13px}.contact-number{font-size:21px}.opening-hours{font-size:10px}.contact-block{padding-left:32px}.form-heading>h2{font-size:27px}.about-statement{padding:30px}.about-story{gap:40px}.standards-grid{gap:35px}}
@media(max-width:780px){html{scroll-padding-top:95px}.container{width:calc(100% - 40px)}.preview-bar>.container{height:29px}.preview-bar-note{display:none!important}.preview-bar{font-size:8px;letter-spacing:.1em}.preview-bar a{font-size:8px;letter-spacing:0}.header-inner{height:73px}.brand{width:145px;height:49px;padding:8px 10px}.mobile-navigation{top:73px;height:calc(100dvh - 73px)}h1{font-size:47px}h2{font-size:33px}.section{padding:60px 0}.eyebrow{font-size:9px;margin-bottom:16px}.home-hero{background:linear-gradient(180deg,#fff 0%,#fff 57%,var(--paper) 57%,var(--paper) 100%);padding:38px 0 45px}.hero-grid{grid-template-columns:1fr;gap:32px}.hero-copy .eyebrow{font-size:8px;margin-bottom:19px}.hero-copy h1{font-size:54px;line-height:1.1}.hero-description{font-size:12px;line-height:1.95;margin-top:20px;max-width:490px}.hero-buttons{margin-top:23px;gap:10px}.hero-buttons .button{font-size:10px;padding:12px 16px;min-height:48px;gap:15px}.hero-location{margin-top:22px;font-size:9px}.hero-visual{height:340px;margin-top:2px;margin-right:8px}.hero-image{object-position:50% 55%}.image-label{left:22px;bottom:27px}.image-label span{font-size:7px}.image-label strong{font-size:20px}.availability-card{right:-8px;bottom:11px;padding:14px 16px;gap:11px}.availability-card strong{font-size:10px}.availability-card small{font-size:8px}.availability-card>svg{width:15px;margin-left:6px}.trust-strip>.container{grid-template-columns:1fr 1fr;gap:23px 14px;padding-top:27px;padding-bottom:27px}.trust-strip>.container>div,.trust-strip>.container>div:first-child{padding:0;border:0;gap:10px}.trust-strip strong{font-size:10px}.trust-strip small{font-size:8px;margin-top:3px}.trust-strip .icon{width:22px;height:22px}.services-layout{grid-template-columns:1fr;gap:28px}.services-intro h2{font-size:34px}.services-intro h2 br:nth-child(2){display:none}.services-intro>p:not(.eyebrow){font-size:12px;max-width:480px;margin:20px 0}.services-mini-note{display:none}.service-list>a{padding:23px 0;gap:20px}.service-list h3{font-size:24px}.service-list p{font-size:10px;max-width:260px}.service-number{font-size:8px}.round-arrow{width:33px;height:33px}.feature-grid{grid-template-columns:1fr;gap:50px}.feature-photo{height:370px}.feature-copy>p:not(.eyebrow){font-size:12px;max-width:520px;margin-top:19px}.check-list{margin:23px 0}.feature-copy .button{font-size:11px}.process-grid{grid-template-columns:1fr;gap:25px}.process-grid article{position:relative;padding:24px 0 0 45px}.process-grid article>span{position:absolute;left:0;top:26px;margin:0}.process-grid h3{font-size:18px;margin-bottom:12px}.process-grid p{font-size:11px;max-width:450px}.section-heading{display:block;margin-bottom:30px}.section-heading>.text-link{margin-top:22px;font-size:10px}.section-intro{font-size:12px;margin-top:18px}.review-grid{grid-template-columns:1fr;gap:16px}.review-grid figure{padding:25px;min-height:210px}.review-grid blockquote{font-size:19px;padding:15px 0 25px;max-width:400px}.review-grid .stars{font-size:12px}.review-grid figcaption strong{font-size:10px}.review-grid figcaption small{font-size:8px}.county-grid{grid-template-columns:1fr}.county-grid>a,.county-grid>a+a{border-left:0;border-top:1px solid var(--line);padding:25px 50px 25px 0}.county-grid>a:first-child{border-top:0}.county-grid h3{font-size:19px;margin-top:10px}.county-grid span{font-size:8px}.county-grid>a>svg{top:29px;right:8px}.cta-section{padding-bottom:40px}.cta-inner{padding:30px 25px;display:block}.cta-inner h2{font-size:29px;line-height:1.3}.cta-inner p:not(.eyebrow){font-size:11px;margin-top:16px}.cta-inner .eyebrow{font-size:8px}.cta-actions{align-items:flex-start;margin-top:25px;gap:18px}.cta-actions .button{min-height:48px;font-size:11px}.cta-phone{font-size:11px}.site-footer{padding-top:45px;padding-bottom:90px}.footer-top{grid-template-columns:1fr 1fr;gap:35px 25px;padding-bottom:30px}.footer-brand{grid-column:1/-1}.footer-brand>a{width:170px}.footer-brand>p{font-size:20px;margin-top:17px}.footer-brand>span{font-size:8px;margin-top:15px}.footer-top h3{margin-bottom:14px;font-size:10px}.footer-top>div:not(.footer-brand)>a{font-size:10px}.footer-contact{grid-column:1/-1;border-top:1px solid #ffffff20;padding-top:25px}.footer-contact>a{font-size:20px!important}.footer-contact>p{font-size:10px}.footer-contact>a:last-child{font-size:11px!important}.footer-bottom{display:block}.footer-bottom>div{margin-top:18px;gap:22px;font-size:9px}.footer-bottom p{font-size:8px;line-height:1.9}.footer-preview{font-size:8px;line-height:1.9;max-width:400px}.mobile-callbar{position:fixed;bottom:0;left:0;right:0;z-index:60;display:grid;grid-template-columns:1fr 1fr;background:#fff;border-top:1px solid #dadfd1;padding:10px 15px calc(10px + env(safe-area-inset-bottom));gap:10px;box-shadow:0 -3px 15px #20262108}.mobile-callbar>a{display:flex;align-items:center;justify-content:center;gap:10px;font-size:10px;font-weight:800;min-height:40px;background:var(--dark);color:#fff}.mobile-callbar>a:last-child{background:var(--gold);color:var(--ink)}.mobile-callbar svg{width:16px;height:16px}.menu-open .mobile-callbar{display:none}.breadcrumb{padding-top:19px;font-size:8px;gap:10px}.service-hero{padding:30px 0 45px}.service-hero-grid{grid-template-columns:1fr;gap:30px}.service-hero h1{font-size:43px;line-height:1.13}.service-hero .hero-description{font-size:12px;margin-top:21px}.service-hero .hero-copy .eyebrow{margin-bottom:18px}.simple-phone{font-size:10px;padding-inline:5px}.service-hero-visual{height:305px}.service-photo-label{font-size:9px;padding:13px;left:16px;right:16px;bottom:16px;gap:10px}.service-photo-label .icon{width:20px;height:20px}.topic-grid{grid-template-columns:1fr 1fr;gap:14px}.topic-card{padding:20px;min-height:250px}.topic-top{margin-bottom:20px}.topic-top>span{font-size:9px}.topic-top>.icon{width:22px;height:22px}.topic-card h3{font-size:18px;line-height:1.4}.topic-card p{font-size:10px;line-height:1.9;margin-bottom:20px}.topic-card>a{font-size:9px;gap:8px}.topic-card>a>svg{width:14px;height:14px}.approach-grid{grid-template-columns:1fr;gap:35px}.approach-grid>div>p:not(.eyebrow){font-size:12px;margin-top:22px}.advice-card{padding:30px}.advice-card h3{font-size:28px}.advice-card>p{font-size:12px}.advice-card>.button{min-height:48px;font-size:11px}.faq-layout{grid-template-columns:1fr;gap:30px}.faq-layout h2 br{display:none}.faq-layout>div>p:not(.eyebrow){font-size:11px;margin-top:20px}.faq-layout .text-link{font-size:10px}.faqs summary{font-size:12px;gap:20px}.faqs>details{padding:20px 0}.faqs p{font-size:11px}.coverage-strip{padding:25px 0;margin-bottom:40px}.coverage-strip>.container{display:block}.coverage-strip>.container>div{gap:12px}.coverage-strip p{font-size:10px;line-height:1.9}.coverage-strip p strong{display:block}.coverage-strip .text-link{margin:18px 0 0 35px;font-size:10px}.gas-note{padding:18px 0}.gas-note>.container{align-items:flex-start;gap:13px}.gas-note .icon{margin-top:3px;width:20px;height:20px}.gas-note p{font-size:10px}.gas-note p>strong{display:block}.gas-note .safety-source{font-size:8px}.emergency-hero{padding:40px 0;margin-top:20px}.emergency-grid{grid-template-columns:1fr;gap:32px}.emergency-hero h1{font-size:44px;line-height:1.15}.emergency-hero .eyebrow{font-size:8px}.emergency-hero .hero-description{font-size:12px}.emergency-hero .hero-buttons{gap:12px}.emergency-hero .hero-buttons>.button{font-size:10px;padding-inline:14px}.emergency-small{font-size:9px;line-height:2}.price-card{padding:28px}.price{font-size:58px}.price-ex-vat{font-size:9px}.price-card .check-list{padding:12px 0}.price-card .check-list li{font-size:11px}.price-card>p:not(.price-ex-vat){font-size:11px}.text-hero{padding:35px 0 50px}.areas-hero-grid{grid-template-columns:1fr;gap:30px}.text-hero h1{font-size:48px}.text-hero .hero-description{font-size:12px}.text-hero .button{margin-top:23px;font-size:11px}.area-statement{padding:25px 30px;display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:end}.area-statement>p{font-size:21px}.area-statement>span:last-child{font-size:10px;margin-bottom:5px}.area-statement-symbol{top:20px;right:20px}.area-statement-symbol .icon{width:24px;height:24px}.area-controls{display:block}.area-filters{gap:7px}.area-filters>button{padding:8px 13px;font-size:10px}.area-search{margin-top:18px;max-width:none}.area-search>input{padding-block:12px}.area-count{font-size:9px;margin-top:18px}.town-grid{grid-template-columns:1fr 1fr;gap:12px}.town-card{padding:20px 17px}.town-card span{font-size:8px}.town-card h3{font-size:17px}.town-card>svg{width:15px;height:15px}.area-footnote{font-size:10px;line-height:2}.area-empty{padding:28px}.area-empty h3{font-size:20px}.area-empty p{font-size:11px}.about-statement{padding:30px}.big-number{font-size:100px}.about-statement>p{font-size:21px}.about-statement>p br{display:none}.about-statement>div{font-size:10px}.about-story{grid-template-columns:1fr;gap:45px}.about-photo{height:370px}.about-story>div>p:not(.eyebrow){font-size:12px;margin-top:20px}.standards-grid{grid-template-columns:1fr;gap:30px}.standards-grid article{padding-top:23px}.standards-grid .icon{margin-bottom:20px;width:26px;height:26px}.standards-grid h3{font-size:21px}.standards-grid p{font-size:11px;margin-top:13px;max-width:450px}.contact-hero{padding:30px 0 35px}.contact-hero h1{font-size:43px;line-height:1.15}.contact-hero .hero-description{font-size:12px;margin-top:21px}.contact-grid{grid-template-columns:1fr;gap:25px}.contact-aside{padding-top:0;display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-block{padding:22px 0 20px 0}.contact-block:first-child{grid-column:1/-1;padding-left:35px}.contact-icon{position:static;display:block;margin-bottom:16px}.contact-block:first-child>.contact-icon{position:absolute;top:23px;left:0;margin:0}.contact-number{font-size:26px}.contact-block>p:not(.eyebrow){font-size:10px;max-width:400px}.contact-block h2{font-size:17px}.contact-block .eyebrow{margin-bottom:8px}.opening-hours{font-size:9px;margin:16px 0}.opening-hours>div{display:block;margin:10px 0}.opening-hours dd{margin-top:2px}.contact-block .text-link{font-size:9px;gap:10px}.enquiry-panel{padding:26px 22px}.form-heading>h2{font-size:28px}.form-heading>p:last-child{font-size:11px}.demo-form-note{padding:13px;gap:9px}.demo-form-note p{font-size:9px}.form-row{gap:14px}form{gap:19px}form label{font-size:10px}form input:not([type=file]),form textarea,form select{font-size:16px;padding:11px;line-height:1.5}form select{min-height:48px}.optional{font-size:8px!important}.form-submit{font-size:11px;min-height:50px}.form-footnote{font-size:9px}.contact-section{padding-bottom:45px}.enquiry-result>h2{font-size:28px}.enquiry-result dl>div{grid-template-columns:90px 1fr;gap:12px;font-size:10px}.result-notice{font-size:11px}.enquiry-result>.text-link{font-size:9px}}
@media(max-width:400px){.container{width:calc(100% - 32px)}.preview-bar a{font-size:7px}.preview-bar{font-size:7px}.hero-copy h1{font-size:47px}.hero-buttons .button{font-size:9px;padding-inline:12px;gap:10px}.hero-visual{height:300px}.image-label strong{font-size:17px}.availability-card{padding:12px}.trust-strip>.container{gap:22px 10px}.trust-strip strong{font-size:9px}.trust-strip small{font-size:7px}.trust-strip .icon{width:19px;height:19px}.service-list p{max-width:230px;font-size:9px}.service-list>a{gap:16px}.topic-grid{grid-template-columns:1fr}.topic-card{min-height:220px;padding:25px}.topic-card h3{font-size:21px}.topic-card p{font-size:12px}.topic-card>a{font-size:10px}.service-hero h1{font-size:38px}.town-card{padding:18px 13px}.town-card h3{font-size:16px}.area-filters>button{padding:8px 10px;font-size:9px}.contact-hero h1{font-size:37px}.enquiry-panel{padding:23px 18px}.form-row{grid-template-columns:1fr;gap:19px}.enquiry-result dl>div{display:block}.enquiry-result dd{margin-top:5px}.emergency-hero h1{font-size:39px}.emergency-hero .hero-buttons>.button{font-size:9px;padding-inline:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Keep long-form copy comfortable to read on smaller screens. */
form input:not([type=file]),form textarea,form select{font-weight:500}
@media(max-width:780px){
 .hero-description,.service-hero .hero-description,.text-hero .hero-description,.contact-hero .hero-description,.emergency-hero .hero-description{font-size:14px}
 .services-intro>p:not(.eyebrow),.feature-copy>p:not(.eyebrow),.approach-grid>div>p:not(.eyebrow),.about-story>div>p:not(.eyebrow){font-size:14px}
 .section-intro,.process-grid p,.faqs p,.standards-grid p,.advice-card>p{font-size:13px}
 .service-list p,.check-list li,.topic-card p,.contact-block>p:not(.eyebrow),.coverage-strip p,.area-footnote{font-size:12px}
 .faqs summary{font-size:14px}.form-heading>p:last-child{font-size:13px}.demo-form-note>p{font-size:11px}.form-footnote{font-size:11px}.price-card>p:not(.price-ex-vat){font-size:12px}
}

/* Clearer primary navigation, with contact actions always in reach. */
.desktop-nav{font-size:14px;gap:24px}.header-phone{font-size:12px}
@media(min-width:1061px) and (max-width:1200px){.desktop-nav{gap:20px}.header-inner{gap:22px}}
@media(max-width:1060px){
 .menu-toggle{font-size:14px;min-height:48px;gap:12px;padding:0 4px 0 16px}
 .menu-lines{width:24px;height:16px}.menu-lines:before{width:24px;top:7px}
 .menu-toggle[aria-expanded=true] .menu-lines{height:24px;width:24px}
 .menu-toggle[aria-expanded=true] .menu-lines:before,.menu-toggle[aria-expanded=true] .menu-lines:after{width:24px;top:12px}
 .mobile-navigation{position:fixed;top:var(--mobile-nav-top,80px);bottom:0;height:auto;max-height:none;padding:0;overflow:hidden;border-top:1px solid var(--line)}
 .mobile-menu-shell{height:100%;display:flex;flex-direction:column;padding:22px 0 max(20px,env(safe-area-inset-bottom));min-height:0}
 .mobile-menu-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding-bottom:22px}
 .mobile-menu-scroll>.eyebrow{font-size:10px;margin-bottom:14px}
 .mobile-primary-links>a,.mobile-services>summary{display:flex;align-items:center;justify-content:space-between;min-height:60px;padding:15px 0;border-bottom:1px solid #e2e5db;font-size:22px;font-weight:500;line-height:1.35;letter-spacing:-.03em;list-style:none}
 .mobile-services>summary{cursor:pointer}.mobile-services>summary::-webkit-details-marker{display:none}
 .mobile-services>summary>svg{width:20px;height:20px;margin-right:6px;transition:transform .2s}
 .mobile-services[open]>summary>svg{transform:rotate(180deg)}
 .mobile-services>summary.current{color:var(--gold-dark)}
 .mobile-service-links{background:#f5f5ef;padding:6px 18px 10px;margin-bottom:4px}
 .mobile-service-links>a{display:flex;align-items:center;gap:13px;font-size:17px;line-height:1.4;min-height:51px;padding:12px 0;border-bottom:1px solid #e0e3d8}
 .mobile-service-links>a:last-child{border-bottom:0}.mobile-service-links>a>.icon{width:19px;height:19px;color:var(--gold-dark)}
 .mobile-service-links>a>svg:last-child{margin-left:auto;width:16px;height:16px}
 .mobile-nav-bottom{flex-shrink:0;margin:0;padding:20px 0 0;border-top:1px solid var(--line);background:#fff}
 .mobile-nav-bottom>.button{display:flex;min-height:52px;font-size:13px;width:100%;justify-content:space-between;padding:13px 20px}
 .mobile-nav-bottom>a:not(.button){display:flex;align-items:center;justify-content:center;gap:10px;font-size:18px;font-weight:600;margin-top:16px;min-height:30px}
 .mobile-nav-bottom>a:not(.button)>.icon{width:18px;height:18px}
 .mobile-nav-bottom>span{text-align:center;font-size:10px;line-height:1.65;margin-top:5px;color:var(--muted)}
}
@media(max-width:780px){.brand{width:135px;height:47px}.mobile-menu-shell{padding-top:20px}}
@media(max-height:650px) and (max-width:1060px){.mobile-menu-shell{padding-top:12px;padding-bottom:12px}.mobile-nav-bottom{padding-top:12px}.mobile-nav-bottom>a:not(.button){margin-top:8px}.mobile-nav-bottom>span{font-size:9px}.mobile-primary-links>a,.mobile-services>summary{min-height:56px;font-size:21px}}

/* Service-specific enquiry demo. */
.form-steps{list-style:none;display:flex;padding:0 0 22px;margin:0;border-bottom:1px solid var(--line);gap:20px;justify-content:space-between}
.form-steps li{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--muted);font-weight:600;white-space:nowrap}
.form-steps li>span{display:flex;align-items:center;justify-content:center;width:25px;height:25px;border:1px solid #cdd1c3;border-radius:50%;font-size:10px}
.form-steps li[aria-current]{color:var(--ink)}.form-steps li[aria-current]>span{background:var(--dark);color:#fff;border-color:var(--dark)}.form-steps .step-done>span{background:#ede5d3;border-color:var(--gold)}
.question-step{display:flex;flex-direction:column;gap:22px;scroll-margin-top:110px}.question-step h3{font-size:25px;scroll-margin-top:110px}.question-step h3:focus{outline:0}.step-intro{font-size:12px;line-height:1.9;margin-top:-10px}
.service-questions{display:flex;flex-direction:column;gap:19px;background:#f0f1e9;padding:23px;border-top:2px solid var(--gold)}.service-questions:empty{display:none}.service-questions h4{font-size:12px;margin:0 0 3px;font-weight:700;letter-spacing:0}
.service-safety{padding:19px;background:#f6ecda;border-left:2px solid var(--gold-dark);font-size:12px}.service-safety p{font-size:11px;margin:10px 0;color:#665a42}.service-safety a{font-weight:800;text-decoration:underline;text-underline-offset:3px}
.step-actions{display:flex;gap:12px;justify-content:space-between;flex-wrap:wrap}.step-actions .button{font-size:11px;padding-inline:17px;gap:10px}
.review-edit-actions{display:flex;gap:22px;flex-wrap:wrap}.review-edit-actions button{background:none;border:0;border-bottom:1px solid var(--gold);padding:0 0 5px;color:var(--ink);font-size:12px;font-weight:700}
.request-notice{font-size:11px;background:#efeee5;padding:16px;border-left:2px solid var(--gold)}
.question-step.enquiry-result dl{margin:0}.question-step.enquiry-result dl>div{grid-template-columns:150px 1fr;font-size:12px}.question-step.enquiry-result dt{line-height:1.8}.question-step.enquiry-result dd{line-height:1.8}
@media(max-width:780px){.enquiry-panel{padding:25px 20px}.form-steps{gap:8px}.form-steps li{font-size:10px;gap:6px}.form-steps li>span{width:23px;height:23px}.question-step h3{font-size:24px}.step-intro{font-size:13px}.service-questions{padding:18px 15px}.service-questions h4{font-size:13px}.service-safety p{font-size:12px}.question-step.enquiry-result dl>div{display:block}.question-step.enquiry-result dd{margin-top:5px}.step-actions>.button{flex:1}.request-notice{font-size:12px}}
@media(max-width:400px){.form-steps{gap:6px}.form-steps li{font-size:9px}.service-questions{padding:17px 13px}}
/* Preferred visits: all availability is visibly labelled as demo data. */
.appointment-picker{padding:22px;border:1px solid #d8d8cb;background:white;margin:4px 0}.appointment-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.appointment-picker h4{margin:0;font-size:17px;letter-spacing:-.02em}.calendar-demo-note{font-size:11px;background:#f3edde;padding:12px 14px;margin:15px 0 10px;line-height:1.7;color:#555746}.calendar-intro{font-size:12px;line-height:1.7}.calendar-nav{display:flex;align-items:center;justify-content:space-between;margin:20px 0 12px}.calendar-nav h5{margin:0;font-size:15px}.calendar-nav button{width:40px;height:40px;border:1px solid var(--line);background:white}.calendar-nav button:disabled{opacity:.3}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekdays{text-align:center;font-size:10px;font-weight:800;color:var(--muted);padding:0 0 10px}.calendar-days button{height:43px;min-width:0;padding:0;border:1px solid #ccd0c5;color:var(--ink);background:#fafbf5;font-size:12px}.calendar-days button:disabled{background:#efefec;color:#b2b4ae;border-color:transparent;text-decoration:line-through}.calendar-days button[aria-pressed=true],.calendar-slot[aria-pressed=true]{background:var(--dark);color:#fff;border-color:var(--dark)}.calendar-today{box-shadow:inset 0 -2px var(--gold)}.calendar-legend{display:flex;gap:18px;flex-wrap:wrap;font-size:10px;color:var(--muted);margin:12px 0 20px}.calendar-legend span{display:flex;align-items:center;gap:7px}.calendar-legend i{width:9px;height:9px;background:#fafbf5;border:1px solid #ccd0c5}.calendar-legend span:last-child i{background:#e7e8e4;border-color:#e7e8e4}.calendar-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.calendar-slot{border:1px solid #ccd0c5;background:#fafbf5;padding:12px 5px;font-size:12px;min-height:48px;line-height:1.4}.calendar-slot:disabled{background:#efefec;color:#a6aaa0;border-color:transparent}.calendar-slot small{display:block;font-size:8px;margin-top:5px}.appointment-picker h5{font-size:12px;margin:16px 0 10px}.calendar-status{font-size:11px;line-height:1.7;margin-top:14px}.calendar-clear{border:0;background:none;text-decoration:underline;padding:8px 0 0;font-size:10px;color:var(--gold-dark);text-align:left}.landing-hero{padding:64px 0;background:#f6f5ee}.landing-hero .hero-grid{grid-template-columns:1.15fr 1fr;gap:55px}.landing-hero h1{font-size:clamp(38px,4.3vw,60px)}.landing-hero figure{position:relative;margin:0}.landing-hero img{height:410px;width:100%;object-fit:cover}.landing-hero figcaption{font-size:9px;margin-top:8px;color:var(--muted)}.landing-location{font-size:11px;margin-top:24px}.landing-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.landing-benefits article{border-top:1px solid var(--gold);padding:30px 0 0}.landing-benefits article>span{font-size:10px;color:var(--gold-dark);font-weight:800}.landing-benefits h3{margin:18px 0 15px}.landing-benefits p{font-size:13px}.landing-expect{background:var(--dark);color:#fff;padding:56px 0}.landing-expect>.container{display:grid;grid-template-columns:1fr 1fr;gap:70px}.landing-expect p{color:#d1d4ca;font-size:13px}.landing-expect .eyebrow{color:var(--gold)}.landing-form-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.landing-form-layout>div:first-child>p:not(.eyebrow){margin-top:24px;font-size:14px;max-width:350px}.landing-phone{margin-top:32px;border-top:1px solid var(--line);padding-top:26px}.landing-phone a{font-size:23px;font-weight:700;display:flex;align-items:center;gap:12px}.landing-phone span{font-size:11px;display:block;color:var(--muted);margin-top:12px}.area-hub-hero{background:#f6f5ee;padding:65px 0}.area-hub-hero>.container{display:grid;grid-template-columns:1.35fr 1fr;gap:90px;align-items:center}.area-hub-hero h1{font-size:clamp(40px,4.7vw,64px)}.area-hub-hero aside{padding:36px;background:var(--dark);color:#fff}.area-hub-hero aside>.icon,.area-hub-hero aside>span{color:var(--gold);display:block;margin-bottom:24px}.area-hub-hero aside h2{font-size:29px}.area-hub-hero aside p{color:#c6ccbf;font-size:12px;margin:25px 0}.area-hub-hero aside .text-link{color:#dfd0a6}.hub-service-grid,.specialist-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.hub-service-card,.specialist-card{border:1px solid var(--line);padding:30px;display:flex;align-items:start;flex-direction:column;transition:border-color .2s}.hub-service-card:hover,.specialist-card:hover{border-color:var(--gold-dark)}.hub-service-card>.icon,.specialist-card>.icon{color:var(--gold-dark);margin-bottom:25px}.hub-service-card h3,.specialist-card h3{font-size:22px;margin-bottom:16px}.hub-service-card p,.specialist-card p{font-size:12px;margin-bottom:25px}.hub-service-card>span,.specialist-card>span{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:11px;font-weight:800;width:100%;margin-top:auto}.hub-service-card>span svg,.specialist-card>span svg{width:20px}.specialist-heading{margin-top:70px}.county-town-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.county-town-grid a{border:1px solid var(--line);padding:28px;position:relative}.county-town-grid span{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--gold-dark);font-weight:800}.county-town-grid h3{margin-top:13px}.county-town-grid svg{width:22px;position:absolute;right:22px;bottom:28px}.county-hub-links,.nearby-links{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:35px}.county-hub-links a,.nearby-links a{border-bottom:1px solid var(--gold);display:flex;gap:20px;align-items:center;font-size:12px;font-weight:700;padding:10px 0}.county-hub-links svg,.nearby-links svg{width:18px}.campaign-page .service-hero{padding-top:48px}.enquiry-panel{scroll-margin-top:20px}
@media(max-width:1000px){.landing-form-layout{grid-template-columns:.7fr 1.3fr;gap:35px}.area-hub-hero>.container{gap:35px}.landing-hero .hero-grid{gap:35px}.hub-service-grid,.specialist-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.landing-hero{padding:40px 0}.landing-hero .hero-grid,.area-hub-hero>.container,.landing-form-layout,.landing-expect>.container{grid-template-columns:1fr;gap:32px}.landing-hero img{height:250px}.landing-benefits,.county-town-grid{grid-template-columns:1fr}.landing-benefits{gap:25px}.area-hub-hero{padding:40px 0}.area-hub-hero aside{padding:28px}.hub-service-grid,.specialist-grid{grid-template-columns:1fr}.landing-expect{padding:40px 0}.landing-form-section{padding-top:50px}.landing-form-layout>.enquiry-panel{padding:22px 18px}.appointment-picker{padding:15px 12px}.calendar-days button{height:40px}.calendar-slots{gap:5px}.calendar-slot{font-size:10px}.calendar-legend{font-size:9px;gap:10px}.landing-form-layout>.enquiry-panel h2{font-size:30px}.landing-form-layout .form-steps{gap:6px}.landing-form-layout .form-steps li{font-size:9px}.county-hub-links{gap:12px}.county-hub-links a{font-size:11px}.landing-phone a{font-size:22px}}

/* The coverage directory grows from a single editable areas list. */
.area-controls{align-items:flex-start}.area-filters{flex:1}.area-search{flex-shrink:0}.county-hub-links{column-gap:28px;row-gap:10px}.area-pagination{text-align:center;margin:30px 0 0}.area-filters button{white-space:normal;text-align:left}.area-filters button[data-county="West & South West London"]{max-width:200px}
@media(max-width:700px){.area-controls{align-items:stretch}.area-filters{gap:8px}.area-filters button{font-size:10px;padding:10px 13px;min-height:42px}.county-hub-links{column-gap:20px;row-gap:6px}.area-pagination .button{width:100%;white-space:normal}.area-statement strong{font-size:clamp(30px,8vw,42px)}}
@media(max-width:700px){.area-statement{display:block}.area-statement>p{font-size:21px;line-height:1.35}.area-statement strong{font-size:30px}.area-statement>span:last-child{margin-top:20px;margin-bottom:0}.area-search{order:-1}}
/* A calm, search-first directory. Towns are rendered alphabetically at build time. */
.area-directory-width{max-width:1040px}.area-directory-hero{padding:48px 0 34px}.area-directory-hero h1{font-size:clamp(38px,4.7vw,58px)}.area-directory-hero .eyebrow{margin-bottom:14px}.area-directory-hero p:not(.eyebrow){font-size:14px;margin-top:16px}.area-directory{padding:0 0 65px}.area-search-toolbar{display:grid;grid-template-columns:2fr 1fr;gap:20px;padding:26px;background:#f5f5ef;border:1px solid #e9e9e0}.area-search-toolbar label>span{display:block;font-size:11px;font-weight:700;line-height:1.5;margin-bottom:10px}.directory-search>div{position:relative}.directory-search .icon{position:absolute;left:16px;top:17px;width:19px;height:19px;color:#7d8478;pointer-events:none}.directory-search input,.directory-region select{background:#fff;border:1px solid #d3d7cb;height:54px;border-radius:0;color:var(--ink);width:100%;font-size:14px}.directory-search input{padding:12px 15px 12px 45px}.directory-region select{padding:12px 34px 12px 14px}.directory-list-heading{display:flex;align-items:center;justify-content:space-between;font-size:11px;margin:28px 0 10px;gap:20px;color:var(--muted)}.directory-list-heading>span{font-size:10px}.directory-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:42px}.area-list-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:15px;row-gap:3px;min-height:72px;padding:16px 2px;border-bottom:1px solid var(--line)}.area-list-item>span{font-size:16px;line-height:1.4;letter-spacing:-.02em;font-weight:600}.area-list-item small{grid-column:1;font-size:10px;color:var(--muted);line-height:1.4}.area-list-item>svg{grid-column:2;grid-row:1 / span 2;width:18px;color:var(--gold-dark)}.area-list-item:hover>span{text-decoration:underline;text-underline-offset:4px}.area-list-item:hover>svg{transform:translateX(3px)}.area-directory .area-pagination{margin:30px 0 0}.area-directory .area-pagination .button{min-width:210px;background:white;border-color:#cbd0c3;font-size:11px;min-height:46px}.directory-help{font-size:12px;text-align:center;margin-top:38px}.directory-help>a{font-weight:700;color:var(--ink);display:inline-flex;align-items:center;gap:8px}.directory-help svg{width:15px;height:15px}.directory-regions{margin-top:38px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.directory-regions summary{font-size:12px;font-weight:700;list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:20px 0}.directory-regions summary::-webkit-details-marker{display:none}.directory-regions summary>span{color:var(--gold-dark);font-size:20px;line-height:1}.directory-regions[open] summary>span{transform:rotate(45deg)}.directory-regions>div{display:grid;grid-template-columns:repeat(2,1fr);gap:0 36px;padding:0 0 18px}.directory-regions a{font-size:12px;padding:12px 0;display:flex;align-items:center;justify-content:space-between;gap:15px}.directory-regions svg{width:17px;color:var(--gold-dark)}.directory-empty{text-align:center;padding:36px 20px;background:#f7f7f2}.directory-empty h3{font-size:22px}.directory-empty p{font-size:13px;margin:12px 0 18px}.directory-empty button{background:none;border:0;border-bottom:1px solid var(--gold);padding:4px;font-size:12px}
@media(max-width:700px){.area-directory-hero{padding:30px 0 25px}.area-directory-hero .eyebrow{font-size:9px;margin-bottom:12px}.area-directory-hero h1{font-size:38px}.area-directory-hero p:not(.eyebrow){font-size:13px;margin-top:12px}.area-search-toolbar{grid-template-columns:1fr;gap:17px;padding:20px}.directory-search input,.directory-region select{font-size:15px;height:52px}.directory-region{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:18px}.directory-region>span{margin:0!important;font-size:11px}.directory-region select{height:44px;font-size:12px}.directory-list-heading{margin-top:24px}.directory-results{grid-template-columns:1fr;column-gap:0}.area-list-item{min-height:64px;padding:13px 2px}.area-list-item>span{font-size:16px}.area-list-item small{font-size:10px}.directory-help{font-size:11px;line-height:1.8;margin-top:30px}.directory-regions{margin-top:28px}.directory-regions>div{grid-template-columns:1fr;padding-bottom:15px}.directory-regions summary{font-size:11px}.area-directory{padding-bottom:38px}}
/* Production enquiries, private inbox and cookie controls */
.form-trap{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.enquiry-result #form-error,#form-error{padding:16px;border-left:3px solid #a0392d;background:#fff0ed;color:#732b23}.form-submit:disabled{opacity:.65;cursor:wait}.cookie-banner{position:fixed;z-index:1200;bottom:20px;left:20px;width:min(520px,calc(100% - 40px));padding:24px;background:#fff;color:#202421;border:1px solid #dadbd4;box-shadow:0 12px 50px #0003;border-radius:8px}.cookie-banner h2{font-size:23px;margin:0 0 12px}.cookie-banner p{font-size:14px;line-height:1.6;margin-bottom:16px}.cookie-actions{display:flex;gap:8px;flex-wrap:wrap}.cookie-actions button{padding:10px 14px;border:1px solid #202421;background:#202421;color:white;cursor:pointer;border-radius:3px;font:inherit;font-size:13px}.cookie-actions button:nth-child(n+2){background:white;color:#202421}.cookie-panel{border-top:1px solid #ddd;margin-top:16px;padding-top:16px}.cookie-panel label{display:flex;gap:12px;align-items:center;margin-bottom:12px;font-size:14px}.cookie-panel input{width:18px;height:18px}.cookie-panel .button{font-size:13px;padding:12px}.admin-shell{padding-top:50px;padding-bottom:80px}.admin-shell h1{font-size:clamp(32px,5vw,56px);margin:20px 0}.admin-shell p{margin:16px 0;max-width:850px}.admin-table-wrap{overflow:auto;margin:30px 0}.admin-table-wrap table{border-collapse:collapse;width:100%;font-size:14px}.admin-table-wrap th,.admin-table-wrap td{text-align:left;border-bottom:1px solid #ddd;padding:16px 10px}.admin-details>div{display:grid;grid-template-columns:minmax(100px,220px) 1fr;padding:12px;border-bottom:1px solid #ddd;gap:20px}.admin-details dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.admin-settings{padding:20px;border:1px solid #ddd;margin-top:30px}.admin-settings summary{cursor:pointer;font-weight:700}.admin-shell input,.admin-shell select{display:block;width:100%;max-width:600px;border:1px solid #ccc;padding:12px;font:inherit;margin:12px 0 20px}.admin-shell label{display:block}.site-footer [data-cookie-settings]{color:inherit;font:inherit}.section h2{scroll-margin-top:120px}@media(max-width:600px){.cookie-banner{bottom:90px;padding:18px;max-height:70vh;overflow:auto}.admin-details>div{grid-template-columns:1fr;gap:5px}}
/* Keep mobile form controls inside their columns, including iOS intrinsic sizes. */
.ldm-quote-form,.question-step,.appointment-picker,.service-questions{min-width:0;max-width:100%}.ldm-quote-form .form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.ldm-quote-form input,.ldm-quote-form select,.ldm-quote-form textarea{box-sizing:border-box;min-width:0;max-width:100%;width:100%}.calendar-days{grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-days button{min-width:0;width:100%;padding:8px 0}.calendar-slots{grid-template-columns:repeat(3,minmax(0,1fr))}.calendar-slot{min-width:0;white-space:normal}.calendar-legend{flex-wrap:wrap;gap:12px}.appointment-heading{gap:12px}.calendar-nav h5{min-width:0;text-align:center}.calendar-demo-note{margin:12px 0 18px!important}.calendar-days button:disabled{background:#eeeee9;color:#858980;text-decoration:line-through;opacity:.75}.calendar-days button:not(:disabled){border:1px solid #a1ac97;background:#f4f6ef;color:#293628}.calendar-days button[aria-pressed=true]{background:#202b22;color:#fff;border-color:#202b22}.calendar-slot:disabled{background:#eeeee9;color:#858980}.calendar-slot small{display:block;font-size:10px}.calendar-clear{white-space:normal;text-align:left}.calendar-days button:focus-visible{outline:3px solid #a88742;outline-offset:1px}
@media(max-width:760px){.ldm-quote-form .form-row{grid-template-columns:minmax(0,1fr);gap:18px}.ldm-quote-form .appointment-picker{padding:18px 14px}.ldm-quote-form .calendar-slots{grid-template-columns:1fr}.ldm-quote-form .calendar-days{gap:5px}.calendar-days button{min-height:36px}.appointment-heading h4{font-size:17px}.calendar-intro,.calendar-demo-note{font-size:12px!important;line-height:1.65}.ldm-quote-form label{overflow-wrap:anywhere}.ldm-quote-form select{padding-right:28px!important}}
.ad-area{display:block;font-size:.53em;letter-spacing:-.03em;color:var(--gold-dark);margin-top:16px;line-height:1.3}.campaign-page .landing-hero{padding-bottom:48px}.campaign-page .landing-hero h1{max-width:750px}

/* Sector pricing */
.pricing-hero{padding:65px 0 50px;background:var(--cream,#f6f6f1)}.pricing-hero .hero-description{max-width:680px;margin-top:24px}.pricing-jumps{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.pricing-jumps a{display:flex;gap:24px;justify-content:space-between;border:1px solid var(--line);padding:12px 18px;background:#fff;font-weight:700;font-size:13px}.pricing-jumps a:hover{border-color:var(--gold-dark)}.pricing-sectors{padding-bottom:65px}.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.pricing-card{border:1px solid var(--line);padding:32px;display:flex;flex-direction:column;scroll-margin-top:120px}.pricing-card h2{font-size:30px;margin-bottom:18px}.pricing-card .eyebrow{margin-bottom:14px}.pricing-card p:not(.eyebrow){font-size:14px}.pricing-amount{border-block:1px solid var(--line);padding:24px 0;margin-top:24px}.pricing-amount strong{display:block;font-size:clamp(28px,2.8vw,40px);letter-spacing:-.04em;line-height:1.2}.pricing-amount span{display:block;margin-top:8px;font-size:14px}.pricing-amount small{display:block;color:var(--muted);font-size:12px;margin-top:8px}.pricing-card ul{padding-left:18px;margin:24px 0 30px;font-size:13px;color:var(--muted);flex:1}.pricing-card li+li{margin-top:12px}.pricing-card .button{white-space:normal;text-align:center;gap:12px}.pricing-footnote{font-size:13px;margin-top:24px;max-width:850px}.pricing-labour{background:#f4f4ee}.pricing-detail-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.pricing-detail-grid h2+p{margin-top:22px;max-width:440px}.pricing-rate-list>div{display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}.pricing-rate-list>div:first-child{padding-top:0}.pricing-rate-list strong{font-size:20px}.pricing-rate-list small{display:block;font-size:12px;font-weight:400;color:var(--muted)}.pricing-rate-list p{font-size:13px;margin-top:22px}.pricing-questions details{border-bottom:1px solid var(--line);padding:20px 0}.pricing-questions details:first-child{padding-top:0}.pricing-questions summary{font-weight:700;cursor:pointer;line-height:1.5}.pricing-questions p{margin-top:15px;font-size:14px}.pricing-questions a{display:inline-flex;gap:10px;margin-top:15px;font-weight:700}.pricing-questions a svg{width:20px}
@media(min-width:1061px) and (max-width:1300px){.header-phone{display:none}.desktop-nav{gap:20px}.header-inner{gap:22px}}
@media(max-width:1000px){.pricing-grid{grid-template-columns:1fr}.pricing-card{display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.pricing-card .eyebrow,.pricing-card h2,.pricing-card>p{grid-column:1}.pricing-card .pricing-amount{grid-column:2;grid-row:1/4;margin:0;align-self:start}.pricing-card ul{grid-column:1/-1}.pricing-card .button{grid-column:1/-1}.pricing-detail-grid{gap:35px}}
@media(max-width:700px){.pricing-hero{padding:35px 0}.pricing-hero h1{font-size:42px}.pricing-hero .hero-description{font-size:15px}.pricing-card{display:flex;padding:25px}.pricing-card .pricing-amount{margin-top:22px}.pricing-detail-grid{grid-template-columns:1fr;gap:30px}.pricing-sectors{padding-bottom:45px}.pricing-jumps{gap:8px}.pricing-jumps a{font-size:12px;padding:10px 12px;gap:15px}.pricing-rate-list strong{font-size:18px}.pricing-amount strong{font-size:36px}}
.pricing-examples{padding-top:0}.example-pricing-dropdown{border:1px solid var(--line)}.example-pricing-dropdown>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:32px;background:#f4f4ee;cursor:pointer}.example-pricing-dropdown>summary::-webkit-details-marker{display:none}.example-pricing-dropdown>summary .eyebrow{display:block;margin-bottom:10px}.example-pricing-title{display:block;font-size:32px;font-weight:600;letter-spacing:-.04em;line-height:1.2}.example-pricing-hint{display:block;font-size:13px;color:var(--muted);margin-top:10px}.example-pricing-toggle{font-size:30px;color:var(--gold-dark);line-height:1;transition:transform .2s}.example-pricing-dropdown[open] .example-pricing-toggle{transform:rotate(45deg)}.example-pricing-content{padding:32px}.example-pricing-intro{max-width:850px;margin-bottom:30px;font-size:14px}.example-job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.example-job{display:flex;flex-direction:column;border:1px solid var(--line);padding:24px;min-width:0}.example-job .eyebrow{margin-bottom:12px}.example-job h3{font-size:22px}.example-job-price{font-size:30px;font-weight:600;letter-spacing:-.035em;color:var(--ink);margin-top:22px;line-height:1.2}.example-job-price span{display:block;letter-spacing:0;font-size:12px;font-weight:400;margin-top:7px;color:var(--muted)}.example-job-included{font-size:13px;font-weight:700;color:var(--ink);margin-top:20px}.example-job-scope{font-size:13px;margin-top:12px;margin-bottom:24px;flex:1}.example-job .button{white-space:normal;text-align:center;gap:12px;font-size:11px;padding:12px}
@media(max-width:1000px){.example-job-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.example-pricing-dropdown>summary{padding:24px 20px}.example-pricing-title{font-size:27px}.example-pricing-content{padding:20px}.example-job-grid{grid-template-columns:1fr}.example-job{padding:22px}.example-pricing-intro{font-size:13px}}

/* Persistent navigation and restrained motion; no sticky-header size changes. */
:root{--site-header-height:92px}
html{scroll-padding-top:calc(var(--site-header-height) + 20px)}
.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:100;isolation:isolate;transition:box-shadow .2s ease}
.site-header.is-scrolled{box-shadow:0 4px 18px #2026210c}
:where(main [id]){scroll-margin-top:20px}
@media(hover:hover) and (prefers-reduced-motion:no-preference){.button>svg,.text-link>svg{transition:transform .2s ease}.button:hover>svg,.text-link:hover>svg{transform:translateX(3px)}}
@media(prefers-reduced-motion:no-preference){.mobile-navigation:not([hidden]){animation:ldm-menu-in .16s ease-out}@keyframes ldm-menu-in{from{opacity:.7}to{opacity:1}}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.site-header,.button>svg,.text-link>svg{transition:none!important}.mobile-navigation{animation:none!important}}
/* Availability shades, with text labels and a distinct selected state. */
.calendar-days button[data-availability=available]{background:#e6eee3;border-color:#a9b9a1;color:#273d27}
.calendar-days button[data-availability=limited]{background:#b9cbb1;border-color:#7c9473;color:#20361f}
.calendar-days button[data-availability=limited]:after{content:'•';display:block;position:absolute;bottom:0;left:0;right:0;font-size:12px;line-height:12px}
.calendar-days button{position:relative}
.calendar-days button[data-availability=unavailable]:disabled{background:#f0f0ec;border-color:#e0e1da;color:#8a8e84;opacity:1}
.calendar-days button[aria-pressed=true]{background:var(--gold)!important;border-color:var(--gold-dark)!important;color:#202621!important;box-shadow:inset 0 0 0 1px var(--gold-dark)}
.calendar-legend{flex-wrap:wrap;gap:10px 16px!important}.calendar-legend span{display:inline-flex;align-items:center;gap:6px}
.calendar-legend .availability-good{background:#e6eee3!important;border:1px solid #a9b9a1}
.calendar-legend .availability-limited{background:#b9cbb1!important;border:1px solid #7c9473}
.calendar-legend .availability-unavailable{background:#f0f0ec!important;border:1px solid #bfc2b8}
.calendar-legend .availability-selected{background:var(--gold)!important;border:1px solid var(--gold-dark)}
.calendar-duration-note{font-size:12px;line-height:1.65;margin-top:12px;color:var(--muted)}
/* Retained service substance in the current visual system. */
.service-detail-hero{padding:55px 0;background:var(--paper)}.service-detail-hero h1{max-width:950px}.service-detail-hero .hero-description{max-width:780px}.service-detail-width{max-width:980px}.service-detail-copy{font-size:15px;line-height:1.9}.service-detail-copy h2{font-size:32px;margin:48px 0 22px}.service-detail-copy h3{font-size:23px;margin:30px 0 14px}.service-detail-copy h4,.service-detail-copy h5,.service-detail-copy h6{font-size:19px;margin:25px 0 12px}.service-detail-copy p+p{margin-top:18px}.service-detail-copy ul,.service-detail-copy ol{padding-left:24px;margin:20px 0}.service-detail-copy li+li{margin-top:9px}.service-detail-copy a{color:var(--gold-dark);text-decoration:underline;text-underline-offset:3px}.service-detail-copy img{max-width:100%;height:auto;max-height:550px;object-fit:contain;margin:30px auto}.service-detail-section{border-top:1px solid var(--line)}.service-detail-copy>h2:first-child{margin-top:0}.service-detail-copy blockquote{border-left:2px solid var(--gold);padding-left:24px;margin:24px 0}
@media(max-width:700px){.service-detail-hero{padding:32px 0}.service-detail-hero h1{font-size:38px}.service-detail-copy{font-size:14px}.service-detail-copy h2{font-size:28px;margin-top:35px}.service-detail-copy h3{font-size:21px}.breadcrumb{flex-wrap:wrap;line-height:1.6}}
.service-detail-copy>a:has(h3){display:block;border-top:1px solid var(--line);padding:20px 0;text-decoration:none}.service-detail-copy>a:has(h3) h3{margin:0 0 10px}.service-detail-copy>a:has(h3):hover h3{text-decoration:underline;text-underline-offset:4px}.service-detail-copy>a:has(h3) p{font-size:14px}

.owner-portal-bar{background:#27362a;color:#eadbb3;padding:9px 24px;text-align:right;font-size:11px;font-weight:700;letter-spacing:.02em}.owner-portal-bar a{display:inline-flex;gap:14px;align-items:center}.owner-portal-bar a:hover{text-decoration:underline}

/* Desktop readability: keep the established phone layout unchanged. */
@media(min-width:781px){
body:not(.admin-app){font-size:18px;--muted:#535b53}
body:not(.admin-app) .eyebrow,
body:not(.admin-app) .dropdown-panel small,
body:not(.admin-app) .hero-location,
body:not(.admin-app) .services-mini-note,
body:not(.admin-app) .review-grid figcaption strong,
body:not(.admin-app) .footer-top h3,
body:not(.admin-app) .footer-top>div:not(.footer-brand)>a,
body:not(.admin-app) .footer-contact>p,
body:not(.admin-app) .service-photo-label,
body:not(.admin-app) .topic-top>span,
body:not(.admin-app) .topic-card>a,
body:not(.admin-app) .advice-card>span,
body:not(.admin-app) .emergency-small,
body:not(.admin-app) .price-card>p:not(.price-ex-vat),
body:not(.admin-app) .area-count,
body:not(.admin-app) .about-statement>div,
body:not(.admin-app) .contact-block .text-link,
body:not(.admin-app) .demo-form-note>p,
body:not(.admin-app) form label,
body:not(.admin-app) form label>span,
body:not(.admin-app) .attachment-label>input,
body:not(.admin-app) .enquiry-result>.text-link,
body:not(.admin-app) .form-steps li>span,
body:not(.admin-app) .calendar-weekdays,
body:not(.admin-app) .calendar-legend,
body:not(.admin-app) .calendar-clear,
body:not(.admin-app) .landing-benefits article>span,
body:not(.admin-app) .directory-list-heading>span,
body:not(.admin-app) .area-list-item small,
body:not(.admin-app) .calendar-slot small{font-size:14px}
body:not(.admin-app) .button,
body:not(.admin-app) .text-link,
body:not(.admin-app) .desktop-nav,
body:not(.admin-app) .header-phone,
body:not(.admin-app) .header-actions .button,
body:not(.admin-app) .hero-buttons .button,
body:not(.admin-app) .availability-card strong,
body:not(.admin-app) .trust-strip strong,
body:not(.admin-app) .service-list p,
body:not(.admin-app) .check-list li,
body:not(.admin-app) .process-grid article>span,
body:not(.admin-app) .process-grid p,
body:not(.admin-app) .cta-inner p:not(.eyebrow),
body:not(.admin-app) .cta-phone,
body:not(.admin-app) .simple-phone,
body:not(.admin-app) .topic-card p,
body:not(.admin-app) .advice-card>p,
body:not(.admin-app) .faq-layout>div>p:not(.eyebrow),
body:not(.admin-app) .faqs p,
body:not(.admin-app) .coverage-strip p,
body:not(.admin-app) .gas-note p,
body:not(.admin-app) .price>span,
body:not(.admin-app) .area-statement>span:last-child,
body:not(.admin-app) .area-filters>button,
body:not(.admin-app) .area-search>input,
body:not(.admin-app) .area-footnote,
body:not(.admin-app) .area-empty>p,
body:not(.admin-app) .standards-grid p,
body:not(.admin-app) .contact-block>p:not(.eyebrow),
body:not(.admin-app) .opening-hours,
body:not(.admin-app) .form-heading>p:last-child,
body:not(.admin-app) form input:not([type=file]),
body:not(.admin-app) form textarea,
body:not(.admin-app) form select,
body:not(.admin-app) .result-notice,
body:not(.admin-app) .enquiry-result dl>div,
body:not(.admin-app) .form-steps li,
body:not(.admin-app) .step-intro,
body:not(.admin-app) .service-questions h4,
body:not(.admin-app) .service-safety,
body:not(.admin-app) .service-safety p,
body:not(.admin-app) .step-actions .button,
body:not(.admin-app) .review-edit-actions button,
body:not(.admin-app) .request-notice,
body:not(.admin-app) .question-step.enquiry-result dl>div,
body:not(.admin-app) .calendar-demo-note,
body:not(.admin-app) .calendar-intro,
body:not(.admin-app) .calendar-days button,
body:not(.admin-app) .calendar-slot,
body:not(.admin-app) .appointment-picker h5,
body:not(.admin-app) .calendar-status,
body:not(.admin-app) .landing-location,
body:not(.admin-app) .landing-phone span,
body:not(.admin-app) .area-hub-hero aside p,
body:not(.admin-app) .hub-service-card p,
body:not(.admin-app) .specialist-card p,
body:not(.admin-app) .hub-service-card>span,
body:not(.admin-app) .specialist-card>span,
body:not(.admin-app) .county-hub-links a,
body:not(.admin-app) .nearby-links a,
body:not(.admin-app) .area-search-toolbar label>span,
body:not(.admin-app) .directory-list-heading,
body:not(.admin-app) .area-directory .area-pagination .button,
body:not(.admin-app) .directory-help,
body:not(.admin-app) .directory-regions summary,
body:not(.admin-app) .directory-regions a,
body:not(.admin-app) .directory-empty button,
body:not(.admin-app) .pricing-amount small,
body:not(.admin-app) .pricing-rate-list small,
body:not(.admin-app) .example-job-price span,
body:not(.admin-app) .example-job .button,
body:not(.admin-app) .calendar-days button[data-availability=limited]:after,
body:not(.admin-app) .calendar-duration-note,
body:not(.admin-app) .owner-portal-bar{font-size:16px}
body:not(.admin-app) .section-intro,
body:not(.admin-app) .hero-description,
body:not(.admin-app) .stars,
body:not(.admin-app) .desktop-nav,
body:not(.admin-app) .calendar-nav h5,
body:not(.admin-app) .landing-form-layout>div:first-child>p:not(.eyebrow),
body:not(.admin-app) .area-directory-hero p:not(.eyebrow),
body:not(.admin-app) .directory-search input,
body:not(.admin-app) .directory-region select,
body:not(.admin-app) .cookie-banner p,
body:not(.admin-app) .cookie-panel label,
body:not(.admin-app) .pricing-card p:not(.eyebrow),
body:not(.admin-app) .pricing-amount span,
body:not(.admin-app) .pricing-questions p,
body:not(.admin-app) .example-pricing-intro,
body:not(.admin-app) .service-detail-copy,
body:not(.admin-app) .service-detail-copy>a:has(h3) p{font-size:18px}
body:not(.admin-app) .preview-bar,
body:not(.admin-app) .preview-bar a,
body:not(.admin-app) .dropdown-panel>.eyebrow,
body:not(.admin-app) .hero-copy .eyebrow,
body:not(.admin-app) .availability-card small,
body:not(.admin-app) .trust-strip small,
body:not(.admin-app) .service-number,
body:not(.admin-app) .review-avatar,
body:not(.admin-app) .review-grid figcaption small,
body:not(.admin-app) .county-grid span,
body:not(.admin-app) .footer-bottom p,
body:not(.admin-app) .footer-bottom>div,
body:not(.admin-app) .breadcrumb,
body:not(.admin-app) .gas-note .safety-source,
body:not(.admin-app) .price-card>.eyebrow,
body:not(.admin-app) .price-ex-vat,
body:not(.admin-app) .price-card>.text-link,
body:not(.admin-app) .town-card span,
body:not(.admin-app) .contact-block .eyebrow,
body:not(.admin-app) .form-heading>.eyebrow,
body:not(.admin-app) .form-required,
body:not(.admin-app) .form-footnote,
body:not(.admin-app) .enquiry-result>.eyebrow,
body:not(.admin-app) .landing-hero figcaption,
body:not(.admin-app) .county-town-grid span{font-size:13px}
body:not(.admin-app) .dropdown-panel strong,
body:not(.admin-app) .services-intro>p:not(.eyebrow),
body:not(.admin-app) .feature-copy>p:not(.eyebrow),
body:not(.admin-app) .approach-grid>div>p:not(.eyebrow),
body:not(.admin-app) .faqs summary,
body:not(.admin-app) .about-story>div>p:not(.eyebrow),
body:not(.admin-app) .landing-benefits p,
body:not(.admin-app) .landing-expect p,
body:not(.admin-app) .directory-empty p,
body:not(.admin-app) .cookie-actions button,
body:not(.admin-app) .cookie-panel .button,
body:not(.admin-app) .pricing-jumps a,
body:not(.admin-app) .pricing-card ul,
body:not(.admin-app) .pricing-footnote,
body:not(.admin-app) .pricing-rate-list p,
body:not(.admin-app) .example-pricing-hint,
body:not(.admin-app) .example-job-included,
body:not(.admin-app) .example-job-scope{font-size:17px}
body:not(.admin-app) .image-label span,
body:not(.admin-app) .photo figcaption,
body:not(.admin-app) .footer-brand>span,
body:not(.admin-app) .footer-preview,
body:not(.admin-app) .calendar-slot small{font-size:12px}
body:not(.admin-app) .footer-contact>a{font-size:18px!important}
body:not(.admin-app) .footer-contact>a:last-child{font-size:14px!important}
body:not(.admin-app) .optional,
body:not(.admin-app) .attachment-help{font-size:13px!important}
body:not(.admin-app) .desktop-nav{font-size:15px;gap:20px}body:not(.admin-app) .header-inner{gap:24px}body:not(.admin-app) .header-phone{font-size:15px}body:not(.admin-app) .header-actions{gap:18px}body:not(.admin-app) .header-actions .button{font-size:14px}body:not(.admin-app) .hero-copy .eyebrow{font-size:12px}body:not(.admin-app) .hero-location{font-size:14px}body:not(.admin-app) .button{white-space:normal;text-align:center}body:not(.admin-app) .header-actions .button{white-space:nowrap}body:not(.admin-app) .image-label span{font-size:12px}
}
