/* Approved AJS badge palette. Native type, real work, no external assets. */
:root {
  --green:#063d22; --olive:#08783e; --sage:#eff8ed; --cream:#ffffff;
  --gold:#ffda00; --ink:#123624; --line:#d6e5d8; --muted:#4d6255;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:24px}
body{margin:0;background:#fff;color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-underline-offset:5px}
button,input,select,textarea{font:inherit}
button,a{touch-action:manipulation}
button{cursor:pointer}
:focus-visible{outline:3px solid #08783e;outline-offset:5px}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:Arial,Helvetica,sans-serif;font-weight:800;letter-spacing:-.045em;line-height:1.06}
h1{font-size:clamp(48px,5.4vw,76px);margin-bottom:25px}
h2{font-size:clamp(34px,3.5vw,49px);margin-bottom:22px}
h3{font-size:25px;line-height:1.18;letter-spacing:-.025em}
h1 em,h2 em{font-style:normal;color:var(--olive)}
p{margin-bottom:20px}
figure{margin:0}
.wrap{width:min(1280px,calc(100% - 88px));margin:auto}
.section{padding:72px 0}
.eyebrow,.tag{font-size:11px;font-weight:800;letter-spacing:.1em}
.eyebrow{color:var(--olive);margin-bottom:20px}
.notice{background:var(--green);color:#fff;padding:8px 24px;text-align:center;font-size:12px;font-weight:600}
.notice a{color:var(--gold);margin-left:20px}
.header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:10px max(32px,calc((100vw - 1320px)/2));border-bottom:1px solid var(--line);background:white}
.brand{display:flex;align-items:center;text-decoration:none;gap:12px;flex-shrink:0}
.brand img{width:112px;height:96px;object-fit:contain}
.brand span{font-size:30px;font-weight:900;line-height:1.05}
.brand strong{display:block;font-size:12px;line-height:1.4;max-width:145px;margin-top:6px}
nav{display:flex;align-items:center;gap:22px}
nav>a{font-size:12px;font-weight:700;text-decoration:none;position:relative;white-space:nowrap;padding:10px 0}
nav>a:not(.button):hover,nav>a[aria-current=page]:not(.button){color:var(--olive)}
nav>a[aria-current=page]:not(.button)::after{content:"";position:absolute;height:3px;bottom:2px;left:0;right:0;background:var(--gold)}
.button{display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:16px 23px;border:2px solid var(--green);background:var(--green);color:#fff;border-radius:4px;text-decoration:none;font-weight:800;font-size:14px;line-height:1.35;min-height:48px}
.button:hover{background:var(--olive);border-color:var(--olive)}
.button.gold,.header .button{background:var(--gold);color:var(--green);border-color:var(--gold)}
.button.gold:hover,.header .button:hover{background:#f4cc00;border-color:#f4cc00}
.button.small{font-size:12px;padding:13px 16px}
.text-link{font-weight:800;font-size:14px}
.actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.menu-toggle{display:none}
.skip{position:absolute;top:-100px;padding:12px;background:white;z-index:100}
.skip:focus{top:0}
.hero-band{background:var(--green);color:white;overflow:hidden}
.hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;align-items:center;padding-top:48px;padding-bottom:48px}
.hero .eyebrow{color:var(--gold);font-size:11px}
.hero h1{font-size:clamp(48px,5.1vw,70px);line-height:1.03;letter-spacing:-.055em}
.hero h1 em{color:var(--gold)}
.intro{max-width:530px;font-size:17px}
.hero .intro{color:#e1eee4;max-width:440px}
.hero .button{background:var(--gold);color:var(--green);border-color:var(--gold)}
.hero .button:hover{background:#f4cc00;border-color:#f4cc00}
.hero .text-link{color:white}
.hero :focus-visible,.proof :focus-visible,footer :focus-visible,.home-proof :focus-visible{outline-color:var(--gold)}
.hero-note{display:flex;gap:14px;align-items:center;margin-top:28px;font-size:13px;color:#d9ebde}
.hero-note strong{color:#fff}
.hero-note p{margin:0}
.sun{font-size:43px;color:var(--gold);line-height:1}
.hero-main{position:relative}
.hero-main img{width:100%;height:400px;object-fit:cover;border-radius:5px}
.hero-main figcaption{position:absolute;bottom:14px;left:14px;right:14px;background:#fff;color:var(--green);padding:12px 15px;display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:10px;letter-spacing:.06em;font-weight:800;border-left:5px solid var(--gold)}
.hero-main figcaption span{font-weight:500;letter-spacing:0;font-size:11px}
.photo-strip{display:grid;grid-template-columns:1fr 1fr .72fr;gap:10px;margin-top:10px}
.photo-strip img{height:112px;width:100%;object-fit:cover;border-radius:3px}
.photo-strip span{background:var(--gold);color:var(--green);border-radius:3px;padding:15px 17px;font:800 26px/1.02 Arial,Helvetica,sans-serif;letter-spacing:-.045em}
.photo-strip em{font-style:normal}
.trust-strip{display:flex;justify-content:center;gap:44px;flex-wrap:wrap;background:var(--gold);color:var(--green);padding:18px 24px;font-size:12px;font-weight:800}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:34px}
.section-head>p{max-width:340px;color:var(--muted);font-size:15px;margin-bottom:5px}
.section-head h2{margin-bottom:0}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.service-card{background:#fff;border:1px solid var(--line);border-bottom:5px solid var(--olive);border-radius:5px;overflow:hidden;display:flex;flex-direction:column}
.service-card:first-child{border-bottom-color:var(--gold)}
.service-card>img{width:100%;height:225px;object-fit:cover}
.service-card>div{padding:25px;display:flex;flex-direction:column;flex:1}
.tag{display:block;color:var(--olive);font-size:9px;margin-bottom:12px}
.service-card h3{margin-bottom:16px}
.service-card p,.service-card li{font-size:14px}
.service-card .text-link{margin-top:auto;color:var(--olive)}
.service-card ul{padding-left:18px;margin:22px 0}
.service-card li{margin:6px 0}
.proof{background:var(--green);color:#fff}
.proof .eyebrow,.proof h1 em,.proof h2 em{color:var(--gold)}
.proof .section-head>p{color:#d8eadd}
.work-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:24px}
.project{border-radius:5px;overflow:hidden;background:#fff;color:var(--green);text-decoration:none;display:grid;grid-template-columns:42% 58%}
.project img{height:100%;width:100%;object-fit:cover}
.project>div{padding:24px}
.project h3{font-weight:800;font-size:27px}
.project p{font-size:13px;margin-bottom:0}
.project.feature{grid-row:span 2;display:block}
.project.feature img{height:340px}
.project:hover h3{text-decoration:underline;text-decoration-color:var(--olive);text-underline-offset:4px}
.about{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.about h1,.contact h1{font-size:clamp(45px,4.2vw,62px)}
.about-photo{position:relative}
.about-photo img{width:100%;height:420px;object-fit:cover;border-radius:5px}
.stamp{position:absolute;bottom:-18px;right:-20px;background:var(--gold);border:5px solid white;border-radius:50%;width:145px;height:145px;display:grid;place-content:center;text-align:center;font-size:12px;font-weight:800;transform:rotate(-8deg)}
.reviews{background:var(--sage)}
.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
blockquote{margin:10px 0 0;border-top:4px solid var(--olive);padding:24px 0 0}
blockquote p{font-size:21px;font-weight:600;line-height:1.5;letter-spacing:-.02em}
cite{font-style:normal;font-size:11px}
.review-source{font-size:12px;margin-top:28px;margin-bottom:0}
.extras{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.extras img{height:330px;object-fit:cover;width:100%;object-position:center 68%;border-radius:5px}
.area-band{background:var(--gold);padding:50px 0}
.area-band>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:72px}
.area-band .eyebrow{color:var(--green)}
.area-band h2{font-size:42px;margin-bottom:0}
.contact{display:grid;grid-template-columns:1fr 1fr;gap:72px}
.phone{font-size:36px;font-weight:800;letter-spacing:-.03em;display:block;text-decoration:none;margin:24px 0 16px}
.contact .gold{margin-bottom:18px}
.muted{font-size:12px;color:var(--muted)}
form{padding:30px;background:var(--sage);border:1px solid var(--line);border-top:5px solid var(--olive);border-radius:5px}
label{font-size:12px;font-weight:800;display:block;margin-bottom:6px}
input,textarea,select{width:100%;border:1px solid #849c89;border-radius:3px;padding:11px 12px;background:white;color:var(--green);margin-bottom:16px;min-width:0}
.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.honeypot{display:none}
form .button{width:100%;margin-bottom:14px}
form p{margin:0}
#form-status:not(:empty){margin-top:12px;padding:12px;background:white;border-left:4px solid var(--olive)}
footer{background:var(--green);color:white;padding:45px 0 24px;font-size:12px}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}
footer strong{font-size:20px}
footer a{display:block;margin-bottom:10px}
footer a:hover{color:var(--gold)}
footer p{margin-top:14px;color:#ccdfd2}
.footer-bottom{margin-top:20px;border-top:1px solid #497159;padding-top:18px;color:#ccdfd2}
.mobile-contact{display:none}
.subhero{padding:48px 0 35px;display:grid;grid-template-columns:1fr 1fr;column-gap:70px;align-items:start}
.subhero .eyebrow{grid-column:1/-1}
.subhero h1{grid-column:1;grid-row:2/4;font-size:clamp(44px,4.8vw,66px);max-width:600px;margin-bottom:0}
.subhero .intro,.subhero .actions{grid-column:2}
.subpage-photo{width:100%;height:420px;object-fit:cover;border-radius:5px}
.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}
.detail-grid article{background:var(--sage);padding:28px;border-radius:4px;border-top:4px solid var(--olive)}
.detail-grid article:first-child{border-top-color:var(--gold)}
.detail-grid article p:last-child{margin-bottom:0}
details{border-bottom:1px solid var(--line);padding:20px 0}
summary{cursor:pointer;font-weight:800}
details p{margin:14px 0 0;max-width:850px}
.simple-cta{padding:36px;background:var(--sage);border-left:6px solid var(--gold);border-radius:4px;margin:44px 0}
.simple-cta h2{font-size:35px}
.wrap.simple-cta{margin:44px auto}
.home-proof{background:var(--olive);color:white;padding:44px 0;border-bottom:1px solid #398455}
.home-proof>.wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}
.home-proof .eyebrow{color:var(--gold)}
.home-proof h2{font-size:40px}
.home-proof p{margin-bottom:0}
@media(max-width:1150px){
  .header{padding:10px 24px;gap:16px}
  .brand img{width:98px;height:85px}
  .brand span{font-size:27px}
  .brand strong{font-size:10px;max-width:123px}
  nav{gap:15px}nav>a{font-size:11px}.button.small{padding:12px}
  .wrap{width:calc(100% - 56px)}
  .hero{gap:30px}.hero-main img{height:360px}
  .trust-strip{gap:24px}
  .about,.contact,.extras,.area-band>.wrap{gap:40px}
  .subhero{column-gap:40px}
  .service-card>div{padding:22px}
}
@media(max-width:1200px){
  .brand img{width:104px;height:89px}
  .brand strong{font-size:12px;max-width:145px}
  .header{flex-wrap:wrap;gap:8px}
  .menu-toggle{display:block;background:white;border:2px solid var(--green);padding:10px 14px;border-radius:4px;font-size:12px;font-weight:800;min-height:44px}
  nav{display:none;width:100%;padding:10px 0 14px;flex-direction:column;align-items:stretch;gap:2px}
  nav.open{display:flex}nav>a{font-size:14px;padding:12px}nav>a[aria-current=page]:not(.button)::after{display:none}
  nav>a[aria-current=page]:not(.button){background:var(--sage);border-left:4px solid var(--olive)}
  nav .button.small{font-size:14px}
  .hero{gap:24px}.hero h1{font-size:48px}.hero .eyebrow{font-size:9px}
  .hero-main img{height:340px}
  .photo-strip{grid-template-columns:1fr 1fr}.photo-strip span{display:none}
  .intro{font-size:16px}.hero-note{font-size:12px}
  .service-grid{gap:16px}.service-card>div{padding:18px}.service-card h3{font-size:22px}
  .work-grid{grid-template-columns:1fr 1fr}.project:not(.feature){display:block}.project:not(.feature) img{height:165px}.project.feature img{height:410px}
}
@media(max-width:700px){
  html{scroll-padding-top:16px}
  .notice{font-size:10px;padding:8px 10px}.notice a{display:inline-block;margin-left:9px}
  .header{padding:8px 20px}.brand{gap:8px}.brand img{width:96px;height:82px}.brand span{font-size:25px}.brand strong{font-size:10px;max-width:120px}
  .menu-toggle{padding:10px}
  .wrap{width:calc(100% - 40px)}
  .hero{display:flex;flex-direction:column;align-items:stretch;padding:32px 0}
  .hero h1{font-size:clamp(43px,10.5vw,62px);max-width:550px}
  .hero .eyebrow{font-size:9px;margin-bottom:20px}
  .hero .intro{font-size:16px;max-width:520px}
  .hero .actions{gap:18px}.hero .button{padding:15px 18px}
  .hero-note{margin-top:24px;font-size:12px}
  .hero-main img{height:270px}
  .hero-main figcaption{left:10px;right:10px;bottom:10px;padding:10px;font-size:8px}
  .hero-main figcaption span{font-size:10px}
  .photo-strip{grid-template-columns:1fr 1fr .72fr;gap:8px;margin-top:8px}
  .photo-strip img{height:94px}
  .photo-strip span{display:block;font-size:22px;padding:12px}
  .trust-strip{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:10px;padding:18px 20px}
  .section{padding:46px 0}
  .section-head{display:block;margin-bottom:25px}.section-head>p{margin-top:20px;max-width:none}
  .service-grid,.work-grid,.review-grid,.about,.extras,.contact,.area-band>.wrap,.detail-grid{grid-template-columns:1fr;gap:24px}
  .service-card>img{height:230px}.service-card>div{padding:24px}.service-card h3{font-size:26px}.service-card p,.service-card li{font-size:15px}
  .project.feature{grid-row:auto}.project.feature img{height:250px}.project:not(.feature){display:grid;grid-template-columns:40% 60%}.project:not(.feature) img{height:100%}
  .project>div{padding:20px}.project h3{font-size:24px}
  .about-photo{margin-bottom:20px}.about-photo img{height:300px}.stamp{right:10px;width:120px;height:120px;font-size:10px}
  .extras img{height:280px}.area-band{padding:36px 0}.area-band h2{font-size:36px}
  .about h1,.contact h1,.proof h1{font-size:46px}
  .phone{font-size:32px}form{padding:22px}.form-pair{grid-template-columns:1fr;gap:0}
  .footer-grid{grid-template-columns:1fr 1fr;gap:20px}.footer-grid>div:first-child{grid-column:span 2}
  footer{padding-bottom:90px}
  .mobile-contact{position:fixed;bottom:0;left:0;right:0;display:grid;grid-template-columns:1fr 1fr 1fr;z-index:20;background:var(--green);color:white;border-top:2px solid var(--gold);padding-bottom:env(safe-area-inset-bottom)}
  .mobile-contact a{text-align:center;padding:14px 4px;font-size:12px;font-weight:800;text-decoration:none}
  .mobile-contact a:last-child{background:var(--gold);color:var(--green)}
  .subhero{display:block;padding:35px 0 28px}.subhero h1{font-size:45px;margin-bottom:22px}.subhero .eyebrow{font-size:9px}.subhero .intro{max-width:none}
  .subpage-photo{height:260px}.simple-cta{padding:24px}.simple-cta h2{font-size:31px}.simple-cta .text-link{display:inline-block;margin-top:15px}
  .actions{gap:16px}.eyebrow{font-size:10px}
  .home-proof>.wrap{display:block}.home-proof .button{margin-top:24px}.home-proof h2{font-size:33px}
}
@media(max-width:370px){
  .header{padding:8px 16px}.brand span{display:none}
  .hero h1{font-size:41px}.photo-strip{grid-template-columns:1fr 1fr}.photo-strip span{display:none}
  .trust-strip{font-size:9px}.about h1,.contact h1,.proof h1,.subhero h1{font-size:39px}
}
/* The homepage gives care, projects and clearance equal visual weight. */
.allround-hero{display:block;padding-top:38px;padding-bottom:42px}
.allround-intro{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;margin-bottom:32px}
.allround-hero h1{font-size:clamp(46px,4.6vw,64px);margin-bottom:0}
.allround-hero .intro{max-width:580px;font-size:16px;margin-bottom:20px}
.garden-showcase{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;scroll-margin-top:24px}
.showcase-card{display:flex;flex-direction:column;background:white;color:var(--green);text-decoration:none;border-radius:5px;overflow:hidden;border-bottom:5px solid var(--gold)}
.showcase-image{height:230px;overflow:hidden}
.showcase-image img{width:100%;height:100%;object-fit:cover}
.showcase-card:first-child .showcase-image img{object-position:50% 55%}
.showcase-caption{padding:23px;display:flex;flex-direction:column;flex:1}
.showcase-caption h2{font-size:24px;letter-spacing:-.025em;line-height:1.18;margin-bottom:12px}
.showcase-caption p{font-size:14px;line-height:1.6;margin-bottom:16px}
.showcase-caption>span{font-size:13px;font-weight:800;color:var(--olive);margin-top:auto;text-decoration:underline;text-underline-offset:4px}
.showcase-card:hover .showcase-caption>span{text-decoration-thickness:2px}
.hero .showcase-card:focus-visible{outline-color:var(--gold);outline-offset:5px}
.clearance-pair{display:grid;grid-template-columns:1fr 1fr;gap:3px;background:white}
.clearance-pair>div{position:relative;min-width:0;height:100%}
.photo-label{position:absolute;left:10px;top:10px;padding:4px 8px;background:var(--green);color:white;font-size:10px;font-weight:800;line-height:1.4}
.clearance-pair>div:last-child .photo-label{background:var(--gold);color:var(--green)}
@media(max-width:1150px){.allround-intro{gap:36px}.showcase-image{height:210px}.showcase-caption{padding:20px}.showcase-caption h2{font-size:22px}}
@media(max-width:950px){.allround-intro{gap:30px}.allround-hero h1{font-size:48px}.garden-showcase{gap:15px}.showcase-image{height:190px}.showcase-caption{padding:17px}.showcase-caption h2{font-size:20px}.showcase-caption p{font-size:13px}.showcase-caption>span{font-size:12px}}
@media(max-width:700px){.allround-hero{padding-top:30px;padding-bottom:30px}.allround-intro{display:block;margin-bottom:28px}.allround-hero h1{font-size:clamp(42px,10vw,58px);margin-bottom:24px}.allround-hero .intro{font-size:16px}.garden-showcase{grid-template-columns:1fr;gap:22px}.showcase-image{height:220px}.showcase-caption{padding:22px}.showcase-caption h2{font-size:25px}.showcase-caption p{font-size:15px;margin-bottom:14px}.showcase-caption>span{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Property work stays distinct without overwhelming the garden-led homepage. */
.property-detail{background:var(--sage)}
.property-detail h2{max-width:680px}
.property-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:36px}
.property-list>div{padding:28px;background:#fff;border-top:5px solid var(--gold);border-radius:4px}
.property-list h3{font-size:22px;margin-bottom:12px}
.property-list p{font-size:15px;margin-bottom:0}
.home-proof .text-link{color:#fff}
@media(max-width:700px){.property-list{grid-template-columns:1fr;gap:14px}.property-list>div{padding:22px}}
