
:root{
  --green:#0f3d2e;
  --ivory:#f4f2eb;
  --ink:#1b1b1b;
  --muted:#6b7280;
  --card:#ffffff;
  --accent:#184f3b;
  --shadow:0 10px 30px rgba(0,0,0,.08);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:var(--ink);background:var(--ivory);line-height:1.6}

.container{max-width:1080px;margin:0 auto;padding:0 20px}
.site-header{background:var(--green);position:sticky;top:0;z-index:50}
.header-inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.brand .logo{height:44px;display:block}
.brand .logo.dark{display:none}
.nav a{color:var(--ivory);text-decoration:none;margin-left:22px;font-weight:600}
.nav .btn{margin-left:14px}

.hero{background:var(--green);color:var(--ivory);padding:72px 0}
.hero-inner{max-width:820px}
h1,h2,h3,h4{font-family:'Crimson Text', Georgia, 'Times New Roman', serif;margin:0 0 10px}
h1{font-size:48px}
.lead{font-size:18px;color:#e9e7df;margin-bottom:22px}
.cta-row{display:flex;gap:12px;margin-top:8px}

.btn{display:inline-block;padding:12px 18px;border-radius:12px;border:1px solid transparent;text-decoration:none;font-weight:600;box-shadow:var(--shadow)}
.btn-primary{background:var(--ivory);color:var(--green)}
.btn-ghost{background:transparent;border-color:#d9d6cc;color:var(--ivory)}
.btn-secondary{background:var(--accent);color:var(--ivory)}

.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:36px auto}
.card{background:var(--card);padding:18px;border-radius:16px;box-shadow:var(--shadow)}

.split{display:grid;grid-template-columns:1.2fr .8fr;gap:24px;margin:36px auto}
.box{background:var(--card);padding:18px;border-radius:16px;box-shadow:var(--shadow)}

.checks li::marker{content:'✓ '}
.ticks li::marker{content:'• '}

.service{margin:28px 0}
.service h2{margin-top:16px}

.people{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.person{background:var(--card);padding:16px;border-radius:16px;box-shadow:var(--shadow)}

.contact-form{max-width:760px}
.contact-form .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
label{display:block;font-weight:600;margin:8px 0}
input,select,textarea{width:100%;padding:12px;border-radius:10px;border:1px solid #d7d5cd;background:#fff}
.hp{display:none !important}

.cta-block{margin:28px 0;padding:18px;border-radius:16px;background:#e8efe9;border:1px solid #dce7e0}

.site-footer{background:#0d2f23;color:var(--ivory);margin-top:48px;padding:32px 0}
.site-footer a{color:#d7efe2}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}
.muted{color:#cbd5d1}
.footnote{border-top:1px solid #274c3f;margin-top:20px;padding-top:12px;font-size:14px}

@media (prefers-color-scheme: light){
  .brand .logo.light{display:block}
  .brand .logo.dark{display:none}
}
@media (prefers-color-scheme: dark){
  body{background:#0e0f10;color:#e5e7eb}
  .hero{background:#0a221a}
  .brand .logo.light{display:none}
  .brand .logo.dark{display:block}
  .card,.box,input,select,textarea{background:#111315;color:#e5e7eb;border-color:#2a2d33}
  .site-footer{background:#090d0a}
}

@media (max-width:900px){
  .pillars{grid-template-columns:repeat(2,1fr)}
  .people{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:640px){
  .pillars{grid-template-columns:1fr}
  .split{grid-template-columns:1fr}
  .people{grid-template-columns:1fr}
  .contact-form .form-grid{grid-template-columns:1fr}
  .nav a{margin-left:14px}
}
