/* Homepage sections and site footer */
/* about */
.about{background:var(--bg)}
.about-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:64px;align-items:center}
.about-text p{margin-bottom:16px;color:var(--ink-soft);font-size:1.05rem}
.about-text .lead-line{font-family:'Cormorant Garamond';font-size:1.7rem;color:var(--forest);line-height:1.3;margin-bottom:22px}
.about-media{position:relative}
.about-media img{border-radius:var(--radius);box-shadow:var(--shadow);position:relative;z-index:2;width:100%;object-fit:cover}
.about-media .badge{position:absolute;z-index:3;bottom:-28px;left:-28px;background:var(--paper);border-radius:16px;padding:16px 22px;box-shadow:var(--shadow);display:flex;gap:12px;align-items:center}
.about-media .badge i{font-size:1.6rem;color:var(--moss)}
.about-media .badge b{display:block;font-family:'Cormorant Garamond';font-size:1.55rem;color:var(--forest);line-height:1.05}
.about-media .badge span{display:block;margin-top:4px;font-size:.8rem;font-weight:500;
  letter-spacing:.04em;color:var(--ink-soft);white-space:nowrap}

/* products */
.products{background:linear-gradient(180deg,var(--bg-2),var(--bg))}

/* roots / heritage */
.roots{background:var(--forest);color:#eef0e4;overflow:hidden}
.roots h2{color:#fff}
.roots .eyebrow{color:#ffdf8a}
.roots-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start;margin-top:20px}
.roots-visual{position:sticky;top:130px;text-align:center}
.roots .grind-caption{color:#b9c6ac;margin-top:22px}
.roots .grind-caption .shloka{color:#ffdf8a}

.timeline{position:relative;padding-left:22px}
.timeline::before{content:"";position:absolute;left:6px;top:6px;bottom:6px;width:2px;background:rgba(255,255,255,.13)}
.timeline-fill{position:absolute;left:6px;top:6px;width:2px;height:0;border-radius:2px;
  background:linear-gradient(var(--gold),var(--moss-2));box-shadow:0 0 12px rgba(201,148,51,.5)}
.tl{position:relative;padding:0 0 46px 40px;opacity:0;transform:translateY(34px);
  transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.tl.in{opacity:1;transform:none}
.tl::before{content:"";position:absolute;left:-2px;top:4px;width:16px;height:16px;border-radius:50%;
  background:#3c5a44;box-shadow:0 0 0 5px rgba(255,255,255,.05);transition:.6s ease}
.tl.in::before{background:var(--gold);box-shadow:0 0 0 5px rgba(201,148,51,.22),0 0 16px rgba(201,148,51,.55)}
.tl h3{color:#fff;font-size:1.6rem}
.tl p{color:#cfd6c2;font-size:1rem}
.tl .yr{font-family:'Mukta';font-weight:700;letter-spacing:.1em;color:#ffdf8a;font-size:.8rem}

/* values */
.values{background:var(--bg)}

/* quality */
.quality{background:linear-gradient(180deg,var(--bg),var(--bg-2))}

/* testimonials */
.testi{background:var(--bg)}

/* team */
.team{background:linear-gradient(180deg,var(--bg-2),var(--bg))}

/* contact */
.contact{background:var(--forest);color:#eef0e4}
.contact h2{color:#fff}
.contact .eyebrow{color:#ffdf8a}
.c-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:50px;align-items:start}
.c-info .ci{display:flex;gap:16px;align-items:flex-start;margin-bottom:24px}
.c-info .ci i{width:46px;height:46px;border-radius:12px;background:rgba(255,255,255,.08);display:grid;place-items:center;color:#ffdf8a;font-size:1.1rem;flex:none}
.c-info .ci b{display:block;color:#fff;font-family:'Cormorant Garamond';font-size:1.2rem}
.c-info .ci span{color:#cfd6c2;font-size:.95rem}
.c-info .socials{display:flex;gap:12px;margin-top:8px}
.c-info .socials a{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#fff;font-size:1.05rem;transition:.3s}
.c-info .socials a:hover{background:var(--gold);color:#2a2107;transform:translateY(-3px)}
.form-wrap{background:var(--paper);border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}
.form-wrap iframe{width:100%;border:0;border-radius:14px;min-height:640px;background:var(--paper)}

/* footer */
footer{background:#16281a;color:#b9c4ac;text-align:center;padding:40px 0}
footer .brand{justify-content:center;margin-bottom:14px}
footer .brand b,footer .brand span{color:#eef0e4}
footer p{font-size:.85rem}
footer .sep{width:60px;height:1px;background:rgba(255,255,255,.15);margin:14px auto}
