/*
Theme Name: Aadigiri Custom Theme
Theme URI: https://aadigiri.com/
Author: Antigravity AI
Description: Custom WordPress theme built for Aadigiri B2B Pharmaceutical Distributor.
Version: 1.0.0
Text Domain: aadigiri
*/

@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800;900&display=swap');
/* ━━━━━━━━━━━━━━━━━━━━━━━━━
   BRAND TOKENS (exact from brand kit)
━━━━━━━━━━━━━━━━━━━━━━━━━ */
:root {
  /* Brand Colors */
  --red:      #B62025;
  --red-dk:   #8e191e;
  --red-lt:   #f9ecec;
  --teal:     #09506D;
  --teal-dk:  #063a50;
  --teal-lt:  #e4eef3;
  --green:    #37740B;
  --green-lt: #eaf2e0;

  /* Neutrals */
  --white:    #ffffff;
  --paper:    #f8f7f5;
  --cream:    #f2f0ec;
  --rule:     #e4e1db;
  --ink:      #111111;
  --ink-70:   #555555;
  --ink-40:   #999999;
  --ink-15:   #e0e0e0;

  /* Type — Brand Typeface */
  --f: 'Montserrat', sans-serif;

  /* Layout */
  --max: 1280px;
  --gutter: clamp(20px, 5vw, 80px);
}

/* ━━━━━ RESET ━━━━━ */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--f);background:var(--white);color:var(--ink);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
button{font-family:var(--f)}

/* ━━━━━ LAYOUT ━━━━━ */
.wrap{max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}
section{position:relative}

/* ━━━━━ PAGE SYSTEM ━━━━━ */
.pg{display:block;opacity:1} /* Simplified for multi-page */

/* ━━━━━ TYPOGRAPHY ━━━━━ */
.eyebrow{
  font-size:10px;font-weight:700;letter-spacing:3px;
  text-transform:uppercase;color:var(--red);
  display:flex;align-items:center;gap:12px;
  margin-bottom:18px;
}
.eyebrow::before{content:'';width:24px;height:2px;background:var(--red);flex-shrink:0}

.d1{font-size:clamp(44px,6vw,80px);font-weight:900;line-height:1.0;letter-spacing:-2px;color:var(--ink)}
.d2{font-size:clamp(32px,4vw,56px);font-weight:800;line-height:1.05;letter-spacing:-1.5px;color:var(--ink)}
.d3{font-size:clamp(22px,2.5vw,36px);font-weight:800;line-height:1.1;letter-spacing:-0.8px;color:var(--ink)}
.d4{font-size:clamp(16px,1.8vw,22px);font-weight:700;line-height:1.2;color:var(--ink)}

.t-red{color:var(--red)}
.t-teal{color:var(--teal)}
.t-green{color:var(--green)}
.t-muted{color:var(--ink-70)}

.body-lg{font-size:15px;line-height:1.85;color:var(--ink-70);font-weight:400}
.body-md{font-size:13px;line-height:1.8;color:var(--ink-70);font-weight:400}

/* ━━━━━ REVEAL ━━━━━ */
.rv{opacity:0;transform:translateY(24px);transition:opacity .75s cubic-bezier(.25,.46,.45,.94),transform .75s cubic-bezier(.25,.46,.45,.94)}
.rv.in{opacity:1;transform:none}
.d1s{transition-delay:.05s}.d2s{transition-delay:.12s}.d3s{transition-delay:.19s}.d4s{transition-delay:.26s}.d5s{transition-delay:.33s}

/* ━━━━━ BUTTONS ━━━━━ */
.btn{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--f);font-size:11px;font-weight:700;
  letter-spacing:2px;text-transform:uppercase;
  padding:14px 30px;transition:all .2s;border:none;
  text-decoration:none;cursor:pointer;
}
.btn-red{background:var(--red);color:var(--white)}
.btn-red:hover{background:var(--red-dk)}
.btn-teal{background:var(--teal);color:var(--white)}
.btn-teal:hover{background:var(--teal-dk)}
.btn-outline{background:transparent;color:var(--ink);border:2px solid var(--ink)}
.btn-outline:hover{background:var(--ink);color:var(--white)}
.btn-outline-white{background:transparent;color:var(--white);border:2px solid rgba(255,255,255,.5)}
.btn-outline-white:hover{border-color:var(--white);background:rgba(255,255,255,.08)}
.btn-full{width:100%;justify-content:center}
.btn svg{width:14px;height:14px;transition:transform .2s;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.btn:hover svg{transform:translateX(4px)}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━
   NAVIGATION
━━━━━━━━━━━━━━━━━━━━━━━━━ */
.header{
  position:fixed;top:0;left:0;right:0;z-index:900;
  background:rgba(255,255,255,.96);backdrop-filter:blur(12px);
  border-bottom:1px solid var(--rule);
  transition:box-shadow .3s;
}
.header.elevated{box-shadow:0 2px 24px rgba(0,0,0,.08)}
.nav{
  max-width:var(--max);margin:0 auto;
  padding:0 var(--gutter);
  height:70px;display:flex;align-items:center;justify-content:space-between;
}
/* Logo as text since we don't have the image file */
.nav-logo{
  display:flex;flex-direction:column;text-decoration:none;gap:1px;
}
.nav-logo-main{
  display:flex;align-items:baseline;gap:4px;
}
.nav-logo-ag{
  font-size:28px;font-weight:900;color:var(--teal);letter-spacing:-1px;line-height:1;
}
.nav-logo-name{
  font-size:18px;font-weight:800;color:var(--red);letter-spacing:-0.5px;line-height:1;
}
.nav-logo-reg{font-size:10px;color:var(--red);vertical-align:super}
.nav-logo-sub{font-size:8px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;color:var(--ink-40);margin-top:1px}

.nav-menu{display:flex;align-items:center;gap:8px;list-style:none}
.nav-menu li a{
  text-decoration:none;
  font-family:var(--f);font-size:11px;font-weight:600;
  letter-spacing:1.2px;text-transform:uppercase;
  color:var(--ink-70);background:none;border:none;
  padding:8px 14px;position:relative;cursor:pointer;
  transition:color .2s;
  display: block;
}
.nav-menu li a::after{
  content:'';position:absolute;bottom:2px;left:14px;right:14px;
  height:2px;background:var(--red);
  transform:scaleX(0);transform-origin:right;transition:transform .25s;
}
.nav-menu li a:hover{color:var(--ink)}
.nav-menu li a:hover::after,.nav-menu li a.active::after{transform:scaleX(1);transform-origin:left}
.nav-menu li a.active{color:var(--ink)}

.nav-enquire{
  text-decoration:none;
  font-family:var(--f);font-size:10px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;
  background:var(--red);color:var(--white);border:none;
  padding:10px 22px;cursor:pointer;transition:background .2s;
  display: inline-block;
}
.nav-enquire:hover{background:var(--red-dk)}
.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px}
.hamburger span{width:22px;height:2px;background:var(--ink);display:block;transition:all .3s}

