:root{--deep:#0f3d2e;--mid:#1d6b47;--lime:#b6e94a;--mist:#f3f7ea;--wood:#c8a97e}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:"Rubik",system-ui,sans-serif;background:var(--mist);color:var(--deep);line-height:1.6;font-size:16.5px}
a{color:inherit}
h1,h2,.logo{font-family:"DM Serif Display",Georgia,serif;font-weight:400}
i{font-family:"DM Serif Display",Georgia,serif;font-style:italic}
.nav{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:16px 20px;color:var(--mist)}
.logo{text-decoration:none;font-size:20px}
.logo i{color:var(--lime)}
.nav-btn{background:var(--lime);color:var(--deep);text-decoration:none;font-weight:700;padding:8px 18px;border-radius:999px}
.hero{position:relative;background:radial-gradient(ellipse at 80% 10%,#2f8c5c 0,transparent 55%),linear-gradient(180deg,var(--deep),var(--mid));color:var(--mist);padding:110px 20px 140px;text-align:center;overflow:hidden}
.fence{position:absolute;left:0;right:0;bottom:70px;height:90px;opacity:.18;background:repeating-linear-gradient(90deg,var(--wood) 0 26px,transparent 26px 40px);-webkit-mask:linear-gradient(0deg,#000 70%,transparent)}
.hero-in{position:relative;max-width:760px;margin:0 auto}
.badge-big{display:inline-flex;flex-direction:column;align-items:center;background:rgba(255,255,255,.08);border:1px solid rgba(182,233,74,.5);border-radius:20px;padding:14px 26px}
.badge-big b{font-family:"DM Serif Display",serif;font-size:52px;line-height:1;font-weight:400}
.badge-big span{color:var(--lime);letter-spacing:3px}
.badge-big small{font-size:13px;opacity:.85}
h1{font-size:clamp(40px,9vw,76px);line-height:1.02;margin:24px 0 16px}
h1 i{color:var(--lime)}
.lede{font-size:18px;opacity:.9;max-width:34em;margin:0 auto}
.ctas{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:26px}
.btn{display:inline-block;padding:15px 24px;border-radius:999px;font-weight:700;text-decoration:none}
.btn.lime{background:var(--lime);color:var(--deep)}
.btn.outline{border:2px solid currentColor}
.blades{position:absolute;left:0;bottom:-1px;width:100%;height:80px}
section:not(.hero){padding:60px 20px}
section>*{max-width:1040px;margin-left:auto;margin-right:auto}
h2{font-size:clamp(32px,7vw,52px);line-height:1.08;margin-bottom:28px;text-align:center}
h2 i{color:var(--mid)}
.svc-list{display:grid;gap:14px}
.svc-item{display:flex;gap:14px;background:#fff;border-radius:16px;padding:20px;border:1px solid #dbe6cc}
.dot{flex:0 0 14px;height:14px;margin-top:6px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 5px rgba(182,233,74,.3)}
.svc-item h3{font-size:18px}
.svc-item p{color:#3d5a4c}
.rev{background:var(--deep);color:var(--mist)}
.rev h2 i{color:var(--lime)}
.rev-wrap{display:grid;gap:16px}
.rev figure{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:22px}
.rev figure.feature{background:var(--lime);color:var(--deep);border:0}
.rev .feature blockquote{font-family:"DM Serif Display",serif;font-size:22px;line-height:1.35}
.rev figcaption{margin-top:12px;font-weight:700;font-size:14px;opacity:.85}
.rev figcaption::before{content:"★★★★★  ";color:#ffd34d}
.rev .feature figcaption::before{color:var(--deep)}
.area-box{text-align:center;background:#fff;border-radius:24px;padding:36px 24px;border:2px dashed var(--mid)}
.area-box h2{margin-bottom:12px}
.mail{display:inline-block;margin-top:12px;font-weight:700;color:var(--mid);word-break:break-all}
.cta{background:linear-gradient(135deg,var(--mid),var(--deep));color:var(--mist);text-align:center}
.cta h2 i{color:var(--lime)}
.foot{text-align:center;padding:24px;font-size:14px;color:#3d5a4c}
.foot small{display:block;font-size:12px;opacity:.7;margin-top:4px}
@media(min-width:840px){
  .svc-list{grid-template-columns:1fr 1fr}
  .rev-wrap{grid-template-columns:repeat(3,1fr)}
  .rev figure.feature{grid-column:1/-1}
}
