:root{--green:#12382b;--orange:#d94712;--white:#fffefa;--sage:#e1e8de;--body:#535e59;--border:#e8eae5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:115px}body{margin:0;background:var(--white);color:var(--green);font:17px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:5px}button:disabled{cursor:default}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.06;font-weight:700;letter-spacing:-.035em}h1{font-size:clamp(3rem,4.65vw,5.3rem);max-width:620px}h2{font-size:clamp(2rem,3.1vw,3.3rem)}h3{font-size:1.65rem}p{color:var(--body)}img{max-width:100%;display:block}header{background:rgba(255,254,250,.97);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:20}.nav-wrap{max-width:1500px;margin:auto;min-height:105px;display:flex;align-items:center;gap:48px;padding:10px 5.2%}.brand{flex-shrink:0}.brand img{width:130px;height:80px;object-fit:contain}nav{display:flex;gap:34px;align-items:center}nav a{font-weight:600;font-size:1rem}nav a:hover,.text-link:hover{color:var(--orange)}.nav-actions{display:flex;gap:25px;align-items:center;margin-left:auto}#language{border:0;background:none;color:var(--green);font-size:.95rem;font-weight:600;white-space:nowrap}#language span{padding:0 5px;color:#a2b5a6}.button{border:0;display:inline-flex;align-items:center;justify-content:center;padding:14px 25px;background:var(--orange);color:white;border-radius:4px;font-size:1rem;font-weight:700;min-height:50px;line-height:1.4;transition:background .2s}.button:hover{background:#b93608}.menu{display:none}.hero{display:grid;grid-template-columns:42% 58%;max-width:1600px;margin:auto}.hero-copy{padding:54px 36px 56px max(40px,12.4%);align-self:center}.eyebrow{display:flex;align-items:center;gap:15px;color:#3f614f;font-size:.75rem;letter-spacing:.26em;font-weight:700;margin-bottom:20px}.eyebrow:after{content:'';height:1px;width:42px;background:#b6c6b6}.intro{font-size:1.18rem;line-height:1.5;margin-top:24px;max-width:510px}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:27px}.text-link{display:inline-block;font-weight:600;border-bottom:1px solid #7e9387;padding-bottom:3px;font-size:1rem}.hero-photo{min-height:510px}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:52% 45%}.section{max-width:1500px;margin:auto;padding:60px 5.2%}.services{padding-top:38px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:25px}.service-card{display:grid;grid-template-columns:43% 57%;border:1px solid var(--border);border-radius:4px;overflow:hidden;min-height:210px;background:white;transition:box-shadow .2s,transform .2s}.service-card:hover{box-shadow:0 9px 28px #12382b0d;transform:translateY(-3px)}.service-card img{height:100%;width:100%;object-fit:cover}.service-card>div{padding:22px}.service-card h3{font-size:1.55rem;line-height:1.08;letter-spacing:-.025em}.service-card p{font-size:.95rem;line-height:1.45;margin-top:12px}.card-link{display:inline-block;color:#486a53;font-size:.875rem;font-weight:600;margin-top:17px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:24px}.section-note{max-width:250px;font-size:.95rem}.work{padding-top:15px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.photo-card{padding:0;text-align:left;border:0;background:none;color:var(--green);border-radius:4px;overflow:hidden}.photo-card img{width:100%;height:265px;object-fit:cover;transition:transform .35s}.photo-card:hover img{transform:scale(1.025)}.photo-card span{display:block;padding:14px 0;font-size:1rem}.service-detail{border-top:1px solid var(--border);display:grid;grid-template-columns:40% 60%;gap:40px;padding-top:75px}.detail-intro h2{max-width:380px}.detail-list article{display:flex;gap:24px;padding:0 0 34px;margin-bottom:34px;border-bottom:1px solid var(--border);scroll-margin-top:130px}.detail-list article:last-child{border:0;margin-bottom:0}.number{font-size:.85rem;letter-spacing:.1em;color:#829a86;padding-top:4px}.detail-list h3{font-size:1.9rem}.detail-list p{margin:14px 0 18px;max-width:650px}.about{background:#f0f3ed;display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-top:65px;padding-bottom:65px}.about p+p{margin-top:18px}.about .text-link{margin-top:23px}.about h2{max-width:430px}.contact{display:grid;grid-template-columns:40% 60%;gap:55px;padding-top:85px;padding-bottom:85px}.contact-copy h2{max-width:430px}.contact-copy>p:not(.eyebrow){margin-top:22px;max-width:420px}.preview-note{font-size:.9rem;padding:16px 18px;border-left:2px solid #c8d5c5;background:#f2f5ee}form{display:flex;flex-direction:column;gap:18px;min-width:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:flex;flex-direction:column;gap:7px;font-size:.9rem;font-weight:600}input,select,textarea{width:100%;min-width:0;border:1px solid #cdd5cb;border-radius:3px;padding:11px 13px;background:white;color:var(--green);font-size:1rem}textarea{resize:vertical}form .button{align-self:flex-start}.privacy-note{font-size:.8rem}footer{border-top:1px solid var(--border);padding-top:30px!important;padding-bottom:30px!important}.footer-brand{display:flex;gap:20px;align-items:center;font-size:.9rem;letter-spacing:.1em;font-weight:700}.footer-brand img{object-fit:contain}footer>p{margin-top:16px;font-size:.95rem}footer>div{display:flex;justify-content:space-between;gap:20px;font-size:.8rem;color:var(--body);margin-top:28px}.skip{position:fixed;left:10px;top:-100px;background:white;padding:15px;z-index:100}.skip:focus{top:10px}dialog{border:0;border-radius:6px;max-width:min(950px,92vw);max-height:90vh;padding:35px;box-shadow:0 20px 90px #0004;color:var(--green)}dialog::backdrop{background:#10251fbb}#photo-dialog img{max-height:73vh;object-fit:contain;margin:auto}#photo-title{padding-top:18px}.dialog-close{position:absolute;right:7px;top:3px;background:white;border:0;color:var(--green);font-size:1.8rem;width:35px;height:35px;line-height:1}#request-dialog{width:650px}#request-dialog h2{font-size:2rem;margin-bottom:18px}#request-summary{white-space:pre-wrap;overflow-wrap:anywhere;font:1rem/1.7 Arial,sans-serif;background:#f2f5ee;padding:20px;margin:20px 0;max-height:45vh;overflow:auto}
@media(min-width:1600px){.hero-copy{padding-left:80px}}@media(max-width:1100px){.nav-wrap{gap:25px;padding-inline:4%}nav{gap:20px}.nav-actions{gap:14px}.nav-cta{padding-inline:16px}.hero-copy{padding-left:9.5%;padding-right:25px}.hero-photo{min-height:470px}.service-card{grid-template-columns:1fr}.service-card img{height:180px}.service-card>div{padding:22px}.section{padding-inline:4%}.contact{gap:30px;grid-template-columns:40% 60%}.service-detail{gap:30px;grid-template-columns:38% 62%}}
@media(max-width:760px){html{scroll-padding-top:90px}.nav-wrap{min-height:85px;gap:15px;flex-wrap:wrap;padding:8px 5%}.brand img{width:100px;height:62px}.menu{display:block;margin-left:auto;border:1px solid #d3ddd0;border-radius:3px;background:none;padding:7px 12px;color:var(--green);font-size:.9rem}.nav-actions{margin-left:0;gap:0}.nav-cta{display:none}nav{display:none;order:4;flex-basis:100%;padding:14px 0 18px;justify-content:space-between;gap:10px}nav.open{display:flex}nav a{font-size:.9rem}.hero{grid-template-columns:1fr}.hero-copy{padding:40px 6% 35px}.hero h1{font-size:clamp(2.7rem,9vw,4rem);max-width:540px}.intro{font-size:1.06rem}.hero-photo{height:330px;min-height:0}.hero-actions{gap:20px}.section{padding:42px 6%}.eyebrow{font-size:.75rem;letter-spacing:.2em;margin-bottom:16px}.service-grid{grid-template-columns:1fr;gap:14px}.service-card{grid-template-columns:38% 62%;min-height:185px}.service-card img{height:100%;min-height:185px}.service-card>div{padding:20px}.service-card h3{font-size:1.55rem}.section-heading{display:block}.section-note{max-width:none;margin-top:15px}.gallery{grid-template-columns:1fr 1fr;gap:16px}.photo-card img{height:190px}.photo-card:first-child{grid-column:span 2}.photo-card:first-child img{height:270px}.photo-card span{font-size:.85rem}.service-detail,.about,.contact{grid-template-columns:1fr;gap:30px}.detail-intro h2,.about h2,.contact-copy h2{max-width:none}.detail-list article{gap:18px}.detail-list article:last-child{padding-bottom:0}.contact-copy>p:not(.eyebrow){max-width:none}.form-row{grid-template-columns:1fr;gap:18px}footer>div{flex-wrap:wrap}.footer-brand{font-size:.8rem;gap:12px}dialog{padding:32px 18px 20px}.button{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Keep fractional columns within the available width, including their gaps. */
.service-detail,.contact{grid-template-columns:minmax(0,2fr) minmax(0,3fr)}
@media(max-width:760px){.service-detail,.contact{grid-template-columns:minmax(0,1fr)}}

.hero-photo{position:relative;overflow:hidden}.hero-controls{position:absolute;bottom:22px;left:22px;right:22px;display:flex;gap:8px;justify-content:flex-end}.hero-choice{background:#fffefaf2;color:var(--green);border:1px solid #fff9;border-radius:3px;padding:9px 15px;font-size:.85rem;font-weight:600}.hero-choice[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.hero-photo>img{position:absolute;inset:0}.photo-hint{font-size:.85rem;margin-bottom:22px}.section-note{max-width:350px}.service-portfolio{gap:36px 24px}.portfolio-card{min-width:0}.portfolio-card .photo-card{position:relative;width:100%;overflow:visible}.portfolio-card .photo-card img{height:230px;border-radius:4px}.portfolio-card .photo-label{font-family:Georgia,serif;font-size:1.45rem;font-weight:700;line-height:1.2;padding:20px 0 10px}.portfolio-card p{font-size:.95rem;line-height:1.65;margin-bottom:16px}.portfolio-card .text-link{font-size:.85rem}.photo-card .zoom-mark{position:absolute;top:12px;right:12px;border-radius:50%;background:#fffefae8;width:32px;height:32px;text-align:center;padding:2px;font-size:1.2rem}.portfolio-card .photo-card:hover img{transform:none;filter:brightness(1.04)}@media(max-width:760px){.service-portfolio{grid-template-columns:1fr 1fr;gap:30px 18px}.service-portfolio .photo-card:first-child{grid-column:auto}.portfolio-card .photo-card img{height:185px}.portfolio-card .photo-label{font-size:1.3rem}.hero-controls{bottom:16px;left:16px;right:16px}}@media(max-width:500px){.service-portfolio{grid-template-columns:1fr}.portfolio-card .photo-card img{height:240px}.hero-controls{justify-content:center}}

.service-symbol{background:#e7eee2;display:flex;align-items:center;justify-content:center;min-height:185px}.service-symbol svg{width:78px;height:78px;color:#326349}.irrigation-services{margin-top:55px;padding:36px;background:#f0f3ed;border-radius:6px}.irrigation-services h2{font-size:clamp(1.8rem,2.5vw,2.6rem)}.irrigation-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:30px}.irrigation-icon{width:62px;height:62px;margin-bottom:18px;color:#326349}.irrigation-feature h3{font-size:1.5rem;line-height:1.2;margin-bottom:12px}.irrigation-feature p{font-size:.95rem;margin-bottom:18px}.irrigation-feature .text-link{font-size:.85rem}.service-portfolio .portfolio-card:last-child{grid-column:1/-1;max-width:none}.service-portfolio .portfolio-card:last-child img{height:300px;object-position:center 52%}.service-portfolio .portfolio-card:last-child p{max-width:720px}@media(max-width:760px){.irrigation-features{grid-template-columns:1fr;gap:30px}.irrigation-services{padding:26px}.service-symbol svg{width:65px;height:65px}.service-portfolio .portfolio-card:last-child img{height:240px}}

/* Revised home: three service groups, a focused gallery, and a photo-led introduction. */
h1{font-size:clamp(3rem,4.3vw,4.9rem);line-height:1.08}h2{font-size:clamp(2rem,2.8vw,3rem);line-height:1.14}h3{line-height:1.2}.section{padding-top:76px;padding-bottom:76px}.hero{max-width:1500px;grid-template-columns:44% 56%;padding:24px 3% 0;gap:0}.hero-copy{padding:40px 48px 48px 5.4%}.hero-photo{min-height:560px;border-radius:8px}.hero-photo img{object-position:center}.hero-controls{bottom:20px;right:20px}.hero-choice{border-radius:30px;padding:8px 16px}.hero-actions{gap:24px}.intro{font-size:1.08rem;line-height:1.7}.eyebrow{letter-spacing:.18em;margin-bottom:16px}.services{padding-top:68px}.section-heading{margin-bottom:32px}.section-note{max-width:330px;line-height:1.7}.service-grid{gap:22px;margin-top:0}.service-card{display:block;padding:30px;background:#f8f9f4;border:1px solid #e0e7dc;border-radius:8px;min-height:0;scroll-margin-top:125px}.service-card:hover{transform:none;box-shadow:none}.service-number{display:inline-block;font-size:.78rem;letter-spacing:.12em;color:#678170;margin-bottom:24px}.service-card h3{font-size:1.8rem}.service-card p{margin-top:14px;min-height:48px;font-size:.98rem;line-height:1.6}.service-card ul{padding:20px 0 0;margin:20px 0 0;border-top:1px solid #dfe5da;list-style:none}.service-card li{font-size:.9rem;line-height:1.55;color:#536357;padding:6px 0 6px 17px;position:relative}.service-card li:before{content:'•';position:absolute;left:0;color:#80a17e}.work{padding-top:32px}.selected-work{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 28px}.selected-work .photo-card{display:block;width:100%;position:relative;overflow:hidden;text-align:left}.selected-work .photo-card img{height:350px;border-radius:8px}.selected-work .photo-label{font-family:Georgia,serif;font-size:1.55rem;font-weight:700;line-height:1.2;padding:19px 0 8px}.selected-work .portfolio-card p{font-size:.95rem;margin:0}.photo-hint{margin:26px 0 0;font-size:.85rem}.about{background:#f0f3ed;align-items:center;gap:60px;border-radius:12px;max-width:1344px;padding:48px}.about-photo img{width:100%;height:420px;object-fit:cover;border-radius:8px}.about-copy h2{max-width:500px;margin-bottom:24px}.about-copy p{font-size:1rem;line-height:1.75}.about-copy .eyebrow{font-size:.75rem}.about-copy p+p{margin-top:18px}.contact{padding-top:96px;padding-bottom:96px}.contact-copy h2{font-size:clamp(2rem,2.8vw,3rem)}
@media(max-width:1100px){.hero{padding-inline:3%;grid-template-columns:46% 54%}.hero-copy{padding:35px 28px 35px 2%}.hero-photo{min-height:520px}.service-card{padding:24px}.service-card h3{font-size:1.6rem}.selected-work .photo-card img{height:290px}.about{margin-inline:4%;padding:35px;gap:35px}.about-photo img{height:400px}}
@media(max-width:760px){.section{padding:48px 6%}.hero{display:block;padding:0}.hero-copy{padding:42px 6% 36px}.hero h1{font-size:clamp(2.8rem,9vw,4rem)}.hero-photo{height:360px;min-height:0;margin:0 5%;border-radius:8px}.hero-controls{justify-content:center;left:12px;right:12px;bottom:16px}.hero-choice{font-size:.8rem;padding:8px 13px}.section-heading{margin-bottom:26px}.service-grid{grid-template-columns:1fr;gap:16px}.service-card{padding:25px}.service-number{margin-bottom:14px}.service-card p{min-height:0}.service-card ul{margin-top:18px;padding-top:14px}.work{padding-top:16px}.selected-work{grid-template-columns:1fr;gap:30px}.selected-work .photo-card:first-child{grid-column:auto}.selected-work .photo-card img{height:280px}.selected-work .photo-label{font-size:1.45rem}.about{grid-template-columns:1fr;margin-inline:5%;padding:25px;gap:28px}.about-photo img{height:280px}.about-copy h2{font-size:2rem}.contact{padding-top:60px;padding-bottom:60px}}

.service-intro{max-width:680px;margin-top:18px;font-size:1rem;line-height:1.7}.photo-upload{border:1px dashed #b9cabb;border-radius:8px;padding:20px;margin:0;min-width:0;background:#f8faf5}.photo-upload legend{font-size:.95rem;font-weight:700;padding:0 7px}.photo-upload>p{font-size:.85rem;margin-bottom:14px}.upload-picker{display:block}.upload-picker>span{display:block;margin-bottom:8px}.upload-picker input{background:white;font-size:.85rem;padding:10px}.attachment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.attachment-grid figure{margin:14px 0 0;min-width:0}.attachment-grid img{width:100%;height:110px;object-fit:cover;border-radius:4px}.attachment-grid figcaption{font-size:.75rem;overflow-wrap:anywhere;margin-top:5px;color:var(--body)}.attachment-grid button{background:none;border:0;color:var(--orange);font-size:.8rem;padding:5px 0;text-decoration:underline}.photo-upload #photo-local-note{margin:14px 0 0;font-size:.8rem}#photo-errors{color:#9d331b;margin-top:12px}#review-photos{margin-bottom:20px}.about-photo img{object-position:center 50%}@media(max-width:500px){.attachment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.careers h2{max-width:800px;margin-bottom:24px}.careers h3{font-size:1.35rem;margin-bottom:16px}.careers>p:not(.eyebrow){max-width:800px;margin-bottom:28px;line-height:1.75}

.intake-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.request-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.request-actions .button{min-width:210px}#send-status{font-weight:650;color:#24543a;margin:8px 0}.request-actions .outline-button{border:1px solid #b8c8bb;background:white;color:#174832;border-radius:4px;min-height:50px;padding:12px 20px;font-weight:650}