.mob-nav{
  display:none;position:fixed;top:70px;left:0;right:0;bottom:0;
  background:var(--white);z-index:800;
  padding:40px var(--gutter);flex-direction:column;gap:0;
  border-top:1px solid var(--rule);overflow-y:auto;
}
.mob-nav.open{display:flex}
.mob-nav a{
  text-decoration:none;
  font-family:var(--f);font-size:20px;font-weight:700;
  color:var(--ink);background:none;border:none;border-bottom:1px solid var(--rule);
  padding:20px 0;text-align:left;cursor:pointer;transition:color .2s;
}
.mob-nav a:hover{color:var(--red)}
.mob-nav .mob-cta{
  background:var(--red);color:var(--white);text-align:center;
  border:none;margin-top:20px;padding:18px;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━
   MARQUEE
━━━━━━━━━━━━━━━━━━━━━━━━━ */
.marquee-bar{
  overflow:hidden;padding:15px 0;
  border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  background:var(--cream);
}
.marquee-track{display:flex;animation:roll 40s linear infinite;white-space:nowrap}
.m-item{
  font-size:10px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;
  color:var(--ink-40);padding:0 36px;flex-shrink:0;
  display:flex;align-items:center;gap:36px;
}
.m-item::after{content:'';width:4px;height:4px;border-radius:50%;background:var(--red);opacity:.7}
@keyframes roll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━
   PAGE: HOME
━━━━━━━━━━━━━━━━━━━━━━━━━ */

/* HERO */
.hero{
  min-height:100vh;padding-top:70px;
  display:grid;grid-template-columns:1fr 1fr;
  background:var(--white);
}
.hero-l{
  padding:clamp(60px,9vh,130px) var(--gutter) clamp(60px,9vh,130px) 0;
  display:flex;flex-direction:column;justify-content:center;
  border-right:1px solid var(--rule);
  position:relative;overflow:hidden;
}
.hero-watermark{
  position:absolute;right:-40px;top:50%;transform:translateY(-50%);
  font-size:clamp(180px,20vw,280px);font-weight:900;
  color:rgba(0,0,0,.03);line-height:1;user-select:none;pointer-events:none;
  letter-spacing:-8px;
}
.hero-l .eyebrow{animation:fup .9s ease .1s both}
.hero-l .d1{animation:fup .9s ease .25s both;margin-bottom:24px}
.hero-l .hero-sub{animation:fup .9s ease .4s both;margin-bottom:44px}
.hero-l .hero-btns{animation:fup .9s ease .55s both}
.hero-sub{font-size:15px;line-height:1.85;color:var(--ink-70);font-weight:400;max-width:440px}
.hero-btns{display:flex;gap:12px;flex-wrap:wrap}

.hero-r{
  display:flex;flex-direction:column;
  animation:fup .9s ease .35s both;
}
.stat-grid{display:grid;grid-template-columns:1fr 1fr;flex:1}
.stat-cell{
  padding:clamp(32px,5vh,64px) clamp(24px,3vw,52px);
  border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);
  transition:background .25s;
}
.stat-cell:nth-child(even){border-right:none}
.stat-cell:nth-child(3),.stat-cell:nth-child(4){border-bottom:none}
.stat-cell:hover{background:var(--cream)}
.stat-val{
  font-size:clamp(44px,5.5vw,72px);font-weight:900;
  color:var(--teal);line-height:1;margin-bottom:8px;letter-spacing:-2px;
}
.stat-val sup{font-size:.38em;color:var(--red);vertical-align:super;font-weight:800}
.stat-lbl{
  font-size:9px;font-weight:700;letter-spacing:2.5px;
  text-transform:uppercase;color:var(--ink-40);
}
.hero-note{
  padding:clamp(24px,4vh,44px) clamp(24px,3vw,52px);
  background:var(--teal);border-top:none;
}
.hero-note p{
  font-size:14px;font-weight:500;line-height:1.7;
  color:rgba(255,255,255,.75);font-style:italic;
}
.hero-note cite{
  display:block;margin-top:12px;font-style:normal;
  font-size:9px;font-weight:700;letter-spacing:2px;
  text-transform:uppercase;color:rgba(255,255,255,.4);
}
@keyframes fup{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}

