:root{--ink:#07131f;--ink-soft:#0c1b28;--navy:#103050;--blue:#1890b8;--copper:#e86820;--copper-dark:#bd4c11;--cream:#f4f1ea;--paper:#dce9e9;--muted:#aab4bb;--line-dark:#ffffff26;--line-light:#07131f29;--shell:min(1360px, calc(100% - 72px))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--ink);color:var(--cream);-webkit-font-smoothing:antialiased;margin:0;font-family:Segoe UI,Arial,Helvetica,sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}::selection{color:#fff;background:var(--copper)}:focus-visible{outline:2px solid var(--copper);outline-offset:4px}.page-shell{width:var(--shell);margin-inline:auto}.section-pad{padding-block:clamp(100px,11vw,170px)}.dark-section{background:var(--ink);color:var(--cream)}.light-section{color:var(--ink);background:radial-gradient(circle at 12% 18%,#1890b833,#0000 30%),radial-gradient(circle at 88% 82%,#e8682029,#0000 30%),linear-gradient(135deg,#c9dde2 0%,#dce7e3 52%,#e6d4c7 100%)}.eyebrow{color:var(--copper);letter-spacing:.21em;margin:0 0 24px;font-size:11px;font-weight:850;line-height:1}h1,h2,h3,p{text-wrap:pretty}h2{letter-spacing:-.055em;margin:0;font-size:clamp(42px,5vw,72px);line-height:1.02}.hero{isolation:isolate;background:url(/project-bathroom.jpg) 50% 47%/cover no-repeat;min-height:100svh;position:relative;overflow:hidden}.hero-shade{z-index:-1;background:linear-gradient(90deg,#040b12fc 0%,#040b12e8 39%,#040b1245 73%),linear-gradient(#0000 56%,#040b12b8 100%);position:absolute;inset:0}.site-header{width:var(--shell);border-bottom:1px solid var(--line-dark);grid-template-columns:230px 1fr 315px;align-items:center;min-height:124px;margin:0 auto;display:grid}.brand{align-items:center;width:fit-content;display:inline-flex}.brand-logo-wrap{border:1px solid #ffffff3d;border-left:2px solid var(--copper);background:linear-gradient(135deg,#f7fbfafa,#cfdfe2ed);border-radius:4px;width:184px;height:108px;display:block;position:relative;overflow:hidden;box-shadow:0 12px 34px #00000040}.brand-logo{object-fit:contain;filter:drop-shadow(0 5px 13px #07131f38)saturate(1.2)contrast(1.08);width:100%;height:100%;transform:translateY(-2px)scale(1.68)}.main-nav{justify-content:center;gap:clamp(21px,2.35vw,38px);display:flex}.main-nav a{color:#e9edef;letter-spacing:.045em;padding:12px 0;font-size:12px;font-weight:750;position:relative}.main-nav a:after{content:"";background:var(--copper);height:1px;transition:right .25s;position:absolute;bottom:5px;left:0;right:100%}.main-nav a:hover:after{right:0}.header-actions{justify-content:flex-end;align-items:center;gap:22px;display:flex}.language-switch{color:#9ca8b0;align-items:center;display:flex}.language-switch button{color:inherit;cursor:pointer;letter-spacing:.14em;background:0 0;border:0;padding:7px 2px;font-size:10px;font-weight:850}.language-switch button.active{color:#fff}.language-switch i{background:#667581;width:1px;height:11px;margin:0 7px;display:block}.phone-link{color:#fff;font-size:14px;font-weight:800}.phone-link.clickable-contact,.footer-links .clickable-contact{text-underline-offset:5px;-webkit-text-decoration:underline #ff8a47cc;text-decoration:underline #ff8a47cc;text-decoration-thickness:1px}.contact-details .clickable-contact strong,.stat-contact.clickable-contact strong{text-underline-offset:5px;-webkit-text-decoration:underline #e86820c7;text-decoration:underline #e86820c7;text-decoration-thickness:1px}.clickable-contact:hover{color:#ff9a61}.phone-link:before{content:"";background:var(--copper);border-radius:50%;width:7px;height:7px;margin-right:10px;display:inline-block;box-shadow:0 0 0 5px #e8682021}.menu-toggle{color:#fff;cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;min-height:44px;padding:8px 0 8px 10px;font-size:9px;font-weight:800;display:none}.menu-toggle>span{gap:5px;margin-right:8px;display:grid}.menu-toggle i{background:var(--copper);width:20px;height:1px;transition:transform .2s;display:block}.menu-toggle[aria-expanded=true] i:first-child{transform:translateY(3px)rotate(45deg)}.menu-toggle[aria-expanded=true] i:last-child{transform:translateY(-3px)rotate(-45deg)}.mobile-nav{display:none}.hero-content{padding:clamp(72px,9.5vh,122px) 0 clamp(105px,13vh,165px)}.emergency-strip,.emergency-pill{border:1px solid #ff8a47b8;border-left:4px solid var(--copper);color:#f4f7f8;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);letter-spacing:.055em;text-transform:uppercase;background:linear-gradient(105deg,#050d15f0,#0d2839e0);border-radius:7px;align-items:center;gap:14px;width:fit-content;min-height:62px;margin-bottom:31px;padding:15px 20px;font-size:11px;transition:transform .2s,border-color .2s,box-shadow .2s;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 18px 45px #00000057,inset 0 0 0 1px #e8682012}.emergency-strip:after,.emergency-pill:after{content:"";pointer-events:none;background:linear-gradient(115deg,#0000 52%,#ffffff12);position:absolute;inset:0}.emergency-strip:hover,.emergency-pill:hover{border-color:#ff8a47;transform:translateY(-2px);box-shadow:0 22px 52px #00000063,0 0 28px #e8682014}.emergency-pill strong,.emergency-strip strong{color:#ff9a61;letter-spacing:.1em;font-size:13px}.emergency-strip em,.emergency-pill em{color:#d5dee2;letter-spacing:.025em;text-transform:none;font-size:10px;font-style:normal;font-weight:650}.emergency-hours{color:#7de3aa;letter-spacing:.1em;background:#49d58a17;border:1px solid #72dfa352;border-radius:999px;padding:4px 12px;font-size:16px;font-weight:950}.emergency-pulse{background:#49d58a;border-radius:50%;flex:none;width:10px;height:10px;animation:1.8s ease-in-out infinite emergency-pulse;box-shadow:0 0 0 6px #49d58a21}@keyframes emergency-pulse{50%{box-shadow:0 0 0 9px #49d58a00}}.hero h1{letter-spacing:-.063em;max-width:820px;margin:0;font-size:clamp(58px,6.5vw,96px);font-weight:800;line-height:.96}.hero h1 span{color:#0000;-webkit-text-stroke:1px #ffffffd6;margin-top:7px;display:block}.hero-copy{color:#d0d7db;max-width:630px;margin:33px 0 0;font-size:17px;line-height:1.7}.hero-actions{gap:13px;margin-top:38px;display:flex}.button{color:#fff;text-align:center;letter-spacing:.035em;cursor:pointer;background:0 0;border:1px solid #ffffff57;min-width:168px;padding:16px 22px;font-size:12px;font-weight:800;transition:transform .2s,background .2s,border-color .2s}.button:hover{transform:translateY(-2px)}.button-primary{border-color:var(--copper);background:var(--copper);box-shadow:0 14px 35px #e8682029}.button-primary:hover{border-color:var(--copper-dark);background:var(--copper-dark)}.button span{margin-left:14px}.button-secondary{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#050d1561}.button-secondary:hover{background:#ffffff14}.trust-row{gap:clamp(30px,4vw,58px);margin-top:62px;display:flex}.trust-row div{border-left:2px solid var(--copper);min-width:155px;padding-left:16px}.trust-row strong,.trust-row span{display:block}.trust-row strong{color:#fff;margin-bottom:6px;font-size:12px}.trust-row span{color:#98a4ac;font-size:10px}.hero-note{color:#e7ebed;letter-spacing:.11em;text-transform:uppercase;align-items:flex-start;gap:15px;font-size:10px;line-height:1.7;display:flex;position:absolute;bottom:54px;right:4vw}.hero-note p{margin:0}.note-line{background:var(--copper);width:38px;height:1px;margin-top:8px}.scroll-cue{color:#aab4bb;letter-spacing:.15em;text-transform:uppercase;flex-direction:column;align-items:center;gap:10px;font-size:9px;font-weight:800;display:flex;position:absolute;bottom:38px;left:50%;transform:translate(-50%)}.scroll-cue i{color:var(--copper);font-size:16px;font-style:normal}.section-intro h2{max-width:700px}.section-intro>p,.split-intro>p{color:#52606a;max-width:540px;margin:0;font-size:16px;line-height:1.75}.split-intro{grid-template-columns:1.1fr .9fr;align-items:end;gap:80px;display:grid}.service-grid{background:#07131f33;border:1px solid #07131f2e;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:72px;display:grid;box-shadow:0 34px 80px #07131f1a}.service-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#e6f0efd1;min-height:405px;padding:42px 31px 38px;transition:color .25s,background .25s;position:relative;overflow:hidden}.card-number{color:#a7afb4;letter-spacing:.1em;font-size:10px;font-weight:800;position:absolute;top:28px;right:30px}.service-mark{border:1px solid #1890b86b;border-radius:50%;width:54px;height:54px;margin:22px 0 48px;position:relative}.service-mark i:first-child{background:var(--blue);width:30px;height:2px;position:absolute;top:25px;left:11px;transform:rotate(-35deg)}.service-mark i:last-child{background:var(--copper);width:2px;height:30px;position:absolute;top:17px;left:25px;transform:rotate(-35deg)}.service-card h3{letter-spacing:-.035em;margin:0 0 17px;font-size:23px}.service-card p{color:#66727a;min-height:72px;margin:0 0 32px;font-size:14px;line-height:1.7}.service-card a{border-top:1px solid var(--line-light);color:var(--navy);letter-spacing:.03em;justify-content:space-between;align-items:center;padding-top:18px;font-size:11px;font-weight:800;display:flex}.service-card:hover{z-index:1;background:var(--navy);color:#fff}.service-card:hover p,.service-card:hover a{color:#c6d0d6}.service-card:hover a{border-color:#ffffff2e}.smart-water{color:var(--cream);background:radial-gradient(circle at 84% 16%,#1890b83d,#0000 30%),radial-gradient(circle at 7% 91%,#e8682026,#0000 28%),linear-gradient(135deg,#0b2334 0%,#103a50 55%,#07131f 100%);position:relative;overflow:hidden}.smart-water:before{content:"";background:linear-gradient(#0000,#ffffff29,#0000);width:1px;height:100%;position:absolute;top:0;right:8%}.smart-water-grid{grid-template-columns:1.03fr .97fr;align-items:center;gap:clamp(70px,8vw,130px);display:grid}.smart-water-copy{order:1}.smart-water-visual{order:2;height:680px;position:relative}.smart-water-image{background:#0a1824;margin:0;position:absolute;inset:0 52px 78px 0;overflow:hidden}.smart-water-image:after{content:"";pointer-events:none;background:linear-gradient(#0000 52%,#07131f9e);position:absolute;inset:0}.smart-water-image img{object-fit:cover;width:100%;height:100%}.smart-water-image figcaption,.smart-water-accent figcaption{z-index:1;color:#fff;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800;position:absolute;bottom:18px;left:20px;right:20px}.smart-water-accent{z-index:2;background:#050d14;border:6px solid #0c2637;width:55%;height:205px;margin:0;position:absolute;bottom:0;right:-24px;overflow:hidden;box-shadow:0 24px 55px #00000059}.smart-water-accent:after{content:"";pointer-events:none;background:linear-gradient(#0000 40%,#07131fb8);position:absolute;inset:0}.smart-water-accent img{object-fit:cover;width:100%;height:100%}.smart-water-accent figcaption{font-size:8px;bottom:12px;left:14px;right:14px}.smart-water-badge{z-index:3;border-left:3px solid var(--copper);color:#fff;background:#050d15f0;gap:5px;max-width:190px;padding:17px 20px;line-height:1.45;display:grid;position:absolute;top:38px;right:-34px;box-shadow:0 18px 45px #0000004d}.smart-water-badge strong{color:#ff8a47;letter-spacing:.08em;font-size:17px}.smart-water-badge span{letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:800}.smart-water-copy h2{max-width:660px;margin-bottom:30px}.smart-water-copy>p:not(.eyebrow){color:#c2cdd3;max-width:620px;margin:0;font-size:16px;line-height:1.75}.smart-water-features{background:#ffffff26;border:1px solid #ffffff26;grid-template-columns:1fr 1fr;gap:1px;margin-top:38px;display:grid}.smart-water-feature{background:#07131f7a;grid-template-columns:32px 1fr;align-items:center;gap:11px;min-height:98px;padding:20px 22px;display:grid}.smart-water-feature>span{color:#ff8a47;letter-spacing:.1em;font-size:9px;font-weight:850}.smart-water-feature strong,.smart-water-feature small{display:block}.smart-water-feature strong{color:#f2f5f6;letter-spacing:.025em;margin-bottom:6px;font-size:13px}.smart-water-feature small{color:#95a5ad;font-size:9px;line-height:1.4}.smart-water-actions{align-items:center;gap:23px;margin-top:34px;display:flex}.smart-water-link{color:#d9e1e5;border-bottom:1px solid #ffffff4d;align-items:center;gap:12px;padding:13px 0;font-size:11px;font-weight:800;display:inline-flex}.smart-water-link:hover{border-color:var(--copper);color:#fff}.smart-water-copy>small{color:#83929b;max-width:610px;margin-top:24px;font-size:9px;line-height:1.6;display:block}.projects-intro{grid-template-columns:.32fr 1fr;align-items:end;gap:42px;margin-bottom:66px;display:grid}.projects-intro .eyebrow{align-self:start;margin-top:16px}.project-grid{grid-template-rows:335px 335px;grid-template-columns:1.1fr .9fr .9fr;grid-auto-rows:335px;gap:12px;display:grid}.project-item{background:#152534;margin:0;position:relative;overflow:hidden}.project-item.large{grid-row:span 2}.project-item.wide{grid-column:span 2}.project-item img{object-fit:cover;filter:saturate(.82)contrast(1.04);width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.75,.2,1),filter .4s}.project-item:hover img{filter:saturate()contrast(1.02);transform:scale(1.035)}.project-item figcaption{color:#fff;background:linear-gradient(#040b121a,#040b12f0);grid-template-columns:40px 1fr auto;align-items:center;min-height:72px;padding:0 24px;display:grid;position:absolute;inset:auto 0 0}.project-item figcaption span{color:var(--copper);font-size:10px;font-weight:800}.project-item figcaption strong{letter-spacing:.04em;font-size:12px}.project-item figcaption i{font-style:normal}.about-grid{grid-template-columns:.92fr 1.08fr;align-items:center;gap:clamp(70px,9vw,140px);display:grid}.about-image-wrap{height:690px;position:relative}.about-image-wrap:before{content:"";border:1px solid #e868208c;width:54%;height:55%;position:absolute;top:-23px;right:-23px}.about-image-wrap img{z-index:1;object-fit:cover;width:100%;height:100%;position:relative}.image-stamp{z-index:2;background:var(--navy);color:#fff;border:1px solid #ffffff47;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:132px;height:132px;display:flex;position:absolute;bottom:44px;right:-42px;box-shadow:0 20px 45px #07131f2e}.image-stamp strong{color:var(--copper);letter-spacing:.08em;font-size:24px}.image-stamp span{letter-spacing:.18em;font-size:8px}.about-copy h2{margin-bottom:35px}.about-copy>p:not(.eyebrow){color:#55636c;max-width:620px;margin:0 0 18px;font-size:16px;line-height:1.8}.about-stats{border-top:1px solid var(--line-light);background:var(--line-light);grid-template-columns:repeat(3,1fr);gap:1px;margin-top:48px;display:grid}.about-stats div{background:#dce9e9b8;padding:26px 18px 10px 0}.about-stats strong,.about-stats span,.stat-contact{display:block}.about-stats strong{color:var(--navy);margin-bottom:7px;font-size:15px}.about-stats span{color:#748089;letter-spacing:.04em;font-size:10px}.social-proof{color:var(--ink);background:radial-gradient(circle at 78% 10%,#e8682029,#0000 28%),linear-gradient(135deg,#b8d6df 0%,#d2e2df 48%,#dfcabb 100%)}.social-intro{margin-bottom:60px}.reviews-heading{border-bottom:1px solid #07131f2e;justify-content:space-between;align-items:end;gap:28px;margin-bottom:18px;padding-bottom:18px;display:flex}.reviews-heading>div{gap:7px;display:grid}.reviews-heading .eyebrow{margin:0}.reviews-summary{min-width:185px;color:var(--navy);background:#ffffff52;border:1px solid #07131f26;flex:none;grid-template-columns:auto auto;align-items:center;gap:2px 12px;padding:14px 17px;display:grid}.reviews-summary strong{letter-spacing:-.04em;font-size:24px}.reviews-summary>span{color:#f29a18;letter-spacing:.12em;font-size:12px}.review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.review-card{background:linear-gradient(145deg,#f6faf9e0,#dcebebc7);border:1px solid #07131f24;flex-direction:column;min-height:310px;padding:30px;transition:transform .25s,box-shadow .25s;display:flex;box-shadow:0 22px 50px #07131f14}.review-card:hover{transform:translateY(-4px);box-shadow:0 28px 62px #07131f21}.review-card-top{justify-content:space-between;align-items:center;gap:18px;display:flex}.review-stars{color:#f29a18;letter-spacing:.16em;text-shadow:0 2px 8px #f29a1829;font-size:17px}.google-review-mark{color:#4285f4;background:#ffffff80;border:1px solid #4285f447;border-radius:999px;flex:none;align-items:center;gap:7px;min-height:31px;padding:6px 10px;font-size:9px;font-weight:900;display:inline-flex}.review-card blockquote{color:#253b48;flex:1;margin:30px 0 34px;font-size:15px;line-height:1.75}.review-card blockquote p{margin:0}.review-author{border-top:1px solid #07131f24;grid-template-columns:38px 1fr;align-items:center;gap:11px;padding-top:18px;display:grid}.review-author>span{background:var(--navy);color:#fff;border-radius:50%;place-items:center;width:36px;height:36px;font-size:12px;font-weight:900;display:grid}.review-author strong{font-size:11px}.social-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.social-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#e0ededc7;border:1px solid #07131f24;grid-template-rows:1fr auto;grid-template-columns:140px 1fr;column-gap:44px;min-height:280px;padding:34px 38px;transition:transform .25s,box-shadow .25s;display:grid}.social-card:hover{transform:translateY(-4px);box-shadow:0 25px 50px #07131f17}.social-name{letter-spacing:-.04em;grid-row:span 2;align-self:start;font-size:19px;font-weight:800}.google-card .social-name{color:#4285f4}.facebook-card .social-name{color:#1877f2}.social-card h3{letter-spacing:-.035em;margin:0 0 13px;font-size:24px}.social-card p{color:#67737b;max-width:390px;margin:0;font-size:14px;line-height:1.7}.social-card>strong{border-top:1px solid var(--line-light);color:var(--navy);letter-spacing:.03em;justify-content:space-between;align-items:center;padding-top:22px;font-size:11px;display:flex}.contact{border-bottom:1px solid var(--line-dark)}.contact-grid{grid-template-columns:.82fr 1.18fr;gap:clamp(70px,9vw,145px);display:grid}.contact-copy h2{max-width:590px;margin-bottom:30px}.contact-copy>p:not(.eyebrow){color:#aeb8be;max-width:520px;font-size:16px;line-height:1.75}.contact-details{gap:20px;margin-top:53px;display:grid}.contact-details a{gap:7px;display:grid}.contact-details span{color:var(--copper);letter-spacing:.16em;text-transform:uppercase;font-size:9px;font-weight:800}.contact-details strong{font-size:17px;font-weight:650}.contact-email{gap:8px;display:grid}.email-line{flex-wrap:wrap;align-items:center;gap:13px;display:flex}.email-line a{overflow-wrap:anywhere;min-width:0}.copy-email{color:#f0b28e;cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:#e8682014;border:1px solid #e868208c;min-height:34px;padding:7px 11px;font-size:9px;font-weight:800}.copy-email:hover{border-color:var(--copper);color:#fff;background:#e868202e}.contact-emergency{background:#49d58a0f;border:1px solid #49d58a59;align-items:center;gap:12px;width:fit-content;margin-top:34px;padding:12px 16px;display:flex}.contact-emergency strong{color:#72dfa3;letter-spacing:.1em;font-size:13px}.contact-emergency span{color:#d7e0e4;font-size:11px}.legal-line{color:#7e8c95;letter-spacing:.04em;max-width:540px;margin:27px 0 0;font-size:10px;line-height:1.6}.contact-form{border:1px solid var(--line-dark);background:var(--ink-soft);padding:44px}.contact-form h3{letter-spacing:-.03em;margin:0 0 34px;font-size:23px}.contact-form label{color:#aab4bb;letter-spacing:.08em;text-transform:uppercase;gap:9px;margin-bottom:19px;font-size:10px;font-weight:750;display:grid}.form-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.contact-form input,.contact-form textarea{color:#fff;letter-spacing:0;text-transform:none;background:#0a1824;border:1px solid #ffffff26;border-radius:0;outline:0;width:100%;font-size:14px}.contact-form input{height:50px;padding:0 15px}.contact-form textarea{resize:vertical;padding:15px}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--copper)}.form-honeypot{clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;width:1px!important;height:1px!important;position:absolute!important;overflow:hidden!important}.field-meta{color:#687984;letter-spacing:0;text-transform:none;justify-content:space-between;gap:18px;font-size:9px;font-weight:600;display:flex}.field-meta output{color:#f0a478;font-variant-numeric:tabular-nums;flex:none}.attachment-field{margin-top:3px}.attachment-control{color:#e7ecef;cursor:pointer;background:linear-gradient(135deg,#e8682014,#1890b80f);border:1px dashed #e868209e;justify-content:center;align-items:center;gap:12px;min-height:76px;transition:border-color .2s,background .2s;display:flex;position:relative;overflow:hidden}.attachment-control:hover,.attachment-control:focus-within{background:linear-gradient(135deg,#e8682024,#1890b81a);border-color:#ff8a47;box-shadow:0 0 0 3px #e8682014}.attachment-icon{background:var(--copper);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-size:19px;line-height:1;display:grid}.attachment-control strong{letter-spacing:.03em;font-size:11px}.contact-form .attachment-input{z-index:1;opacity:0;cursor:pointer;width:100%;height:100%;padding:0;position:absolute;inset:0}.contact-form .attachment-field>small{color:#7f8d96;text-align:left;margin:0;font-size:9px;line-height:1.55}.attachment-list{color:#b8c3c9;letter-spacing:0;overflow-wrap:anywhere;text-transform:none;min-height:18px;margin-top:8px;font-size:9px;font-weight:600;line-height:1.55;display:block}.attachment-previews{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:12px;display:grid}.attachment-previews:empty{display:none}.attachment-preview{background:#07131f;border:1px solid #ffffff26;min-width:0;position:relative;overflow:hidden;box-shadow:0 14px 30px #00000029}.attachment-preview-media{aspect-ratio:16/10;object-fit:cover;background:#050d14;width:100%;display:block}.attachment-preview-meta{gap:4px;min-width:0;padding:12px 80px 12px 12px;display:grid}.attachment-preview-meta strong{color:#edf1f3;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.attachment-preview-meta span{color:#7f909a;letter-spacing:.03em;font-size:8px}.attachment-preview-remove{color:#ffad7e;cursor:pointer;letter-spacing:.06em;text-transform:uppercase;background:#e8682024;border:1px solid #ff8a47b3;min-width:60px;min-height:36px;padding:7px 10px;font-size:8px;font-weight:850;transition:background .2s,color .2s,border-color .2s;position:absolute;bottom:9px;right:9px}.attachment-preview-remove:hover,.attachment-preview-remove:focus-visible{background:var(--copper);color:#fff;border-color:#ff8a47}.contact-form .form-consent{color:#aebac1;letter-spacing:0;text-transform:none;grid-template-columns:20px 1fr;align-items:start;gap:11px;margin:20px 0 16px;font-size:10px;font-weight:600;line-height:1.6}.contact-form .form-consent input{width:18px;height:18px;accent-color:var(--copper);margin:1px 0 0;padding:0}.form-consent a,.cookie-details a{color:#ff9a61;text-underline-offset:3px;text-decoration:underline}.form-success,.form-error{color:#dff8ee;background:#39c38d17;border-left:2px solid #39c38d;margin:14px 0;padding:12px 14px;font-size:11px;line-height:1.55}.form-error{color:#ffd8d1;background:#ff765f17;border-left-color:#ff765f}.attachment-error{margin-top:9px}.form-submit{width:100%;margin-top:5px}.form-submit:disabled{cursor:wait;opacity:.72;transform:none}.contact-form small{color:#72808a;text-align:center;text-transform:none;margin-top:14px;font-size:9px;display:block}.form-success{border-left:2px solid var(--copper);color:#e4e9ec;background:#e8682014;padding:18px;font-size:13px;line-height:1.6}footer{background:#050d14}.footer-inner{grid-template-columns:210px 1fr auto;align-items:center;gap:30px;min-height:182px;display:grid}.footer-brand{border:1px solid #ffffff2e;border-left:2px solid var(--copper);background:linear-gradient(135deg,#f7fbfaf7,#cfdfe2e6);border-radius:4px;width:170px;height:100px;position:relative;overflow:hidden;box-shadow:0 12px 30px #0000003d}.footer-brand img{object-fit:contain;filter:drop-shadow(0 5px 13px #07131f33)saturate(1.18)contrast(1.06);width:100%;height:100%;transform:translateY(-2px)scale(1.66)}.footer-meta,.footer-legal{justify-items:center;gap:7px;display:grid}.footer-meta p,.footer-legal p{color:#6f7d87;text-align:center;margin:0;font-size:10px}.footer-meta p:nth-child(2){color:#8d99a1}.privacy-reopen{color:#b6c0c6;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #e868206b;padding:4px 0;font-size:9px}.privacy-reopen:hover{color:#fff;border-color:var(--copper)}.footer-links{color:#aeb8be;align-items:center;gap:25px;font-size:11px;display:flex}.footer-links a:last-child{border:1px solid var(--line-dark);width:38px;height:38px;color:var(--copper);place-items:center;display:grid}.mobile-call{display:none}.cookie-layer,.cookie-banner{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#03090e8a;justify-content:center;align-items:flex-end;padding:24px;display:flex;position:fixed;inset:0}.cookie-banner[hidden]{display:none}.cookie-card{border:1px solid #07131f33;border-top:3px solid var(--copper);width:min(940px,100%);color:var(--ink);background:linear-gradient(135deg,#d7e8e9,#e7ddd4);padding:28px 30px;box-shadow:0 28px 90px #00000061}.cookie-heading{justify-content:space-between;align-items:flex-start;gap:25px;display:flex}.cookie-heading>div{align-items:center;gap:13px;display:flex}.cookie-heading h2{letter-spacing:-.045em;margin:0;font-size:clamp(25px,3vw,34px)}.cookie-shield{background:var(--navy);color:#78e1aa;border-radius:50%;flex:none;place-items:center;width:33px;height:33px;font-size:15px;font-weight:900;display:grid}.cookie-close{width:36px;height:36px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #07131f33;font-size:22px}.cookie-card>p{color:#435661;max-width:790px;margin:13px 0 19px 46px;font-size:13px;line-height:1.6}.cookie-details{grid-template-columns:1fr 1fr;gap:10px;margin:0 0 20px 46px;display:grid}.cookie-details>div{background:#ffffff47;border:1px solid #07131f24;grid-template-columns:26px 1fr auto;align-items:center;gap:10px;padding:12px 14px;display:grid}.cookie-details>div>span{width:23px;height:23px;color:var(--navy);background:#1030501a;border-radius:50%;place-items:center;font-weight:900;display:grid}.cookie-details p,.cookie-details strong,.cookie-details small{margin:0;display:block}.cookie-details strong{margin-bottom:3px;font-size:11px}.cookie-details small{color:#53656f;font-size:9px;line-height:1.45}.cookie-details b{color:var(--navy);letter-spacing:.08em;font-size:9px}.cookie-actions{justify-content:flex-end;gap:10px;display:flex}.cookie-actions .button{min-width:175px}.cookie-actions{justify-content:flex-end}.cookie-necessary{color:var(--navy);background:#10305014;border-color:#07131f47}.cookie-necessary:hover{border-color:var(--navy);background:var(--navy);color:#fff}.cookie-banner .cookie-card{grid-template-columns:1fr auto;align-items:end;gap:30px;display:grid}.cookie-copy h2{letter-spacing:-.045em;margin:0;font-size:clamp(25px,3vw,34px)}.cookie-copy>p:not(.eyebrow){color:#435661;max-width:690px;margin:12px 0 0;font-size:13px;line-height:1.6}details.cookie-details{margin:15px 0 0;display:block}details.cookie-details summary{width:fit-content;color:var(--navy);cursor:pointer;font-size:10px;font-weight:800}details.cookie-details>p{border-left:2px solid var(--copper);color:#53656f;background:#ffffff3d;max-width:690px;margin:10px 0 0;padding:12px 14px;font-size:10px;line-height:1.55}.cookie-banner .cookie-actions{flex-direction:column-reverse;min-width:190px}.cookie-banner .cookie-actions .button{width:100%}@media (max-width:1100px){:root{--shell:min(100% - 44px, 980px)}.site-header{grid-template-columns:184px 1fr 260px}.brand-logo-wrap{width:164px;height:98px}.main-nav{gap:18px}.main-nav a{font-size:10px}.phone-link{font-size:12px}.header-actions{gap:14px}.service-grid{grid-template-columns:repeat(2,1fr)}.smart-water-grid{gap:55px}.smart-water-visual{height:600px}.smart-water-accent{height:180px}.project-grid{grid-template-rows:300px 300px;grid-auto-rows:300px}.about-grid{gap:75px}.about-image-wrap{height:600px}.social-card{grid-template-columns:100px 1fr;column-gap:25px}}@media (max-width:820px){:root{--shell:calc(100% - 36px)}.section-pad{padding-block:92px}.site-header{grid-template-columns:1fr auto;min-height:104px}.brand-logo-wrap{width:158px;height:94px}.main-nav,.phone-link{display:none}.menu-toggle{align-items:center;display:inline-flex}.mobile-nav.open{z-index:6;width:var(--shell);border:1px solid #ffffff29;border-top:2px solid var(--copper);background:#050d15f7;grid-template-columns:repeat(5,1fr);display:grid;position:absolute;top:104px;left:50%;transform:translate(-50%);box-shadow:0 22px 45px #00000052}.mobile-nav a{color:#e9edef;letter-spacing:.05em;border-right:1px solid #ffffff1a;place-items:center;min-height:50px;font-size:9px;font-weight:800;display:grid}.mobile-nav a:last-child{border-right:0}.hero{min-height:auto}.hero-shade{background:linear-gradient(90deg,#040b12f5,#040b1294),linear-gradient(#0000,#040b12d4)}.hero-content{padding:92px 0 105px}.hero h1{font-size:clamp(49px,12vw,72px)}.trust-row{flex-wrap:wrap;gap:24px}.hero-note,.scroll-cue{display:none}.split-intro,.projects-intro,.about-grid,.contact-grid{grid-template-columns:1fr}.split-intro,.projects-intro{gap:27px}.service-grid{grid-template-columns:1fr}.service-card{min-height:320px}.smart-water-grid{grid-template-columns:1fr;gap:65px}.smart-water-visual{width:calc(100% - 30px);height:570px}.smart-water-image{bottom:70px;right:36px}.smart-water-accent{height:175px}.smart-water-badge{right:-30px}.project-grid{grid-template-rows:390px 280px 280px;grid-template-columns:1fr 1fr;grid-auto-rows:280px}.project-item.large{grid-area:auto/span 2}.project-item.wide{grid-column:span 2}.about-image-wrap{width:calc(100% - 30px);height:580px}.about-copy{padding-top:10px}.social-grid,.review-grid{grid-template-columns:1fr}.review-card{min-height:auto}.contact-grid{gap:65px}.footer-inner{grid-template-columns:180px 1fr}.footer-links{grid-column:span 2;justify-content:center;padding-bottom:28px}.footer-brand{width:170px}.cookie-details{grid-template-columns:1fr}.mobile-call{z-index:10;background:var(--copper);color:#fff;gap:16px;padding:15px 18px;font-size:11px;font-weight:800;display:flex;position:fixed;bottom:18px;right:18px;box-shadow:0 15px 35px #07131f4d}}@media (max-width:560px){.section-pad{padding-block:78px}h2{font-size:43px}.hero h1{font-size:47px}.hero h1 span{-webkit-text-stroke-width:.7px}.hero-copy{font-size:15px}.emergency-strip,.emergency-pill{grid-template-columns:auto 1fr auto;align-items:center;gap:8px 12px;width:100%;max-width:460px;line-height:1.35;display:grid}.emergency-strip strong,.emergency-pill strong{grid-column:2}.emergency-hours{grid-column:3}.emergency-strip em,.emergency-pill em{grid-column:2/4}.hero-actions{flex-direction:column;align-items:stretch}.trust-row{flex-direction:column;margin-top:47px}.trust-row div{min-width:0}.service-grid{margin-top:52px}.service-card{padding:34px 26px}.smart-water-visual{width:calc(100% - 18px);height:430px}.smart-water-image{bottom:58px;right:18px}.smart-water-accent{border-width:4px;width:64%;height:140px;right:-18px}.smart-water-badge{padding:13px 15px;top:24px;bottom:auto;right:-18px}.smart-water-features{grid-template-columns:1fr}.smart-water-actions{flex-direction:column;align-items:stretch;gap:10px}.smart-water-actions .button{width:100%}.smart-water-link{width:fit-content}.project-grid{grid-template-rows:repeat(7,365px);grid-template-columns:1fr;display:grid}.project-item.large,.project-item.wide{grid-area:auto}.about-image-wrap{height:490px}.image-stamp{width:112px;height:112px;right:-20px}.about-stats{grid-template-columns:1fr}.about-stats div{padding:18px 0}.social-card{grid-template-rows:auto 1fr auto;grid-template-columns:1fr;gap:24px;min-height:310px;padding:30px 26px}.reviews-heading{flex-direction:column;align-items:flex-start}.review-card{padding:27px 24px}.social-name{grid-row:auto}.form-row{grid-template-columns:1fr;gap:0}.contact-form{padding:30px 22px}.attachment-previews{grid-template-columns:1fr}.footer-inner{grid-template-columns:1fr auto;min-height:250px}.footer-meta,.footer-legal{justify-items:start}.footer-meta p,.footer-legal p{text-align:left}.footer-links{grid-column:span 2;justify-content:space-between;width:100%;padding-bottom:26px}.footer-links a:first-child{display:block}.cookie-layer{padding:10px}.cookie-card{max-height:calc(100svh - 20px);padding:22px 18px;overflow-y:auto}.cookie-card>p,.cookie-details{margin-left:0}.cookie-details>div{grid-template-columns:24px 1fr auto}.cookie-actions{flex-direction:column-reverse}.cookie-actions .button{width:100%}.cookie-banner{padding:10px}.cookie-banner .cookie-card{grid-template-columns:1fr;max-height:calc(100svh - 20px);overflow-y:auto}.cookie-banner .cookie-actions{min-width:0}.mobile-call{z-index:10;background:var(--copper);color:#fff;gap:16px;padding:15px 18px;font-size:11px;font-weight:800;display:flex;position:fixed;bottom:16px;right:16px;box-shadow:0 15px 35px #07131f4d}}@media (max-width:380px){:root{--shell:calc(100% - 24px)}.section-pad{padding-block:64px}.site-header{min-height:92px}.brand-logo-wrap{width:146px;height:88px}.mobile-nav.open{grid-template-columns:1fr;top:92px}.mobile-nav a{border-bottom:1px solid #ffffff1a;border-right:0;min-height:43px}h2{font-size:36px}.hero-content{padding:66px 0 90px}.hero h1{font-size:40px}.hero-copy{line-height:1.6}.emergency-strip,.emergency-pill{padding:13px 14px}.emergency-strip strong,.emergency-pill strong{font-size:11px}.emergency-hours{padding-inline:9px;font-size:14px}.service-card,.social-card,.contact-form{padding-left:20px;padding-right:20px}.smart-water-visual{height:360px}.smart-water-accent{height:116px}.smart-water-badge{top:16px}.project-grid{grid-template-rows:repeat(7,310px)}.about-image-wrap{height:420px}.email-line{flex-direction:column;align-items:stretch}.copy-email{width:fit-content}.contact-emergency{align-items:flex-start}.footer-inner{grid-template-columns:1fr}.footer-brand,.footer-meta,.footer-links{grid-column:1}.footer-links{flex-wrap:wrap}.mobile-call{bottom:12px;right:12px}.cookie-heading h2{font-size:24px}.cookie-details>div{grid-template-columns:22px 1fr}.cookie-details b{grid-column:2}}@media (min-width:1800px){:root{--shell:min(1480px, calc(100% - 120px))}.hero-content{padding-top:145px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
