@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700;800&display=swap');
:root{--navy:#102b46;--teal:#087b91;--mint:#e5f5f2;--paper:#f5f8fa;--ink:#203447;--muted:#5a6c7c;--line:#dce5ea;--white:#fff;--gold:#e6a84a}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',sans-serif;background:var(--paper);line-height:1.65}a{color:var(--teal);text-decoration:none}a:hover{text-decoration:underline}.topline{height:5px;background:linear-gradient(90deg,var(--teal),#50c9b7,var(--gold))}.site-header{background:#fff;border-bottom:1px solid var(--line);position:relative;z-index:2}.navwrap{max-width:1180px;margin:auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand img{width:292px;max-width:48vw;display:block}.nav{display:flex;flex-wrap:wrap;gap:17px;align-items:center;font-size:14px;font-weight:700}.nav a{color:var(--navy)}.nav .nav-cta{padding:10px 15px;background:var(--navy);color:white;border-radius:8px}.hero{max-width:1180px;margin:auto;padding:54px 24px 60px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:48px}.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:var(--teal);font-size:12px;font-weight:800}.hero h1{font:800 clamp(2.3rem,4.5vw,4.4rem)/1.08 Manrope,sans-serif;color:var(--navy);letter-spacing:-.045em;margin:14px 0 20px}.hero p{font-size:18px;color:#4e6274;max-width:610px}.hero-img{width:100%;height:430px;object-fit:cover;border-radius:22px;box-shadow:0 24px 60px #102b4618}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-flex;padding:12px 18px;border-radius:9px;font-weight:800;background:var(--teal);color:#fff}.btn.secondary{background:#fff;border:1px solid var(--line);color:var(--navy)}.section{padding:62px 24px}.section-inner{max-width:1180px;margin:auto}.section-head{max-width:720px;margin-bottom:28px}.section h2{font:800 clamp(1.7rem,3vw,2.6rem)/1.2 Manrope,sans-serif;color:var(--navy);letter-spacing:-.03em;margin:8px 0 12px}.section-head p{color:var(--muted);font-size:17px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;box-shadow:0 10px 26px #102b4608}.card img{display:block;width:100%;height:205px;object-fit:cover}.card-body{padding:22px}.card h3{font:800 20px Manrope,sans-serif;color:var(--navy);margin:0 0 8px}.card p{margin:0 0 16px;color:var(--muted)}.card a{font-weight:800}.band{background:var(--navy);color:#fff}.band h2{color:#fff}.band p{color:#d9e7ef}.band .cards .card{background:#173a59;border-color:#31516a}.band .card h3{color:#fff}.band .card p{color:#d2e0e8}.note{border-left:4px solid var(--gold);padding:17px 20px;background:#fff;border-radius:0 12px 12px 0;margin-top:26px}.page-intro{max-width:1180px;margin:auto;padding:42px 24px 8px}.page-intro h2{font:800 clamp(1.8rem,3vw,2.7rem)/1.2 Manrope;color:var(--navy);margin:10px 0}.split{display:grid;grid-template-columns:1fr .9fr;gap:36px;align-items:center}.split img{width:100%;height:360px;object-fit:cover;border-radius:18px}.list-check{padding:0;list-style:none}.list-check li{margin:12px 0;padding-left:28px;position:relative}.list-check li:before{content:'✓';position:absolute;left:0;color:var(--teal);font-weight:900}.footer{background:#091e32;color:#d5e1e8;padding:40px 24px 24px}.footer-inner{max-width:1180px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:30px}.footer img{width:260px;background:white;border-radius:8px;padding:5px}.footer h3{color:#fff;font:700 16px Manrope}.footer a{color:#d5e1e8}.footer p{font-size:14px}.copyright{max-width:1180px;margin:26px auto 0;padding-top:16px;border-top:1px solid #294258;font-size:13px}.small{font-size:13px;color:var(--muted)}.contact-panel{background:#fff;border:1px solid var(--line);padding:25px;border-radius:16px}.contact-panel label{display:block;font-weight:700;margin:12px 0 5px}.contact-panel input,.contact-panel textarea,.contact-panel select{width:100%;padding:12px;border:1px solid #bdcbd4;border-radius:8px;font:inherit}.contact-panel button{border:0;cursor:pointer}.page-about .hero{background:#e7f4f2;max-width:none;padding-left:max(24px,calc((100% - 1180px)/2));padding-right:max(24px,calc((100% - 1180px)/2))}.page-service-areas .hero{grid-template-columns:.85fr 1.15fr}.page-service-areas .hero-img{border-radius:50% 18px 18px 18px}.page-contact .hero{background:#eaf0f8;max-width:none;padding-left:max(24px,calc((100% - 1180px)/2));padding-right:max(24px,calc((100% - 1180px)/2))}.page-detection .hero-img{border-radius:50% 50% 18px 18px}.page-repair .hero{grid-template-columns:1.1fr .9fr}.page-rerouting .hero-img{border-radius:12px 80px 12px 80px}.page-repiping .hero{background:#f1efe7}.page-water .hero-img{filter:saturate(.8);border-radius:100px 16px 100px 16px}.page-home .hero{padding-top:70px}.page-home .hero-img{height:470px}.page-home .section:nth-of-type(2){background:#e9f4f4}.page-contact .hero-img{height:360px}.mobile-menu{display:none}@media(max-width:850px){.navwrap{align-items:flex-start;flex-direction:column}.nav{gap:10px}.hero,.page-service-areas .hero,.page-repair .hero,.split{grid-template-columns:1fr;gap:25px}.hero-img,.page-home .hero-img{height:320px}.cards{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr}.brand img{max-width:80vw}.section{padding:44px 20px}}@media(max-width:480px){.nav{font-size:12px}.hero h1{font-size:2.35rem}.hero{padding-top:34px}.hero p{font-size:16px}.hero-img{height:260px}}
