/* ==========================================================
   HARITAM — Shared stylesheet across all pages
   ========================================================== */

:root{
  --forest-deep:#123D16;
  --forest:#1B5E20;
  --leaf:#4CAF50;
  --brown:#5D4037;
  --gold:#F9A825;
  --paper:#F6F2E9;
  --paper-warm:#EFE8D8;
  --ink:#1E2318;
  --ink-soft:#3f4a3a;
  --line: rgba(30,35,24,0.14);
}

*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }

body{
  background:var(--paper);
  color:var(--ink);
  font-family:'Inter', sans-serif;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
}

.mr{ font-family:'Noto Sans Devanagari', sans-serif; }

h1,h2,h3{
  font-family:'Fraunces', serif;
  font-weight:600;
  letter-spacing:-0.01em;
  color:var(--forest-deep);
}

a{ color:inherit; }
img{ max-width:100%; display:block; }

.wrap{ max-width:1120px; margin:0 auto; padding:0 32px; }

/* furrow rule motif — echoes the actual field-row pattern from our farm photos */
.furrow{
  height:14px; width:100%;
  background-image: repeating-linear-gradient(
    100deg,
    var(--brown) 0px, var(--brown) 2px,
    transparent 2px, transparent 22px
  );
  opacity:0.35;
}
.furrow.dark{ opacity:0.5; }

/* ---------- nav ---------- */
header{
  position:sticky; top:0; z-index:50;
  background:rgba(246,242,233,0.92);
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--line);
}
.nav{
  display:flex; align-items:center; justify-content:space-between;
  padding:10px 32px;
  max-width:1120px; margin:0 auto;
}
.brand{ display:flex; align-items:center; }
.brand img{ height:56px; width:auto; }
.navlinks{ display:none; gap:18px; font-size:0.86rem; font-weight:500; }
.navlinks a{ text-decoration:none; color:var(--ink-soft); transition:color 0.2s; padding:6px 0; white-space:nowrap; }
.navlinks a:hover, .navlinks a.active{ color:var(--forest); }
.navlinks a.active{ border-bottom:2px solid var(--gold); }
@media(min-width:1040px){ .navlinks{ display:flex; } }

.navtoggle{
  display:flex; align-items:center; justify-content:center;
  width:40px; height:40px; border:1px solid var(--line); background:none;
  cursor:pointer;
}
@media(min-width:1040px){ .navtoggle{ display:none; } }
.navtoggle span, .navtoggle span::before, .navtoggle span::after{
  content:""; display:block; width:18px; height:2px; background:var(--forest-deep); position:relative;
}
.navtoggle span::before{ position:absolute; top:-6px; }
.navtoggle span::after{ position:absolute; top:6px; }

.navmobile{
  display:none; flex-direction:column;
  border-bottom:1px solid var(--line);
  background:var(--paper);
}
.navmobile.open{ display:flex; }
.navmobile a{
  padding:14px 32px; text-decoration:none; color:var(--ink-soft);
  border-top:1px solid var(--line); font-weight:500;
}
.navmobile a.active{ color:var(--forest); }

/* ---------- buttons ---------- */
.btn{
  display:inline-block; padding:14px 26px; border-radius:2px;
  font-weight:600; font-size:0.96rem; text-decoration:none;
  transition:transform 0.15s ease, background 0.2s;
}
.btn-primary{ background:var(--gold); color:#241a06; }
.btn-primary:hover{ transform:translateY(-2px); }
.btn-ghost{ border:1.5px solid rgba(255,255,255,0.55); color:#fff; }
.btn-ghost:hover{ background:rgba(255,255,255,0.12); }
.btn-outline{ border:1.5px solid var(--forest); color:var(--forest); }
.btn-outline:hover{ background:var(--forest); color:#fff; }

/* ---------- section shell ---------- */
section{ padding:96px 0; }
.eyebrow{ color:var(--brown); font-weight:600; font-size:0.95rem; margin-bottom:14px; }
.section-head{ max-width:640px; margin-bottom:52px; }
.section-head h2{ font-size:clamp(1.9rem, 3.6vw, 2.6rem); line-height:1.14; }
.section-head p{ margin-top:16px; color:var(--ink-soft); font-size:1.06rem; }

/* ---------- footer ---------- */
.site-footer{
  background:var(--forest-deep); color:#F2EEE1; padding:64px 0 32px;
}
.site-footer .eyebrow{ color:var(--gold); }
.footer-grid{ display:grid; grid-template-columns:1fr; gap:36px; margin-top:8px; }
@media(min-width:760px){ .footer-grid{ grid-template-columns:1.2fr 1fr 1fr; } }
.footer-block h3{
  font-family:'Inter',sans-serif; font-size:0.82rem; text-transform:uppercase;
  letter-spacing:0.06em; color:var(--gold); font-weight:600; margin-bottom:14px;
}
.footer-block a{
  display:block; color:#fff; text-decoration:none; font-size:1rem; font-weight:500;
  padding:8px 0; border-bottom:1px solid rgba(255,255,255,0.14);
}
.footer-block a:hover{ color:var(--gold); }
.footer-block p{ color:#C9CFC0; font-size:0.94rem; line-height:1.6; }
.footer-bottom{
  margin-top:48px; padding-top:22px; border-top:1px solid rgba(255,255,255,0.14);
  display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px;
  font-size:0.85rem; color:#9aa694;
}
.footer-bottom .mr{ color:#c7cabb; }

/* ---------- focus states ---------- */
a:focus-visible, button:focus-visible{
  outline:2px solid var(--gold); outline-offset:2px;
}

@media (prefers-reduced-motion: reduce){
  *{ scroll-behavior:auto !important; transition:none !important; animation:none !important; }
}
