:root{--forest:#14291f;--deep:#0d1d16;--mid:#254a37;--gold:#d2ad70;--cream:#f5f4ee;--ink:#1b2923;--muted:#536359;--line:#d8dfd7}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth;scroll-padding-top:124px}body{margin:0;color:var(--ink);background:var(--cream);font:400 16px/1.65 "DM Sans",Arial,sans-serif}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,Arial,sans-serif}h1,h2{letter-spacing:-.045em;text-wrap:balance}h3{letter-spacing:-.02em}img{max-width:100%;display:block}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #48785a;outline-offset:4px}.site-header a:focus-visible,.site-header button:focus-visible,.contact a:focus-visible,footer a:focus-visible{outline-color:var(--gold)}.wrap{width:min(100% - 64px,1240px);margin:auto}.skip-link{position:fixed;left:16px;top:-80px;background:#fff;z-index:30;padding:12px 18px}.skip-link:focus{top:12px}.topline{background:var(--deep);color:#d9e4d9;font-size:.875rem}.topline-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:16px}.topline a{font-weight:600}.topline a:hover{text-decoration:underline}.topline-divider{color:var(--gold);padding:0 10px}.site-header{background:var(--forest);color:#fff;position:sticky;top:0;z-index:10;border-bottom:1px solid #365041}.header-inner{min-height:104px;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand .site-logo{width:170px;height:96px;object-fit:cover;object-position:center 55%}.desktop-nav{display:flex;align-items:center;gap:28px;margin-left:auto;color:#e4ece5;font-size:.9375rem;font-weight:600}.desktop-nav a{padding:12px 0;white-space:nowrap}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:var(--gold)}.header-cta{border:1px solid #8da298;padding:12px 18px;font-size:.875rem;font-weight:700;white-space:nowrap}.header-cta:hover{background:var(--mid)}.menu-toggle,.mobile-menu{display:none}.hero{position:relative;color:white;overflow:hidden;background:#243c2d}.hero-photo{position:absolute;inset:0;background:none}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#071910e8 0%,#081c12b8 48%,#081e1140 100%)}.hero-inner{position:relative;min-height:590px;display:flex;align-items:center;justify-content:space-between}.hero-copy{padding:72px 0;max-width:790px}.eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 20px;font:800 .75rem/1.5 Manrope,Arial,sans-serif;letter-spacing:.16em;color:#486b56}.eyebrow.light{color:#e4e4d3}.eyebrow .line{width:28px;height:1px;background:var(--gold);flex:none}.hero h1{font-size:clamp(3rem,5.3vw,4.8rem);line-height:1.13;font-weight:700;margin-bottom:24px}.hero h1 em{font-style:normal;color:#dec18c}.hero-copy>p:not(.eyebrow){max-width:540px;font-size:1.125rem;color:#e3e9e2;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:12px 22px;border:0;font:800 .9375rem/1.45 Manrope,Arial,sans-serif}.button-gold{background:var(--gold);color:#14261d}.button-gold:hover{background:#e4c48e}.text-link{font-weight:700;border-bottom:1px solid #8da695;padding:8px 0;font-size:1rem}.text-link:hover{color:var(--gold)}.hero-side{writing-mode:vertical-rl;display:flex;align-items:center;gap:18px;color:#e2e9df;font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}.hero-side-line{width:1px;height:62px;background:var(--gold)}.service-strip{background:var(--gold);color:#18281e}.strip-inner{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:24px}.strip-inner p{font:800 1rem/1.5 Manrope,Arial,sans-serif;margin:0}.strip-links{display:flex;align-items:center;gap:18px;font-size:.75rem;font-weight:800;letter-spacing:.1em}.strip-links i{width:3px;height:3px;border-radius:50%;background:currentColor}.section{padding:88px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:64px;margin-bottom:36px}.section-heading h2,.about h2,.area-section h2,.contact h2{font-size:clamp(2.3rem,3.9vw,3.6rem);line-height:1.15;margin-bottom:0;font-weight:700}.section-heading h2 span,.about h2 span,.area-section h2 span{color:#4f725b}.section-heading>p{max-width:460px;color:var(--muted);margin:0 0 4px}.service-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:20px}.service-card{grid-column:span 2;background:#fff;border:1px solid #e0e5de;overflow:hidden;display:flex;flex-direction:column}.service-card img{width:100%;height:210px;object-fit:cover;object-position:center 65%}.service-card .card-content{padding:24px;flex:1}.card-number{display:block;color:#526e5b;font-weight:700;font-size:.8125rem;letter-spacing:.1em;margin-bottom:10px}.service-card h3{font-size:1.25rem;line-height:1.3;margin-bottom:10px}.service-card p{font-size:1rem;line-height:1.65;color:var(--muted);margin:0}.service-photo-note{margin:18px 0 0;color:var(--muted);font-size:.875rem}.landscape-project{margin-top:52px;padding-top:44px;border-top:1px solid var(--line)}.landscape-project h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.15;margin:0 0 16px}.project-intro{color:var(--muted);max-width:680px;margin-bottom:26px}.project-comparisons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.project-pair h3{font-size:1.2rem;line-height:1.3;margin:0 0 14px}.project-photos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:560px}.project-photos figure{margin:0;background:#fff;border:1px solid #e0e5de;overflow:hidden}.project-photos img{width:100%;height:160px;object-fit:cover;object-position:center 65%}.project-photos figcaption{padding:12px;font-weight:700;font-size:.875rem;color:var(--forest)}.about{background:#e9eee7;padding:76px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.about-art{min-height:360px;background:var(--forest);color:#fff;padding:34px;display:flex;flex-direction:column;justify-content:space-between;gap:36px}.about-art-small{font-size:.875rem;font-weight:800;letter-spacing:.15em;color:var(--gold)}.about-art strong{font:800 clamp(2.4rem,4vw,4.4rem)/1.08 Manrope,Arial,sans-serif;letter-spacing:-.045em}.about-art-bottom{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;border-top:1px solid #8daa9270;padding-top:18px;font-size:.75rem;font-weight:700;letter-spacing:.06em}.about-copy h2{margin-bottom:24px}.about-copy>p:not(.eyebrow){color:var(--muted);margin-bottom:18px}.inline-link{display:inline-flex;border-bottom:2px solid var(--gold);padding:7px 0;margin-top:10px;font-weight:700}.inline-link:hover{color:#3f6c4f}.area-section{background:#fff}.area-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.area-grid h2{margin-bottom:22px}.area-grid p:not(.eyebrow){color:var(--muted);max-width:420px}.area-list{border-top:1px solid var(--line)}.area-list div{border-bottom:1px solid var(--line);padding:14px 0;display:flex;align-items:center;font:700 1.3rem/1.5 Manrope,Arial,sans-serif}.area-list span{font-size:.8125rem;color:#526e5b;margin-right:26px}.testimonials{background:var(--cream)}.testimonials .section-heading>p a{text-decoration:underline;font-weight:700}.testimonials-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:36px;align-items:start}.testimonial-form{padding:28px;background:#fff;border:1px solid var(--line)}.testimonial-form h3{font-size:1.4rem;line-height:1.3;margin:0 0 10px}.testimonial-form>p{color:var(--muted)}.testimonial-form>label{display:block;font-weight:600;margin:18px 0 7px}.testimonial-form input:not([type=radio]):not([type=checkbox]),.testimonial-form textarea{width:100%;border:1px solid #82958a;padding:12px;border-radius:2px;background:#fff;color:var(--ink);font-size:1rem}.testimonial-form textarea{resize:vertical}.testimonial-form fieldset{border:0;padding:0;margin:20px 0;display:flex;gap:20px;flex-wrap:wrap}.testimonial-form legend{font-weight:600;margin-bottom:10px}.testimonial-form fieldset label{display:flex;align-items:center;gap:8px;min-height:40px}.testimonial-form input[type=radio],.testimonial-form input[type=checkbox]{accent-color:var(--forest);width:19px;height:19px;flex-shrink:0}.testimonial-form .testimonial-consent{display:flex;align-items:flex-start;gap:10px;font-size:.875rem;font-weight:400;margin-bottom:20px}.testimonial-trap{position:absolute;left:-10000px}.testimonial-card{background:#fff;border:1px solid var(--line);padding:24px;margin-bottom:16px;overflow-wrap:anywhere}.testimonial-card h3{font-size:1.125rem;line-height:1.4;margin:0}.testimonial-card p{margin:12px 0;white-space:pre-wrap}.testimonial-stars{color:#53621d;letter-spacing:.12em;margin-top:8px}.testimonial-card time{font-size:.875rem;color:var(--muted)}.testimonial-summary{font-weight:700;margin-top:0}.testimonial-empty{border-left:3px solid var(--gold);padding:24px;background:#e9eee7}.testimonial-empty h3{font-size:1.35rem;margin-bottom:10px}.testimonial-empty p{color:var(--muted);margin-bottom:0}.testimonial-more{background:var(--forest);color:#fff;margin-top:8px}.testimonial-form button:disabled{opacity:.65;cursor:wait}#testimonial-status:empty{display:none}.faq{background:#fff;border-top:1px solid var(--line)}.faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:10%}.faq h2{font-size:clamp(2.3rem,3.9vw,3.6rem);line-height:1.15;margin:0}.faq details{border-top:1px solid var(--line);padding:18px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{font-weight:700;font-size:1.0625rem;cursor:pointer;padding-right:12px}.faq details p{color:var(--muted);margin:16px 0 0}.faq details a{text-decoration:underline;font-weight:600}.contact{background:var(--forest);color:#fff;padding:80px 0}.contact-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:8%;align-items:center}.contact h2{margin:0 0 24px}.contact p:not(.eyebrow){color:#d4e0d5;max-width:520px;margin-bottom:18px}.contact-actions{display:grid;gap:12px}.contact-button{border:1px solid #66816b;padding:20px 24px;display:flex;flex-direction:column;gap:3px;min-width:0}.contact-button:hover{background:var(--mid);border-color:var(--gold)}.contact-button>span{font-size:.875rem;color:#c5d5c7}.contact-button strong{font:700 1.125rem/1.4 Manrope,Arial,sans-serif;overflow-wrap:anywhere}.contact-checklist{font-size:.9375rem!important;border-left:2px solid var(--gold);padding-left:16px;margin-top:26px}.policies{background:var(--cream);padding:64px 0;border-top:1px solid var(--line)}.policies-inner{display:grid;grid-template-columns:1fr 1.4fr;gap:8%}.policies h2{font-size:clamp(2rem,3vw,2.7rem);line-height:1.2}.policy-items{display:grid;gap:24px}.policy-items div+div{border-top:1px solid var(--line);padding-top:24px}.policy-items h3{font-size:1.125rem;margin-bottom:7px}.policy-items p{color:var(--muted);margin:0}footer{background:var(--forest);color:#dce4da;border-top:1px solid #365041}.footer-main{padding:42px 0;display:grid;grid-template-columns:1fr 1.15fr 1fr;gap:44px;align-items:center}.footer-brand .site-logo{width:210px;height:118px}.footer-main p{color:#b4c4b7;max-width:350px;margin:0;font-size:.9375rem}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px;font-size:.875rem;font-weight:600}.footer-links a{padding:5px 0}.footer-links a:hover{color:var(--gold)}.footer-bottom{border-top:1px solid #365041;padding:20px 0;display:flex;justify-content:space-between;gap:24px;color:#b4c4b7;font-size:.875rem}
@media(max-width:1050px){.desktop-nav{gap:18px}.header-inner{gap:20px}.header-cta{padding:11px 14px}.strip-links{gap:12px}.section-heading{gap:40px}}
@media(max-width:900px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;margin-left:auto;background:transparent;border:1px solid #66816b;padding:14px}.menu-toggle span{width:23px;height:2px;background:#fff;display:block}.mobile-menu:not([hidden]){display:flex;flex-direction:column;background:#193629;padding:0 32px 18px}.mobile-menu a{padding:12px 0;border-bottom:1px solid #476453;font-weight:600}.service-card,.service-card:nth-child(4),.service-card:nth-child(5){grid-column:span 3}.project-comparisons{grid-template-columns:1fr;gap:28px}.project-photos img{height:160px}.footer-main{gap:28px}.footer-brand .site-logo{width:180px;height:105px}}
@media(max-width:720px){html{scroll-padding-top:108px}.wrap{width:min(100% - 36px,1240px)}.topline-inner{justify-content:center;min-height:36px}.topline-inner>span:first-child{display:none}.header-inner{min-height:90px}.brand .site-logo{width:145px;height:82px}.mobile-menu:not([hidden]){padding:0 18px 18px}.hero-inner{min-height:515px}.hero-copy{padding:52px 0}.hero h1{font-size:clamp(2.6rem,8.5vw,3.8rem)}.hero-copy>p:not(.eyebrow){font-size:1rem}.hero-side{display:none}.hero-shade{background:linear-gradient(90deg,#071910e8,#081c128f)}.hero-photo{background-position:60% center}.hero-actions{gap:20px}.strip-inner{min-height:60px}.strip-inner p{font-size:.9375rem}.strip-links{display:none}.section{padding:60px 0}.section-heading{display:block;margin-bottom:28px}.section-heading>p{margin-top:18px}.about-grid,.area-grid,.testimonials-layout,.faq-grid,.contact-grid,.policies-inner{grid-template-columns:1fr;gap:32px}.about{padding:60px 0}.about-art{min-height:280px;padding:28px}.about-copy h2{margin-bottom:22px}.contact{padding:60px 0}.service-card img{height:190px}.service-card .card-content{padding:20px}.landscape-project{margin-top:36px;padding-top:32px}.project-photos img{height:150px}.testimonial-form{padding:22px}.faq-grid{gap:26px}.footer-main{grid-template-columns:1fr 1fr;padding:34px 0;gap:24px}.footer-main p{grid-column:1/-1;grid-row:2}.footer-links{grid-column:2;grid-row:1}.footer-bottom{font-size:.8125rem}.eyebrow{font-size:.75rem;letter-spacing:.12em}}
@media(max-width:540px){.service-grid{grid-template-columns:1fr;gap:16px}.service-card,.service-card:nth-child(4),.service-card:nth-child(5){grid-column:auto}.service-card img{height:200px}.hero h1{font-size:clamp(2.25rem,10.2vw,3.1rem)}.hero-actions{align-items:flex-start;gap:18px}.project-photos{gap:10px}.project-photos img{height:clamp(105px,30vw,150px)}.project-photos figcaption{padding:10px;font-size:.875rem}.section-heading h2,.about h2,.area-section h2{font-size:2.35rem}.about-art strong{font-size:2.8rem}.footer-main{grid-template-columns:1fr}.footer-main p,.footer-links{grid-column:1;grid-row:auto}.footer-bottom{flex-direction:column;gap:8px}.footer-brand .site-logo{width:190px;height:110px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.video-preview{display:block;position:relative;height:210px;overflow:hidden;background:var(--deep)}
.video-preview img{width:100%;height:100%;object-fit:cover;object-position:center 50%}
.video-preview::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 30%,#0d1d16e8)}
.video-preview-label{position:absolute;z-index:1;bottom:16px;left:20px;right:16px;display:flex;align-items:center;gap:12px;color:#fff;font-weight:700;font-size:1rem;line-height:1.4}
.video-preview-label small{display:block;font-size:.875rem;font-weight:400;color:#e5eade;margin-top:3px}
.video-play{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:48px;height:48px;border-radius:50%;background:var(--gold);color:var(--forest)}
.video-preview:hover .video-play{background:#e4c48e}
html.video-open{overflow:hidden}
.project-video-dialog{width:min(800px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:20px;background:var(--cream);color:var(--ink);border:1px solid var(--line);border-radius:4px}
.project-video-dialog:not([open]){display:none}
.project-video-dialog::backdrop{background:#071910df}
.video-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}
.video-dialog-heading h2{font-size:1.35rem;line-height:1.35;letter-spacing:-.025em;margin:0;text-align:left}
.video-close{flex-shrink:0;min-height:44px;padding:8px 16px;border:1px solid #82958a;background:#fff;color:var(--forest);font-weight:700}
.video-close:hover{background:#e9eee7}
.project-video-dialog video{display:block;width:100%;height:min(60dvh,600px);object-fit:contain;background:var(--deep)}
.project-video-dialog video:fullscreen{height:100%;object-fit:contain}
.video-description{font-size:.875rem;color:var(--muted);margin:16px 0 0}
.video-description a{font-weight:700;text-decoration:underline}
@media(max-width:720px){.video-preview{height:190px}}
@media(max-width:540px){.video-preview{height:200px}.video-preview-label{left:16px}.project-video-dialog{padding:16px}.video-dialog-heading{gap:12px}.video-dialog-heading h2{font-size:1.2rem}}

select:focus-visible{outline:3px solid #48785a;outline-offset:4px}
.review-actions{display:flex;flex-wrap:wrap;margin-bottom:28px}
.contact-grid{align-items:start}
.contact-actions{margin-top:28px}
.estimate-form,.estimate-success{padding:30px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:4px;min-width:0}
.estimate-form h3,.estimate-success h3{font-size:1.5rem;line-height:1.3;margin-bottom:12px}
.contact .estimate-form p,.contact .estimate-success p{color:var(--muted);max-width:none}
.estimate-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px;margin:24px 0}
.estimate-wide{grid-column:1/-1}
.estimate-fields>div{min-width:0}
.estimate-fields label{display:block;font-weight:600;line-height:1.5;margin-bottom:7px}
.estimate-fields label span{font-size:.875rem;font-weight:400;color:var(--muted)}
.estimate-fields input,.estimate-fields select,.estimate-fields textarea{display:block;width:100%;min-width:0;border:1px solid #82958a;border-radius:2px;padding:11px 12px;background:#fff;color:var(--ink);font-size:1rem;min-height:48px}
.estimate-fields textarea{resize:vertical}
.estimate-fields input[type=file]{padding:10px;font-size:.875rem}
.estimate-fields input[type=file]::file-selector-button{font:600 .875rem/1.5 "DM Sans",Arial,sans-serif;padding:7px 10px;margin:0 10px 0 0;border:1px solid #82958a;background:#e9eee7;color:var(--forest);cursor:pointer}
.contact .estimate-form .estimate-help,.estimate-help{font-size:.8125rem;line-height:1.6;margin:7px 0 0;overflow-wrap:anywhere}
.contact .estimate-form .estimate-privacy{font-size:.8125rem;line-height:1.6;margin-bottom:20px}
.estimate-form .button{width:100%}
.estimate-form button:disabled{opacity:.65;cursor:wait}
#estimate-status:empty{display:none}
.contact .estimate-form #estimate-status{font-size:.9375rem;margin:16px 0 0;font-weight:600}
.estimate-success .button{margin-top:22px}
.estimate-success h3:focus{outline:0}
.estimate-receipt{max-width:680px;padding:80px 0}
.estimate-receipt h1{font-size:clamp(2rem,5vw,3rem);line-height:1.2}
.owner-header{background:var(--forest);color:#fff}
.owner-header-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:104px}
.owner-header nav{display:flex;gap:22px;font-size:.9375rem;font-weight:600}
.owner-header a:hover{color:var(--gold)}
.owner-main{max-width:1000px;padding:50px 0 70px}
.owner-heading{display:flex;align-items:start;justify-content:space-between;gap:24px;margin-bottom:28px}
.owner-heading h1{font-size:clamp(2rem,4vw,3rem);line-height:1.2;margin:0 0 14px}
.owner-heading p:not(.eyebrow){color:var(--muted);margin:0;max-width:580px}
.owner-heading .button{margin:0;flex-shrink:0}
.inbox-signin{padding:30px;border:1px solid var(--line);background:#fff;max-width:650px}
.inbox-signin h2{font-size:1.5rem;line-height:1.3;margin-bottom:14px}
.inbox-signin p{color:var(--muted)}
.inbox-signin p:last-child{margin-bottom:0}
.estimate-card{background:#fff;border:1px solid var(--line);padding:28px;margin:22px 0;overflow-wrap:anywhere}
.estimate-card-heading{display:flex;align-items:start;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding-bottom:18px;margin-bottom:18px}
.estimate-card-heading h2{font-size:1.4rem;line-height:1.3;margin:0 0 5px}
.estimate-card-heading p,.estimate-card-heading time{color:var(--muted);font-size:.9375rem;margin:0}
.estimate-card-heading time{flex-shrink:0}
.estimate-details{margin:0}
.estimate-details>div{display:grid;grid-template-columns:130px 1fr;gap:16px;margin-bottom:12px}
.estimate-details dt{font-weight:600;color:var(--muted);font-size:.9375rem}
.estimate-details dd{margin:0;white-space:pre-wrap}
.estimate-details a{text-decoration:underline;text-underline-offset:3px}
.estimate-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:22px 0}
.estimate-photo-grid a{min-width:0}
.estimate-photo-grid img{width:100%;height:160px;object-fit:cover;background:#e9eee7}
.estimate-photo-grid span{display:block;font-size:.8125rem;color:var(--muted);margin-top:6px}
.estimate-card-controls{display:flex;align-items:center;gap:20px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:18px;margin-top:22px;font-size:.9375rem}
.estimate-card-controls label{font-weight:600;display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.estimate-card-controls select{border:1px solid #82958a;background:#fff;color:var(--ink);padding:8px 12px;min-height:44px}
.estimate-card-controls>span{color:var(--muted)}
@media(max-width:900px){.contact-grid{gap:5%}.estimate-form,.estimate-success{padding:24px}.estimate-fields{grid-template-columns:1fr}.estimate-wide{grid-column:auto}}
@media(max-width:720px){.contact-grid{gap:32px}.estimate-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.estimate-wide{grid-column:1/-1}.owner-header-inner{min-height:90px}.owner-header nav{gap:16px}.owner-main{padding-top:36px}.owner-heading{flex-direction:column}.estimate-card-heading{flex-direction:column;gap:8px}.estimate-card{padding:22px}.estimate-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.estimate-form,.estimate-success{padding:22px}.estimate-fields{grid-template-columns:1fr}.estimate-wide{grid-column:auto}.estimate-details>div{grid-template-columns:1fr;gap:2px}.estimate-photo-grid img{height:130px}.owner-header nav{flex-direction:column;gap:8px;font-size:.875rem}}
/* Consistent readable branding, compact media, and direct estimate actions. */
:focus-visible{outline:3px solid #48785a;outline-offset:4px}
summary{cursor:pointer}summary:focus-visible,select:focus-visible{outline:3px solid #48785a;outline-offset:4px}
.brand{gap:12px;min-width:0}.brand .site-logo,.footer-brand .site-logo{width:78px;height:78px;object-fit:contain;object-position:center;flex:none}
.brand-name{font:800 1.125rem/1.3 Manrope,Arial,sans-serif;letter-spacing:-.025em;color:#fff;white-space:nowrap}.brand-name span{display:block;font-size:.875rem;letter-spacing:.035em;color:#e5eade;font-weight:600}
.header-inner{min-height:100px;gap:22px}.desktop-nav{gap:20px}.footer-main{grid-template-columns:1.2fr 1fr 1fr}.footer-brand{align-self:start}.footer-bottom{flex-wrap:wrap}.owner-login{margin-left:auto;min-height:44px;display:inline-flex;align-items:center;text-decoration:underline;text-underline-offset:3px}
.hero-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center 55%;background:none}.hero h1{font-size:clamp(2.8rem,4.8vw,4.3rem)}.hero-copy{max-width:830px}.hero-copy>p:not(.eyebrow){max-width:610px}
.eyebrow{font-size:.875rem;letter-spacing:.1em}.services{background:#fff}.projects-section{padding-top:70px;padding-bottom:70px}.projects-section h2{font-size:clamp(2.3rem,3.9vw,3.6rem);line-height:1.15;margin-bottom:18px}.project-feature{display:grid;grid-template-columns:minmax(240px,400px) minmax(0,1fr);gap:36px;align-items:center;margin:30px 0 34px;padding:22px;background:#e9eee7;border:1px solid var(--line)}.project-feature .video-preview{height:200px}.project-feature h3{font-size:1.55rem;line-height:1.3;margin-bottom:10px}.project-feature p:not(.eyebrow){color:var(--muted);margin-bottom:10px}.project-feature .eyebrow{margin-bottom:14px}.project-photos img{height:150px}.project-photos a{display:block}.project-photos a:hover img{filter:brightness(.94)}
.service-card img,.video-preview{height:200px}.service-card-actions{margin-top:20px;border-top:1px solid var(--line);padding-top:8px;display:flex;align-items:start;flex-direction:column;gap:4px}.service-card-actions .inline-link{margin-top:0}.service-estimate{display:inline-flex;align-items:center;min-height:44px;font-size:.9375rem;font-weight:600;text-decoration:underline;text-underline-offset:4px}.service-estimate:hover{color:#3f6c4f}
.estimate-steps{list-style:none;margin:26px 0;padding:0;display:grid;gap:18px}.estimate-steps li{display:flex;gap:16px}.estimate-steps li>span{font:700 1rem/1.5 Manrope,Arial,sans-serif;color:var(--gold);padding-top:2px}.estimate-steps strong{font-size:1.0625rem}.contact .estimate-steps p{font-size:.9375rem;margin:3px 0 0;color:#d4e0d5}.contact .estimate-form .estimate-help,.estimate-help,.contact .estimate-form .estimate-privacy,.estimate-photo-grid span{font-size:.875rem}.estimate-privacy a{text-decoration:underline;text-underline-offset:3px}.estimate-form:focus{outline:0}
.field-error,.contact .estimate-form .field-error{font-size:.875rem;color:#a32821;font-weight:600;margin:7px 0 0;line-height:1.5}input[aria-invalid=true],select[aria-invalid=true],textarea[aria-invalid=true]{border-color:#a32821!important;border-width:2px!important}
.upload-previews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.upload-previews:empty{display:none}.upload-previews figure{margin:0;border:1px solid var(--line);padding:8px;min-width:0}.upload-previews img{width:100%;height:90px;object-fit:cover}.upload-previews figcaption{overflow-wrap:anywhere;font-size:.875rem;line-height:1.45;margin:8px 0}.upload-previews button{border:1px solid #82958a;background:#fff;color:var(--forest);width:100%;min-height:44px;font-weight:600;font-size:.875rem}
.testimonials-layout{grid-template-columns:1.1fr 1fr}.review-actions{gap:16px;align-items:center}.review-source-note{font-size:.875rem;color:var(--muted);max-width:500px;margin:0}.review-write{border:1px solid var(--line);background:#fff}.review-write>summary{font:700 1.0625rem/1.5 Manrope,Arial,sans-serif;padding:20px 24px;min-height:64px}.review-write[open]>summary{border-bottom:1px solid var(--line)}.review-write .testimonial-form{border:0}.testimonial-form fieldset label{min-height:44px}.review-report{margin-top:14px;color:var(--muted)}.review-report summary{font-size:.875rem;min-height:44px;display:list-item;list-style-position:inside;padding-top:10px}.review-report form{display:flex;gap:10px;flex-wrap:wrap;padding-top:8px}.review-report select{max-width:100%;min-height:44px;border:1px solid #82958a;padding:8px;color:var(--ink);background:#fff}.report-button{min-height:44px;border:1px solid #82958a;color:var(--forest);background:#fff;padding:8px 14px;font-weight:600}.review-report form p{width:100%;font-size:.875rem;margin:0}.testimonial-form p a{text-decoration:underline}
.faq summary,.service-questions summary{min-height:44px;padding:10px 12px 10px 0}.footer-links a{min-height:44px;padding:8px 0;display:inline-flex;align-items:center}.footer-links{gap:0 24px}.topline a{display:inline-flex;align-items:center;min-height:38px}
.mobile-action-bar{display:none}.modal-open{overflow:hidden}.photo-dialog{width:min(1000px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;padding:20px;background:var(--cream);border:1px solid var(--line);border-radius:4px}.photo-dialog:not([open]){display:none}.photo-dialog::backdrop{background:#071910df}.photo-dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}.photo-dialog-heading p{margin:0;font-weight:700}.photo-dialog>img{width:100%;height:min(56dvh,560px);object-fit:contain;background:var(--deep)}#photo-caption{margin:16px 0 0;font-size:1rem}.photo-viewer-controls{display:flex;gap:16px;align-items:center;justify-content:space-between;margin-top:16px;flex-wrap:wrap}.photo-viewer-controls .button{min-height:44px;margin:0}.photo-viewer-controls .inline-link{font-size:.875rem;margin:0}
.back-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px;margin-bottom:28px;font-weight:600}.service-page-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center}.service-page h1,.information-page h1,.missing-page h1{font-size:clamp(2.4rem,4.8vw,4rem);line-height:1.15;margin-bottom:24px}.page-lead{font-size:1.125rem;color:var(--muted)}.service-page-intro figure{margin:0;min-width:0}.service-page-image,.service-page .video-preview{width:100%;height:220px;object-fit:cover;object-position:center 65%}.service-page-intro figcaption{font-size:.875rem;color:var(--muted);padding-top:10px}.service-page-details{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin:60px 0}.service-page h2,.prose h2{font-size:1.75rem;line-height:1.3;letter-spacing:-.035em;margin-bottom:18px}.service-page-details p{color:var(--muted)}.service-checklist{padding-left:22px;margin:24px 0}.service-checklist li{padding:5px 0}.service-checklist li::marker{color:#486b56}.service-questions details{border-top:1px solid var(--line);padding:8px 0 16px}.service-questions details:last-child{border-bottom:1px solid var(--line)}.service-questions summary{font-weight:700}.service-questions p{margin-top:12px}.service-area-note{background:#e9eee7;border-left:3px solid var(--gold);padding:30px;max-width:900px}.service-area-note p{color:var(--muted)}.page-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.page-actions .button,.page-actions .inline-link{margin:0}.prose{max-width:800px}.prose h2{margin-top:36px}.prose p{color:var(--muted)}.prose p a{text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.notice-date{font-size:.875rem}.missing-page{min-height:420px}.fallback-nav{display:flex;gap:18px;flex-wrap:wrap;padding:14px 18px;background:var(--forest);color:white}.fallback-nav a{min-height:44px;display:inline-flex;align-items:center;text-decoration:underline}
.owner-tabs{display:flex;gap:12px;margin:16px 0 24px}.owner-tabs button{border:1px solid var(--forest);background:#fff;color:var(--forest);font-weight:700;min-height:48px;padding:10px 18px}.owner-tabs button[aria-pressed=true]{background:var(--forest);color:#fff}.inbox-filters{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:18px 0 28px}.inbox-filters>div:first-child{flex:1;min-width:min(260px,100%)}.inbox-filters label,#review-tools label{display:block;font-weight:600;margin-bottom:7px}.inbox-filters input,.inbox-filters select,#owner-review-filter{padding:10px 12px;min-height:48px;border:1px solid #82958a;background:#fff;color:var(--ink);max-width:100%}.inbox-filters input{width:100%}.inbox-filters .button,.inbox-filters .inline-link{margin:0}.inbox-counts{font-weight:700}.owner-delete{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.owner-delete summary{min-height:44px;color:#a32821;font-weight:600}.owner-delete p{font-size:.9375rem;color:var(--muted)}.owner-delete .button{margin:0 12px 8px 0;min-height:44px;font-size:.875rem}.danger-button{background:#a32821;color:#fff}.secondary-button{background:#e9eee7;color:var(--forest);border:1px solid #82958a}button:disabled{cursor:wait;opacity:.65}
@media(max-width:1100px){.desktop-nav{gap:14px}.header-inner{gap:16px}.brand-name{font-size:1rem}.brand .site-logo{width:68px;height:68px}.header-cta{padding:11px 12px}}
@media(max-width:980px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;margin-left:auto;background:transparent;border:1px solid #66816b;padding:14px}.menu-toggle span{width:23px;height:2px;background:#fff;display:block}.mobile-menu:not([hidden]){display:flex;flex-direction:column;background:#193629;padding:0 32px 18px}.mobile-menu a{padding:12px 0;border-bottom:1px solid #476453;font-weight:600}.footer-main{grid-template-columns:1fr 1fr}.footer-main p{grid-column:1/-1;grid-row:2}.footer-links{grid-column:2;grid-row:1}}
@media(max-width:720px){.contact-grid{gap:32px}html{scroll-padding-top:98px}body:not(.owner-page){padding-bottom:calc(64px + env(safe-area-inset-bottom))}.header-inner{min-height:88px}.brand .site-logo,.footer-brand .site-logo{width:64px;height:64px}.brand-name{font-size:1rem}.brand-name span{font-size:.875rem;letter-spacing:0}.brand{gap:9px}.hero h1{font-size:clamp(2.3rem,7.5vw,3.5rem)}.hero-photo{object-position:60% center}.hero-inner{min-height:480px}.eyebrow{font-size:.875rem;letter-spacing:.06em}.projects-section{padding:54px 0}.project-feature{grid-template-columns:1fr;gap:22px;padding:18px}.project-feature .video-preview{height:190px}.project-photos img{height:150px}.service-card img,.video-preview{height:190px}.testimonials-layout,.service-page-intro,.service-page-details{grid-template-columns:1fr;gap:30px}.service-page-details{margin:40px 0}.service-page .service-page-image,.service-page .video-preview{height:200px}.service-area-note{padding:24px}.mobile-action-bar{display:grid;grid-template-columns:1fr 1.5fr;position:fixed;bottom:0;left:0;right:0;z-index:9;background:var(--forest);border-top:1px solid #365041;box-shadow:0 -4px 12px #0d1d161a;padding:8px 18px calc(8px + env(safe-area-inset-bottom));gap:10px}.mobile-action-bar a{display:flex;align-items:center;justify-content:center;min-height:48px;font-weight:700;font-size:.9375rem;color:#fff;border:1px solid #82958a}.mobile-action-bar a:last-child{background:var(--gold);color:var(--forest);border-color:var(--gold)}.footer-bottom{font-size:.875rem}.owner-login{margin-left:0}.footer-links{font-size:.9375rem}.photo-dialog{padding:16px}.photo-viewer-controls{gap:10px}.photo-viewer-controls .button{padding:10px 14px}.photo-viewer-controls .inline-link{order:3;width:100%;justify-content:center}.inbox-filters{align-items:stretch}.inbox-filters>div{width:100%}.inbox-filters select{width:100%}.owner-tabs{flex-wrap:wrap}.owner-main{padding-bottom:50px}.estimate-photo-grid span{font-size:.875rem}}
@media(max-width:540px){.footer-main{grid-template-columns:1fr}.footer-main p,.footer-links{grid-column:1;grid-row:auto}.project-photos img{height:clamp(105px,30vw,150px)}.upload-previews{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-previews img{height:90px}.hero .eyebrow{font-size:.8125rem}.hero-copy{padding:42px 0}.service-page h1,.information-page h1,.missing-page h1{font-size:2.35rem}.hero-actions .button{width:100%}.brand-name{white-space:normal}.menu-toggle{flex:none}.topline-divider{padding:0 6px}.footer-bottom{gap:8px}}
@media(max-width:360px){.brand .site-logo{width:54px;height:54px}.brand-name{font-size:.9375rem}.brand-name span{font-size:.8125rem}.header-inner{gap:10px}.menu-toggle{padding:12px}.mobile-action-bar{padding-left:10px;padding-right:10px}.mobile-action-bar a{font-size:.875rem}}

/* Frame the actual trimming work in the compact photo previews. */
.service-card img.photo-shrubs,.service-page-image.photo-shrubs,.project-photos img.photo-shrubs{object-position:center 40%}
.project-photos img.photo-shrubs-before{object-position:center 65%}
.project-photos img.photo-pond{object-position:center 62%}
.service-page-image.photo-mowing{object-position:center 70%}
.service-photo-link{display:block}
.service-photo-link:hover img{filter:brightness(.94)}
.service-projects{margin:0 0 60px;padding-top:30px;border-top:1px solid var(--line)}
@media(max-width:720px){.service-projects{margin-bottom:40px}}

/* Compact homepage highlights and the full project gallery. */
.project-preview-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}
.project-preview-heading h2{margin-bottom:0}
.project-preview-heading .eyebrow{margin-bottom:14px}
.project-preview-heading .inline-link{flex:none;margin:0;min-height:44px}
.featured-projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.featured-project{display:block;min-width:0;background:#fff;border:1px solid var(--line);overflow:hidden}
.featured-project img{display:block;width:100%;height:170px;object-fit:cover;object-position:center 65%}
.featured-project img.photo-pond{object-position:center 62%}
.featured-project-copy{padding:18px 20px}
.featured-project h3{font-size:1.125rem;line-height:1.4;margin:0 0 7px}
.featured-project-copy>span{display:block;font-size:.875rem;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.featured-project:hover{border-color:#6c8977}
.featured-project:hover img{filter:brightness(.94)}
.gallery-intro{max-width:820px}
.gallery-page h1{font-size:clamp(2.4rem,4.8vw,4rem);line-height:1.15;margin-bottom:20px}
.gallery-page h2{font-size:clamp(1.7rem,3vw,2.1rem);line-height:1.25;margin:0 0 14px}
.gallery-jump-links{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 40px}
.gallery-jump-links a{display:inline-flex;align-items:center;min-height:44px;padding:9px 16px;border:1px solid #82958a;color:var(--forest);font-weight:600;background:#fff}
.gallery-jump-links a:hover{background:#e9eee7}
.gallery-category{margin-top:48px;padding-top:36px;border-top:1px solid var(--line)}
.gallery-category-heading{max-width:800px;margin-bottom:26px}
.gallery-category-heading p{color:var(--muted);margin:0}
.gallery-page .project-photos{max-width:none}
.gallery-page .project-photos img{display:block}
.gallery-mowing .project-photos{max-width:920px}
.gallery-mowing .project-photos img{height:190px}
.project-photos img.photo-mowing{object-position:center 70%}
.gallery-page .project-feature{margin:0}
.gallery-contact{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:54px;padding:30px;background:#e9eee7;border-left:3px solid var(--gold)}
.gallery-contact p{margin:0;color:var(--muted)}
.gallery-contact .button{flex:none;margin:0}
.desktop-nav a[aria-current="page"],.mobile-menu a[aria-current="page"]{color:var(--gold)}
@media(max-width:900px){.featured-projects{gap:16px}.featured-project-copy{padding:16px}.featured-project h3{font-size:1rem}}
@media(max-width:720px){.project-preview-heading{align-items:start;flex-direction:column;gap:12px}.featured-projects{grid-template-columns:1fr;gap:18px}.featured-project img{height:140px}.featured-project-copy{padding:14px 18px}.gallery-category{margin-top:36px;padding-top:28px}.gallery-contact{align-items:start;flex-direction:column;gap:20px;padding:24px}.gallery-mowing .project-photos img{height:clamp(115px,34vw,170px)}.gallery-jump-links{gap:10px}.gallery-jump-links a{padding:9px 12px}}

/* Reviews have their own page; the homepage shows the latest three. */
.reviews-intro{max-width:830px}
.reviews-page h1{font-size:clamp(2.4rem,4.8vw,4rem);line-height:1.15;margin-bottom:20px}
.reviews-page .review-actions,.review-preview .review-actions{flex-wrap:wrap;margin:26px 0 16px}
.reviews-page .review-actions .button,.review-preview .review-actions .button{margin:0}
.reviews-page>.wrap>.review-source-note{max-width:760px;margin-bottom:32px}
.reviews-page .testimonials-layout{align-items:start}
.review-list-title{font-size:1.75rem;line-height:1.3;margin:0 0 20px}
.review-preview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.review-preview-grid .testimonial-card{margin:0;min-width:0;overflow-wrap:anywhere}
.review-preview-grid .testimonial-empty,.review-preview-grid>p,.review-preview-grid>button{grid-column:1/-1}
.review-preview-grid .testimonial-empty{padding:24px}
.review-read-more{display:inline-flex;align-items:center;min-height:44px;font-weight:600;font-size:.875rem;text-decoration:underline;text-underline-offset:3px}
.testimonial-card time{display:block}
.review-contact-note{margin:32px 0 0;color:var(--muted)}
.review-contact-note a{text-decoration:underline;text-underline-offset:3px}
#testimonial-load-status{color:#a32821;font-size:.9375rem}
@media(max-width:900px){.review-preview-grid{grid-template-columns:1fr}}
@media(max-width:540px){.reviews-page h1{font-size:2.35rem}.reviews-page .review-actions{align-items:stretch;flex-direction:column}.reviews-page .review-actions .button{width:100%}}
