:root{
  /* Tweak per domain to avoid clones */
  --brand:#2D5F4F;      /* forest green - primary color */
  --accent:#D4A574;     /* warm gold - secondary accent */
  --ink:#1a2332;        /* body text */
  --muted:#6b7280;      /* secondary text */
  --bg:#fafaf9;         /* warm page background */
  --card:#ffffff;       /* card background */
  --border:#e7e5e4;     /* warm border */
  --radius:14px;
  --shadow:0 1px 8px rgba(0,0,0,.06);
  --font:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

/* Base */
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 var(--font)}
img{max-width:100%;display:block}
a{color:var(--brand);text-decoration:none}
a:hover{filter:brightness(1.06)}

/* Layout */
.container{max-width:960px;margin:0 auto;padding:24px}
.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:clamp(16px,2.5vw,24px)}

/* Header/Nav */
.site-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.brand{display:flex;align-items:center;gap:10px;color:var(--brand);font-weight:800}
.brand img{width:36px;height:36px}
.nav{display:flex;gap:16px;align-items:center}
.nav a{padding:6px 8px;border-radius:10px}
.nav a[aria-current="page"]{font-weight:600;color:var(--ink)}
.btn{background:transparent;border:1px solid var(--border)}
.btn-primary{background:var(--brand);color:#fff;border:none;padding:10px 14px;border-radius:12px;font-weight:600}
.btn-primary:hover{filter:brightness(1.05)}

/* Typography */
h1{font-size:clamp(28px,4vw,36px);margin:0 0 8px;color:var(--brand)}
h2{font-size:clamp(20px,3vw,24px);margin:16px 0 8px}
.lede{color:var(--muted);margin:0 0 12px}
.points{margin:8px 0 16px 18px;color:#475569}
.points li{margin:6px 0}
.fine{font-size:14px;color:var(--muted)}

/* Hero image (optional) */
.heroimg{border-radius:12px;border:1px solid var(--border);overflow:hidden;margin:10px 0 16px}

/* Forms */
.contact-form{display:grid;gap:12px;margin-top:8px}
.contact-form label{display:grid;gap:6px;color:#334155}
.contact-form input,.contact-form textarea{
  border:1px solid var(--border);border-radius:10px;padding:10px 12px;font:inherit;width:100%
}
.contact-form input:focus,.contact-form textarea:focus{
  outline:2px solid color-mix(in srgb, var(--brand) 30%, transparent);border-color:var(--brand)
}

/* Footer */
.site-footer{color:var(--muted);font-size:14px}
.site-footer a{color:inherit;text-decoration:underline}

.site-footer {
  margin-top: 40px;
  padding: 24px;
  font-size: 14px;
  color: var(--muted);
  border-top: 1px solid var(--border);
  text-align: center;
  line-height: 1.5;
}

.site-footer a {
  color: inherit;
  text-decoration: underline;
}