/* INTRO BAND */
.intro-band{
  padding:clamp(80px,10vh,140px) 0;
  border-bottom:1px solid var(--rule);
}
.intro-inner{display:grid;grid-template-columns:1fr 2fr;gap:clamp(48px,6vw,100px);align-items:start}
.intro-inner .d2{margin-bottom:24px}
.intro-inner .body-lg{max-width:560px}

/* PILLARS */
.pillars{padding:clamp(80px,10vh,140px) 0;border-bottom:1px solid var(--rule)}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:56px;gap:24px;flex-wrap:wrap}
.pillar-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  border:1px solid var(--rule);
}
.pillar{
  padding:clamp(32px,4vw,52px) clamp(24px,3vw,40px);
  border-right:1px solid var(--rule);
  transition:background .25s;
}
.pillar:last-child{border-right:none}
.pillar:hover{background:var(--cream)}
.pillar-num{
  font-size:56px;font-weight:900;color:var(--ink-15);line-height:1;
  margin-bottom:24px;letter-spacing:-2px;transition:color .25s;
}
.pillar:hover .pillar-num{color:var(--rule)}
.pillar h4{font-size:13px;font-weight:700;color:var(--ink);margin-bottom:10px;letter-spacing:.3px}
.pillar p{font-size:12px;line-height:1.75;color:var(--ink-70)}

/* PRODUCT PREVIEW */
.prod-preview{padding:clamp(80px,10vh,140px) 0;background:var(--paper);border-bottom:1px solid var(--rule)}
.preview-head{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end;margin-bottom:56px}
.preview-cats{
  display:grid;grid-template-columns:repeat(3,1fr);
  border:1px solid var(--rule);
}
.prev-cat{
  background:var(--white);padding:40px 32px;
  border-right:1px solid var(--rule);
  transition:background .25s;position:relative;overflow:hidden;
}
.prev-cat:last-child{border-right:none}
.prev-cat:hover{background:var(--cream)}
.prev-cat-bg{
  position:absolute;bottom:-12px;right:-8px;
  font-size:100px;font-weight:900;color:rgba(0,0,0,.04);
  line-height:1;user-select:none;pointer-events:none;letter-spacing:-4px;
}
.prev-cat .eyebrow{margin-bottom:12px}
.prev-cat h3{font-size:18px;font-weight:800;color:var(--ink);margin-bottom:10px}
.prev-cat p{font-size:12px;line-height:1.7;color:var(--ink-70);margin-bottom:20px}
.prod-count{
  font-size:10px;font-weight:700;letter-spacing:1.5px;
  text-transform:uppercase;color:var(--teal);
  display:flex;align-items:center;gap:8px;
}
.prod-count::before{content:'';width:16px;height:2px;background:var(--teal)}

/* INDUSTRIES LIST */
.ind-list-sec{padding:clamp(80px,10vh,140px) 0;border-bottom:1px solid var(--rule)}
.ind-table{width:100%;border-collapse:collapse;margin-top:48px}
.ind-table tr{border-bottom:1px solid var(--rule);cursor:pointer}
.ind-table tr:first-child{border-top:1px solid var(--rule)}
.ind-table tr:hover td:first-child{color:var(--red)}
.ind-table tr:hover td{color:var(--ink)}
.ind-table td{
  padding:26px 0;font-size:13px;font-weight:500;
  color:var(--ink-70);transition:color .2s;
}
.ind-table td:first-child{
  font-size:clamp(16px,2vw,22px);font-weight:800;
  color:var(--ink);width:35%;letter-spacing:-0.3px;
}
.ind-table td:last-child{
  text-align:right;font-size:10px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-40);
}

