/* ============================================================
   EcoStyle — shared theme
   forest-green hero, warm cream page, sage accents,
   plus the logo's olive + brown. Serif display + humanist sans.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Lora:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Mulish:wght@300;400;500;600;700;800;900&display=swap');

:root{
  /* greens */
  --forest:#234234;
  --forest-deep:#162a20;
  --forest-grad-1:#315a44;
  --forest-grad-2:#1a3226;
  --green:#3e7355;
  --green-600:#2c5742;
  --sage:#9fc0a6;
  --sage-soft:#cbe0cd;
  --sage-mist:#e4eee2;
  /* earth (from logo) */
  --olive:#7da84f;
  --brown:#9c6b3f;
  --brown-soft:#c89a6f;
  /* neutrals */
  --cream:#f3f0e6;
  --cream-2:#eae5d6;
  --paper:#fbfaf4;
  --ink:#21312a;
  --muted:#5c6b60;
  --line:rgba(35,66,52,.14);
  /* type */
  --serif:'Lora', Georgia, 'Times New Roman', serif;
  --sans:'Mulish', system-ui, -apple-system, sans-serif;
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; -webkit-text-size-adjust:100%; }
body{
  margin:0;
  font-family:var(--sans);
  color:var(--ink);
  background:var(--cream);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,h4{ font-family:var(--serif); font-weight:700; line-height:1.08; margin:0; }
p{ margin:0; }
a{ color:inherit; text-decoration:none; }
img{ display:block; max-width:100%; }
button{ font-family:inherit; cursor:pointer; }
.sr-only{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }

/* skip link */
.skip{ position:absolute; left:-999px; top:0; background:var(--forest); color:#fff; padding:.6rem 1rem; border-radius:0 0 .6rem 0; z-index:200; }
.skip:focus{ left:0; }

.wrap{ width:min(1180px, 92vw); margin-inline:auto; }
