:root{--navy:#071d2b;--navy2:#0b2d3d;--blue:#087e9a;--cyan:#18b9c6;--lime:#d7f64a;--ice:#edf8f8;--mist:#f5fafb;--ink:#102d3a;--muted:#55707b;--line:#d5e5e8;--white:#fff;--shadow:0 28px 80px rgba(3,35,48,.16);--radius:22px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--mist);font:16px/1.65 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:var(--blue);text-decoration-thickness:.08em;text-underline-offset:.18em}img{display:block;width:100%;height:auto}h1,h2,h3{font-family:Inter,ui-sans-serif,system-ui,sans-serif;line-height:1.02;margin:0 0 .6em;letter-spacing:-.045em}h1{font-size:clamp(3rem,6vw,6.15rem);font-weight:850}h2{font-size:clamp(2.15rem,4vw,4rem);font-weight:820}h3{font-size:1.35rem;letter-spacing:-.025em}.wrap{width:min(1200px,calc(100% - 40px));margin:auto}.topbar{background:#05151f;color:#bdd6dc;padding:7px 0;font-size:.76rem;letter-spacing:.025em}.topbar-inner{display:flex;justify-content:space-between}.site-header{background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;backdrop-filter:blur(16px)}.nav{display:flex;align-items:center;justify-content:space-between;min-height:82px;gap:20px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;color:var(--navy);font-weight:900;letter-spacing:-.035em}.drop{width:31px;height:38px;border-radius:58% 42% 62% 38%;background:linear-gradient(145deg,var(--cyan),var(--blue));transform:rotate(42deg);box-shadow:inset 0 0 0 5px rgba(255,255,255,.22)}.brand span{max-width:205px;line-height:1.05}.links{display:flex;align-items:center;gap:24px}.links>a:not(.btn):not(.header-phone){text-decoration:none;color:var(--ink);font-weight:760;font-size:.88rem}.header-phone{display:flex;flex-direction:column;padding-left:22px;border-left:1px solid var(--line);text-decoration:none;line-height:1.2}.header-phone small{font-size:.69rem;color:var(--muted)}.header-phone strong{color:var(--navy);font-size:.92rem}.btn,.button{display:inline-flex;gap:11px;align-items:center;justify-content:center;min-height:52px;padding:13px 21px;border-radius:9px;background:var(--navy);color:#fff;text-decoration:none;border:0;font:inherit;font-weight:850;cursor:pointer;box-shadow:0 10px 25px rgba(7,29,43,.12);transition:.2s transform,.2s box-shadow}.btn:hover,.button:hover{transform:translateY(-2px);box-shadow:0 15px 34px rgba(7,29,43,.2)}.button.primary{background:var(--lime);color:var(--navy);box-shadow:0 13px 30px rgba(160,190,25,.22)}.button.alt{background:#e8f2f3;color:var(--navy)}.hero{position:relative;overflow:hidden;color:#fff;background:radial-gradient(circle at 18% 20%,rgba(24,185,198,.18),transparent 34%),linear-gradient(118deg,#061a27 0%,#0a2c3b 60%,#0b3e4c 100%);padding:84px 0 0}.hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(90deg,#000,transparent 68%)}.hero-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;gap:66px;align-items:center}.hero-copy{padding-bottom:72px}.local-badge{display:inline-flex;align-items:center;gap:9px;color:#c9e8ea;text-transform:uppercase;letter-spacing:.13em;font-size:.72rem;font-weight:850;margin-bottom:24px}.local-badge span{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px rgba(215,246,74,.12)}.hero h1 em{font-style:normal;color:var(--lime)}.hero .lede{font-size:1.13rem;color:#c4d7dc;max-width:630px}.hero .lede strong{color:#fff}.hero-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:30px 0}.text-call{display:flex;align-items:center;gap:11px;color:#fff;text-decoration:none}.text-call .phone-icon{display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.2);border-radius:50%;color:var(--lime)}.text-call span:last-child{display:flex;flex-direction:column;line-height:1.15}.text-call small{color:#9eb8c1}.text-call strong{font-size:1.03rem}.proof{display:flex;gap:19px;flex-wrap:wrap;color:#b9cdd3;font-size:.82rem}.proof span:before{content:"✓";color:var(--lime);font-weight:900;margin-right:7px}.hero-visual{position:relative;align-self:stretch;min-height:610px}.hero-visual>img{width:calc(100% + 11vw);height:100%;object-fit:cover;object-position:center}.visual-gradient{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,42,56,.52),transparent 35%),linear-gradient(0deg,rgba(4,24,33,.5),transparent 40%)}.image-caption{position:absolute;left:-28px;bottom:44px;display:flex;align-items:center;gap:13px;background:#fff;color:var(--ink);padding:16px 20px;border-radius:13px;box-shadow:var(--shadow)}.caption-icon{display:grid;place-items:center;width:36px;height:36px;background:var(--lime);border-radius:50%;font-weight:900}.image-caption div{display:flex;flex-direction:column}.image-caption small{color:var(--muted)}.rating-card{position:absolute;right:-4vw;top:42px;background:rgba(5,24,34,.88);backdrop-filter:blur(12px);padding:17px 20px;border-left:3px solid var(--lime);display:flex;flex-direction:column}.rating-card strong{font-size:1.1rem}.rating-card span{font-size:.78rem;color:#bdd1d6}.trust-strip{position:relative;display:flex;align-items:center;justify-content:space-between;background:#fff;color:var(--ink);padding:24px 32px;box-shadow:0 -10px 40px rgba(0,0,0,.07)}.trust-strip div{display:flex;flex-direction:column;line-height:1.25}.trust-strip strong{font-size:.92rem}.trust-strip span{color:var(--muted);font-size:.78rem}.trust-strip i{width:1px;height:28px;background:var(--line)}.section{padding:88px 0}.white{background:#fff}.eyebrow{font-weight:900;color:var(--blue);text-transform:uppercase;letter-spacing:.15em;font-size:.72rem}.assessment-section{padding:72px 0;background:linear-gradient(180deg,#eaf6f7,#f7fbfb)}.assessment{background:linear-gradient(135deg,#073146,#09566a);color:#fff;border-radius:28px;padding:clamp(28px,5vw,58px);box-shadow:var(--shadow);overflow:hidden;position:relative}.assessment:after{content:"";position:absolute;width:330px;height:330px;border:80px solid rgba(255,255,255,.035);border-radius:50%;left:-130px;bottom:-220px}.assessment-grid{position:relative;z-index:1;display:grid;grid-template-columns:.78fr 1.22fr;gap:62px;align-items:center}.assessment .eyebrow{color:var(--lime);margin-top:24px}.pill{display:inline-flex;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);border-radius:99px;padding:7px 12px;color:#d9ecef;font-size:.75rem;font-weight:750}.assessment-copy>p:not(.eyebrow){color:#c1d9de}.mini-proof{display:grid;gap:6px;margin-top:24px;color:#d4e7ea;font-size:.88rem}.quiz{background:#fff;color:var(--ink);border-radius:18px;padding:30px;box-shadow:0 18px 50px rgba(0,0,0,.16)}.quiz>label{font-weight:850;display:block;margin:0 0 9px}.quiz select,.quiz input,.quiz textarea{width:100%;padding:14px;border:1px solid var(--line);border-radius:9px;font:inherit;margin-bottom:18px;background:#f9fcfc}.checks{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.checks label{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:9px;font-weight:700;font-size:.86rem;cursor:pointer}.checks label:has(input:checked){border-color:var(--cyan);background:#edfbfb}.checks input{width:auto;margin:0;accent-color:var(--blue)}.quiz-button{width:100%;background:var(--navy);color:#fff}.quiz-note{text-align:center;color:var(--muted);font-size:.74rem;margin:12px 0 0}.result{display:none;background:#eaf7e4;border-left:4px solid #6c9d20;border-radius:8px;padding:16px;margin-top:16px}.result.show{display:block}.section-heading{display:grid;grid-template-columns:1.1fr .7fr;gap:70px;align-items:end;margin-bottom:40px}.section-heading p:last-child{color:var(--muted);margin:0}.services-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}.service-card{grid-column:span 2;min-height:270px}.service-card:nth-child(4),.service-card:nth-child(5){grid-column:span 3}.card{display:block;background:#fff;border:1px solid var(--line);padding:28px;border-radius:var(--radius);box-shadow:0 12px 34px rgba(7,29,43,.06)}a.card{text-decoration:none;color:var(--ink)}.service-card{position:relative;overflow:hidden;transition:.2s transform,.2s box-shadow,.2s border}.service-card:hover{transform:translateY(-5px);box-shadow:0 22px 50px rgba(7,29,43,.11);border-color:#a7d1d6}.service-card:after{content:"";position:absolute;width:100px;height:100px;border-radius:50%;background:#e7f7f7;right:-45px;top:-45px}.service-index{font-size:.75rem;font-weight:900;color:var(--blue);letter-spacing:.12em}.service-card h3{margin-top:55px;max-width:260px}.service-card p{color:var(--muted);font-size:.9rem}.card-link{position:absolute;bottom:24px;color:var(--blue);font-size:.84rem;font-weight:850}.card-link b{margin-left:5px}.local-section{background:#ecf6f6}.local-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:center}.local-image{position:relative}.local-image img{height:560px;object-fit:cover;border-radius:8px 70px 8px 8px;box-shadow:var(--shadow)}.water-stat{position:absolute;right:-26px;bottom:38px;background:var(--navy);color:#fff;padding:20px 24px;display:flex;align-items:center;gap:14px;border-bottom:4px solid var(--lime)}.water-stat strong{font-size:3rem;color:var(--lime);line-height:1}.water-stat span{font-size:.76rem;line-height:1.3}.local-copy>p:not(.eyebrow){color:var(--muted)}.inline-link{display:inline-block;font-weight:850;text-decoration:none;margin:9px 0 25px}.district-list{display:flex;gap:8px;flex-wrap:wrap}.district-list span{background:#fff;border:1px solid var(--line);padding:8px 12px;border-radius:99px;font-size:.75rem;font-weight:700}.dark{background:var(--navy);color:#fff}.technician-section{position:relative;overflow:hidden}.tech-layout{display:grid;grid-template-columns:.92fr 1.08fr;gap:65px;align-items:center}.tech-copy>p:not(.eyebrow){color:#bdcfd4}.eyebrow.light{color:var(--lime)}.steps{display:grid;gap:2px;margin:30px 0}.steps>div{display:grid;grid-template-columns:46px 1fr;gap:14px;padding:17px 0;border-top:1px solid rgba(255,255,255,.13)}.steps span{color:var(--lime);font-size:.75rem;font-weight:900}.steps p{margin:0;color:#b9ccd1;font-size:.88rem}.steps strong{display:block;color:#fff;font-size:1rem}.tech-image{position:relative}.tech-image img{height:600px;object-fit:cover;border-radius:60px 8px 8px 8px}.tech-image>span{position:absolute;bottom:0;left:0;background:var(--lime);color:var(--navy);padding:13px 18px;font-weight:850;font-size:.8rem}.final-cta{background:#fff}.final-cta-box{display:flex;justify-content:space-between;align-items:center;gap:50px;background:linear-gradient(120deg,#e7f7f7,#f6fbfb);border:1px solid #cde5e7;padding:52px 58px;border-radius:24px}.final-cta-box h2{font-size:clamp(2rem,3vw,3.2rem)}.final-cta-box p{color:var(--muted)}.final-cta-box>div:last-child{display:flex;flex-direction:column;gap:10px;text-align:center}.final-cta-box small{color:var(--muted)}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.num{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#dff4f1;color:var(--blue);font-weight:900}.content{background:#fff}.content .wrap{max-width:900px}.content article{padding:70px 0}.content p,.content li{color:#294650}.content h2{margin-top:1.4em}.content h3{margin-top:1.35em}.toc{background:var(--ice);border-left:4px solid var(--cyan);padding:18px 22px;margin:26px 0}.source-note{font-size:.9rem;background:#eef6df;padding:18px;border-radius:12px}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq summary{font-weight:850;cursor:pointer}.cta-band{background:var(--ice);padding:42px;border-radius:24px;margin:50px 0}.lead-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.lead-form label{font-weight:750}.lead-form input,.lead-form select,.lead-form textarea{width:100%;padding:13px;border:1px solid var(--line);border-radius:9px;font:inherit}.lead-form .full{grid-column:1/-1}.legal{font-size:.82rem;color:var(--muted)}footer{background:#041620;color:#c5d8dd;padding:58px 0 30px}footer a{color:#fff}footer .brand{color:#fff}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px}.footer-bottom{border-top:1px solid #28434e;margin-top:38px;padding-top:24px;font-size:.8rem}.mobile-cta{display:none}@media(max-width:1050px){.links>a:not(.btn):not(.header-phone){display:none}.header-phone{display:none}.hero-grid{grid-template-columns:1fr 1fr;gap:34px}.hero-visual{min-height:540px}.services-grid{grid-template-columns:repeat(2,1fr)}.service-card,.service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto}.service-card:last-child{grid-column:1/-1}.local-layout,.tech-layout{gap:38px}}@media(max-width:760px){.wrap{width:min(100% - 28px,1200px)}.topbar-inner{justify-content:center}.topbar-inner span:last-child{display:none}.nav{min-height:70px}.brand{font-size:.9rem}.brand span{max-width:150px}.links{gap:8px}.links .btn{font-size:.78rem;padding:10px 13px;min-height:44px}.hero{padding-top:52px}.hero-grid,.assessment-grid,.section-heading,.local-layout,.tech-layout,.grid-3,.grid-2,.footer-grid{grid-template-columns:1fr}.hero-copy{padding-bottom:20px}.hero h1{font-size:clamp(3.1rem,14vw,4.7rem)}.hero-visual{min-height:430px;margin-top:12px}.hero-visual>img{width:100%;border-radius:24px 24px 0 0}.image-caption{left:12px;right:12px;bottom:18px}.rating-card{right:10px;top:18px}.trust-strip{margin:0;width:100%;overflow:auto;gap:28px;padding:19px 22px}.trust-strip div{min-width:120px}.section{padding:66px 0}.assessment-section{padding:38px 0}.assessment{padding:24px 18px;border-radius:18px}.assessment-grid{gap:30px}.quiz{padding:22px 16px}.checks{grid-template-columns:1fr}.services-grid{grid-template-columns:1fr}.service-card,.service-card:nth-child(4),.service-card:nth-child(5),.service-card:last-child{grid-column:auto;min-height:240px}.section-heading{gap:6px}.local-image{order:2}.local-image img,.tech-image img{height:410px}.water-stat{right:10px}.final-cta-box{padding:34px 24px;align-items:flex-start;flex-direction:column}.mobile-cta{display:flex;position:fixed;z-index:40;bottom:10px;left:10px;right:10px;background:var(--lime);color:var(--navy);box-shadow:0 12px 35px rgba(0,0,0,.28)}footer{padding-bottom:90px}}