/* DARK CTA */
.dark-cta{background:var(--teal);padding:clamp(80px,12vh,160px) 0;text-align:center}
.dark-cta .d2{color:var(--white);margin-bottom:16px}
.dark-cta .d2 span{color:#f5c842}
.dark-cta p{font-size:15px;color:rgba(255,255,255,.6);margin-bottom:48px;font-weight:400}
.dark-cta-btns{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━
   PAGE: PRODUCTS
━━━━━━━━━━━━━━━━━━━━━━━━━ */
.pg-hero{
  padding:clamp(110px,15vh,170px) 0 clamp(64px,8vh,100px);
  border-bottom:1px solid var(--rule);
}
.pg-hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:end}

.prod-tabs-sec{padding:clamp(64px,8vh,100px) 0}
.tab-bar{
  display:flex;border-bottom:2px solid var(--rule);
  margin-bottom:56px;gap:0;
}
.tab-btn{
  font-family:var(--f);font-size:11px;font-weight:700;
  letter-spacing:1.5px;text-transform:uppercase;
  color:var(--ink-40);background:none;border:none;
  padding:14px 32px;border-bottom:3px solid transparent;
  margin-bottom:-2px;cursor:pointer;transition:all .2s;
}
.tab-btn.on{color:var(--teal);border-bottom-color:var(--teal)}
.tab-btn:hover:not(.on){color:var(--ink-70)}

.tab-pane{display:none}
.tab-pane.on{display:block}

.cat-intro{
  padding-bottom:40px;margin-bottom:40px;
  border-bottom:1px solid var(--rule);
  display:grid;grid-template-columns:1fr 2fr;gap:80px;
}
.cat-tag{
  font-size:10px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  color:var(--red);display:flex;align-items:center;gap:10px;margin-bottom:12px;
}
.cat-tag::before{content:'';width:18px;height:2px;background:var(--red)}
.grade-pills{display:flex;gap:6px;flex-wrap:wrap;margin-top:20px}
.gp{
  font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  padding:5px 12px;border:1px solid var(--rule);color:var(--teal);
  transition:all .2s;
}
.gp:hover{border-color:var(--teal);background:var(--teal-lt)}

/* Card grid */
.prod-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  border:1px solid var(--rule);
}
.pc{
  padding:32px 28px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);
  transition:background .2s;
}
.pc:nth-child(3n){border-right:none}
.pc:hover{background:var(--paper)}
.pc h4{font-size:15px;font-weight:800;color:var(--ink);margin-bottom:9px;letter-spacing:-.3px}
.pc p{font-size:12px;line-height:1.7;color:var(--ink-70);margin-bottom:18px}
.pc-grades{display:flex;gap:5px;flex-wrap:wrap}
.pcg{
  font-size:9px;font-weight:700;letter-spacing:1px;text-transform:uppercase;
  padding:3px 9px;background:var(--teal-lt);color:var(--teal);
}

/* List grid */
.list-grid{
  display:grid;grid-template-columns:repeat(4,1fr);
  border:1px solid var(--rule);
}
.li{
  padding:18px 20px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);
  font-size:13px;font-weight:600;color:var(--ink-70);
  display:flex;align-items:center;gap:10px;transition:background .2s,color .2s;
}
.li::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--red);flex-shrink:0;opacity:.6}
.li:hover{background:var(--red-lt);color:var(--ink)}
.li:nth-child(4n){border-right:none}

.grade-note{margin-top:20px;font-size:11px;color:var(--ink-40);font-weight:500;letter-spacing:.3px}

.cta-banner{
  margin-top:80px;border:1px solid var(--rule);
  padding:48px;display:flex;align-items:center;justify-content:space-between;
  gap:32px;background:var(--paper);
}
.cta-banner h3{font-size:22px;font-weight:800;color:var(--ink);margin-bottom:6px}
.cta-banner p{font-size:13px;color:var(--ink-70)}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━
   PAGE: ABOUT
━━━━━━━━━━━━━━━━━━━━━━━━━ */
.about-story{padding:clamp(80px,10vh,140px) 0;border-bottom:1px solid var(--rule)}
.about-cols{display:grid;grid-template-columns:1fr 1fr;gap:80px}

.red-block{
  background:var(--red);padding:40px;margin-bottom:40px;
}
.red-block .eyebrow{color:rgba(255,255,255,.6)}
.red-block .eyebrow::before{background:rgba(255,255,255,.4)}
.red-block p{
  font-size:clamp(18px,2.2vw,26px);font-weight:700;
  color:var(--white);line-height:1.4;letter-spacing:-.3px;
}

.timeline{display:flex;flex-direction:column;gap:0}
.tl{
  display:grid;grid-template-columns:72px 1fr;gap:24px;
  padding:28px 0;border-bottom:1px solid var(--rule);
  transition:padding-left .2s;
}
.tl:last-child{border-bottom:none}
.tl:hover{padding-left:8px}
.tl-yr{font-size:13px;font-weight:800;color:var(--red);padding-top:2px}
.tl h4{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:6px}
.tl p{font-size:13px;line-height:1.75;color:var(--ink-70)}

.about-right-content .d3{margin-bottom:24px}

/* VALUES */
.values-sec{padding:clamp(80px,10vh,140px) 0;border-bottom:1px solid var(--rule);background:var(--paper)}
.val-grid{
  display:grid;grid-template-columns:1fr 1fr;
  border:1px solid var(--rule);margin-top:56px;
}
.val{
  padding:clamp(36px,5vw,56px) clamp(28px,4vw,48px);
  border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);
  transition:background .25s;
}
.val:nth-child(even){border-right:none}
.val:nth-last-child(-n+2){border-bottom:none}
.val:hover{background:var(--white)}
.val-n{font-size:64px;font-weight:900;color:var(--ink-15);line-height:1;margin-bottom:20px;letter-spacing:-3px}
.val h3{font-size:15px;font-weight:800;color:var(--ink);margin-bottom:10px}
.val p{font-size:13px;line-height:1.8;color:var(--ink-70)}

/* CERTS */
.certs-sec{padding:clamp(80px,10vh,140px) 0}
.cert-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  border:1px solid var(--rule);margin-top:56px;
}
.cert{
  padding:36px 32px;border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);
  transition:background .25s;
}
.cert:nth-child(3n){border-right:none}
.cert:nth-last-child(-n+3){border-bottom:none}
.cert:hover{background:var(--paper)}
.cert h4{font-size:14px;font-weight:800;color:var(--teal);margin-bottom:6px}
.cert p{font-size:12px;color:var(--ink-70);line-height:1.6}

