/* ============================================================
   JMDA Analytic Pvt Ltd — core stylesheet
   Brand tokens, base typography, layout, navbar, buttons,
   cards, forms, footer and responsive rules.
   Loaded by every page. Page-specific rules live in css/<page>.css
   ============================================================ */

:root{--green:#006140; --green-d:#004A31; --green-l:#0C7C55; --gold:#C08A2E; --gold-t:#8A5F14; --gold-l:#E0AE4E; --ink:#111111; --ink-2:#2E2E2E; --slate:#4F5A54; --paper:#F5F4F0; --surface:#FFFFFF; --line:rgba(18,33,27,.13); --display:'Archivo','Segoe UI','Helvetica Neue',Helvetica,Arial,sans-serif; --ui:'Inter','Segoe UI',Roboto,-apple-system,'Helvetica Neue',Arial,sans-serif; --mono:'JetBrains Mono',Consolas,Menlo,monospace; --nav-h:64px; --cta-h:0px; --bs-body-font-family:var(--ui); --bs-body-color:var(--ink); --bs-body-bg:var(--paper); --bs-link-color:var(--green); --bs-link-hover-color:var(--green-l); --bs-border-color:var(--line);}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
}
body{font-family:var(--ui);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased; padding-bottom:var(--cta-h);overflow-x:hidden}
h1,h2,h3,h4{font-family:var(--display);font-variation-settings:'wdth' 100,'wght' 700;letter-spacing:-.02em;color:var(--ink)}
h1{font-size:clamp(27px,4.2vw,46px);line-height:1.08}
h2{font-size:clamp(21px,2.9vw,31px);line-height:1.15}
h3{font-size:clamp(16px,1.7vw,19px);line-height:1.3;font-variation-settings:'wdth' 100,'wght' 600}
p{color:var(--ink-2)}
.lead{font-size:clamp(15.5px,1.5vw,18px);line-height:1.56;color:var(--ink-2)}
.mono{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.micro{font-size:.79rem;color:var(--slate)}
.rule-gold{width:56px;height:2px;background:var(--gold);border:0;opacity:1;margin:.9rem 0}
img{max-width:100%}
section{scroll-margin-top:calc(var(--nav-h) + 12px)}
.section-pad{padding:clamp(40px,5.4vw,76px) 0}
.bg-paper{background:var(--paper)}
.bg-surface{background:var(--surface)}
.bg-brand{background:var(--green-d);color:#fff}
.bg-brand h2,.bg-brand h3{color:#fff}
.bg-brand p,.bg-brand .lead{color:#EDF5F1}
.sec-tag{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--mono);font-size:10px; letter-spacing:.18em;text-transform:uppercase;color:var(--gold-t);border:1px solid var(--line); border-radius:99px;padding:.4rem .8rem;margin-bottom:1rem}
.bg-brand .sec-tag{color:var(--gold-l);border-color:rgba(255,255,255,.35)}
.btn{font-weight:600;border-radius:8px;padding:.7rem 1.3rem;font-size:.94rem;min-height:46px; display:inline-flex;align-items:center;justify-content:center;gap:.45rem}
.btn-sm{min-height:40px;padding:.5rem .9rem;font-size:.85rem}
.btn-brand{background:var(--green);color:#fff;border:1px solid var(--green)}
.btn-brand:hover{background:var(--green-l);color:#fff;border-color:var(--green-l)}
.btn-outline-brand{background:transparent;color:var(--green);border:1px solid var(--green)}
.btn-outline-brand:hover{background:var(--green);color:#fff}
.btn-gold{background:var(--gold);color:#1a1200;border:1px solid var(--gold);font-weight:700}
.btn-gold:hover{background:var(--gold-l);color:#1a1200}
.btn-wa{background:#25D366;color:#0a2e17;border:1px solid #25D366;font-weight:700}
.navbar{background:rgba(245,244,240,.96);backdrop-filter:blur(10px);border-bottom:1px solid var(--line); min-height:var(--nav-h);padding-top:.35rem;padding-bottom:.35rem}
.navbar-brand img{height:23px;width:auto;display:block}
.navbar .nav-link{font-size:.85rem;font-weight:500;color:var(--ink-2);padding:.5rem .52rem}
.navbar .nav-link:hover,.navbar .nav-link.active{color:var(--green)}
.navbar .nav-link.active{font-weight:600}
.navbar-toggler{border-color:var(--line);padding:.4rem .6rem}
.navbar-toggler:focus{box-shadow:0 0 0 3px rgba(0,97,64,.2)}
.pagehead{padding:clamp(28px,4vw,52px) 0 clamp(22px,2.6vw,34px);border-bottom:1px solid var(--line);background:var(--surface)}
.breadcrumb{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem}
.breadcrumb-item+.breadcrumb-item::before{content:"/";color:var(--gold)}
.breadcrumb a{color:var(--slate);text-decoration:none}
.breadcrumb a:hover{color:var(--green)}
.breadcrumb-item.active{color:var(--ink)}
.card{border:1px solid var(--line);border-radius:10px;background:var(--surface)}
[class*="col-"] > .card:only-child{height:100%}
.card-hover{transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}
.card-hover:hover{transform:translateY(-3px);border-color:var(--green);box-shadow:0 10px 26px rgba(18,33,27,.09)}
.bg-brand .card{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16);color:#fff}
.icon-sq{width:42px;height:42px;border-radius:10px;background:rgba(0,97,64,.09);color:var(--green); display:flex;align-items:center;justify-content:center;font-size:20px;margin-bottom:.75rem}
.bg-brand .icon-sq{background:rgba(255,255,255,.1);color:var(--gold-l)}
.frame{position:relative;display:block;width:100%;border-radius:10px;overflow:hidden; background:#E9ECE8;border:1px solid var(--line);aspect-ratio:1/1}
.frame > img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
footer{background:#0B1611;color:#C9D6CF}
footer a{color:#C9D6CF;text-decoration:none}
footer a:hover,footer a:focus{color:var(--gold-l);text-decoration:underline}
footer .ft-h{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-l);margin-bottom:.85rem}
.mobile-cta{position:fixed;left:0;right:0;bottom:0;z-index:1040;display:none;background:var(--surface); border-top:1px solid var(--line);box-shadow:0 -4px 18px rgba(18,33,27,.12); padding:.5rem .6rem calc(.5rem + env(safe-area-inset-bottom))}
.mobile-cta .btn{flex:1 1 0;min-height:48px;font-size:.85rem;padding:.5rem .4rem}
.fab{position:fixed;right:18px;bottom:18px;z-index:1030;display:flex;flex-direction:column;gap:10px}
.fab a,.fab button{width:50px;height:50px;border-radius:50%;display:flex;align-items:center;justify-content:center; color:#fff;font-size:21px;text-decoration:none;border:0;box-shadow:0 6px 18px rgba(0,0,0,.22)}
.fab .wa{background:#25D366}
.fab .tel{background:var(--green)}
#toTop{background:var(--ink);display:none!important}
#toTop.show{display:flex!important}
.reveal{opacity:0;transform:translateY(14px);transition:opacity .5s ease,transform .5s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none}
  .card-hover:hover{transform:none}
}
@media (max-width:991.98px){
  .navbar-collapse{padding:.8rem 0 .4rem;border-top:1px solid var(--line);margin-top:.6rem}
  .navbar .nav-link{padding:.7rem .2rem;font-size:.97rem}
}
@media (max-width:767.98px){
  :root{--cta-h:64px}
  .mobile-cta{display:flex;gap:.45rem}
  .fab{display:none}
  #toTop.show{display:none!important}
  h1{font-size:clamp(25px,6.6vw,33px)}
  .section-pad{padding:36px 0}
}
@media (max-width:400px){
  .navbar-brand img{height:20px}
  .mobile-cta .btn{font-size:.78rem}
}
.sec-tag b{font-weight:500;opacity:.75}
.sec-intro{max-width:62ch}
.btn-lg{min-height:54px;padding:.85rem 1.75rem;font-size:1.02rem}
.btn-wa:hover{background:#1eb85a;color:#062b13}
.tagline{font-family:var(--display);font-variation-settings:'wdth' 100,'wght' 600; font-size:clamp(15px,1.7vw,19px);color:var(--green);letter-spacing:-.005em;margin:.55rem 0 .9rem}
.tagline::before{content:'';display:inline-block;width:26px;height:2px;background:var(--gold); vertical-align:middle;margin-right:.6rem}
.bg-brand .card p,.bg-brand .card li{color:#EDF5F1}
.bullet{list-style:none;margin:0;padding:0}
.bullet li{position:relative;padding-left:20px;margin-bottom:.55rem;font-size:.92rem;color:var(--ink-2)}
.bullet li::before{content:'';position:absolute;left:0;top:.6rem;width:8px;height:2px;background:var(--gold);border-radius:2px}
.bg-brand .bullet li{color:#EDF5F1}
@media (max-width:991.98px){
  .section-pad{padding:52px 0}
}
@media (max-width:767.98px){
  h2{font-size:clamp(21px,5.6vw,27px)}
}
