/* ====================================================================
   Sustainable Lawn Care Services Reviews — stylesheet
   ==================================================================== */

:root{
  --green-dark:#2f4a34;
  --green:#3f6b47;
  --green-light:#eef4ef;
  --cream:#faf8f3;
  --ink:#20281f;
  --gold:#e8b23d;
  --radius:14px;
}
*{box-sizing:border-box;}
body{margin:0;font-family:'Segoe UI',system-ui,-apple-system,sans-serif;color:var(--ink);background:var(--cream);line-height:1.55;}
a{color:inherit;}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px;}
.topbar{background:var(--green-dark);color:#fff;font-size:13px;text-align:center;padding:8px 12px;letter-spacing:.03em;}
header.site{position:sticky;top:0;background:#fff;z-index:50;box-shadow:0 1px 0 rgba(0,0,0,.06);}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;max-width:1080px;margin:0 auto;}
.brand{font-weight:700;font-size:19px;color:var(--green-dark);text-decoration:none;}
.nav-links{display:flex;gap:22px;font-size:15px;list-style:none;margin:0;padding:0;}
.nav-links a{text-decoration:none;color:var(--ink);}
.btn{display:inline-block;background:var(--green);color:#fff;padding:10px 20px;border-radius:8px;text-decoration:none;font-weight:600;font-size:15px;}
.btn:hover{background:var(--green-dark);}
.btn-outline{border:2px solid var(--green);color:var(--green);background:none;}

.hero{padding:64px 0 40px;text-align:center;}
.hero .kicker{text-transform:uppercase;letter-spacing:.12em;font-size:13px;color:var(--green);font-weight:700;margin-bottom:14px;}
.hero h1{font-size:42px;margin:0 0 18px;color:var(--green-dark);}
.hero h1 em{font-style:normal;color:var(--green);}
.hero p.sub{max-width:620px;margin:0 auto 28px;font-size:18px;color:#445043;}
.hero-ctas{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:36px;}

.rating-box{background:#fff;border:1px solid #e4e0d4;border-radius:var(--radius);padding:28px;max-width:520px;margin:0 auto;text-align:center;}
.rating-box .stars{color:var(--gold);font-size:26px;letter-spacing:3px;}
.rating-box .num{font-size:40px;font-weight:800;color:var(--green-dark);}
.rating-box .count{font-size:15px;color:#555;margin-top:4px;}
.rating-box a{display:inline-block;margin-top:12px;font-size:14px;color:var(--green);text-decoration:underline;}

.stats{display:flex;flex-wrap:wrap;justify-content:center;gap:0;margin:48px 0;background:#fff;border-radius:var(--radius);border:1px solid #e4e0d4;overflow:hidden;}
.stat{flex:1 1 200px;text-align:center;padding:28px 16px;border-right:1px solid #eee;}
.stat:last-child{border-right:none;}
.stat .n{font-size:26px;font-weight:800;color:var(--green-dark);}
.stat .l{font-size:13px;color:#666;margin-top:4px;}

section{padding:56px 0;}
.section-head{text-align:center;max-width:640px;margin:0 auto 40px;}
.section-head .kicker{text-transform:uppercase;letter-spacing:.1em;font-size:13px;color:var(--green);font-weight:700;}
.section-head h2{font-size:30px;color:var(--green-dark);margin:8px 0 0;}

.review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;}
.review-card{background:#fff;border:1px solid #e4e0d4;border-radius:var(--radius);padding:22px;}
.review-card .src{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--green);font-weight:700;margin-bottom:6px;}
.review-card .stars{color:var(--gold);font-size:14px;margin-bottom:8px;}
.review-card blockquote{margin:0 0 10px;font-size:16px;color:#2a2f28;}
.review-card .who{font-size:13px;color:#666;}
.disclaimer{font-size:13px;color:#777;text-align:center;margin-top:20px;}

.ticker-wrap{overflow:hidden;position:relative;width:100%;mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);}
.ticker-track{display:flex;gap:16px;width:max-content;animation:ticker-scroll 45s linear infinite;}
.ticker-wrap:hover .ticker-track{animation-play-state:paused;}
.ticker-item{flex:0 0 auto;background:#fff;border:1px solid #e4e0d4;border-radius:var(--radius);padding:16px 18px;width:280px;}
.ticker-item .stars{color:var(--gold);font-size:12px;margin-bottom:6px;}
.ticker-item blockquote{margin:0 0 8px;font-size:13.5px;color:#2a2f28;line-height:1.45;}
.ticker-item .who{font-size:12px;color:#666;}
@keyframes ticker-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (prefers-reduced-motion: reduce){.ticker-track{animation:none;}}

.why-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-top:10px;}
.why-item{background:#fff;border:1px solid #e4e0d4;border-radius:var(--radius);padding:20px;}
.why-item .check{color:var(--green);font-weight:800;margin-right:6px;}

.pricing-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:10px;}
.price-card{background:var(--green-light);border-radius:var(--radius);padding:20px;text-align:center;}
.price-card .from{font-size:12px;text-transform:uppercase;color:#5a6b5c;}
.price-card .amount{font-size:24px;font-weight:800;color:var(--green-dark);margin:4px 0;}
.price-card .label{font-size:14px;color:#3a4a3c;}

.areas{background:var(--green-dark);color:#fff;text-align:center;}
.areas h2{color:#fff;}
.area-list{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:20px;}
.area-list span{background:rgba(255,255,255,.12);padding:8px 16px;border-radius:30px;font-size:14px;}

.faq{max-width:760px;margin:0 auto;}
.faq-item{border-bottom:1px solid #e2ddd0;padding:18px 0;}
.faq-item h3{margin:0 0 8px;font-size:17px;color:var(--green-dark);}
.faq-item p{margin:0;color:#3d453d;font-size:15.5px;}

.cta-final{background:var(--green);color:#fff;text-align:center;border-radius:var(--radius);padding:48px 24px;margin:0 20px;}
.cta-final h2{color:#fff;margin-top:0;}
.cta-final .btn{background:#fff;color:var(--green-dark);}
.cta-final .btn-outline{border:2px solid #fff;color:#fff;background:none;}

footer{padding:40px 0;font-size:13px;color:#666;text-align:center;}
footer a{text-decoration:underline;}
footer .foot-links{margin:10px 0;display:flex;gap:16px;justify-content:center;flex-wrap:wrap;}

/* Simple page wrapper for non-homepage content pages (e.g. Privacy Policy) */
.page-content{max-width:760px;margin:0 auto;padding:56px 20px;}
.page-content h1{color:var(--green-dark);}
.page-content h2{color:var(--green-dark);margin-top:32px;}

@media (max-width:600px){
  .hero h1{font-size:30px;}
  .nav-links{display:none;}
}
