:root{--blue:#143cab;--navy:#102451;--sky:#eaf2ff;--ink:#132448;--muted:#60708b;--line:#dce4f0;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:white;color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #f8a839;outline-offset:4px}.skip{position:absolute;top:-100px;background:white;padding:10px;z-index:9}.skip:focus{top:10px}.topbar{display:flex;justify-content:space-between;padding:8px max(28px,calc((100% - 1200px)/2));background:var(--navy);color:white;font-size:12px;letter-spacing:1px}header{max-width:1280px;margin:auto;padding:25px 40px;display:flex;justify-content:space-between;align-items:center;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:18px;font-weight:700;line-height:1.2}.brand small{display:block;font-size:10px;letter-spacing:3px;margin-top:6px;font-weight:400}.logo{font-size:30px;color:white;background:var(--blue);border-radius:8px;padding:7px 10px;font-weight:800;letter-spacing:-1px}nav{display:flex;gap:28px;align-items:center;font-size:14px}nav>a:hover{color:var(--blue)}.menu{display:none}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 23px;border:0;border-radius:5px;background:var(--blue);color:white;font-weight:700;line-height:1.4;transition:background .2s}.button:hover{background:#0d2c81}.button.small{padding:11px 18px}.outline{background:transparent;border:1px solid #a3b8d9;color:var(--ink)}.outline:hover{background:#dfeafb}.secondary{background:var(--sky);color:var(--blue)}.white{background:white;color:var(--blue)}.white:hover{background:#eaf2ff}.hero{background:var(--sky);display:grid;grid-template-columns:1.07fr 1fr;gap:45px;padding:55px max(40px,calc((100% - 1200px)/2)) 50px}.hero-copy{padding-top:15px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.7px}.blue{color:var(--blue)}h1{font-size:clamp(48px,5.5vw,76px);line-height:1.05;letter-spacing:-3px;margin:24px 0}h1 em{font-style:normal;color:var(--blue)}p{margin:0 0 20px}.hero-copy>p{color:#4c6080;max-width:460px;font-size:18px;margin:27px 0}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-tags{display:flex;gap:25px;font-size:10px;letter-spacing:1.5px;color:#586e91;border-top:1px solid #cad9ed;margin-top:34px;padding-top:19px}.hero-visual{position:relative;padding:0 0 44px 0;align-self:center}.photo-frame{aspect-ratio:707/398;position:relative;overflow:hidden;border-radius:10px;background:#dae4f3}.photo-frame img{width:100%;max-width:none;height:auto;position:absolute;left:0;top:-142.9648%}.local-card{background:var(--blue);color:white;border-radius:6px;padding:20px 25px;position:relative;margin:16px 0 0 65px;box-shadow:0 12px 30px #143cab22}.mini-label{font-size:10px;letter-spacing:1.5px;color:#c3d6ff}.local-card strong{display:block;font-size:27px;line-height:1.2;letter-spacing:-.6px;margin:10px 0}.local-card a{font-size:12px;text-decoration:underline}.quick-info{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1.25fr;border-bottom:1px solid var(--line);padding:27px 0}.quick-info>div{display:flex;gap:16px;align-items:center;padding:0 25px;border-right:1px solid var(--line)}.quick-info>div:last-child{border:0}.quick-info p{margin:0;font-size:14px}.quick-info small{display:block;color:var(--muted);letter-spacing:1px;font-size:10px;margin-bottom:4px}.quick-info a,.quick-info b{font-weight:700}.info-icon{color:var(--blue);font-size:13px}.section{max-width:1280px;margin:auto;padding:75px 40px}h2{font-size:clamp(31px,3.7vw,45px);line-height:1.15;letter-spacing:-1.6px;margin:16px 0 23px}h3{font-size:22px;line-height:1.3;letter-spacing:-.5px;margin:16px 0}.intro{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:30px}.intro>p{max-width:340px;color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-grid article{border:1px solid var(--line);border-radius:6px;padding:28px;display:flex;flex-direction:column}.service-index{font-size:10px;letter-spacing:1.5px;color:var(--muted)}.service-grid p{color:var(--muted);font-size:15px}.service-grid a{font-size:14px;color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:5px;margin-top:auto}.service-grid .service-cta{background:var(--navy);color:white;border-color:var(--navy)}.service-cta .service-index,.service-cta p{color:#b9cbe8}.service-grid .service-cta a{color:white;font-size:22px}.about{background:#f4f7fc;border-radius:8px;display:grid;grid-template-columns:1fr 1fr;gap:95px;padding:55px}.about p{color:var(--muted)}.text-link{font-size:14px;color:var(--blue);font-weight:700;text-decoration:underline;text-underline-offset:5px}.steps>div{display:flex;gap:25px;border-bottom:1px solid var(--line);padding:16px 0}.steps>div:last-child{border:0}.steps>div>span{font-size:13px;color:var(--blue);margin-top:18px}.steps h3{font-size:20px}.steps p{font-size:15px}.review-band{margin-top:65px;background:var(--blue);color:white;border-radius:8px;display:grid;grid-template-columns:1fr 2fr;gap:45px;padding:43px 55px;align-items:center}.rating{text-align:center;border-right:1px solid #6080c7;padding:20px 35px 20px 0}.rating strong{display:block;font-size:67px;letter-spacing:-3px;line-height:1.1}.rating strong span{font-size:22px;letter-spacing:0;color:#c0d0f1}.stars{font-size:23px;letter-spacing:4px;color:#ffc966;display:block;margin:12px 0}.rating small{font-size:13px;color:#c5d5f7}.review-band h2{font-size:34px;margin:12px 0}.review-band p{font-size:14px;color:#c9d7f4;max-width:440px}.location{display:grid;grid-template-columns:1fr 1fr;gap:95px}.location>div>p{color:var(--muted);max-width:400px}address{font-style:normal;margin:25px 0;font-size:20px;line-height:1.5}.location-panel{background:var(--sky);border-radius:6px;padding:32px 38px;position:relative;overflow:hidden}.location-panel .postcode{position:absolute;right:28px;top:20px;color:#c5d5f0;font-size:55px;font-weight:800;letter-spacing:-3px}.location-panel h3{font-size:30px;margin:5px 0 23px;position:relative}.location-panel p{font-size:12px;margin:16px 0 2px;color:var(--muted)}.location-panel>a{font-size:22px;font-weight:700;color:var(--blue)}.location-panel small{display:block;font-size:12px;color:var(--muted);margin-top:25px}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;padding-top:15px}details{padding:19px 0;border-bottom:1px solid var(--line)}summary{font-weight:700;cursor:pointer;list-style:none;position:relative;padding-right:30px}summary:after{content:'+';position:absolute;right:0;font-size:23px;line-height:1}details[open] summary:after{content:'−'}details p{margin:15px 0 0;font-size:15px;color:var(--muted)}.enquiry{display:grid;grid-template-columns:1fr 1.4fr;gap:80px;border-top:1px solid var(--line)}.enquiry>div>p{max-width:340px;color:var(--muted)}.call-box{padding:22px;border-left:3px solid var(--blue);margin-top:30px;background:var(--sky)}.call-box span,.call-box small{display:block;font-size:13px;color:var(--muted)}.call-box a{display:block;font-size:24px;color:var(--blue);font-weight:700;margin:5px 0}form{padding:30px;border:1px solid var(--line);border-radius:6px;background:#fbfcff}label{display:block;font-size:14px;font-weight:700;margin-bottom:19px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}input,textarea,select{width:100%;display:block;margin-top:7px;padding:13px;border:1px solid #cbd6e6;border-radius:4px;background:white;color:var(--ink);font-size:16px}input::placeholder,textarea::placeholder{font-size:14px;color:#7b889d}textarea{resize:vertical}.form-note{display:block;color:var(--muted);font-size:12px;margin:13px 0 0}#result{border-top:1px solid var(--line);padding-top:15px;margin-top:25px}#result h3{font-size:19px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.6 Arial,sans-serif;background:var(--sky);padding:17px;border-radius:4px}.result-actions{display:flex;gap:10px;flex-wrap:wrap}#copy-status{font-size:13px;margin:8px 0 0}footer{background:var(--navy);color:#cbd8f2;padding:40px max(30px,calc((100% - 1200px)/2)) 23px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:13px;padding-bottom:33px}.footer-main .brand{color:white}.footer-main>a:last-child{font-size:21px;color:white;font-weight:700}.footer-bottom{border-top:1px solid #304672;padding-top:19px;display:flex;gap:25px;font-size:12px}.footer-bottom>span{margin-right:auto}.footer-bottom button{border:0;background:transparent;color:inherit;font-size:12px;padding:0;text-decoration:underline}.mobile-call{display:none}dialog{border:0;border-radius:8px;max-width:520px;width:calc(100% - 40px);padding:32px;color:var(--ink)}dialog::backdrop{background:#102451bb}dialog h2{font-size:29px}dialog p{font-size:15px;color:var(--muted)}.close{position:absolute;right:10px;top:8px;border:0;background:none;font-size:27px;padding:5px 10px}
@media(max-width:1050px){header{padding:20px 28px}nav{gap:18px}.hero{padding:45px 30px;gap:28px}.hero .button{font-size:14px;padding:13px 17px}.hero-copy>p{font-size:16px}.about,.review-band{margin-left:25px;margin-right:25px;padding:40px;gap:40px}.section{padding:58px 30px}.service-grid article{padding:23px}.location,.enquiry{gap:40px}.quick-info>div{padding:0 20px}.quick-info p{font-size:13px}}@media(max-width:700px){body{padding-bottom:60px}.topbar{padding:8px 20px;font-size:10px;letter-spacing:.5px}header{flex-wrap:wrap;padding:18px 20px}.brand{font-size:15px}.logo{font-size:27px;padding:7px 9px}.menu{display:block;border:1px solid var(--line);background:white;padding:7px 12px;border-radius:4px;font-size:14px}nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0}nav.open{display:flex}nav>a{padding:12px 0;border-top:1px solid var(--line)}nav .button{margin-top:8px}.hero{grid-template-columns:1fr;padding:33px 24px 20px;gap:32px}h1{font-size:56px;letter-spacing:-2.4px}.hero .eyebrow{font-size:10px;letter-spacing:1.1px}.hero-copy{padding:0}.hero-copy>p{font-size:16px}.hero-tags{margin-top:25px}.hero-visual{padding-bottom:0;margin:0 6px}.local-card{margin:16px 0 0 55px;padding:17px 22px}.local-card strong{font-size:24px}.quick-info{grid-template-columns:1fr;padding:5px 24px}.quick-info>div{padding:14px 0;border:0;border-bottom:1px solid var(--line)}.quick-info p{font-size:14px}.section{padding:48px 24px}h2{font-size:35px}.intro{display:block;margin-bottom:25px}.intro>p{max-width:none}.service-grid{grid-template-columns:1fr;gap:14px}.service-grid article{padding:26px}.service-grid h3{font-size:23px}.about,.review-band{margin:0 16px;padding:30px 24px;grid-template-columns:1fr;gap:20px}.review-band{margin-top:45px}.rating{border-right:0;border-bottom:1px solid #6080c7;padding:8px 0 24px;text-align:left}.rating strong{font-size:55px}.stars{font-size:20px;margin:8px 0}.location,.faq,.enquiry{grid-template-columns:1fr;gap:25px}.location-panel{padding:27px}.faq{padding-top:0}.enquiry>div>p{max-width:none}.call-box{margin-top:22px}.form-row{grid-template-columns:1fr;gap:0}form{padding:23px}.footer-main{flex-wrap:wrap;align-items:flex-start}.footer-main>div{width:100%;order:3}.footer-main>a:last-child{font-size:16px}.footer-bottom{flex-wrap:wrap;gap:14px}.footer-bottom>span{width:100%}footer{padding:30px 24px 25px}.mobile-call{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;background:white;z-index:5;border-top:1px solid var(--line);padding:9px 15px;gap:10px;padding-bottom:max(9px,env(safe-area-inset-bottom))}.mobile-call a{display:block;text-align:center;background:var(--blue);color:white;border-radius:4px;padding:10px;font-size:14px;font-weight:700}.mobile-call a:last-child{background:var(--sky);color:var(--blue)}html{scroll-padding-bottom:85px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.location-panel>a.email-link,.call-box a.email-link,.footer-main .email-link{font-size:16px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:3px}

.customer-reviews{position:relative;padding-top:36px;padding-bottom:36px}.review-window{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin}.review-track{display:flex;gap:24px;align-items:stretch}.review-quote{flex:0 0 100%;scroll-snap-align:start;background:var(--sky);border:1px solid var(--line);border-radius:12px;padding:32px;min-width:0}.review-quote .stars{color:#e9a000;font-size:24px;letter-spacing:3px}.review-quote blockquote{margin:16px 0 0;font-size:18px;line-height:1.7;overflow-wrap:anywhere}.review-toggle{display:block;margin:16px 0 0 auto;border:1px solid var(--line);background:white;color:var(--blue);border-radius:6px;min-height:44px;min-width:44px;font-size:20px}@media(max-width:600px){.review-quote{padding:24px}.review-quote blockquote{font-size:16px}}
