:root{
  --ink:#121416; --muted:#5b636b; --bg:#fafbfc; --card:#fff; --line:#e7ecef;
  --brand:#2e7d32; --brandQuiet:#6fbf73; --radius:14px; --shadow:0 4px 14px rgba(15,18,20,.06);
}
*{box-sizing:border-box}
html,body{margin:0; padding:0; font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial; color:var(--ink); background:var(--bg)}
a{color:var(--brand); text-decoration:none}
a:hover{text-decoration:underline}
.container{width:min(1040px,92vw); margin:0 auto}

.site-header{background:#fff; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:10}
.hdr{display:flex; align-items:center; justify-content:space-between; padding:12px 0}
.logo{display:flex; align-items:center; gap:12px}
.mark{width:36px; height:36px; border-radius:10px; background:linear-gradient(135deg, var(--brand), var(--brandQuiet)); display:grid; place-items:center; color:#fff; font-weight:800}
.brand{font-weight:700; letter-spacing:.2px}
.nav{display:flex; gap:6px; align-items:center; flex-wrap:wrap}
.nav a{display:inline-flex; padding:8px 12px; border-radius:10px; color:var(--ink)}
.nav a.active{background:#f3f6f4}
.btn{display:inline-flex; align-items:center; justify-content:center; padding:10px 14px; border-radius:12px; border:1px solid var(--line); background:#fff; color:var(--ink)}
.btn.primary{background:var(--brand); color:#fff; border-color:transparent}
.btn.small{padding:6px 10px; font-size:13px}

main{min-height:60vh}
section{padding:28px 0}
h1{margin:8px 0 10px; font-size:clamp(26px,6vw,40px); line-height:1.08; letter-spacing:-.3px}
h2{font-size:clamp(18px,4vw,24px); margin:0 0 8px}
.lead{color:var(--muted); font-size:16px}
.card{background:var(--card); border:1px solid var(--line); border-radius:var(--radius); box-shadow:var(--shadow); padding:16px}
.grid2{display:grid; grid-template-columns:1fr 1fr; gap:16px}
.grid2.tight{gap:10px}
.pad-lg{padding:44px 0}
.mt-12{margin-top:12px}
.mt-10{margin-top:10px}
.actions{display:flex; gap:10px; flex-wrap:wrap}
.service-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:12px}
.service{padding:12px 14px; border:1px solid var(--line); border-radius:12px; background:#fff}
.service b{display:block; margin-bottom:4px}
.meta{color:var(--muted); font-size:13px}
.list{padding-left:18px}
.map-ph{margin-top:10px}
.map-box{aspect-ratio:16/10; background:#f1f5f3; border:1px solid var(--line); border-radius:12px; display:grid; place-items:center; color:#2e7d32; font-weight:700}

.site-footer{border-top:1px solid var(--line); background:#fff; color:#66707a}
.ftr{padding:18px 0; display:flex; justify-content:space-between; gap:12px; align-items:center; flex-wrap:wrap}

@media (max-width:900px){
  .grid2{grid-template-columns:1fr}
  .service-grid{grid-template-columns:1fr}
  .hdr{padding:10px 0}
  .btn{padding:10px 12px}
  .pad-lg{padding:36px 0}
}
