:root{--green:#b1ef42;--ink:#18231f;--muted:#617068;--paper:#f5f6f0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper)}a{color:inherit;text-decoration:none}img{display:block;width:100%;object-fit:cover}header{height:112px;padding:14px 5%;display:flex;align-items:center;justify-content:space-between;background:white;gap:30px}.brand{display:flex;align-items:center;gap:10px}.brand img{width:70px;height:75px;object-fit:contain}.brand span{font-weight:900;letter-spacing:-.8px;font-size:19px}.brand small{display:block;font-size:10px;letter-spacing:3px;color:#4a8526;margin-top:5px}nav{display:flex;gap:32px;font-size:14px;font-weight:600}nav a{padding:12px 0;border-bottom:2px solid transparent}nav a[aria-current],nav a:hover{border-color:#74b82c}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--green);padding:20px 24px;font-weight:700;font-size:14px;transition:background .2s}.button:hover{background:#93da29}.button span{font-size:22px}.header-cta{padding:14px 20px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:630px}.hero-copy{padding:72px 6vw 64px 5vw}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;line-height:1.8;display:block}.eyebrow i{display:inline-block;width:7px;height:7px;border-radius:100%;background:#73ba23;margin-right:6px}h1{font-size:clamp(40px,4.5vw,70px);font-weight:750;letter-spacing:-3px;line-height:1.05;margin:28px 0}em{font-style:normal;color:#4f8c20}p{font-size:16px;line-height:1.8;color:var(--muted)}.hero-copy p{max-width:440px;margin-bottom:30px}.text-link{display:inline-block;font-size:13px;font-weight:700;padding:18px 0}.hero-copy .text-link{display:block;width:fit-content}.hero-image{position:relative;min-height:600px;overflow:hidden}.hero-image>img{height:100%;position:absolute;object-position:64% center}.logo-panel{position:absolute;right:30px;top:30px;background:white;width:180px;padding:12px}.logo-panel img{object-fit:contain}.photo-label{position:absolute;bottom:30px;left:30px;color:white;background:#17231fe6;padding:16px;font-size:10px;letter-spacing:1.5px}.values-strip{background:var(--green);display:flex;align-items:center;justify-content:space-around;padding:26px 5%;font-size:16px;font-weight:700}.values-strip b{font-size:25px}.section{padding:90px 5%}.section-title{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:38px}.section-title p{max-width:370px;margin:0}h2{font-size:clamp(30px,3.2vw,46px);line-height:1.12;letter-spacing:-1.7px;margin:20px 0}h3{font-size:23px;letter-spacing:-.7px;line-height:1.25}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.services article{background:white}.services article>img{height:240px}.services article>div{padding:28px}.number{font-size:10px;letter-spacing:2px;font-weight:700;color:#507b34}.services p{font-size:14px}.services h3{margin:17px 0}.services .green-service{background:var(--green);display:flex;flex-direction:column;justify-content:space-between}.green-service .service-symbol{font-size:100px;padding:20px 30px;line-height:1}.green-service p{color:#344823}.focus{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:white}.focus>img{height:100%;min-height:620px;object-position:47% center}.focus>div{padding:65px 6vw}.focus p{color:#bac7be}.focus .eyebrow{color:var(--green)}ul{padding:0;list-style:none;margin:26px 0 32px}li{padding:13px 0;border-bottom:1px solid #ffffff25;font-size:14px}li:before{content:'↗';color:var(--green);margin-right:18px}.cta{background:var(--green);padding:65px 7%;display:flex;justify-content:space-between;align-items:center;gap:30px}.cta h2{margin-bottom:0}.dark{background:var(--ink);color:white}.dark:hover{background:#344b3f}footer{background:#122019;color:white;padding:50px 5% 28px;display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:30px}footer strong{font-size:18px}footer strong span{display:block;color:var(--green);font-size:10px;letter-spacing:3px;margin-top:8px}footer p{font-size:12px;color:#a6b3a9}footer a{display:block;font-size:13px;margin-bottom:14px}footer .legal{font-size:11px;line-height:2;color:#bec7c0}footer small{grid-column:1/-1;border-top:1px solid #ffffff20;padding-top:25px;color:#93a398;font-size:10px}.page-heading{padding:70px 5% 65px;background:#eaf0df}.page-heading h1{max-width:950px}.page-heading p{max-width:620px}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.about-grid>img{height:550px}.about-grid p{font-size:15px}.philosophy{padding:70px 8%;background:var(--ink);color:white}.philosophy h2{font-size:clamp(30px,4vw,55px);line-height:1.2}.philosophy em{color:var(--green)}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:60px}.principles b{color:var(--green);font-size:12px}.principles h3{margin:15px 0}.principles p{color:#bac7be;font-size:14px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.contact-row{display:flex;gap:25px;border-bottom:1px solid #d8ded3;padding:22px 0}.contact-row>span{font-size:12px;color:#5a822f;padding-top:7px}.contact-row h3{font-size:19px;margin:0}.contact-row p{margin:5px 0;font-size:14px}.notice{background:#eaf0df;padding:20px;font-size:14px}.contact-grid aside{background:white}.contact-grid aside img{height:260px}.contact-grid aside>div{padding:35px}.contact-grid aside p{font-size:14px}.company{padding-top:0}.company h3{font-size:20px}.skip{position:absolute;left:15px;top:-80px;background:white;padding:15px;z-index:10}.skip:focus{top:10px}a:focus-visible{outline:3px solid #398600;outline-offset:5px}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1000px){.header-cta{display:none}.hero-copy{padding-top:50px}.hero{min-height:570px}.hero-image{min-height:570px}.logo-panel{width:145px}h1{letter-spacing:-2px}.services{gap:15px}.services article>div{padding:22px}.contact-grid{gap:45px}.about-grid{gap:35px}}@media(max-width:650px){header{height:auto;min-height:100px;padding:12px 5%;flex-wrap:wrap;gap:10px}.brand img{width:48px;height:53px}.brand span{font-size:16px}.brand small{font-size:8px}nav{gap:22px;font-size:13px;width:100%;justify-content:center}.hero{grid-template-columns:1fr}.hero-copy{padding:45px 6% 30px}.hero-copy h1{font-size:48px}.hero-image{min-height:390px}.logo-panel{width:135px;right:20px;top:20px}.photo-label{left:15px;bottom:15px;font-size:8px}.values-strip{padding:20px 15px;gap:15px;flex-wrap:wrap;font-size:11px}.values-strip b{font-size:15px}.section{padding:55px 6%}.section-title{display:block}.section-title p{max-width:none}.services{grid-template-columns:1fr;gap:25px}.services article>img{height:220px}.green-service .service-symbol{font-size:70px}.focus{grid-template-columns:1fr}.focus>img{min-height:0;height:400px}.focus>div{padding:45px 6%}.cta{padding:45px 6%;display:block}.cta .button{margin-top:30px}footer{grid-template-columns:1fr 1fr}footer .legal{grid-column:1/-1}.page-heading{padding:45px 6%}.page-heading h1{font-size:41px}.about-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.about-grid>img{height:320px}.philosophy{padding:45px 6%}.principles{grid-template-columns:1fr;gap:20px;margin-top:35px}.company{padding-top:0}.eyebrow{font-size:10px;letter-spacing:1.5px}}

/* Readability refinement; header geometry remains unchanged. */
.page-home header .brand img{transform:scale(1.15);transform-origin:center}
p{font-size:17px}
.services p,.principles p,.contact-row p,.contact-grid aside p,.notice{font-size:16px;font-weight:600;line-height:1.75}
.about-grid p{font-size:17px}
li{font-size:16px;font-weight:600}
.text-link{font-size:15px}
footer p,footer .legal,footer a{font-size:13px;font-weight:600}
footer small{font-size:12px;font-weight:600}
.photo-label{font-size:11px;font-weight:600}
.number{font-size:12px}
.eyebrow{font-size:12px}
.contact-row>span{font-size:13px;font-weight:600}
@media(max-width:650px){.eyebrow{font-size:11px}.photo-label{font-size:10px;max-width:calc(100% - 30px)}.values-strip{font-size:12px}.contact-grid a{overflow-wrap:anywhere}}

/* Center the Home brand above its navigation on mobile only. */
@media(max-width:650px){
 .page-home header{justify-content:center}
 .page-home header .brand{margin-inline:auto}
}
