@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#142c38;--ink:#193540;--muted:#546970;--cream:#f7f6f1;--copper:#e9b789;--line:#dce1db;--white:#fff;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:auto}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #c4773e;outline-offset:5px}h1,h2,h3,h4{font-family:Manrope,sans-serif;line-height:1.15;letter-spacing:-.045em}h1{font-size:clamp(40px,4.8vw,72px);margin:21px 0 24px;font-weight:800}h2{font-size:clamp(31px,3.2vw,48px);margin:12px 0 22px}h3{font-size:23px;margin:0 0 14px}p{margin:0 0 20px}.wrap{max-width:1240px;width:calc(100% - 80px);margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:11px;font-weight:800;display:flex;gap:10px;align-items:center}.eyebrow:before{content:'';width:22px;height:2px;background:var(--copper)}.topbar{background:var(--navy);color:#fff;font-size:12px;padding:8px 0}.topbar .wrap{display:flex;justify-content:space-between}.topbar a{color:var(--copper)}header{position:sticky;top:0;z-index:30;background:rgba(247,246,241,.97);border-bottom:1px solid var(--line)}.header-inner{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:11px;line-height:1.05}.brand img{width:43px;height:43px}.brand strong{font-family:Manrope,sans-serif;font-size:25px;letter-spacing:-1px}.brand small{display:block;font-size:9px;text-transform:uppercase;letter-spacing:2px;margin-top:6px}nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:600}nav>a:not(.button){padding:18px 0}.drop-toggle{background:none;border:0;padding:20px 0;cursor:pointer;color:var(--ink);font-size:13px;font-weight:600}.dropdown{position:relative}.drop-menu{display:none;position:absolute;top:100%;left:-24px;background:white;padding:18px;border:1px solid var(--line);border-radius:12px;box-shadow:0 18px 50px #142c3822;min-width:285px;max-height:70vh;overflow:auto}.drop-menu a{display:block;padding:9px 12px;border-radius:6px;font-size:13px}.drop-menu a:hover{background:var(--cream)}.dropdown.expanded .drop-menu,.dropdown:focus-within .drop-menu{display:block}@media(hover:hover) and (min-width:1001px){.dropdown:hover .drop-menu{display:block}}.button{display:inline-flex;align-items:center;justify-content:center;gap:15px;min-height:52px;padding:13px 24px;border-radius:7px;background:var(--navy);color:white;font-size:14px;font-weight:700;border:1px solid transparent;cursor:pointer;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:#254955}.button.copper{background:var(--copper);color:var(--navy)}.button.outline{background:transparent;border-color:#9aa7a7;color:var(--ink)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0}.menu-toggle{display:none}.hero{padding:54px 0 38px}.hero-grid{display:grid;grid-template-columns:1.03fr 1fr;gap:52px;align-items:center}.hero p{color:var(--muted);max-width:490px;font-size:17px}.accent{color:#9d633e}.hero-photo{position:relative}.hero-photo>img{height:565px;object-fit:cover;border-radius:140px 18px 18px 18px;object-position:65% center}.photo-note{position:absolute;bottom:24px;left:-28px;right:36px;background:var(--navy);color:white;padding:20px 25px;display:flex;align-items:center;gap:18px;border-radius:12px;box-shadow:0 15px 45px #142c3825}.photo-note .symbol{font-size:32px;color:var(--copper)}.photo-note strong{display:block;font-size:15px}.photo-note small{font-size:12px;color:#d5dddd}.micro{font-size:12px!important;color:var(--muted)}.ticks{display:flex;flex-wrap:wrap;gap:10px 22px;font-size:12px;font-weight:600}.ticks span:before{content:'✓';color:#497567;margin-right:7px}.trust-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:42px;padding:25px 0;gap:28px}.trust-strip div{border-right:1px solid var(--line)}.trust-strip div:last-child{border:0}.trust-strip strong{display:block;font-size:14px}.trust-strip small{color:var(--muted);font-size:12px}.section{padding:86px 0}.section.white{background:white}.section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.section-head h2{max-width:600px;margin-bottom:0}.section-head p{max-width:350px;color:var(--muted);margin:0}.text-link{font-size:14px;font-weight:700;border-bottom:1px solid;padding-bottom:4px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{border:1px solid var(--line);border-radius:13px;background:white;overflow:hidden;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 14px 30px #142c3810}.service-card img{height:200px;object-fit:cover}.card-body{padding:27px}.card-top{display:flex;justify-content:space-between;margin-bottom:20px;color:#895837;font-size:12px;letter-spacing:.1em}.card-body p{font-size:14px;color:var(--muted)}.card-body h3{font-size:22px}.card-body .text-link{font-size:12px}.emergency{background:var(--navy);color:white;border-radius:16px;padding:35px 40px;display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:28px}.emergency h3{margin-bottom:8px}.emergency p{color:#c9d5d8;font-size:14px;margin:0;max-width:700px}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.split-img{height:530px;object-fit:cover;border-radius:16px}.split p{color:var(--muted)}.reasons{display:grid;gap:22px;margin-top:30px}.reason{display:flex;gap:20px;border-top:1px solid var(--line);padding-top:18px}.reason b{color:#9d633e;font-size:13px}.reason h3{font-size:18px;margin:0 0 8px}.reason p{font-size:14px;margin:0}.dark{background:var(--navy);color:white}.dark p{color:#ccd6d8}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.step{border-top:1px solid #ffffff36;padding-top:25px}.step span{font-size:13px;color:var(--copper)}.step h3{margin-top:20px}.step p{font-size:15px}.area-card{padding:30px;background:white;border:1px solid var(--line);border-radius:12px}.area-card p{font-size:15px}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}details{border-bottom:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:20px;font-size:16px}summary:after{content:'+';color:#93613d;font-size:23px;line-height:1}details[open] summary:after{content:'−'}details p{margin:16px 25px 0 0;color:var(--muted);font-size:15px}.contact-block{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.contact-details{display:grid;gap:22px;margin-top:35px}.contact-details small{display:block;color:#b9cbcf;text-transform:uppercase;letter-spacing:2px;font-size:10px}.contact-details a{overflow-wrap:anywhere}.contact-details strong{font-size:21px}.enquiry-form{background:white;color:var(--ink);padding:34px;border-radius:16px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field.full{grid-column:1/-1}.field label{display:block;font-size:12px;font-weight:700;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;border:1px solid #c7d0ce;border-radius:5px;padding:12px;color:var(--ink);background:#fafbf8;font-size:16px;min-height:48px}.field textarea{resize:vertical;min-height:110px}.enquiry-form .button{width:100%;margin-top:18px}.enquiry-form .micro{margin:14px 0 0;font-size:11px!important}.form-status{color:var(--ink)!important;margin-top:15px;font-size:14px}.enquiry-form button:disabled{opacity:.65;cursor:wait}.botcheck{display:none!important}.footer{background:#102530;color:#c1ced0;padding:55px 0 25px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:40px}.footer .brand{color:white;margin-bottom:22px}.footer p{font-size:12px;max-width:280px}.footer h3{font-size:14px;letter-spacing:0;color:white}.footer-links{display:grid;gap:8px;font-size:12px}.footer-bottom{border-top:1px solid #ffffff20;margin-top:40px;padding-top:22px;display:flex;justify-content:space-between;font-size:11px;gap:20px}.mobile-bar{display:none}.breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:30px}.page-hero{padding:36px 0 65px}.page-hero h1{font-size:clamp(37px,4vw,60px)}.page-hero .hero-photo>img{height:440px;border-radius:18px 100px 18px 18px}.prose{max-width:780px}.prose p{color:var(--muted)}.prose h2{font-size:34px;margin-top:42px}.check-list{padding-left:20px;color:var(--muted)}.check-list li{padding:6px 0}.article-layout{display:grid;grid-template-columns:1fr 320px;gap:75px}.sidebar{background:var(--cream);border:1px solid var(--line);padding:28px;border-radius:12px;align-self:start;position:sticky;top:118px}.sidebar p{font-size:14px}.sidebar .button{width:100%;padding:12px}.sidebar h3{font-size:23px}.skip{position:fixed;left:10px;top:-100px;background:white;padding:12px;z-index:100}.skip:focus{top:10px}.location-badge{display:inline-block;border:1px solid #9faeac;padding:6px 15px;border-radius:99px;font-size:12px;margin-top:25px}.empty-space{margin-top:28px}
@media(min-width:1400px){.hero{padding-top:70px}.hero-photo>img{height:610px}}
@media(max-width:1100px){nav{gap:16px}.header-inner{gap:15px}.header-inner .button{padding:12px 15px}.hero-grid{gap:30px}.wrap{width:calc(100% - 48px)}.split{gap:40px}.contact-block{gap:40px}}
@media(max-width:1000px){.menu-toggle{display:block;border:1px solid var(--line);background:white;border-radius:6px;padding:10px 15px;color:var(--ink);font-size:14px}.header-inner{min-height:78px}.header-inner>nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--cream);padding:18px 24px 25px;max-height:calc(100dvh - 150px);overflow:auto;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #142c3815}.header-inner>nav.open{display:block}nav>a{display:block!important;padding:13px 0!important}.drop-toggle{width:100%;text-align:left;padding:14px 0;font-size:15px}.drop-menu{position:static;min-width:0;box-shadow:none;max-height:none;margin-bottom:10px}.dropdown:focus-within:not(.expanded) .drop-menu{display:none}nav .button{margin-top:14px}.hero h1{font-size:48px}.hero-photo>img{height:490px}.photo-note{left:-12px;right:15px;padding:15px}.service-grid{grid-template-columns:repeat(2,1fr)}.faq-layout{gap:35px}.article-layout{grid-template-columns:1fr 280px;gap:35px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.topbar{font-size:10px}.topbar .wrap span:last-child{display:none}.topbar .wrap{justify-content:center}.brand strong{font-size:22px}.brand img{width:38px;height:38px}.brand small{font-size:8px}.hero{padding:33px 0 20px}.hero-grid,.split,.contact-block,.faq-layout,.article-layout{grid-template-columns:1fr;gap:35px}.hero h1{font-size:44px;line-height:1.08;margin:20px 0}.hero p{font-size:15px}.hero-photo>img{height:360px;border-top-left-radius:80px}.photo-note{left:14px;right:14px;bottom:14px}.actions{gap:10px;margin:24px 0}.actions .button{padding:13px 19px;font-size:13px}.eyebrow{font-size:10px;letter-spacing:.12em}.trust-strip{grid-template-columns:1fr 1fr;gap:22px;margin-top:25px;padding:24px 0}.trust-strip div:nth-child(2){border:0}.trust-strip strong{font-size:13px}.trust-strip small{font-size:11px}.section{padding:58px 0}.section-head{display:block;margin-bottom:28px}.section-head p{margin-top:20px}.section-head .text-link{display:inline-block;margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card img{height:215px}.card-body{padding:23px}.emergency{display:block;padding:28px}.emergency .button{margin-top:22px}.split-img{height:350px}.steps{grid-template-columns:1fr;gap:20px}.step h3{margin-top:12px}.area-grid{grid-template-columns:1fr}.enquiry-form{padding:23px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.footer{padding-bottom:115px}.footer-grid{gap:30px 20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:12px}.mobile-bar{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:fixed;bottom:0;left:0;right:0;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:var(--cream);border-top:1px solid var(--line);z-index:40;box-shadow:0 -5px 20px #142c3810}.mobile-bar .button{min-height:46px;font-size:13px;padding:10px}.page-hero{padding-bottom:40px}.page-hero h1{font-size:39px}.page-hero .hero-photo>img{height:320px}.sidebar{position:static}.breadcrumbs{font-size:11px;margin-bottom:22px}.prose h2{font-size:29px}body{padding-bottom:75px}.ticks{font-size:11px;gap:8px 16px}}
@media(min-width:701px) and (max-width:1000px) and (pointer:coarse){.mobile-bar{display:grid;grid-template-columns:1fr 1fr;gap:12px;position:fixed;bottom:0;left:0;right:0;padding:10px 24px calc(10px + env(safe-area-inset-bottom));background:var(--cream);border-top:1px solid var(--line);z-index:40}.mobile-bar .button{min-height:44px;padding:8px}body{padding-bottom:75px}}.footer-address{margin:18px 0 0;color:var(--muted);font-size:.95rem}.footer-address a{color:inherit}.footer-map-link{display:inline-block;margin-top:8px;color:#b6432e;font-weight:700}.footer-map{margin-top:24px;max-width:680px;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.18)}.footer-map iframe{display:block;width:100%;height:230px;border:0}.footer-address a{color:inherit}.footer-map-link{display:inline-block;margin-top:8px;color:#b6432e;font-weight:700}.footer-address strong{color:var(--ink)}.actions{display:none!important}.location-section{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:42px;align-items:center;padding:72px 0}.location-copy h2{max-width:620px}.location-copy p{max-width:560px}.map-frame{min-height:380px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#e9ece8;box-shadow:0 12px 28px #142c3812}.map-frame iframe{display:block;width:100%;height:380px;border:0}@media(max-width:800px){.location-section{grid-template-columns:1fr;padding:52px 0}.map-frame,.map-frame iframe{min-height:320px;height:320px}}.mobile-bar .button:first-child,.mobile-actions a:first-child{position:relative}.mobile-bar .button:first-child::before,.mobile-actions a:first-child::before{content:"";display:inline-block;width:9px;height:9px;margin-right:9px;border-radius:50%;background:#e53935;vertical-align:middle;animation:call-live-dot 1.15s ease-in-out infinite;box-shadow:0 0 0 0 rgba(229,57,53,.65)}@keyframes call-live-dot{0%,100%{opacity:1;transform:scale(1);box-shadow:0 0 0 0 rgba(229,57,53,.65)}50%{opacity:.35;transform:scale(.78);box-shadow:0 0 0 6px rgba(229,57,53,0)}}@media(prefers-reduced-motion:reduce){.mobile-bar .button:first-child::before,.mobile-actions a:first-child::before{animation:none}}.blog-list{padding:64px 0 100px}.blog-intro{margin-bottom:28px}.blog-card{border:1px solid rgba(20,35,45,.16);border-radius:22px;padding:32px;background:#fff;max-width:820px;margin-bottom:18px}.blog-card h3{font-size:clamp(1.7rem,4vw,2.7rem);margin:8px 0 16px}.blog-card h4{margin-top:24px}.blog-card li{margin:8px 0}.blog-archive{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.blog-card-small{padding:24px}.blog-card-small h3{font-size:1.35rem}.mobile-actions{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr;z-index:20}.mobile-actions a{padding:18px;text-align:center;background:#142c3a;color:#fff;font-weight:700}.mobile-actions a:last-child{background:#b6432e}@media(max-width:800px){.blog-archive{grid-template-columns:1fr}}.emergency-nav-link{color:#b42318!important;font-weight:700}.emergency-nav-link:hover{text-decoration:underline}
.hero-photo>img.photo-plumbing-illustration{object-fit:contain;background:white;border-radius:18px}.hero-photo>img.photo-building-pipes{object-position:center}.service-card img.photo-sink-service{object-fit:contain;background:#f2f3ef}
.hero-grid.text-hero{grid-template-columns:1fr;max-width:850px}.text-hero p{max-width:700px}.care-panel{background:var(--cream);border:1px solid var(--line);border-radius:18px;padding:40px}.care-panel h2{margin-top:28px}.service-card .card-body{height:100%;display:flex;flex-direction:column}.service-card .card-body .text-link{align-self:start;margin-top:auto}.service-card .card-body p{margin-bottom:24px}@media(max-width:700px){.care-panel{padding:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}.site-header{position:sticky;top:0;z-index:30;background:rgba(247,246,241,.97);border-bottom:1px solid var(--line)}.site-header>.wrap{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:28px}.site-header .brand{font-family:Manrope,sans-serif;font-size:25px;font-weight:700;letter-spacing:-.04em;white-space:nowrap}.site-header nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(14px,2vw,28px);flex:1;min-width:0;font-size:15px}.site-header nav a{display:block;white-space:nowrap;padding:18px 0}.site-header nav .emergency-nav-link{color:#b42318;font-weight:700}.site-header .menu-toggle{display:none}@media(max-width:1000px){.site-header>.wrap{min-height:78px;gap:15px}.site-header .menu-toggle{display:block;margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:6px;padding:10px 15px;color:var(--ink);font-size:14px}.site-header nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--cream);padding:18px 24px 25px;max-height:calc(100dvh - 150px);overflow:auto;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #142c3815}.site-header nav.open{display:block}.site-header nav a{display:block;padding:12px 0;font-size:18px}}@media(max-width:560px){.site-header>.wrap{padding:16px 0}.site-header .brand{font-size:20px}}.trust-points{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0 4px}.trust-points span{border:1px solid rgba(20,35,45,.18);border-radius:999px;padding:8px 12px;font-size:.84rem;font-weight:700;background:#fff}.faq-section{padding:72px 0}.faq-section h2{max-width:720px}.faq-section details{border-top:1px solid rgba(20,35,45,.18);padding:18px 0}.faq-section details:last-child{border-bottom:1px solid rgba(20,35,45,.18)}.faq-section summary{cursor:pointer;font-weight:700}.faq-section p{max-width:760px}@media(max-width:600px){.trust-points{display:grid;grid-template-columns:1fr}.trust-points span{text-align:center}}