/* LOCATIONS */
.locs-sec{padding:clamp(80px,10vh,140px) 0;background:var(--teal);border-top:1px solid var(--rule)}
.locs-sec .eyebrow{color:rgba(255,255,255,.5)}
.locs-sec .eyebrow::before{background:rgba(255,255,255,.4)}
.locs-sec .d2{color:var(--white);margin-bottom:56px}
.locs-sec .d2 span{color:#f5c842}
.loc-grid{display:grid;grid-template-columns:1fr 1fr;border:1px solid rgba(255,255,255,.15)}
.loc{
  padding:clamp(40px,5vw,64px) clamp(32px,4vw,52px);
  border-right:1px solid rgba(255,255,255,.15);
}
.loc:last-child{border-right:none}
.loc-tag{
  font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  color:rgba(255,255,255,.5);margin-bottom:14px;
  display:flex;align-items:center;gap:8px;
}
.loc-tag::before{content:'';width:16px;height:2px;background:rgba(255,255,255,.4)}
.loc h3{font-size:clamp(18px,2vw,26px);font-weight:800;color:var(--white);margin-bottom:14px;letter-spacing:-.5px}
.loc p{font-size:13px;color:rgba(255,255,255,.6);line-height:1.75}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━
   PAGE: INDUSTRIES
━━━━━━━━━━━━━━━━━━━━━━━━━ */
.ind-grid-sec{padding:clamp(64px,8vh,100px) 0}
.ind-full-grid{
  display:grid;grid-template-columns:1fr 1fr;
  border:1px solid var(--rule);
}
.ind-box{
  padding:clamp(40px,5vw,64px) clamp(32px,4vw,52px);
  border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);
  transition:background .25s;
}
.ind-box:nth-child(even){border-right:none}
.ind-box:nth-last-child(-n+2){border-bottom:none}
.ind-box:hover{background:var(--paper)}
.ind-icon{font-size:40px;margin-bottom:24px;display:block}
.ind-box h3{font-size:clamp(18px,2.2vw,26px);font-weight:800;color:var(--ink);margin-bottom:12px;letter-spacing:-.5px}
.ind-box p{font-size:13px;line-height:1.8;color:var(--ink-70);margin-bottom:24px}
.ind-list{list-style:none;display:flex;flex-direction:column;gap:10px}
.ind-list li{
  font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;
  color:var(--teal);display:flex;align-items:center;gap:12px;
}
.ind-list li::before{content:'';width:16px;height:2px;background:var(--teal)}

.cta-dark-sec{background:var(--teal);padding:clamp(64px,8vh,100px) 0;color:var(--white)}
.cta-dark-inner{text-align:center;max-width:700px;margin:0 auto}
.cta-dark-inner h2, .cta-dark-inner .d3 {color: var(--white); margin-bottom:16px}
.cta-dark-inner p, .cta-dark-inner div {font-size:14px;color:rgba(255,255,255,.6);margin-bottom:32px}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━
   PAGE: CONTACT
━━━━━━━━━━━━━━━━━━━━━━━━━ */
.contact-sec{padding:clamp(64px,8vh,100px) 0}
.contact-split{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(40px,6vw,100px);align-items:start}

.form-card{background:var(--paper);border:1px solid var(--rule);padding:clamp(32px,4vw,56px)}
.f-grp{margin-bottom:20px}
.f-grp label{
  display:block;font-size:9px;font-weight:700;letter-spacing:2px;text-transform:uppercase;
  color:var(--ink-40);margin-bottom:8px;
}
.f-grp input,.f-grp select,.f-grp textarea{
  width:100%;background:var(--white);border:1px solid var(--rule);
  padding:14px 18px;font-family:var(--f);font-size:14px;color:var(--ink);
  outline:none;transition:border-color .2s;border-radius:0;
}
.f-grp input:focus,.f-grp textarea:focus{border-color:var(--teal)}
.f-grp textarea{height:140px;resize:none}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}
.form-row .f-grp{margin-bottom:0}

.info-box{background:var(--cream);padding:clamp(32px,4vw,56px);border:1px solid var(--rule)}
.info-item{display:flex;gap:20px;margin-top:32px}
.ii-icon{
  width:44px;height:44px;border-radius:50%;background:var(--white);
  display:flex;align-items:center;justify-content:center;
  flex-shrink:0;font-size:18px;border:1px solid var(--rule);
}
.info-item h5{font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-40);margin-bottom:4px}
.info-item a,.info-item p{font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;line-height:1.6}
.info-item a:hover{color:var(--red)}

