
:root{
  --ink:#1e2b28;
  --leaf:#2e6b5b;
  --leaf-2:#244d40;
  --sky:#e6efec;
  --sand:#f6f4f1;
  --accent:#2c516e;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  color:var(--ink);
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji","Segoe UI Emoji";
  background: var(--sand);
  line-height:1.6;
}
.container{max-width:1100px;margin:0 auto;padding:0 1.25rem}
header{
  position:sticky;top:0;z-index:10;background:#ffffffc7;backdrop-filter:saturate(120%) blur(8px);
  border-bottom:1px solid #e7ece9
}
.nav{display:flex;align-items:center;justify-content:space-between;padding:.9rem 0}
.brand{display:flex;gap:.6rem;align-items:center;text-decoration:none;color:var(--leaf-2)}
.logo{width:28px;height:28px;border-radius:8px;background:linear-gradient(135deg,var(--leaf),var(--accent));display:inline-block}
.brand b{font-family:Merriweather, Georgia, serif;font-weight:700;letter-spacing:.3px}
nav a{color:var(--ink);text-decoration:none;margin-left:1rem;font-weight:600}
nav a:hover{color:var(--leaf)}
.hero{background:linear-gradient(180deg,var(--sky),#fff); padding:4.5rem 0 3.5rem}
.hero h1{font-family:Merriweather, Georgia, serif; font-size:clamp(1.9rem,4.2vw,3rem);line-height:1.15;margin:0 0 1rem;color:var(--leaf-2)}
.hero p{max-width:720px;font-size:1.05rem;margin:0 0 1.25rem}
.badge{display:inline-block;background:#fff;border:1px solid #dfe7e3;color:var(--leaf-2);padding:.35rem .6rem;border-radius:999px;font-size:.85rem}
.cta{display:flex;gap:.75rem;margin-top:1.25rem;flex-wrap:wrap}
.btn{appearance:none;border:none;border-radius:14px;padding:.8rem 1rem;font-weight:700;cursor:pointer}
.btn.primary{background:var(--leaf);color:#fff}
.btn.secondary{background:#fff;border:1px solid #dfe7e3;color:var(--leaf-2)}
.btn:hover{transform:translateY(-1px)}
main section{padding:3.25rem 0;border-top:1px solid #ecefea}
h2{font-family:Merriweather, Georgia, serif; font-size:clamp(1.4rem,2.4vw,1.8rem); color:var(--leaf-2); margin:0 0 1rem}
.grid{display:grid;gap:1.25rem}
@media (min-width:800px){.grid.cols-2{grid-template-columns:1.3fr 1fr}}
.card{background:#fff;border:1px solid #e7ece9;border-radius:18px;padding:1.1rem}
.list{padding-left:1.1rem}
.contact-card a{color:var(--accent);text-decoration:none;font-weight:600}
.contact-card a:hover{text-decoration:underline}
footer{padding:2rem 0;border-top:1px solid #ecefea;font-size:.9rem;color:#3b4a46}
.small{font-size:.95rem;color:#3b4a46}
.active{color:var(--leaf);}
