:root{--green-900:#0b2e13;--green-700:#145c2e;--green-500:#2fa866;--green-400:#41a35f;--mint:#e9fff0}
*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Arial,sans-serif;color:#222;background:#fff;line-height:1.5}
a{color:#2fa866;text-decoration:none}a:hover{text-decoration:underline}
.container{width:min(1100px,92%);margin:0 auto}.narrow{width:min(800px,92%)}
.site-header{background:var(--green-900);color:#fff;position:sticky;top:0;z-index:10}.header-row{display:flex;align-items:center;justify-content:space-between;padding:12px 0}.logo{height:42px}
#primary-nav{display:flex;gap:18px;align-items:center}#primary-nav a{color:var(--mint)}#primary-nav .cta{padding:8px 12px;border:1px solid var(--green-400);border-radius:6px}.menu-toggle{display:none;background:none;border:none;color:#e9fff0;font-size:24px}
.hero{background:linear-gradient(135deg,var(--green-900) 0%,var(--green-700) 100%);color:#fff;padding:60px 0}.hero-inner{text-align:center}.hero h1{font-size:36px;margin:0 0 10px}.hero p{opacity:.95;margin:0 0 18px}
.btn{display:inline-block;padding:12px 20px;border-radius:6px;background:var(--green-500);color:#fff;border:none}.btn:hover{opacity:.9}.btn-outline{background:transparent;border:1px solid #cde7d6;color:#cde7d6;margin-left:10px}
.section{padding:56px 0}.section.alt{background:#f7faf8}.section-title{text-align:center;margin:0 0 28px}.muted{color:#666;text-align:center;margin:-10px 0 28px}
.grid{display:grid;gap:18px}.grid.three{grid-template-columns:repeat(3,1fr)}.card{background:#fff;border:1px solid #e7efe9;border-radius:10px;padding:18px;box-shadow:0 1px 2px rgba(0,0,0,.04)}
figure{margin:0}figure figcaption{font-size:.9rem;color:#555;margin-top:6px}.gallery img{width:100%;height:220px;object-fit:cover;border-radius:8px;border:1px solid #e7efe9}
.form{background:#fff;border:1px solid #e7efe9;box-shadow:0 2px 6px rgba(0,0,0,.06);padding:20px;border-radius:10px}.form label{display:block;margin-top:10px;font-weight:600}.form input,.form textarea{width:100%;padding:10px;margin-top:6px;border:1px solid #cfe1d6;border-radius:6px}.form button{margin-top:16px}
.textus-fab{position:fixed;right:16px;bottom:88px;background:#1a7f4a;color:#fff;border:none;border-radius:999px;padding:12px 16px;font-weight:700;box-shadow:0 8px 20px rgba(0,0,0,.18);cursor:pointer}
#textus-panel{position:fixed;right:16px;bottom:146px;background:#fff;border:1px solid #e7efe9;border-radius:10px;box-shadow:0 10px 24px rgba(0,0,0,.12);display:none;flex-direction:column;overflow:hidden}
#textus-panel a{padding:10px 14px;display:block;border-bottom:1px solid #f0f4f2;color:#145c2e;text-decoration:none}#textus-panel a:last-child{border-bottom:none}
.mobile-cta{display:none;position:fixed;left:0;right:0;bottom:0;background:#0f3a1a;border-top:2px solid #0a2912;z-index:20}
.mobile-cta a{flex:1;text-align:center;color:#fff;padding:12px 10px;display:inline-block;text-decoration:none;border-right:1px solid rgba(255,255,255,.12)}.mobile-cta a:last-child{border-right:none}
.site-footer{background:var(--green-900);color:#cde7d6;padding:18px 0}.footer-row{display:flex;justify-content:space-between;align-items:center}.footer-link{color:#cde7d6}
@media (max-width:820px){.grid.three{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.menu-toggle{display:block}#primary-nav{display:none;flex-direction:column;background:var(--green-900);position:absolute;right:4%;top:58px;padding:12px 14px;border:1px solid #1b5c30;border-radius:8px}.grid.three{grid-template-columns:1fr}.hero h1{font-size:30px}.mobile-cta{display:flex}}