.map-sec{padding-bottom:clamp(64px,8vh,100px)}
.map-placeholder{
  height:400px;background:var(--paper);border:1px solid var(--rule);
  display:flex;align-items:center;justify-content:center;
  color:var(--ink-40);font-size:12px;font-weight:700;letter-spacing:1px;text-transform:uppercase;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━
   FOOTER
━━━━━━━━━━━━━━━━━━━━━━━━━ */
.footer{
  background:var(--ink);
  padding:clamp(60px,8vh,100px) 0 40px;
}
.footer-grid{
  display:grid;grid-template-columns:2fr 1fr 1fr 1fr;
  gap:clamp(32px,5vw,64px);
  padding-bottom:56px;
  border-bottom:1px solid rgba(255,255,255,.08);
  margin-bottom:36px;
}
.f-brand-name{
  font-size:22px;font-weight:900;color:var(--white);
  margin-bottom:4px;letter-spacing:-.5px;
}
.f-brand-name em{font-style:normal;color:var(--red)}
.f-brand-name span{color:rgba(255,255,255,.3)}
.f-tagline{
  font-size:12px;font-weight:500;color:rgba(255,255,255,.35);
  margin-bottom:20px;line-height:1.5;
}
.f-contacts{font-size:12px;color:rgba(255,255,255,.35);line-height:2.1}
.f-contacts a{color:rgba(255,255,255,.35);text-decoration:none;transition:color .2s}
.f-contacts a:hover{color:rgba(255,255,255,.7)}
.f-col h5{
  font-size:9px;font-weight:700;letter-spacing:2.5px;text-transform:uppercase;
  color:rgba(255,255,255,.25);margin-bottom:20px;
}
.f-col ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.f-col li a{
  text-decoration:none;
  font-family:var(--f);font-size:13px;font-weight:400;
  color:rgba(255,255,255,.5);background:none;border:none;
  text-align:left;cursor:pointer;transition:color .2s;padding:0;
}
.f-col li a:hover,.f-col a:hover{color:var(--white)}
.f-col a{font-size:13px;color:rgba(255,255,255,.5);text-decoration:none;font-weight:400;transition:color .2s}
.footer-btm{
  display:flex;justify-content:space-between;align-items:center;
  flex-wrap:wrap;gap:16px;
}
.footer-btm p{font-size:11px;color:rgba(255,255,255,.2);font-weight:400}
.footer-gst{font-size:11px;color:rgba(255,255,255,.2);text-align:right;line-height:1.8}

/* WHATSAPP */
.wa{
  position:fixed;bottom:28px;right:28px;z-index:999;
  width:52px;height:52px;border-radius:50%;
  background:#25d366;display:flex;align-items:center;justify-content:center;
  box-shadow:0 4px 20px rgba(37,211,102,.35);text-decoration:none;
  transition:transform .2s,box-shadow .2s;
}
.wa:hover{transform:scale(1.08);box-shadow:0 6px 28px rgba(37,211,102,.5)}
.wa svg{width:24px;height:24px;fill:white}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━
   RESPONSIVE
━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media(max-width:1024px){:root{--gutter:32px}}

@media(max-width:860px){
  :root{--gutter:24px}
  
  /* Header & Nav */
  .nav-menu, .nav-enquire {display:none}
  .hamburger {display:flex}
  .header {background:rgba(255,255,255,0.98); backdrop-filter:blur(15px)}
  
  /* Hamburger Animation */
  .hamburger.active span:nth-child(1) {transform:translateY(7px) rotate(45deg)}
  .hamburger.active span:nth-child(2) {opacity:0}
  .hamburger.active span:nth-child(3) {transform:translateY(-7px) rotate(-45deg)}

  /* Global Hero */
  .hero {grid-template-columns:1fr; min-height:auto}
  .hero-l {padding:64px var(--gutter) 40px; border-right:none; border-bottom:1px solid var(--rule)}
  .hero-r {padding:0 var(--gutter) 64px; border-top:none}
  .hero-watermark {display:none}
  .hero-btns {flex-direction:column; gap:10px}
  .hero-btns .btn {width:100%; justify-content:center}
  
  /* Layout Grids */
  .intro-inner {grid-template-columns:1fr; gap:32px}
  .pg-hero-inner {grid-template-columns:1fr; gap:32px}
  .pillar-grid {grid-template-columns:1fr 1fr}
  .pillar {border-bottom:1px solid var(--rule)}
  .preview-head {grid-template-columns:1fr; gap:24px}
  .preview-cats {grid-template-columns:1fr}
  .prev-cat {border-right:none; border-bottom:1px solid var(--rule)}
  
  /* Products Page */
  .tab-bar {
    overflow-x:auto; overflow-y:hidden; 
    white-space:nowrap; -webkit-overflow-scrolling:touch;
    padding-bottom:10px; margin-bottom:40px;
    scrollbar-width:none; /* Firefox */
  }
  .tab-bar::-webkit-scrollbar {display:none} /* Chrome/Safari */
  .tab-btn {padding:12px 20px; flex-shrink:0}
  
  .cat-intro {grid-template-columns:1fr; gap:32px}
  .prod-grid {grid-template-columns:1fr 1fr}
  .list-grid {grid-template-columns:1fr 1fr}
  .cta-banner {flex-direction:column; align-items:flex-start; padding:32px}
  .cta-banner .btn {width:100%; justify-content:center}

  /* Industries Page (Critical Stack) */
  .ind-full-grid {grid-template-columns:1fr}
  .ind-box {border-right:none; border-bottom:1px solid var(--rule)}
  .ind-icon {margin-bottom:16px}
  
  /* Contact Page (Critical Stack) */
  .contact-split {grid-template-columns:1fr; gap:32px}
  .form-row {grid-template-columns:1fr; gap:0}
  .form-row .f-grp {margin-bottom:20px}
  .form-card, .info-box {padding:24px}
  .form-card .btn {width:100%; justify-content:center}

  /* About Page */
  .about-cols {grid-template-columns:1fr; gap:40px}
  .val-grid {grid-template-columns:1fr}
  .val {border-right:none!important; border-bottom:1px solid var(--rule)}
  .cert-grid {grid-template-columns:1fr 1fr}
  .loc-grid {grid-template-columns:1fr}
  .loc {border-right:none; border-bottom:1px solid rgba(255,255,255,.15)}
  
  /* Footer */
  .footer-grid {grid-template-columns:1fr; gap:40px}
  .footer-btm {flex-direction:column; text-align:center; gap:20px}
  .footer-gst {text-align:center}
  
  /* Misc */
  .sec-head {flex-direction:column; align-items:flex-start; gap:16px}
  .dark-cta-btns {flex-direction:column; width:100%}
  .dark-cta-btns .btn {width:100%; justify-content:center}
}

@media(max-width:560px){
  .pillar-grid {grid-template-columns:1fr}
  .pillar {border-right:none}
  .prod-grid {grid-template-columns:1fr}
  .list-grid {grid-template-columns:1fr}
  .cert-grid {grid-template-columns:1fr}
  .ind-table td:first-child {width:50%}
  .tl {grid-template-columns:1fr; gap:8px}
  .tl-yr {color:var(--red); font-weight:900}
}



/* === PREMIUM PRODUCT PAGE STYLES === */

/* Premium Hero */
.premium-hero {
  position: relative;
  padding: clamp(100px, 14vh, 160px) 0 clamp(60px, 8vh, 100px);
  background: linear-gradient(135deg, var(--teal-dk) 0%, var(--teal) 100%);
  color: var(--white);
  overflow: hidden;
}
.premium-hero::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: radial-gradient(circle at 80% 20%, rgba(255,255,255,0.1) 0%, transparent 40%);
  pointer-events: none;
}
.premium-hero-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(40px, 6vw, 80px);
  position: relative;
  z-index: 10;
  align-items: center;
}
.ph-badge {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--teal-dk);
  background: rgba(255, 255, 255, 0.9);
  padding: 6px 16px;
  border-radius: 4px;
  margin-bottom: 24px;
}
.ph-title {
  font-size: clamp(40px, 5vw, 64px);
  font-weight: 900;
  line-height: 1.1;
  letter-spacing: -1.5px;
  margin-bottom: 20px;
}
.ph-meta {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 32px;
}
.ph-meta-item {
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  padding: 8px 16px;
  border-radius: 6px;
  font-family: monospace;
  font-size: 14px;
  font-weight: 600;
  color: var(--white);
}
.ph-desc {
  font-size: 16px;
  line-height: 1.8;
  color: rgba(255, 255, 255, 0.85);
}
.ph-grades {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 32px;
}
.ph-grade {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--white);
  padding: 6px 14px;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 4px;
}

