/* ============================================================
   NaturoCares — shared brand stylesheet
   Warm, traditional, Ayurvedic feel
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500&family=Mukta:wght@300;400;500;600;700&display=swap');

:root{
  --green:#2C5F3E;
  --green-d:#1E4A2E;
  --green-deep:#143121;
  --terra:#B4623A;
  --terra-d:#9A4F2C;
  --gold:#C89B3C;
  --gold-soft:#E4C77E;
  --cream:#FBF4E6;
  --cream-2:#F3E9D2;
  --paper:#FFFFFF;
  --ink:#2A2318;
  --muted:#6B6250;
  --line:#E4D9BF;
  --shadow:0 22px 55px -24px rgba(20,49,33,0.38);
  --radius:16px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:'Mukta',sans-serif;
  color:var(--ink);
  background:var(--cream);
  line-height:1.68;
  font-size:16.5px;
}
h1,h2,h3,h4,.serif{ font-family:'Cormorant Garamond',serif; font-weight:600; margin:0; line-height:1.12; }
p{margin:0;}
img,svg{display:block; max-width:100%;}
a{color:inherit; text-decoration:none;}
.wrap{ max-width:1140px; margin:0 auto; padding:0 30px; }
@media (max-width:720px){ .wrap{ padding:0 20px; } }

.eyebrow{
  font-family:'Mukta',sans-serif; font-weight:700; font-size:12.5px;
  letter-spacing:0.18em; text-transform:uppercase; color:var(--terra);
  display:inline-flex; align-items:center; gap:9px;
}
.eyebrow::before{ content:""; width:22px; height:2px; background:var(--terra); display:inline-block; }
.eyebrow.on-dark{ color:var(--gold-soft); }
.eyebrow.on-dark::before{ background:var(--gold-soft); }
.eyebrow.center{ justify-content:center; }

.btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  font-family:'Mukta',sans-serif; font-weight:600; font-size:16px;
  padding:15px 30px; border-radius:999px; border:2px solid transparent;
  cursor:pointer; transition:transform .18s ease, box-shadow .18s ease, background .18s ease;
  white-space:nowrap;
}
.btn:focus-visible{ outline:3px solid var(--gold); outline-offset:3px; }
.btn-primary{ background:var(--terra); color:var(--cream); box-shadow:0 12px 26px -10px rgba(180,98,58,0.55); }
.btn-primary:hover{ transform:translateY(-2px); box-shadow:0 16px 30px -10px rgba(180,98,58,0.62); }
.btn-green{ background:var(--green); color:var(--cream); }
.btn-green:hover{ transform:translateY(-2px); box-shadow:0 16px 30px -10px rgba(44,95,62,0.5); }
.btn-ghost{ background:transparent; border-color:rgba(251,244,230,0.45); color:var(--cream); }
.btn-ghost:hover{ background:rgba(251,244,230,0.12); }
.btn-outline{ background:transparent; border-color:var(--green); color:var(--green); }
.btn-outline:hover{ background:var(--green); color:var(--cream); }

section{ padding:92px 0; }
@media (max-width:720px){ section{ padding:60px 0; } }

.reveal{ opacity:0; transform:translateY(18px); transition:opacity .7s ease, transform .7s ease; }
.reveal.in{ opacity:1; transform:none; }
@media (prefers-reduced-motion:reduce){ .reveal{opacity:1; transform:none; transition:none;} html{scroll-behavior:auto;} }

/* ---------- NAV ---------- */
header.nav{
  position:sticky; top:0; z-index:60;
  background:rgba(251,244,230,0.94); backdrop-filter:blur(9px);
  border-bottom:1px solid var(--line);
}
.nav-inner{ display:flex; align-items:center; justify-content:space-between; padding:12px 30px; max-width:1140px; margin:0 auto; }
.wordmark{ display:flex; align-items:center; gap:12px; }
.wordmark svg{ width:46px; height:46px; flex:none; }
.wordmark .wm-text{ font-family:'Cormorant Garamond',serif; font-weight:700; font-size:23px; color:var(--green-d); letter-spacing:.5px; line-height:1; }
.wordmark .wm-text small{ display:block; font-family:'Mukta',sans-serif; font-weight:500; font-size:10px; letter-spacing:.22em; text-transform:uppercase; color:var(--terra); margin-top:3px; }
.nav-links{ display:flex; gap:30px; align-items:center; }
.nav-links a.link{ font-weight:500; font-size:15px; color:var(--ink); opacity:0.82; }
.nav-links a.link:hover{ opacity:1; color:var(--green); }
.nav-links a.link.active{ color:var(--green); opacity:1; font-weight:600; }
#nav-toggle{ display:none; }
.burger{ display:none; cursor:pointer; }
@media (max-width:880px){
  .nav-links{
    position:absolute; top:100%; left:0; right:0; background:var(--cream);
    flex-direction:column; align-items:flex-start; padding:12px 30px 26px; gap:18px;
    border-bottom:1px solid var(--line); display:none;
  }
  #nav-toggle:checked ~ .nav-links{ display:flex; }
  .burger{ display:block; }
  .nav-links .btn{ width:100%; }
}

/* ---------- FOOTER ---------- */
footer{ background:var(--green-deep); color:#B8CBBB; padding:56px 0 30px; }
footer .foot-grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:40px; margin-bottom:36px; }
@media (max-width:760px){ footer .foot-grid{ grid-template-columns:1fr; gap:28px; } }
footer .wordmark .wm-text{ color:var(--cream); }
footer h4{ font-family:'Mukta',sans-serif; font-weight:700; font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-soft); margin-bottom:14px; }
footer a.fl{ display:block; color:#B8CBBB; font-size:15px; padding:5px 0; }
footer a.fl:hover{ color:var(--cream); }
footer .foot-about{ font-size:14.5px; max-width:34ch; margin-top:14px; }
footer .disclaimer{ font-size:12.5px; line-height:1.7; border-top:1px solid rgba(184,203,187,0.2); padding-top:22px; max-width:900px; }
footer .copy{ font-size:12px; opacity:0.7; margin-top:14px; }

/* shared section headers */
.sec-head{ text-align:center; max-width:660px; margin:0 auto 52px; }
.sec-head h2{ font-size:clamp(30px,4vw,44px); color:var(--green-d); margin:14px 0 12px; }
.sec-head p{ color:var(--muted); font-size:17px; }

/* image placeholder slot */
.imgslot{
  background:
    repeating-linear-gradient(45deg, transparent, transparent 12px, rgba(44,95,62,0.04) 12px, rgba(44,95,62,0.04) 24px),
    var(--cream-2);
  border:2px dashed var(--gold); border-radius:var(--radius);
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  color:var(--muted); text-align:center; padding:24px; gap:6px; min-height:220px;
}
.imgslot svg{ width:38px; height:38px; color:var(--gold); opacity:0.8; }
.imgslot .slot-title{ font-weight:700; font-size:14px; color:var(--green-d); }
.imgslot .slot-dim{ font-size:12.5px; }
