:root{--green:#0f4f34;--green2:#163f2e;--cream:#f5f2ea;--ink:#17211b;--muted:#6b746e;--gold:#d7b56d;--white:#fff;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;color:var(--ink);background:#fff;line-height:1.6}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.wrap{width:min(var(--max),calc(100% - 40px));margin:auto}.topbar{background:#0c2f22;color:#fff;font-size:14px}.topbar .wrap{display:flex;justify-content:space-between;gap:20px;padding:9px 0}.nav{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.97);border-bottom:1px solid #e9ece9}.nav .wrap{display:flex;align-items:center;justify-content:space-between;padding:16px 0}.brand{font-weight:900;letter-spacing:.05em;font-size:20px;color:var(--green)}.brand small{display:block;font-size:11px;letter-spacing:.18em;color:#607067;margin-top:2px}.links{display:flex;align-items:center;gap:24px;font-weight:700;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border-radius:4px;font-weight:800;letter-spacing:.02em}.btn.primary{background:var(--green);color:#fff}.btn.secondary{background:#fff;color:var(--green);border:2px solid #fff}.hero{min-height:72vh;position:relative;display:flex;align-items:center;background:linear-gradient(90deg,rgba(8,25,18,.76),rgba(8,25,18,.18)),url('assets/hero.jpg') center/cover no-repeat;color:white}.hero .content{max-width:760px;padding:80px 0}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-weight:800;font-size:13px;color:#d7e6dc}.hero h1{font-size:clamp(42px,6vw,76px);line-height:1.02;margin:12px 0 18px;letter-spacing:-.03em}.hero p{font-size:clamp(18px,2.2vw,24px);max-width:720px;margin:0 0 28px}.actions{display:flex;gap:12px;flex-wrap:wrap}.trust{background:var(--green);color:#fff}.trust .wrap{display:grid;grid-template-columns:repeat(4,1fr);text-align:center}.trust div{padding:20px 8px;border-right:1px solid rgba(255,255,255,.18);font-weight:800}.trust div:last-child{border-right:none}.section{padding:78px 0}.section.alt{background:var(--cream)}.section h2{font-size:clamp(34px,4.4vw,54px);line-height:1.1;margin:0 0 16px;letter-spacing:-.03em}.lead{font-size:19px;color:#4f5a53;max-width:780px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:34px}.card{background:#fff;border:1px solid #e7ebe7;border-radius:8px;overflow:hidden;box-shadow:0 6px 24px rgba(18,40,28,.05)}.card img{width:100%;height:250px;object-fit:cover}.card .pad{padding:24px}.card h3{margin:0 0 8px;font-size:24px}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:center}.split img{width:100%;height:520px;object-fit:cover;border-radius:8px}.checks{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;margin:26px 0}.checks span:before{content:'✓';color:var(--green);font-weight:900;margin-right:8px}.dark{background:#10281d;color:#fff}.dark .lead{color:#d6dfd9}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-top:28px}.gallery img{width:100%;height:240px;object-fit:cover;border-radius:6px}.gallery img:first-child{height:492px;grid-row:span 2}.cta{background:linear-gradient(90deg,rgba(10,36,25,.9),rgba(10,36,25,.75)),url('assets/storm.jpg') center/cover no-repeat;color:#fff;padding:76px 0}.cta .wrap{display:flex;justify-content:space-between;gap:30px;align-items:center}.cta h2{max-width:700px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:34px}.contactbox{padding:30px;background:#fff;border:1px solid #e6eae6;border-radius:8px}.contactbox strong{display:block;margin-top:12px}.footer{background:#081c14;color:#d7e2da;padding:44px 0}.footer .wrap{display:flex;justify-content:space-between;gap:30px;align-items:flex-start}.footer small{color:#9eb0a5}.mobile-cta{display:none}
@media(max-width:900px){.links{display:none}.hero{min-height:64vh}.trust .wrap{grid-template-columns:1fr 1fr}.trust div:nth-child(2){border-right:none}.grid3,.split,.contact{grid-template-columns:1fr}.split img{height:400px}.gallery{grid-template-columns:1fr 1fr}.gallery img:first-child{grid-column:1/-1;height:360px;grid-row:auto}.cta .wrap,.footer .wrap{display:block}.mobile-cta{display:flex;position:fixed;left:12px;right:12px;bottom:12px;z-index:30;background:var(--green);color:#fff;padding:14px;border-radius:6px;justify-content:center;font-weight:900;box-shadow:0 8px 26px rgba(0,0,0,.22)}}
@media(max-width:560px){.wrap{width:min(var(--max),calc(100% - 26px))}.topbar .wrap{font-size:12px}.hero .content{padding:64px 0}.trust .wrap{grid-template-columns:1fr 1fr}.trust div{font-size:13px}.grid3{grid-template-columns:1fr}.gallery{grid-template-columns:1fr}.gallery img,.gallery img:first-child{height:260px}.checks{grid-template-columns:1fr}.section{padding:58px 0}}

/* ISA Certified Arborist credential */
.credential-strip{
  background:#f5f7f5;
  border-top:1px solid #e2e7e2;
  border-bottom:1px solid #e2e7e2;
  padding:28px 20px;
}
.credential-inner{
  max-width:1100px;
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
}
.credential-inner img{
  width:82px;
  height:auto;
  flex:0 0 auto;
}
.credential-inner div{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.credential-inner strong{
  font-size:1.15rem;
  color:#173d2a;
}
.credential-inner span{
  color:#56625a;
  line-height:1.45;
}
@media (max-width:600px){
  .credential-inner{align-items:center;text-align:left;gap:16px;}
  .credential-inner img{width:68px;}
}

/* Reviews + final local SEO polish */
.reviews-section{
  padding:72px 22px;
  background:#f6f7f4;
}
.reviews-section .section-heading{
  max-width:850px;
  margin:0 auto 34px;
  text-align:center;
}
.reviews-section .eyebrow{
  display:block;
  font-weight:800;
  letter-spacing:.12em;
  font-size:.78rem;
  color:#55705f;
  margin-bottom:10px;
}
.reviews-section h2{
  margin:0 0 14px;
  color:#173d2a;
}
.google-rating{
  font-size:1.05rem;
  letter-spacing:.02em;
}
.google-rating span{
  margin-left:6px;
  color:#687269;
  font-size:.92rem;
}
.review-grid{
  max-width:1100px;
  margin:0 auto;
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:20px;
}
.review-card{
  background:#fff;
  border:1px solid #e3e7e2;
  border-radius:14px;
  padding:25px;
  box-shadow:0 8px 24px rgba(20,50,34,.06);
}
.review-card .stars{
  letter-spacing:.08em;
  margin-bottom:12px;
}
.review-card p{
  line-height:1.65;
  margin:0 0 16px;
  color:#344139;
}
.review-card strong,
.review-card span{
  display:block;
}
.review-card span{
  margin-top:3px;
  font-size:.86rem;
  color:#788179;
}
.review-cta{
  text-align:center;
  margin-top:28px;
}
@media(max-width:800px){
  .reviews-section{padding:54px 18px;}
  .review-grid{grid-template-columns:1fr;}
}

/* Dedicated service/location pages */
.seo-page-header{background:#173d2a;color:#fff;padding-bottom:58px}
.seo-page-nav{max-width:1150px;margin:auto;padding:22px;display:flex;justify-content:space-between;gap:20px;align-items:center}
.seo-page-nav a{color:#fff;text-decoration:none;margin-left:16px}
.seo-brand{font-weight:800;letter-spacing:.04em;margin-left:0!important}
.seo-page-hero{max-width:900px;margin:55px auto 0;padding:0 22px}
.seo-page-hero h1{font-size:clamp(2.25rem,5vw,4.5rem);line-height:1.02;margin:10px 0 18px}
.seo-page-hero p{font-size:1.12rem;line-height:1.7;max-width:760px}
.seo-page-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}
.seo-content-section{padding:58px 22px;border-bottom:1px solid #e6e9e5}
.seo-page-inner{max-width:1000px;margin:auto}
.seo-page-inner h2{color:#173d2a}
.seo-page-inner p{line-height:1.75;color:#3f4b43}
.seo-cta,.seo-links-section{padding:58px 22px;background:#f5f7f4}
.seo-footer{text-align:center;padding:30px 20px;background:#102d20;color:#fff}
.seo-footer a{color:#fff}
.area-list{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.area-list li{background:#fff;border:1px solid #e2e7e2;border-radius:12px;padding:18px;display:flex;flex-direction:column;gap:5px}
.area-list span{color:#667169}
.seo-link-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:24px}
.seo-link-grid a{display:block;padding:18px;background:#fff;border:1px solid #dde4de;border-radius:10px;color:#173d2a;text-decoration:none;font-weight:700}
@media(max-width:800px){
 .seo-page-nav{align-items:flex-start;flex-direction:column}
 .seo-page-nav a{margin-left:0;margin-right:12px}
 .area-list,.seo-link-grid{grid-template-columns:1fr}
}