/* Spec Cards Grid */
.premium-specs-sec {
  padding: clamp(80px, 10vh, 120px) 0;
  background: var(--paper);
}
.specs-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
  margin-top: 48px;
}
.spec-card {
  background: var(--white);
  border: 1px solid var(--rule);
  padding: 32px;
  border-radius: 8px;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}
.spec-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgba(0,0,0,0.06);
  border-color: transparent;
}
.spec-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: var(--ink-40);
  margin-bottom: 12px;
}
.spec-value {
  font-size: 16px;
  font-weight: 700;
  color: var(--ink);
  line-height: 1.6;
}

/* Uses Grid */
.premium-uses-sec {
  padding: clamp(80px, 10vh, 120px) 0;
}
.uses-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(40px, 6vw, 80px);
  margin-top: 48px;
}
.uses-col h4 {
  font-size: 20px;
  font-weight: 800;
  color: var(--ink);
  margin-bottom: 24px;
  display: flex;
  align-items: center;
  gap: 12px;
}
.uses-col h4::before {
  content: '';
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--red);
}
.uses-list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.uses-list li {
  background: var(--cream);
  padding: 16px 24px;
  border-radius: 6px;
  font-size: 14px;
  font-weight: 600;
  color: var(--ink-70);
  border-left: 3px solid var(--teal);
}

/* Floating Actions */
.premium-cta-sec {
  padding: 60px 0;
  background: var(--ink);
  color: var(--white);
  border-top: 4px solid var(--red);
}
.pcta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
}
.pcta-text h3 {
  font-size: 24px;
  font-weight: 800;
  margin-bottom: 8px;
}
.pcta-text p {
  color: rgba(255,255,255,0.6);
  font-size: 15px;
}
.pcta-actions {
  display: flex;
  gap: 16px;
  flex-shrink: 0;
}

/* Mobile Responsive Adjustments */
@media(max-width: 860px) {
  .premium-hero-inner {
    grid-template-columns: 1fr;
  }
  .uses-layout {
    grid-template-columns: 1fr;
  }
  .pcta-inner {
    flex-direction: column;
    text-align: left;
    align-items: flex-start;
  }
  .pcta-actions {
    flex-direction: column;
    width: 100%;
  }
  .pcta-actions .btn {
    width: 100%;
    justify-content: center;
  }
}

