:root{--navy:#14345f;--navy2:#244f82;--deep:#0b1e3a;--green:#9fb8d9;--sand:#eaf0f7;--cream:#fbfcfe;--ink:#1b2d43;--muted:#65768c;--line:rgba(20,52,95,.15);--orange:#c5964d;--serif:Georgia,'Times New Roman',serif;--sans:'DM Sans',Arial,sans-serif;--display:Manrope,'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.site-header{height:86px;padding:0 clamp(24px,6.3vw,102px);display:flex;align-items:center;justify-content:space-between;background:var(--cream);position:relative;z-index:5}.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:block;width:48px;height:48px;object-fit:contain;border-radius:0}.brand-name strong,.brand-name small{display:block}.brand-name strong{font-family:var(--serif);font-size:19px;font-weight:600;letter-spacing:-.02em;color:var(--navy);line-height:1}.brand-name small{font-family:var(--sans);font-size:10px;letter-spacing:.07em;color:#536982;margin-top:5px}.site-header nav{display:flex;align-items:center;gap:36px;font-size:12px;font-weight:600;color:#405672}.site-header nav>a{transition:color .2s}.site-header nav>a:hover{color:#bb7444}.site-header .nav-contact{background:var(--navy);color:#fff;padding:14px 18px;border-radius:3px}.nav-contact span{padding-left:18px;color:#d1e0f2}.menu-toggle{display:none}.hero{min-height:670px;position:relative;display:grid;grid-template-columns:47% 53%;background:var(--navy);color:#fff;overflow:hidden}.hero-copy{position:relative;z-index:2;padding:106px 6vw 84px max(6.3vw,calc((100vw - 1440px)/2));display:flex;flex-direction:column;align-items:flex-start}.eyebrow,.section-kicker{font-size:10px;letter-spacing:.19em;font-weight:700}.eyebrow{color:#c4d5eb;display:flex;align-items:center;gap:11px}.eyebrow span{width:22px;height:1px;background:var(--orange)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);font-weight:500;letter-spacing:-.057em}h1{font-size:clamp(43px,5.1vw,77px);line-height:1.08;margin:30px 0 20px;color:#f5f2e9}h1 em,h2 em{font-family:var(--serif);font-weight:400;color:#c1d3ea;letter-spacing:-.065em}.hero-lede{max-width:450px;color:#d7e1ee;font-size:15px;line-height:1.8;margin-bottom:32px}.hero-actions{display:flex;align-items:center;gap:26px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 19px;border-radius:2px;font-size:11px;font-weight:700;letter-spacing:.025em;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-light{background:#e9e5d9;color:var(--navy)}.button-light span,.button-dark span{font-size:16px}.quiet-link{font-size:11px;color:#dbe5f0}.quiet-link span{margin-left:8px;color:var(--orange)}.hero-proof{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:45px;color:#c1d0e2;font-size:10px;line-height:1.7}.hero-proof strong{color:#f3f1e8;font-weight:600}.proof-seal{width:43px;height:43px;border:1px solid #7890ad;border-radius:50%;display:grid;align-content:center;justify-content:center;text-align:center;font-size:8px;line-height:1}.proof-seal b{font-family:var(--serif);font-size:14px;font-weight:400}.hero-art{min-height:670px;position:relative;background:#aebfd3;overflow:hidden}.hero-art:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0%,rgba(20,52,95,.08) 29%,transparent 60%),linear-gradient(0deg,rgba(11,30,58,.35),transparent 35%);pointer-events:none}.art-sun{position:absolute;width:240px;height:240px;border-radius:50%;background:#d9a978;right:16%;top:17%;opacity:.88}.art-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:64px 64px;mask-image:linear-gradient(135deg,transparent,#000 45%)}.landscape{position:absolute;width:112%;height:100%;inset:0 -4% 0 auto}.hill.back{fill:#91a9c7}.hill.mid{fill:#5d789a}.hill.front{fill:#29476d}.contour{fill:none;stroke:rgba(239,226,196,.33);stroke-width:1}.pipeline-shadow{fill:none;stroke:#112f35;stroke-width:14}.pipeline{fill:none;stroke:#ddd3b6;stroke-width:8}.pipe-highlight{fill:none;stroke:#fff5d9;stroke-width:2;opacity:.75}.valve circle{fill:#c77746;stroke:#f1d1a8;stroke-width:2}.valve path{stroke:#fff1d1;stroke-width:2}.valve .valve-core{fill:#fff1d1;stroke:none}.survey path{stroke:#e7c69d;stroke-width:2;fill:none}.survey circle{fill:#e7c69d}.tree path{stroke:#17385f;stroke-width:4;fill:#17385f}.water{fill:#718baa;opacity:.88}.water-line{fill:none;stroke:#d8dec9;stroke-width:2}.art-caption{position:absolute;z-index:2;right:6%;bottom:32px;left:10%;display:flex;justify-content:space-between;color:#e4e5d9;font-size:8px;letter-spacing:.18em}.hero-bottom{position:absolute;z-index:3;bottom:0;left:0;right:0;height:42px;border-top:1px solid rgba(255,255,255,.18);display:flex;align-items:center;justify-content:space-between;padding:0 6.3vw;color:#b5c9e3;font-size:8px;letter-spacing:.18em}.section-pad{padding:clamp(74px,9vw,132px) max(8vw,calc((100vw - 1220px)/2))}.intro{display:grid;grid-template-columns:17% 57% 26%;gap:0;background:var(--cream)}.section-kicker{color:#aa7049;display:flex;align-items:center;gap:13px;white-space:nowrap}.section-kicker span{color:#71807e;font-size:9px}.intro h2,.services h2,.approach h2,.contact h2{font-size:clamp(32px,3.6vw,52px);line-height:1.2;color:var(--navy);margin:0 0 21px}.intro h2 em,.services h2 em,.approach h2 em{color:#355e94}.intro-copy p{max-width:600px;color:#65768c;font-size:14px;line-height:1.9;margin-bottom:22px}.text-link{font-size:11px;font-weight:700;color:var(--navy);border-bottom:1px solid #ba7952;padding-bottom:7px}.text-link span{color:#b2734c;padding-left:13px}.intro-aside{align-self:end;padding-left:32px}.aside-rule{width:42px;height:1px;background:#bb7950;margin:0 0 17px}.intro-aside p{font-family:var(--serif);font-size:16px;color:#415876;line-height:1.6;margin-bottom:20px}.intro-aside>span{font-size:8px;letter-spacing:.16em;color:#8794a4}.team{display:grid;grid-template-columns:31% 69%;gap:5%;align-items:start;background:#f0f4f9}.team-heading .section-kicker{margin-bottom:22px}.team-heading h2{font-family:var(--display);font-size:clamp(31px,3.4vw,46px);font-weight:500;letter-spacing:-.055em;line-height:1.16;color:var(--navy);margin:0 0 16px}.team-heading h2 em{font-family:var(--serif);color:#446995;font-weight:400}.team-heading>p{max-width:280px;color:#69788b;font-size:12px;line-height:1.75}.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.team-card{display:grid;grid-template-columns:122px 1fr;gap:18px;align-items:center;background:#fff;padding:18px;border:1px solid #dce4ee}.portrait{position:relative;height:150px;overflow:hidden;display:grid;place-items:center;background:#e8eef6}.portrait-richard{background:linear-gradient(150deg,#e6edf6,#d5e1ef)}.portrait-steven{background:linear-gradient(150deg,#e8edf3,#d9e4f0)}.portrait svg{width:100%;height:100%;margin-top:14px}.portrait-halo{fill:#cad8e8}.portrait-head{fill:#7186a1}.portrait-body{fill:#294b75}.portrait-detail{fill:none;stroke:#d7e4f2;stroke-width:2}.portrait>span{position:absolute;bottom:0;left:0;right:0;padding:7px 4px;background:rgba(20,52,95,.84);color:#fff;text-align:center;font-size:7px;letter-spacing:.12em}.team-info h3{font-family:var(--serif);font-size:18px;font-weight:600;color:var(--navy);margin:0 0 6px}.team-info .team-title{font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:#9a7444;margin:0 0 12px}.team-info>p:last-child{font-size:10px;line-height:1.65;color:#718093;margin:0}
.services{background:#edf2f8}.services-head{display:grid;grid-template-columns:1fr 310px;align-items:end;gap:80px;margin-bottom:48px}.services h2{margin-top:24px;margin-bottom:0}.services-head>p{color:#667477;font-size:13px;line-height:1.8;margin-bottom:7px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cbd5e2;border-bottom:1px solid #cbd5e2}.service-card{position:relative;padding:33px 33px 36px 0;min-height:280px}.service-card+.service-card{border-left:1px solid #cbd5e2;padding-left:33px}.service-number{font-size:9px;letter-spacing:.16em;color:#9b7459}.service-icon{height:63px;margin:17px 0 18px}.service-icon svg{height:61px;width:61px;fill:none;stroke:#2c598d;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.site-icon svg{stroke:#b3784f}.permit-icon svg{stroke:#3f6698}.service-card h3{font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-.03em;color:#173b42;margin-bottom:10px}.service-card p{max-width:300px;color:#697779;font-size:12px;line-height:1.75;margin:0}.card-arrow{position:absolute;right:22px;top:35px;color:#aa7049}.service-note{font-size:10px;color:#828d89;margin:19px 0 0}.approach{display:grid;grid-template-columns:48% 52%;gap:9%;align-items:center;background:var(--cream)}.approach-visual{padding:2vw 0}.drawing-frame{background:#e8eef6;padding:17px 18px 14px;box-shadow:10px 10px 0 #d2dce9;transform:rotate(-1.3deg)}.drawing-top,.drawing-bottom{display:flex;justify-content:space-between;color:#667c75;font-size:8px;letter-spacing:.14em}.drawing-frame svg{display:block;width:100%;margin:13px 0}.map-grid{stroke:#c3d0df;stroke-width:.7;fill:none}.map-road{stroke:#e4c1a1;stroke-width:11;fill:none}.map-route{stroke:#426f66;stroke-width:2;stroke-dasharray:8 5;fill:none}.map-parcel{stroke:#6884a7;fill:rgba(92,127,169,.12);stroke-width:1.4}.map-node{fill:#c17a4e;stroke:#fbf0dc;stroke-width:3}.map-leader{stroke:#587294;stroke-width:1;fill:none}.drawing-frame text{font-family:var(--sans);fill:#587294;font-size:8px;letter-spacing:.1em}.approach-copy .section-kicker{margin-bottom:24px}.approach-copy h2{margin-bottom:18px}.approach-copy>p{color:#68777a;font-size:13px;line-height:1.8;max-width:440px}.steps{list-style:none;padding:0;margin:27px 0 0}.steps li{display:grid;grid-template-columns:31px 1fr;gap:10px;padding:15px 0;border-top:1px solid var(--line)}.steps li>span{font-size:9px;color:#b4754c;padding-top:2px}.steps strong,.steps small{display:block}.steps strong{font-size:12px;color:#28464a;margin-bottom:5px}.steps small{font-size:11px;line-height:1.55;color:#788486}.trust-band{background:var(--navy);padding:48px max(8vw,calc((100vw - 1220px)/2));display:flex;align-items:center;justify-content:space-between;color:#f1f1e8}.trust-band>div:first-child{display:flex;align-items:center;gap:20px}.trust-mark{width:52px;height:52px;border:1px solid #7890ad;border-radius:50%;display:grid;place-items:center;color:#b3cbbb;font-family:var(--serif);font-size:19px}.trust-band p{font-family:var(--display);font-size:19px;line-height:1.4;margin:0}.trust-band p em{font-family:var(--serif);color:#cbd9ec}.trust-meta{display:grid;grid-template-columns:auto auto;gap:7px 18px;align-items:center}.trust-meta span{font-size:8px;letter-spacing:.17em;color:#9bafa9}.trust-meta strong{font-size:12px;font-weight:600;color:#e6e1ce}.trust-meta span:last-child{grid-column:1/-1}.contact{display:grid;grid-template-columns:17% 1fr 250px;gap:0;background:var(--sand)}.contact h2{font-size:clamp(38px,4.4vw,63px);margin-bottom:17px}.contact-main p{font-size:13px;color:#657477;line-height:1.8;max-width:420px}.button-dark{background:var(--navy);color:#fff;margin-top:9px}.button-dark span{color:#acd0b8}.contact-aside{display:flex;flex-direction:column;align-items:flex-start;gap:13px;padding:14px 0 0 24px}.contact-aside span{font-size:8px;letter-spacing:.15em;color:#7a8884}.contact-aside a{font-size:13px;color:var(--navy);font-weight:600}.contact-aside a:hover{color:#af7048}.contact-aside .hours-note{font-size:10px;letter-spacing:0;margin-top:8px}.site-footer{min-height:100px;padding:20px max(6.3vw,calc((100vw - 1440px)/2));display:flex;justify-content:space-between;align-items:center;background:var(--cream);color:#7d8987;font-size:9px}.brand-footer{transform:scale(.85);transform-origin:left center}.site-footer>a:last-child{font-size:10px;color:#3b565a}.site-footer>a:last-child:hover{color:#aa7049}
@media(max-width:1000px){.hero{grid-template-columns:1fr 1fr}.hero-copy{padding-top:90px}.hero h1{font-size:clamp(42px,6.2vw,64px)}.intro{grid-template-columns:15% 58% 27%}.intro-aside{padding-left:18px}.services-head{gap:35px}.approach{gap:6%}.contact{grid-template-columns:14% 1fr 210px}}
@media(max-width:1000px){.team{grid-template-columns:1fr;gap:22px}.team-grid{gap:14px}.team-card{grid-template-columns:100px 1fr;padding:14px}.portrait{height:132px}}
@media(max-width:720px){.site-header{height:72px;padding:0 20px}.brand-mark{width:38px;height:38px}.site-header nav{display:none;position:absolute;top:72px;left:0;right:0;padding:16px 22px 22px;background:var(--cream);box-shadow:0 12px 20px #14345f17;flex-direction:column;align-items:stretch;gap:0}.site-header nav.open{display:flex}.site-header nav>a{padding:13px 4px}.site-header nav .nav-contact{margin-top:8px;padding:15px}.menu-toggle{display:block;border:1px solid #bfc9c2;background:transparent;color:var(--navy);padding:9px 13px;border-radius:2px;font-size:11px}.hero{display:block;min-height:0}.hero-copy{min-height:570px;padding:76px 26px 70px}.hero h1{font-size:clamp(44px,12.2vw,67px);margin-top:27px}.hero-lede{max-width:410px;font-size:14px}.hero-art{position:absolute;inset:0 0 0 0;min-height:100%;opacity:.55}.hero-art:after{background:linear-gradient(90deg,rgba(11,30,58,.96),rgba(20,52,95,.72) 55%,rgba(36,79,130,.28)),linear-gradient(0deg,rgba(11,30,58,.7),transparent 45%)}.art-sun{width:170px;height:170px;right:9%;top:18%}.landscape{width:140%;opacity:.78}.hero-copy{z-index:2}.hero-proof{padding-top:46px}.hero-bottom{padding:0 25px;font-size:7px}.hero-bottom span:last-child{display:none}.art-caption{display:none}.section-pad{padding:71px 25px}.intro{display:grid;grid-template-columns:1fr;gap:27px}.team{grid-template-columns:1fr;gap:10px}.team-grid{grid-template-columns:1fr;gap:12px}.team-card{grid-template-columns:105px 1fr;padding:12px}.portrait{height:130px}.team-heading .section-kicker{margin-bottom:18px}.team-heading h2{font-size:35px}.team-heading>p{max-width:460px}.intro-copy{padding-left:0}.intro h2,.services h2,.approach h2{font-size:35px}.intro-aside{padding:22px 0 0 0;border-top:1px solid var(--line);display:flex;align-items:flex-start;gap:15px}.aside-rule{margin-top:10px;flex:0 0 28px}.intro-aside p{font-size:14px;margin:0}.intro-aside>span{align-self:center;margin-left:auto;text-align:right;max-width:92px;font-size:7px;line-height:1.5}.services-head{grid-template-columns:1fr;gap:18px;margin-bottom:30px}.services-head>p{max-width:490px}.service-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:25px 35px 25px 0}.service-card+.service-card{border-left:0;border-top:1px solid #cbd5e2;padding:25px 35px 25px 0}.service-number{position:absolute;top:30px;right:0}.service-icon{height:47px;margin:13px 0}.service-icon svg{width:48px;height:48px}.service-card h3{font-size:16px}.service-card p{max-width:440px}.card-arrow{right:3px;top:auto;bottom:28px}.approach{grid-template-columns:1fr;gap:48px}.approach-visual{padding:4px 7px 0}.drawing-frame{padding:12px;box-shadow:7px 7px 0 #d1dbe7}.drawing-frame svg{margin:10px 0}.trust-band{padding:34px 25px;align-items:flex-start;gap:26px;flex-direction:column}.trust-band p{font-size:17px}.trust-meta{padding-left:72px}.contact{grid-template-columns:1fr;gap:29px}.contact h2{font-size:49px}.contact-aside{padding:23px 0 0;border-top:1px solid var(--line)}.site-footer{padding:22px 24px;display:grid;grid-template-columns:1fr auto;gap:14px}.site-footer>span{grid-row:2;grid-column:1/-1}.site-footer>a:last-child{justify-self:end}.brand-footer{grid-column:1;transform:scale(.78)} }
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
