:root{--forest:#16372b;--forest-2:#0c261d;--forest-3:#214938;--sage:#b4c5a9;--mint:#dfe6d9;--cream:#f6f5f0;--paper:#fffefa;--ink:#19221d;--muted:#626d64;--line:#dce2d9;--gold:#d8b586;--radius:16px;--wrap:1260px;--ease:cubic-bezier(.2,.75,.26,1)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Manrope,"Segoe UI",Arial,sans-serif;font-size:15px;line-height:1.65;-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #c19454;outline-offset:3px}img{max-width:100%;display:block}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{line-height:1.15;letter-spacing:-.04em}h1{font-size:clamp(3.25rem,7.5vw,7.5rem);font-weight:750}h2{font-size:clamp(2.1rem,4.2vw,4.4rem);font-weight:750}h3{font-size:clamp(1.15rem,1.6vw,1.42rem)}p{color:var(--muted)}.serif{font-family:Georgia,serif;font-weight:400;font-style:italic;letter-spacing:-.055em}.container{width:min(var(--wrap),calc(100% - 64px));margin:0 auto}.section{padding:clamp(64px,8vw,118px) 0}.section-sm{padding:60px 0}.eyebrow{display:inline-flex;gap:11px;align-items:center;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;font-weight:850;color:#637863;margin-bottom:20px}.eyebrow:before{content:"";width:24px;height:2px;background:var(--forest)}.eyebrow.light{color:#d7e5d7}.eyebrow.light:before{background:var(--gold)}.center{text-align:center}.center .eyebrow{justify-content:center}.center .eyebrow:before{display:none}.section-intro{max-width:700px}.section-intro h2{margin-bottom:22px}.section-intro p{font-size:1.05rem;line-height:1.9}.subtle{background:#eeefe8}.white{background:var(--paper)}.divider{height:1px;background:var(--line)}
.btn{border:1px solid transparent;border-radius:4px;min-height:54px;padding:15px 23px;display:inline-flex;gap:15px;align-items:center;justify-content:center;text-align:center;font-size:.78rem;letter-spacing:.07em;text-transform:uppercase;font-weight:850;line-height:1.2;transition:transform .2s var(--ease),background .2s,box-shadow .2s;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn svg{width:17px;height:17px}.btn-green{background:var(--forest);color:white}.btn-green:hover{background:#24523c}.btn-gold{background:var(--gold);color:var(--forest-2)}.btn-gold:hover{background:#e5c59d}.btn-light{background:#fff;color:var(--forest-2)}.btn-outline{border-color:#88998d;color:white;background:transparent}.btn-outline:hover{background:#ffffff1c}.btn-border{background:transparent;border-color:var(--line);color:var(--forest)}.link-arrow{font-size:.76rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase;display:inline-flex;align-items:center;gap:12px;padding-bottom:7px;border-bottom:1px solid var(--forest)}.link-arrow:hover{color:#497658}.link-arrow svg{width:18px}.button-row{display:flex;gap:12px;flex-wrap:wrap}.section-top{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:36px}.section-top h2{margin-bottom:0}.section-top>p{max-width:435px;margin:0}
.announce{background:var(--forest-2);color:#f3f5ef;font-size:.72rem;letter-spacing:.045em}.announce .container{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:35px}.announce a:hover{text-decoration:underline}.site-header{position:sticky;top:0;z-index:90;background:#fffcf7;box-shadow:0 2px 15px rgba(15,30,22,.06)}.nav-inner{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;min-width:165px}.brand img{width:170px;height:73px;object-fit:contain;object-position:left center}.desktop-nav{display:flex;align-items:center;gap:clamp(16px,2.2vw,35px);margin-left:auto}.desktop-nav a{font-size:.77rem;text-transform:uppercase;letter-spacing:.065em;font-weight:800;position:relative;padding:18px 0}.desktop-nav a:after{content:"";position:absolute;bottom:11px;left:0;width:0;height:2px;background:var(--forest);transition:width .2s}.desktop-nav a:hover:after,.desktop-nav a[aria-current="page"]:after{width:100%}.header-cta{margin-left:10px;padding:13px 19px;min-height:47px}.menu-toggle{display:none;width:44px;height:44px;background:none;border:1px solid #cdd4c9;border-radius:4px;color:var(--forest);align-items:center;justify-content:center;flex-direction:column;gap:5px}.menu-toggle span{height:2px;background:currentColor;width:20px;transition:transform .2s}.menu-toggle[aria-expanded="true"] span:first-child{transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] span:last-child{transform:translateY(-7px) rotate(-45deg)}.mobile-nav{display:none}.mobile-nav.open{display:flex}
.hero{position:relative;min-height:min(775px,80vh);background:var(--forest-2);display:flex;align-items:center;overflow:hidden}.hero-picture,.hero-tint{position:absolute;inset:0}.hero-picture img{width:100%;height:100%;object-fit:cover;object-position:center 49%}.hero-tint{background:linear-gradient(90deg,rgba(4,22,15,.92) 0%,rgba(8,26,20,.83) 26%,rgba(11,28,20,.5) 57%,rgba(6,24,18,.10) 100%),linear-gradient(0deg,rgba(4,18,13,.7),transparent 40%)}.hero .container{position:relative;z-index:1;padding-top:74px;padding-bottom:95px}.hero-content{max-width:820px}.hero h1{color:white;max-width:800px;margin:0 0 24px}.hero h1 em{color:#d8c3a5}.hero p{color:#e4e9e2;max-width:615px;font-size:clamp(1rem,1.25vw,1.17rem);line-height:1.9;margin-bottom:31px}.hero-location{position:absolute;bottom:29px;right:0;color:#fff;border-left:2px solid var(--gold);padding-left:17px;font-size:.74rem;letter-spacing:.07em;text-transform:uppercase}.hero-location span{display:block;font-weight:850}.hero-mini{position:absolute;bottom:27px;left:0;color:white;font-size:.76rem;font-weight:650;letter-spacing:.11em;text-transform:uppercase}.hero-mini b{color:var(--gold)}
.trust-strip{background:#193c2e;color:white}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;padding:24px 0}.trust-item{padding:8px 20px;border-right:1px solid #446253}.trust-item:first-child{padding-left:0}.trust-item:last-child{border:0}.trust-item strong{display:block;font-size:.85rem;font-weight:850;letter-spacing:.025em}.trust-item span{font-size:.72rem;color:#c3d1c1}
.intro-grid{display:grid;grid-template-columns:1.1fr .8fr;gap:90px;align-items:center}.intro-grid .right{font-size:1.09rem;line-height:1.95}.intro-grid .right p{margin-bottom:28px}.intro-big{font-size:clamp(2.3rem,4.5vw,4.5rem)}
.six-services{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-tile{position:relative;min-height:335px;overflow:hidden;background:#193d2c;isolation:isolate}.service-tile img{width:100%;height:335px;object-fit:cover;transition:transform .6s var(--ease)}.service-tile:hover img{transform:scale(1.055)}.service-tile:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(3,25,13,.9),rgba(3,25,13,.2) 61%,transparent)}.tile-body{position:absolute;bottom:25px;left:25px;right:25px;z-index:1;color:#fff}.tile-body small{display:block;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:#d3d9c9;margin-bottom:10px;font-weight:800}.tile-body strong{font-size:1.54rem;line-height:1.2;letter-spacing:-.04em;display:block}.tile-body span{font-size:.74rem;color:#e7f1e4;display:block;margin-top:9px}.service-footer{padding-top:26px;display:flex;justify-content:space-between;align-items:center;gap:20px}.service-footer p{margin:0;max-width:730px}
.feature-block{background:var(--forest-2);color:white;overflow:hidden}.feature-layout{display:grid;grid-template-columns:1fr 1fr;min-height:600px}.feature-image{position:relative;overflow:hidden}.feature-image img{width:100%;height:100%;object-fit:cover;min-height:540px}.feature-image:after{content:"";background:linear-gradient(0deg,rgba(9,29,20,.45),transparent 55%);position:absolute;inset:0}.feature-image .corner-tag{position:absolute;z-index:2;bottom:25px;left:25px;color:white;font-size:.7rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.feature-copy{display:flex;flex-direction:column;justify-content:center;padding:clamp(43px,7vw,96px)}.feature-copy h2{color:#fff;margin-bottom:22px}.feature-copy h2 .serif{color:var(--gold)}.feature-copy p{color:#c8d8d0;margin-bottom:25px;font-size:1rem}.feature-points{display:flex;flex-wrap:wrap;gap:9px;margin:5px 0 32px}.feature-points span{border:1px solid #4f6958;border-radius:2px;padding:6px 11px;font-size:.68rem;text-transform:uppercase;letter-spacing:.065em;color:#e0e8df}
.gallery-preview{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:210px;gap:15px}.gallery-preview a{overflow:hidden;position:relative;background:#173c2c;grid-column:span 4}.gallery-preview a.tall{grid-column:span 6;grid-row:span 2}.gallery-preview img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-preview a:hover img{transform:scale(1.04)}.gallery-preview a:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.75),transparent 60%)}.gallery-preview span{position:absolute;z-index:2;left:25px;bottom:24px;color:#fff;display:flex;flex-direction:column}.gallery-preview strong{font-size:1.35rem;letter-spacing:-.035em;line-height:1.2}.gallery-preview small{font-size:.67rem;letter-spacing:.13em;text-transform:uppercase;color:#e0e4db;margin-bottom:7px}.gallery-preview .more{grid-column:span 6;grid-row:span 2}
.stories-spotlight{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:stretch}.stage-spot{background:white;border:1px solid var(--line);padding:14px}.stage-spot img{width:100%;height:340px;object-fit:cover}.stage-spot .stage-foot{display:flex;justify-content:space-between;padding:18px 7px 4px;gap:10px;align-items:center}.stage-spot small{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.stage-spot strong{font-size:1.1rem}.icon-round{width:38px;height:38px;border-radius:50%;border:1px solid #cbd6cc;display:grid;place-items:center}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #d8e1d7;gap:18px}.process-item{padding-top:26px}.process-item .count{font-size:2.5rem;letter-spacing:-.07em;color:#9eb4a0;font-weight:650}.process-item h3{margin:10px 0}.process-item p{font-size:.91rem}
.story-grid{display:grid;grid-template-columns:1fr .85fr;gap:85px;align-items:center}.story-visual{position:relative}.story-visual>img{width:100%;height:570px;object-fit:cover}.story-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(6,22,16,.24),transparent)}.year-chip{position:absolute;bottom:25px;right:-26px;z-index:2;background:var(--gold);color:var(--forest);padding:19px 27px;box-shadow:0 8px 32px #0002}.year-chip strong{font-size:2.15rem;display:block;line-height:1}.year-chip span{font-size:.67rem;letter-spacing:.16em;text-transform:uppercase}.story-grid h2{margin-bottom:22px}.story-grid p{line-height:1.95;font-size:1.03rem}.story-grid .button-row{margin-top:27px}
.testimonial{background:#e9ede5}.testimonial-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.testimonial blockquote{margin:0;padding:0}.testimonial blockquote>span{display:block;font-family:Georgia,serif;font-size:5.5rem;line-height:.65;color:#9aac9c}.testimonial blockquote p{color:#223c2f;font-family:Georgia,serif;font-size:clamp(1.35rem,2.2vw,2.2rem);line-height:1.5;letter-spacing:-.015em}.testimonial cite{font-size:.77rem;color:#657368;font-style:normal;display:block}.testimonial cite strong{display:block;color:#1c3529;margin-bottom:3px}
.cta-banner{background:var(--forest);color:#fff;padding:66px 0}.cta-grid{display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-grid h2{max-width:800px;font-size:clamp(2.1rem,3.4vw,3.5rem);color:#fff;margin:0 0 13px}.cta-grid p{color:#d6e4d9;margin:0}.cta-grid .buttons{display:flex;flex-direction:column;gap:10px;align-items:stretch}
.footer{background:#081d15;color:#e9eee8}.footer-top{padding:64px 0 48px;display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:70px}.footer-logo{font-size:2.25rem;letter-spacing:-.075em;font-weight:850;line-height:1;margin-bottom:8px}.footer-logo small{font-size:.58rem;letter-spacing:.28em;font-weight:750;display:block;margin-top:11px}.footer-about p{color:#b9c8bd;max-width:390px;font-size:.85rem;line-height:1.85;margin-top:23px}.footer h4{font-size:.76rem;text-transform:uppercase;letter-spacing:.12em;margin-bottom:20px}.footer-links{display:grid;gap:10px}.footer-links a,.footer-links span{font-size:.82rem;color:#c2d0c5}.footer-links a:hover{color:white;text-decoration:underline}.footer-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:21px 0;border-top:1px solid #2d4639;font-size:.7rem;color:#abbcaf}.footer-bottom a:hover{text-decoration:underline}.mobile-sticky{display:none}.skip-link{position:absolute;left:-9999px;background:var(--gold);padding:10px;z-index:999}.skip-link:focus{left:10px;top:10px}
.page-hero{background:var(--forest-2);position:relative;color:white;overflow:hidden;min-height:370px;display:flex;align-items:center}.page-hero img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;opacity:.32}.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#071d13e5,#071d1360)}.page-hero .container{position:relative;z-index:2;padding:75px 0}.page-hero h1{font-size:clamp(2.9rem,5.7vw,5.7rem);max-width:820px;margin:0 0 16px;color:white}.page-hero p{color:#dce4dd;max-width:750px;font-size:1.07rem;margin:0}.crumb{font-size:.72rem;color:#d6e0d7;letter-spacing:.07em;text-transform:uppercase;margin-bottom:24px}.crumb a:hover{text-decoration:underline}.crumb span{color:#c3a87a;margin:0 7px}
.service-detail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.service-detail{background:var(--paper);border:1px solid #e2e6de;display:grid;grid-template-columns:43% 57%;min-height:240px;overflow:hidden}.service-detail img{width:100%;height:100%;object-fit:cover}.service-detail .detail-copy{padding:27px 27px 24px;display:flex;flex-direction:column;align-items:start}.detail-copy h3{font-size:1.36rem;margin-bottom:12px}.detail-copy p{font-size:.83rem;line-height:1.75;flex:1}.detail-copy a{font-size:.7rem;font-weight:850;letter-spacing:.07em;text-transform:uppercase;border-bottom:1px solid #173827}
.service-lists{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.service-lists h3{border-bottom:1px solid var(--line);padding-bottom:14px}.service-lists ul{padding-left:19px;color:var(--muted)}.service-lists li{padding-bottom:10px}.service-callout{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:center}.service-callout img{width:100%;height:430px;object-fit:cover}.service-callout h2{margin-bottom:20px}
.filter-bar{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:34px}.filter-btn{border:1px solid #cfdbcf;background:white;color:#335040;border-radius:4px;padding:11px 18px;font-weight:800;font-size:.73rem;letter-spacing:.04em}.filter-btn[aria-pressed="true"]{background:var(--forest);color:white;border-color:var(--forest)}.gallery-count{font-size:.82rem;color:var(--muted);margin-bottom:14px}.gallery-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.project-card{display:flex;flex-direction:column;min-width:0;background:var(--paper);border:1px solid var(--line);transition:transform .25s var(--ease),box-shadow .25s}.project-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #173b201a}.project-card img{width:100%;height:250px;object-fit:cover}.project-card .card-copy{padding:23px 24px 27px;display:flex;flex-direction:column;flex:1}.card-copy small{display:block;font-size:.68rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase;color:#64816e;margin-bottom:10px}.card-copy h3{font-size:1.35rem;margin-bottom:10px}.card-copy p{font-size:.83rem;line-height:1.7;margin-bottom:18px;flex:1}.card-copy .view{font-size:.73rem;font-weight:850;letter-spacing:.07em;color:var(--forest);text-transform:uppercase}
.project-title{padding:52px 0 35px}.project-title .crumb{color:#657667;margin:0 0 24px}.project-title .crumb span{color:#4a604f}.project-title h1{font-size:clamp(2.5rem,5vw,5rem);max-width:930px;margin-bottom:18px}.project-title p{max-width:850px;font-size:1.12rem;line-height:1.85}.project-badges{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}.project-badges span{background:#e6ebe1;color:#355241;text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;padding:9px 13px;font-weight:800}.story-media{position:relative;background:#102c20;overflow:hidden}.story-media img{width:100%;height:min(68vw,690px);min-height:380px;object-fit:cover;object-position:center}.story-media .image-label{position:absolute;left:24px;bottom:24px;background:rgba(8,36,22,.87);color:#fff;padding:11px 16px;text-transform:uppercase;letter-spacing:.11em;font-size:.72rem;font-weight:850}.story-media .enlarge{position:absolute;right:24px;bottom:24px;border:1px solid #ffffff99;background:#122e2299;color:white;padding:11px 15px;font-size:.73rem;letter-spacing:.07em;text-transform:uppercase;font-weight:800}.stage-buttons{display:flex;flex-wrap:wrap;gap:10px;padding:18px 0}.stage-buttons button{padding:13px 18px;border:1px solid #bbcbbb;background:var(--paper);color:var(--forest);font-size:.73rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850;border-radius:3px}.stage-buttons button[aria-pressed="true"]{background:var(--forest);color:#fff;border-color:var(--forest)}.stage-caption{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:4px 0 40px}.stage-caption p{margin:0}.stage-caption .counter{white-space:nowrap;color:#496953;font-size:.78rem;font-weight:850}.story-content{display:grid;grid-template-columns:1fr .85fr;gap:90px;padding:52px 0 80px;align-items:start}.story-content h2{font-size:clamp(2rem,3.3vw,3.2rem);margin:0 0 22px}.story-content p{font-size:1.03rem;line-height:1.95}.story-content .aside-box{border-left:3px solid var(--gold);padding:15px 0 15px 23px;background:transparent}.aside-box h3{font-size:1rem;letter-spacing:0}.aside-box ul{margin:0;padding-left:20px;color:var(--muted)}.aside-box li{margin-bottom:10px}.timeline-title{margin-bottom:30px}.timeline-title h2{font-size:clamp(2rem,3.2vw,3.2rem)}.timeline{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding-bottom:85px}.timeline-photo{background:var(--paper);border:1px solid var(--line);cursor:pointer;text-align:left;padding:0;color:var(--ink);transition:transform .2s}.timeline-photo:hover{transform:translateY(-3px)}.timeline-photo img{width:100%;height:230px;object-fit:cover}.timeline-photo span{display:block;padding:15px 17px 2px;text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;color:#45704d;font-weight:850}.timeline-photo strong{display:block;padding:1px 17px 17px;font-size:.96rem;line-height:1.4}.related-row{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.related-row .project-card img{height:190px}
.form-area{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;align-items:start}.contact-info h2{font-size:clamp(2rem,3vw,3.2rem);margin-bottom:20px}.contact-info p{line-height:1.9}.contact-method{display:block;border-top:1px solid var(--line);padding:21px 0}.contact-method small{display:block;text-transform:uppercase;letter-spacing:.1em;color:#6a7c6a;font-size:.7rem;font-weight:800;margin-bottom:5px}.contact-method strong{display:block;font-size:1.13rem;color:#143e29}.contact-method:hover strong{text-decoration:underline}.form-card{background:#fff;border:1px solid var(--line);padding:clamp(22px,3.3vw,45px);box-shadow:0 24px 60px #2134250e}.form-card h2{font-size:2rem;margin-bottom:10px}.form-card>p{font-size:.83rem;margin-bottom:25px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label,.field legend{color:#2c4735;font-weight:800;font-size:.73rem;letter-spacing:.04em}.field input,.field select,.field textarea{width:100%;border:1px solid #cbd6ce;background:#fafbf8;border-radius:3px;min-height:48px;padding:12px 13px;color:#203126;font-size:.86rem;outline-offset:1px}.field textarea{min-height:122px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:#698e6e}.field input[type=file]{background:white;padding:9px;cursor:pointer}.field .small-note{font-size:.72rem;color:var(--muted)}.checks{display:flex;flex-wrap:wrap;gap:9px}.check{display:flex;gap:7px;align-items:center;background:#f0f3ed;border:1px solid #e0e8dc;padding:8px 11px;border-radius:3px;font-size:.74rem;color:#354a39}.check input{width:15px;min-height:15px;height:15px;accent-color:var(--forest);margin:0}.form-submit{width:100%;margin-top:22px}.privacy-note{font-size:.72rem!important;line-height:1.7;color:#69796b;margin:14px 0 0}.privacy-note a{text-decoration:underline}.faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:21px 0}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:15px;font-weight:850;font-size:1.02rem}summary::-webkit-details-marker{display:none}summary:after{content:"+";font-size:1.4rem;color:#5b7e61}details[open] summary:after{content:"−"}details p{margin:13px 45px 2px 0;font-size:.91rem;line-height:1.85}
.about-hero-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:75px;align-items:center}.about-hero-grid img{width:100%;height:630px;object-fit:cover}.about-hero-grid h2{font-size:clamp(2.4rem,4.5vw,4.5rem)}.about-hero-grid p{line-height:1.95;font-size:1.04rem}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.value-card{border-top:2px solid #416b4c;padding:30px 0}.value-card .value-n{font-size:.74rem;font-weight:850;color:#6b946b}.value-card h3{font-size:1.55rem;margin:24px 0 15px}.value-card p{font-size:.9rem;line-height:1.8}.team-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.team-photos img{width:100%;height:360px;object-fit:cover}
.lightbox{position:fixed;z-index:250;inset:0;background:rgba(2,12,8,.96);display:none;flex-direction:column;align-items:center;justify-content:center;padding:45px 70px 55px;color:white}.lightbox.open{display:flex}.lightbox img{width:auto;max-height:calc(100vh - 168px);max-width:100%;object-fit:contain}.lightbox .lb-caption{color:white;text-align:center;font-size:.87rem;margin:15px 0 0;max-width:800px}.lb-btn{position:absolute;background:#ffffff18;color:white;border:1px solid #ffffff60;border-radius:50%;width:46px;height:46px;display:grid;place-items:center}.lb-close{top:23px;right:25px}.lb-prev{left:18px;top:50%}.lb-next{right:18px;top:50%}.lb-btn:hover{background:#ffffff38}.lb-btn svg{width:24px;height:24px}.error-box{background:#f7ece4;padding:22px;border-left:3px solid #bd7e3c}
@media (max-width:1120px){.desktop-nav{gap:16px}.header-cta{padding:12px 14px}.brand img{width:145px}.intro-grid,.story-grid{gap:50px}.feature-copy{padding:40px 50px}.story-content{gap:45px}.service-detail .detail-copy{padding:20px}}
@media (max-width:960px){.container{width:min(var(--wrap),calc(100% - 42px))}.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex}.nav-inner{height:74px}.brand img{height:62px}.mobile-nav{position:absolute;top:100%;left:0;right:0;background:var(--paper);flex-direction:column;padding:12px 21px 24px;box-shadow:0 20px 22px #0002;gap:0}.mobile-nav a{padding:13px 4px;border-bottom:1px solid var(--line);font-weight:850;text-transform:uppercase;font-size:.77rem;letter-spacing:.07em}.mobile-nav .mobile-highlight{background:var(--forest);color:white;text-align:center;margin-top:14px;border:0}.six-services{grid-template-columns:repeat(2,1fr)}.gallery-cards{grid-template-columns:repeat(2,1fr)}.trust-grid{grid-template-columns:repeat(2,1fr)}.trust-item:nth-child(2){border:0}.trust-item:nth-child(3){padding-left:0}.feature-layout{grid-template-columns:1fr}.feature-image img{height:420px;min-height:0}.feature-copy{padding:58px 40px}.story-grid{grid-template-columns:1fr}.story-visual>img{height:450px}.year-chip{right:18px}.service-detail-grid{grid-template-columns:1fr}.faq-grid{gap:40px}.form-area{gap:28px}.footer-top{gap:40px}.story-content{grid-template-columns:1fr 1fr}.timeline{grid-template-columns:repeat(2,1fr)}}
@media (max-width:680px){body{font-size:14px}.container{width:calc(100% - 34px)}h1{font-size:clamp(2.7rem,12.6vw,4.3rem)}h2{font-size:clamp(2rem,9vw,3rem)}.section{padding:62px 0}.announce .container{justify-content:center;text-align:center;min-height:31px}.announce .container span:nth-child(2){display:none}.hero{min-height:650px;align-items:end}.hero-picture img{object-position:62% center}.hero-tint{background:linear-gradient(0deg,#061b13f7 0%,#061b13c9 53%,#061b1340 100%)}.hero .container{padding:60px 0 90px}.hero h1{margin-bottom:17px}.hero p{font-size:.98rem;margin-bottom:24px}.hero .button-row{gap:9px}.hero .btn{width:100%}.hero-mini{bottom:19px}.hero-location{display:none}.btn{min-height:48px;padding:13px 17px;font-size:.71rem}.trust-grid{padding:12px 0;gap:0}.trust-item{padding:12px!important;border:0!important;border-bottom:1px solid #466250!important}.trust-item:nth-child(n+3){border-bottom:0!important}.trust-item strong{font-size:.75rem}.trust-item span{font-size:.66rem}.intro-grid,.testimonial-grid,.about-hero-grid,.form-area,.faq-grid{grid-template-columns:1fr;gap:24px}.intro-grid{gap:9px}.intro-grid .right{font-size:1rem}.section-top{align-items:start;flex-direction:column;gap:15px;margin-bottom:26px}.six-services,.gallery-cards,.timeline,.service-lists,.values,.team-photos{grid-template-columns:1fr}.six-services{gap:11px}.service-tile,.service-tile img{height:260px;min-height:260px}.tile-body{left:19px;bottom:20px}.tile-body strong{font-size:1.4rem}.service-footer{display:block}.service-footer p{margin-bottom:15px}.gallery-preview{display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:225px;gap:9px}.gallery-preview a,.gallery-preview a.tall,.gallery-preview .more{grid-column:span 1;grid-row:span 1}.gallery-preview a:first-child{grid-column:span 2;grid-row:span 2}.gallery-preview span{bottom:15px;left:15px}.gallery-preview strong{font-size:1rem}.gallery-preview small{font-size:.57rem}.feature-image img{height:285px}.feature-copy{padding:45px 22px}.feature-copy h2{font-size:2.5rem}.stories-spotlight{grid-template-columns:1fr;gap:12px}.stage-spot img{height:255px}.process-grid{grid-template-columns:1fr 1fr;gap:15px}.process-item .count{font-size:2.1rem}.story-visual>img{height:350px}.story-grid{gap:45px}.testimonial-grid{gap:20px}.testimonial blockquote p{font-size:1.45rem}.cta-grid{align-items:stretch;flex-direction:column;gap:26px}.cta-grid .buttons{width:100%}.footer-top{grid-template-columns:1fr 1fr;gap:38px 25px;padding-top:47px}.footer-about{grid-column:1/-1}.footer-bottom{display:block;padding-bottom:88px}.footer-bottom>*{display:block;margin-bottom:8px}.mobile-sticky{position:fixed;bottom:0;z-index:95;left:0;right:0;background:#fbfcf6;border-top:1px solid #d9e2d8;padding:8px max(12px,env(safe-area-inset-left));padding-bottom:max(8px,env(safe-area-inset-bottom));display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:7px;box-shadow:0 -6px 20px #09140d18}.mobile-sticky a{min-height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #c4d4c4;color:#24412e;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;font-weight:850}.mobile-sticky a:last-child{color:white;background:var(--forest);border-color:var(--forest)}.page-hero{min-height:275px}.page-hero .container{padding:56px 0}.page-hero h1{font-size:2.8rem}.service-detail{display:block}.service-detail img{height:180px}.service-detail .detail-copy{padding:24px}.service-callout,.story-content{grid-template-columns:1fr;gap:28px}.service-callout img{height:270px}.project-title{padding:35px 0 17px}.project-title h1{font-size:2.5rem}.project-title p{font-size:.98rem}.story-media img{height:340px;min-height:0}.story-media .image-label{left:10px;bottom:10px}.story-media .enlarge{right:10px;bottom:10px;padding:8px}.stage-buttons{overflow-x:auto;flex-wrap:nowrap;padding:15px 0}.stage-buttons button{white-space:nowrap;padding:11px 12px}.stage-caption{margin-bottom:10px;align-items:start;flex-direction:column}.story-content{padding:35px 0 40px}.timeline{gap:12px;padding-bottom:45px}.timeline-photo img{height:220px}.related-row{display:grid;grid-template-columns:1fr}.form-card{padding:23px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:1}.about-hero-grid img{height:370px}.team-photos{grid-template-columns:repeat(2,1fr)}.team-photos img{height:230px}.lightbox{padding:55px 12px}.lightbox img{max-height:calc(100vh - 145px)}.lb-prev{left:4px;top:auto;bottom:25px}.lb-next{right:4px;top:auto;bottom:25px}.lb-caption{padding:0 36px}.filter-bar{gap:7px}.filter-btn{padding:10px 12px}.project-card img{height:230px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.project-card[hidden]{display:none!important}

/* v4 signature homepage hero */
.hero-v4{min-height:680px;display:grid;grid-template-columns:42% 58%;align-items:stretch;overflow:visible;background:#10291f}
.hero-v4-text{display:flex;align-items:center;position:relative;padding:80px max(30px,calc((100vw - 1260px)/2)) 82px max(32px,calc((100vw - 1260px)/2));min-width:0;background:linear-gradient(145deg,#193f30,#0b211a 84%);z-index:1}
.hero-v4-text-inner{max-width:650px;width:100%;min-width:0}
.hero-v4 .hero-v4-mark{display:flex;gap:12px;align-items:baseline;margin:24px 0 13px;color:#e9eade;font-size:1.1rem;font-weight:850;letter-spacing:.12em}
.hero-v4-mark span{font-size:.54rem;letter-spacing:.19em;font-weight:800;color:#cad6c4;max-width:135px;line-height:1.45}
.hero-v4 h1{font-size:clamp(2.8rem,4.2vw,5.25rem);line-height:1.065;letter-spacing:-.065em;margin:12px 0 25px;max-width:650px}
.hero-v4 h1 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.06em;color:#dbc5a4}
.hero-v4 p{color:#dce8de;font-size:clamp(.96rem,1.12vw,1.12rem);line-height:1.9;margin:0 0 30px;max-width:535px}
.hero-v4 .button-row{flex-wrap:wrap;gap:10px}
.hero-v4 .btn{min-height:54px;padding:16px 19px;font-size:.72rem}
.hero-v4-meta{display:flex;flex-wrap:wrap;gap:16px;margin-top:38px;color:#d4e0d3;font-size:.68rem;letter-spacing:.11em;text-transform:uppercase;font-weight:800}
.hero-v4-meta span:before{content:'✓';color:#e4c29b;margin-right:8px}
.hero-v4-photo{position:relative;overflow:hidden;background:#1c3b2b;min-height:620px}
.hero-v4-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,rgba(2,15,10,.54),transparent 36%);pointer-events:none}
.hero-v4-photo>img{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:47% center}
.hero-photo-caption{position:absolute;z-index:2;bottom:27px;left:30px;color:white;font-size:.67rem;text-transform:uppercase;letter-spacing:.18em;font-weight:850}
.hero-photo-corner{position:absolute;right:24px;top:24px;border:1px solid #ffffffa8;background:#0f2d22ad;color:white;padding:12px 14px;font-weight:850;text-align:right;font-size:.68rem;line-height:1.45;letter-spacing:.1em}
.hero-photo-corner span{color:#e8cda7;font-size:.61rem}
.community-section{background:#fffdf9}.community-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:clamp(35px,5vw,78px);align-items:center}
.community-visual{min-height:370px;position:relative;overflow:hidden;background:#183c2d}
.community-visual img{width:100%;height:440px;object-fit:cover;display:block}
.community-caption{position:absolute;bottom:0;left:0;right:0;background:#0e2e20e0;color:white;padding:14px 20px;font-size:.68rem;letter-spacing:.06em;text-transform:uppercase}
.community-copy h2{font-size:clamp(2.15rem,3.6vw,3.8rem)}.community-copy p{max-width:530px;line-height:1.95;font-size:1rem}
.community-tags{display:flex;gap:9px;flex-wrap:wrap;margin:25px 0}.community-tags span{background:#e8eee7;color:#2d523c;padding:8px 12px;text-transform:uppercase;font-size:.65rem;font-weight:850;letter-spacing:.07em}
.community-copy .button-row{gap:12px;flex-wrap:wrap}.community-copy .btn{font-size:.7rem;padding:14px 15px;min-height:48px}
/* section focus rings and photo quality */
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #dbaf72;outline-offset:3px}
@media(max-width:1200px){.hero-v4-text{padding:70px 38px}.hero-v4 h1{font-size:clamp(2.65rem,4.2vw,4.8rem)}}
@media(max-width:960px){.hero-v4{grid-template-columns:1fr 1fr;min-height:640px}.hero-v4-text{padding:56px 25px}.hero-v4-photo{min-height:640px}.hero-v4 h1{font-size:clamp(2.6rem,4.6vw,4rem)}.community-grid{gap:30px}}
@media(max-width:780px){.hero-v4{display:flex;flex-direction:column;min-height:0}.hero-v4-text{padding:55px 25px 38px}.hero-v4-text-inner{max-width:690px;margin:auto}.hero-v4 h1{font-size:clamp(2.85rem,8.7vw,4.5rem)}.hero-v4 p{max-width:650px}.hero-v4-photo{min-height:360px;height:50vw;max-height:530px}.hero-v4-photo>img{object-position:center 53%}.hero-v4-meta{margin-top:22px}.community-grid{grid-template-columns:1fr}.community-visual img{height:410px}}
@media(max-width:480px){.hero-v4-text{padding:43px 18px 32px}.hero-v4 h1{font-size:clamp(2.8rem,10.9vw,4rem)}.hero-v4 .hero-v4-mark{margin:16px 0 12px}.hero-v4 .button-row .btn{width:100%}.hero-v4-photo{height:290px;min-height:290px}.hero-v4-photo>img{object-position:50% 52%}.hero-photo-caption{left:15px;bottom:13px;font-size:.55rem}.hero-photo-corner{font-size:.57rem;top:12px;right:12px;padding:8px}.community-visual img{height:300px}.community-caption{font-size:.56rem}.community-copy .btn{width:100%}}

@media(max-width:780px){.hero-v4-photo{order:-1}}

/* === WAHL V5: editorial service pages, honest project comparison and responsive photos === */
.service-landing-hero{background:#122f23;color:#fff;overflow:hidden}
.service-landing-layout{display:grid;grid-template-columns:1.08fr .92fr;min-height:610px;align-items:stretch;gap:0}
.service-landing-copy{padding:clamp(64px,6vw,100px) 6vw 72px 0;display:flex;flex-direction:column;justify-content:center}
.service-landing-copy .crumb{color:#d8e7dc}.service-landing-copy .eyebrow{color:#c8d9c8}
.service-landing-copy .eyebrow:before{background:var(--gold)}
.service-landing-copy h1{font-size:clamp(2.5rem,4.15vw,5.25rem);letter-spacing:-.067em;line-height:1.07;margin:2px 0 23px;color:#fff}
.service-landing-copy p{font-size:clamp(.98rem,1.1vw,1.11rem);color:#deeadf;max-width:620px;line-height:1.92;margin-bottom:30px}
.service-landing-copy>.button-row{margin:0 0 42px}.service-landing-copy>small{font-weight:700;letter-spacing:.08em;font-size:.69rem;text-transform:uppercase;color:#b9d3be}
.service-landing-photo{position:relative;min-height:580px;overflow:hidden;background:#304235}
.service-landing-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.service-landing-photo:after{position:absolute;inset:0;content:"";background:linear-gradient(0deg,#061a10ad,transparent 47%)}
.service-landing-photo span{position:absolute;bottom:25px;left:25px;z-index:2;color:#fff;text-transform:uppercase;font-weight:800;letter-spacing:.16em;font-size:.69rem}
.service-overview{display:grid;grid-template-columns:1.05fr .85fr;gap:clamp(35px,7vw,125px);align-items:start}
.service-overview h2{max-width:630px}.service-overview p{line-height:1.95;font-size:1.05rem}
.service-includes{padding:35px 38px;background:#eef1e9;border-left:4px solid var(--gold)}
.service-includes h3{font-size:1.5rem;margin-bottom:22px}.service-includes ul{padding-left:22px;margin-bottom:30px;color:#445d49;line-height:1.75}.service-includes li{margin-bottom:13px}
.service-tile-list{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;list-style:none;margin:0;padding:0}
.service-tile-list li{background:var(--forest);color:#fff;min-height:130px;padding:26px;display:flex;align-items:end;font-size:1.15rem;letter-spacing:-.03em;font-weight:850;position:relative}
.service-tile-list li:before{content:"✦";position:absolute;top:16px;right:20px;color:var(--gold);font-size:.95rem}
.service-showcase{grid-template-columns:repeat(3,1fr)}
.service-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(40px,7vw,115px)}
.service-faq p{line-height:1.85}.service-area-band{text-align:center}.service-area-band h2{max-width:900px;margin:0 auto 17px}.service-area-band p{max-width:800px;margin:0 auto}
.service-links-list{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.service-links-list a{display:flex;justify-content:space-between;align-items:center;background:white;border:1px solid var(--line);padding:20px 24px;font-weight:850;color:var(--forest);font-size:1rem;transition:background .2s,transform .2s}.service-links-list a:hover{background:#e3ebe2;transform:translateY(-2px)}.service-links-list span{color:#6c936f}
/* All-before-after panels use original honest photos rather than fake perspective-matched wipes. */
.comparison-section{padding-top:55px}.comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.comparison-grid figure{margin:0;min-width:0;background:#edf1e9;border:1px solid #e1e7dc}.comparison-frame{position:relative;background:#234230;overflow:hidden}
.comparison-frame img{height:clamp(230px,31vw,450px);width:100%;object-fit:contain;object-position:center}
.comparison-frame span{position:absolute;left:18px;bottom:18px;z-index:2;padding:7px 13px;background:#122b20e8;color:white;font-size:.71rem;font-weight:850;text-transform:uppercase;letter-spacing:.14em}
.comparison-grid figcaption{padding:16px 18px 18px;color:#43604c;font-size:.84rem;font-weight:750;min-height:65px}
/* Portrait images are letterboxed against a blurred copy, not incorrectly cropped or stretched. */
.story-media{isolation:isolate;scroll-margin-top:100px}.story-media:before{content:"";position:absolute;inset:-18px;background-image:var(--stage-url);background-size:cover;background-position:center;filter:blur(28px) brightness(.42);z-index:-1;opacity:0;transition:opacity .2s}
.story-media.is-portrait:before{opacity:1}.story-media.is-portrait img{object-fit:contain;object-position:center}
.story-media>.image-label,.story-media>.enlarge{z-index:3}.stage-caption{line-height:1.5}
#stageMain{transition:opacity .17s ease}.timeline-photo img{object-fit:cover;object-position:center}.timeline-photo:hover{border-color:#8dac95}
.lightbox:before{content:'WAHL · LANDSCAPING & LAWN SERVICE';position:absolute;top:30px;left:28px;color:#ebf4e8;letter-spacing:.14em;font-size:.72rem;font-weight:850;z-index:2;pointer-events:none}
.portfolio-tools{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-bottom:22px}.portfolio-tools label{font-size:.78rem;color:#42564a;font-weight:850;white-space:nowrap}.portfolio-tools input{border:1px solid #cbd5ca;background:white;padding:13px 17px;border-radius:3px;max-width:520px;width:100%;font-size:.91rem}.portfolio-tools .gallery-count{margin:0;white-space:nowrap}
.photo-preview{display:none;margin-top:11px;padding:10px 13px;background:#ebf2e9;border:1px solid #ccd9cd;color:#255037;font-size:.78rem;border-radius:3px}.photo-preview.visible{display:block}
.v5-location-links{display:flex;flex-wrap:wrap;gap:12px}.v5-location-links span{padding:9px 14px;color:#355440;border:1px solid #cedacd;background:#f7faf5;border-radius:2px;font-size:.73rem;font-weight:800}
@media(max-width:1050px){.service-landing-layout{grid-template-columns:1fr 1fr}.service-landing-copy{padding-right:32px}.service-landing-copy h1{font-size:clamp(2.4rem,4.7vw,4rem)}.service-tile-list{grid-template-columns:repeat(2,1fr)}.service-links-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.service-landing-layout{width:100%;display:flex;flex-direction:column-reverse}.service-landing-photo{min-height:300px;height:43vh;max-height:480px}.service-landing-copy{padding:45px 25px 56px;width:min(100%,620px);margin:0 auto}.service-landing-copy h1{font-size:clamp(2.55rem,9vw,4.5rem)}.service-landing-copy p{font-size:1rem}.service-landing-copy>.button-row{margin-bottom:24px}.service-overview{grid-template-columns:1fr;gap:30px}.service-faq{grid-template-columns:1fr;gap:22px}.service-showcase{grid-template-columns:repeat(2,1fr)}.comparison-section .section-top{align-items:start;flex-direction:column}.comparison-grid{gap:9px}.comparison-frame img{height:310px}.portfolio-tools{align-items:stretch;flex-direction:column;gap:10px}.portfolio-tools .gallery-count{white-space:normal}}
@media(max-width:560px){.service-showcase{grid-template-columns:1fr}.service-landing-photo{height:34vh;min-height:260px}.service-landing-photo img{object-position:center 46%}.service-tile-list{grid-template-columns:1fr 1fr;gap:9px}.service-tile-list li{padding:17px;min-height:118px;font-size:.96rem}.service-links-list{grid-template-columns:1fr}.comparison-grid{grid-template-columns:1fr}.comparison-frame img{height:265px}.comparison-grid figcaption{min-height:0}.service-includes{padding:25px}.story-media img{min-height:300px;height:53vw}.story-media.is-portrait img{height:480px;max-height:66vh}.stage-buttons button{padding:10px 12px;font-size:.67rem}.stage-buttons{gap:7px}.lightbox{padding:70px 40px 65px}.lightbox:before{left:14px;top:14px;font-size:.59rem}.lb-prev{left:4px}.lb-next{right:4px}.service-landing-copy .btn{font-size:.69rem;padding:13px 12px}}
@media(prefers-reduced-motion:reduce){#stageMain{transition:none}}