/* --- PRODUCT PAGE STYLES --- */
.proto2-hero {
      padding: clamp(100px, 12vh, 160px) 0 clamp(80px, 10vh, 120px);
      text-align: left;
      background: linear-gradient(135deg, var(--teal) 0%, var(--teal-dk, #0f3d45) 100%);
      position: relative;
      overflow: hidden;
    }
    .proto2-hero::before {
      content: '';
      position: absolute;
      top: -50%; right: -20%;
      width: 100%; height: 200%;
      background: radial-gradient(circle, rgba(255,255,255,0.06) 0%, transparent 60%);
      pointer-events: none;
    }
    .proto2-hero-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 40px;
      align-items: center;
      position: relative;
      z-index: 10;
    }
    .proto2-val-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 32px;
    }
    .val-grid .val, .ind-full-grid .ind-box {
      transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
      border-top: 3px solid transparent;
    }
    .val-grid .val:hover, .ind-full-grid .ind-box:hover {
      transform: translateY(-5px);
      box-shadow: 0 12px 24px rgba(0,0,0,0.06);
      border-top: 3px solid var(--red);
    }
    .mob-sticky-cta { display: none; }
    @media (max-width: 860px) {
      .proto2-hero-grid { grid-template-columns: 1fr; gap: 32px; }
      .proto2-val-grid { grid-template-columns: 1fr; gap: 24px; }
      .proto2-hero { padding: 100px 0 60px; text-align: center; }
      .dark-cta-btns { justify-content: center !important; }
      .mob-sticky-cta {
        display: block;
        position: fixed;
        bottom: 0; left: 0; right: 0;
        background: #fff;
        padding: 12px 16px;
        box-shadow: 0 -4px 16px rgba(0,0,0,0.15);
        z-index: 999;
      }
      body { padding-bottom: 72px; }
    }
    .proto2-val-n {
      font-size: 36px !important;
      letter-spacing: -1px !important;
    }
    .overlay {
      display: none;
      position: fixed;
      top: 0; left: 0; right: 0; bottom: 0;
      background: rgba(0,0,0,0.6);
      z-index: 9999;
      align-items: center;
      justify-content: center;
      padding: 20px;
    }
    .overlay.open { display: flex; }
    .modal {
      background: #fff;
      padding: 32px;
      border-radius: 8px;
      max-width: 400px;
      width: 100%;
      position: relative;
      color: var(--ink);
    }
    .modal-close {
      position: absolute;
      top: 16px; right: 16px;
      background: none; border: none;
      font-size: 24px; cursor: pointer;
      color: #999;
    }
    .modal-close:hover { color: #000; }
    .modal h3 { margin-bottom: 8px; font-size: 20px; }
    .modal-sub { font-size: 14px; color: #666; margin-bottom: 24px; }
    .m-field { margin-bottom: 16px; text-align: left; }
    .m-field label { display: block; font-size: 12px; font-weight: 600; margin-bottom: 6px; text-transform: uppercase; letter-spacing: 1px; color: #333; }
    .m-field input { width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 4px; font-family: inherit; }
    .modal-submit {
      width: 100%; background: var(--teal); color: #fff;
      padding: 14px; border: none; border-radius: 4px;
      font-weight: 600; cursor: pointer; margin-top: 8px;
      font-family: inherit; transition: background 0.3s ease;
    }
    .modal-submit:hover { background: var(--teal-dk); }


/* ═══════ BLOG SECTION ═══════ */
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px;
}
.b-card {
  background: var(--white);
  border: 1px solid var(--rule);
  border-radius: 8px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  display: flex;
  flex-direction: column;
}
.b-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 24px rgba(0,0,0,0.08);
}
.b-thumb {
  width: 100%;
  height: 220px;
  background: linear-gradient(135deg, var(--teal-lt) 0%, var(--cream) 100%);
  object-fit: cover;
}
.b-content {
  padding: 24px;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.b-meta {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: var(--teal);
  font-weight: 700;
  margin-bottom: 8px;
}
.b-title {
  font-size: 20px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 12px;
  color: var(--ink);
}
.b-desc {
  font-size: 15px;
  color: var(--ink-2);
  line-height: 1.6;
  margin-bottom: 24px;
  flex: 1;
}
.b-link {
  font-size: 13px;
  font-weight: 700;
  color: var(--red);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.b-link:hover {
  text-decoration: underline;
}

/* BLOG READING VIEW */
.b-article {
  max-width: 720px;
  margin: 0 auto;
  padding: 80px 20px;
}
.b-article-head {
  text-align: center;
  margin-bottom: 64px;
}
.b-article-head h1 {
  font-size: clamp(32px, 5vw, 48px);
  line-height: 1.2;
  margin: 16px 0 24px;
}
.b-author-date {
  font-size: 14px;
  color: var(--ink-2);
}
.b-article-body {
  font-size: 18px;
  line-height: 1.8;
  color: var(--ink);
}
.b-article-body p { margin-bottom: 24px; }
.b-article-body h2 { margin: 48px 0 24px; font-size: 28px; }
.b-article-body h3 { margin: 32px 0 16px; font-size: 22px; }
.b-article-body ul { margin-bottom: 24px; padding-left: 24px; }
.b-article-body li { margin-bottom: 12px; }
.b-article-body blockquote {
  border-left: 4px solid var(--teal);
  padding-left: 20px;
  font-style: italic;
  font-size: 20px;
  color: var(--teal-dk);
  margin: 40px 0;
}
.b-article-body img {
  width: 100%;
  border-radius: 8px;
  margin: 32px 0;
}

@media (max-width: 1024px) {
  .blog-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .blog-grid { grid-template-columns: 1fr; }
}
