/* ============================================================
   ANUKAMPA INTERNATIONAL — Home Page Premium Layer
   Scoped additions for index.html only. Does not alter
   css/style.css or any shared component styling.
   ============================================================ */

/* ---- Scroll progress bar ---- */
#scrollProgress{
  position:fixed; top:0; left:0; height:3px; width:0%;
  background:linear-gradient(90deg,var(--gold-500),var(--gold-300));
  z-index:9999; transition:width .08s linear;
  box-shadow:0 0 8px rgba(201,162,75,.6);
}

/* ---- Header glass enhancement (homepage only) ---- */
body.home-premium .site-header{
  background:rgba(6,21,15,.42);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  border-bottom:1px solid rgba(201,162,75,.16);
  transition:background .35s var(--ease), padding .35s var(--ease), box-shadow .35s var(--ease);
}
body.home-premium .site-header.scrolled{
  background:rgba(10,46,34,.86);
  box-shadow:0 8px 30px rgba(6,21,15,.35);
}

/* ---- Back to top ---- */
.back-to-top{
  position:fixed; right:24px; bottom:96px; z-index:400;
  width:46px; height:46px; border-radius:50%;
  background:rgba(10,46,34,.9); border:1px solid var(--line-on-dark);
  display:flex; align-items:center; justify-content:center;
  color:var(--gold-300); opacity:0; visibility:hidden; transform:translateY(10px);
  transition:opacity .3s var(--ease), transform .3s var(--ease), background .25s var(--ease);
  cursor:pointer;
}
.back-to-top.show{ opacity:1; visibility:visible; transform:translateY(0); }
.back-to-top:hover{ background:var(--gold-500); color:var(--emerald-950); }
.back-to-top svg{ width:18px; height:18px; }

/* ---- Hero premium ---- */
.hero-premium{
  position:relative; min-height:100vh; display:flex; align-items:center;
  overflow:hidden; color:var(--ivory);
  background:radial-gradient(ellipse at 30% 20%, var(--emerald-800) 0%, var(--emerald-950) 65%);
  padding-top:180px;
}
.hero-premium .hero-bg-media{
  position:absolute; inset:0; z-index:0;
}
.hero-premium .hero-bg-media img,
.hero-premium .hero-bg-media video{
  width:100%; height:100%; object-fit:cover;
  opacity:.32; transform:scale(1.08);
  animation:heroSlowZoom 12s ease-in-out infinite alternate;
}
@keyframes heroSlowZoom{ from{ transform:scale(1.02);} to{ transform:scale(1.14);} }
.hero-premium .hero-scrim{
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(180deg, rgba(6,21,15,.55) 0%, rgba(6,21,15,.25) 40%, rgba(6,21,15,.75) 100%);
}
.hero-premium .particle{
  position:absolute; border-radius:50%; pointer-events:none;
  background:radial-gradient(circle, rgba(201,162,75,.9) 0%, rgba(201,162,75,0) 70%);
  animation:floatParticle linear infinite;
  z-index:1;
}
@keyframes floatParticle{
  0%{ transform:translateY(0) translateX(0); opacity:0; }
  10%{ opacity:.85; }
  90%{ opacity:.6; }
  100%{ transform:translateY(-620px) translateX(40px); opacity:0; }
}
.hero-premium .wrap{ position:relative; z-index:2; }

.hero-kicker-rotator{
  position:relative; height:2.3em; overflow:hidden; display:block; margin-top:10px;
}
.hero-kicker-rotator span{
  display:block; position:absolute; inset:0;
  font-family:var(--font-display); font-style:italic; font-size:clamp(1.1rem,2vw,1.5rem);
  color:var(--gold-300); opacity:0; transform:translateY(14px);
  transition:opacity .6s var(--ease), transform .6s var(--ease);
}
.hero-kicker-rotator span.active{ opacity:1; transform:translateY(0); }

.hero-glass-panel{
  background:rgba(246,242,231,.06);
  border:1px solid rgba(201,162,75,.22);
  backdrop-filter:blur(10px);
  border-radius:18px;
  padding:22px 26px;
  display:flex; gap:28px; flex-wrap:wrap;
  margin-top:56px;
}
.hero-glass-panel .mini-stat strong{
  display:block; font-family:var(--font-display); font-size:1.7rem; color:var(--gold-300);
}
.hero-glass-panel .mini-stat span{
  font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:rgba(246,242,231,.62);
}

.scroll-indicator{
  position:absolute; bottom:32px; left:50%; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:8px; z-index:2;
  color:var(--gold-300); font-size:.66rem; letter-spacing:.24em; text-transform:uppercase; opacity:.75;
}
.scroll-indicator .mouse{
  width:22px; height:36px; border:1.5px solid var(--gold-400); border-radius:14px; position:relative;
}
.scroll-indicator .mouse::before{
  content:''; position:absolute; top:6px; left:50%; width:3px; height:8px; background:var(--gold-300);
  border-radius:2px; transform:translateX(-50%); animation:scrollDot 1.8s ease-in-out infinite;
}
@keyframes scrollDot{ 0%{ opacity:1; top:6px;} 70%{ opacity:0; top:18px;} 100%{ opacity:0; top:6px;} }

/* ---- magnetic buttons ---- */
.btn-magnetic{ position:relative; transition:transform .18s var(--ease); }

/* ---- Counters ---- */
.counter-strip{ background:var(--emerald-800); padding:64px 0; position:relative; overflow:hidden; }
.counter-strip::before{
  content:''; position:absolute; inset:0;
  background:radial-gradient(circle at 15% 30%, rgba(201,162,75,.14), transparent 55%);
}
.counter-card{
  text-align:center; position:relative; padding:18px 10px; border-radius:14px;
  transition:transform .3s var(--ease), background .3s var(--ease);
}
.counter-card:hover{ background:rgba(201,162,75,.08); transform:translateY(-6px); }
.counter-num{
  font-family:var(--font-display); font-size:clamp(2.2rem,4vw,3.2rem); color:var(--gold-300);
  font-weight:600;
}
.counter-label{
  font-size:.74rem; letter-spacing:.16em; text-transform:uppercase; color:rgba(246,242,231,.72);
  margin-top:8px;
}

/* ---- Category showcase ---- */
.cat-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:24px; }
@media (max-width:980px){ .cat-grid{ grid-template-columns:repeat(2,1fr);} }
@media (max-width:560px){ .cat-grid{ grid-template-columns:1fr;} }

.cat-card{
  position:relative; border-radius:20px; overflow:hidden; aspect-ratio:3/4;
  isolation:isolate; cursor:pointer;
  transform:perspective(900px) rotateX(0) rotateY(0);
  transition:transform .45s var(--ease), box-shadow .45s var(--ease);
  box-shadow:0 10px 30px rgba(6,21,15,.12);
}
.cat-card:hover{
  box-shadow:0 24px 50px rgba(6,21,15,.28);
}
.cat-card img{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover;
  transition:transform .7s var(--ease), filter .5s var(--ease);
  z-index:-2;
}
.cat-card:hover img{ transform:scale(1.12); }
.cat-card::after{
  content:''; position:absolute; inset:0; z-index:-1;
  background:linear-gradient(180deg, rgba(6,21,15,.05) 0%, rgba(6,21,15,.85) 88%);
}
.cat-card-body{
  position:absolute; left:0; right:0; bottom:0; padding:22px; color:var(--ivory); z-index:1;
  transform:translateY(6px); transition:transform .4s var(--ease);
}
.cat-card:hover .cat-card-body{ transform:translateY(0); }
.cat-card-num{
  font-family:var(--font-display); font-size:.85rem; color:var(--gold-300); opacity:.85;
}
.cat-card-title{ font-family:var(--font-display); font-size:1.5rem; margin-top:4px; color:var(--ivory); }
.cat-card-desc{
  font-size:.82rem; color:rgba(246,242,231,.72); max-height:0; overflow:hidden;
  opacity:0; transition:max-height .4s var(--ease), opacity .4s var(--ease), margin-top .4s var(--ease);
}
.cat-card:hover .cat-card-desc{ max-height:80px; opacity:1; margin-top:8px; }
.cat-card-link{
  display:inline-flex; align-items:center; gap:8px; margin-top:12px; font-size:.72rem;
  letter-spacing:.14em; text-transform:uppercase; color:var(--gold-300);
}
.cat-card-link svg{ width:13px; height:13px; transition:transform .3s var(--ease); }
.cat-card:hover .cat-card-link svg{ transform:translateX(4px); }

/* ---- Global reach / world map ---- */
.map-wrap{
  position:relative; border-radius:24px; overflow:hidden;
  background:radial-gradient(ellipse at 50% 30%, var(--emerald-800), var(--emerald-950));
  padding:8px; aspect-ratio:16/10;
}
.map-wrap svg{ width:100%; height:100%; display:block; }
.map-land{ fill:rgba(201,162,75,.14); stroke:rgba(201,162,75,.28); stroke-width:.4; }
.map-dot{ fill:var(--gold-300); }
.map-pulse{
  fill:none; stroke:var(--gold-300); stroke-width:1.4; opacity:0;
  transform-origin:center; transform-box:fill-box;
  animation:mapPulse 2.6s ease-out infinite;
}
@keyframes mapPulse{
  0%{ opacity:.9; transform:scale(.3); }
  80%{ opacity:0; transform:scale(2.6); }
  100%{ opacity:0; transform:scale(2.6); }
}
.map-route{
  fill:none; stroke:var(--gold-400); stroke-width:.8; stroke-dasharray:4 4; opacity:.55;
  stroke-dashoffset:0; animation:routeFlow 6s linear infinite;
}
@keyframes routeFlow{ to{ stroke-dashoffset:-80; } }
.map-legend{
  display:flex; flex-wrap:wrap; gap:28px; margin-top:28px;
}
.map-legend div strong{ display:block; font-family:var(--font-display); font-size:1.8rem; color:var(--emerald-800); }
.map-legend div span{ font-size:.74rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-soft); }

/* ---- Industries ---- */
.industry-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
@media (max-width:980px){ .industry-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .industry-grid{ grid-template-columns:1fr; } }
.industry-card{
  position:relative; padding:28px 22px; border-radius:16px; overflow:hidden;
  background:var(--ivory); border:1px solid var(--line-on-light);
  transition:transform .35s var(--ease), border-color .35s var(--ease), box-shadow .35s var(--ease);
}
.industry-card::before{
  content:''; position:absolute; inset:0; opacity:0; z-index:0;
  background:linear-gradient(135deg, rgba(201,162,75,.14), rgba(15,61,44,.1));
  transition:opacity .35s var(--ease);
}
.industry-card:hover{
  transform:translateY(-8px); border-color:var(--gold-500);
  box-shadow:0 20px 40px rgba(6,21,15,.1);
}
.industry-card:hover::before{ opacity:1; }
.industry-card > *{ position:relative; z-index:1; }
.industry-icon{
  width:48px; height:48px; border-radius:12px; display:flex; align-items:center; justify-content:center;
  background:rgba(15,61,44,.08); color:var(--emerald-800); margin-bottom:16px;
  transition:background .3s var(--ease), transform .3s var(--ease);
}
.industry-card:hover .industry-icon{ background:var(--gold-500); color:var(--emerald-950); transform:rotate(-6deg) scale(1.05); }

/* ---- Sustainability ---- */
.sustain-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
@media (max-width:980px){ .sustain-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .sustain-grid{ grid-template-columns:1fr; } }
.sustain-card{
  padding:26px 22px; border-radius:16px; background:rgba(246,242,231,.04);
  border:1px solid rgba(201,162,75,.2); position:relative;
  transition:transform .35s var(--ease), background .35s var(--ease);
}
.sustain-card:hover{ transform:translateY(-6px); background:rgba(201,162,75,.08); }
.sustain-badge{
  width:44px; height:44px; border-radius:50%; border:1px solid var(--gold-500);
  display:flex; align-items:center; justify-content:center; color:var(--gold-300); margin-bottom:16px;
}
.timeline{ position:relative; margin-top:56px; padding-left:26px; }
.timeline::before{
  content:''; position:absolute; left:5px; top:6px; bottom:6px; width:1px;
  background:linear-gradient(180deg, var(--gold-500), rgba(201,162,75,.1));
}
.timeline-item{ position:relative; padding-bottom:36px; }
.timeline-item:last-child{ padding-bottom:0; }
.timeline-item::before{
  content:''; position:absolute; left:-26px; top:4px; width:11px; height:11px; border-radius:50%;
  background:var(--gold-500); box-shadow:0 0 0 4px rgba(201,162,75,.18);
}

/* ---- Why choose ---- */
.why-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
@media (max-width:980px){ .why-grid{ grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px){ .why-grid{ grid-template-columns:1fr; } }
.why-card{
  padding:30px 26px; border-radius:18px; background:var(--ivory);
  border:1px solid var(--line-on-light); position:relative; overflow:hidden;
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}
.why-card:hover{ transform:translateY(-8px) scale(1.01); box-shadow:0 22px 44px rgba(6,21,15,.12); }
.why-icon{
  width:52px; height:52px; border-radius:14px; display:flex; align-items:center; justify-content:center;
  background:var(--emerald-900); color:var(--gold-300); margin-bottom:18px;
}

/* ---- Featured product carousel ---- */
.fp-track-wrap{ overflow:hidden; position:relative; }
.fp-track-wrap::before, .fp-track-wrap::after{
  content:''; position:absolute; top:0; bottom:0; width:70px; z-index:2; pointer-events:none;
}
.fp-track-wrap::before{ left:0; background:linear-gradient(90deg,var(--ivory-dim),transparent); }
.fp-track-wrap::after{ right:0; background:linear-gradient(270deg,var(--ivory-dim),transparent); }
.fp-track{
  display:flex; gap:22px; width:max-content;
  animation:fpScroll 42s linear infinite;
}
.fp-track:hover{ animation-play-state:paused; }
@keyframes fpScroll{ from{ transform:translateX(0); } to{ transform:translateX(-50%); } }
.fp-card{
  width:260px; flex:0 0 auto; background:var(--ivory); border-radius:16px; overflow:hidden;
  border:1px solid var(--line-on-light); transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}
.fp-card:hover{ transform:translateY(-6px); box-shadow:0 18px 36px rgba(6,21,15,.14); }
.fp-card img{ width:100%; aspect-ratio:1/1; object-fit:cover; }
.fp-card-body{ padding:16px 16px 20px; }
.fp-card-cat{ font-size:.66rem; letter-spacing:.12em; text-transform:uppercase; color:var(--gold-500); }
.fp-card-title{ font-family:var(--font-display); font-size:1.15rem; margin-top:6px; }

/* ---- Testimonials ---- */
.testi-wrap{ position:relative; max-width:820px; margin:0 auto; }
.testi-slide{
  display:none; text-align:center; padding:0 20px;
}
.testi-slide.active{ display:block; animation:fadeUpIn .6s var(--ease); }
@keyframes fadeUpIn{ from{ opacity:0; transform:translateY(14px);} to{ opacity:1; transform:translateY(0);} }
.testi-stars{ color:var(--gold-500); font-size:1.1rem; letter-spacing:3px; margin-bottom:18px; }
.testi-quote{
  font-family:var(--font-display); font-style:italic; font-size:clamp(1.15rem,2.2vw,1.6rem);
  color:var(--ivory); line-height:1.5;
}
.testi-meta{ margin-top:24px; color:var(--gold-300); font-size:.85rem; letter-spacing:.06em; }
.testi-dots{ display:flex; justify-content:center; gap:10px; margin-top:32px; }
.testi-dots button{
  width:9px; height:9px; border-radius:50%; border:1px solid var(--gold-400); background:transparent; padding:0;
  transition:background .3s var(--ease), width .3s var(--ease);
}
.testi-dots button.active{ background:var(--gold-500); width:26px; border-radius:6px; }

/* ---- Blog preview ---- */
.blog-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
@media (max-width:980px){ .blog-grid{ grid-template-columns:1fr; } }
.blog-card{
  border-radius:18px; overflow:hidden; background:var(--ivory); border:1px solid var(--line-on-light);
  transition:transform .3s var(--ease), box-shadow .3s var(--ease);
}
.blog-card:hover{ transform:translateY(-6px); box-shadow:0 20px 40px rgba(6,21,15,.1); }
.blog-card img{ width:100%; aspect-ratio:16/10; object-fit:cover; }
.blog-card-body{ padding:22px; }
.blog-tag{ font-size:.66rem; letter-spacing:.14em; text-transform:uppercase; color:var(--gold-500); }
.blog-title{ font-family:var(--font-display); font-size:1.25rem; margin-top:8px; }
.blog-date{ font-size:.76rem; color:var(--ink-soft); margin-top:10px; }

/* ---- Final CTA ---- */
.cta-premium{
  position:relative; padding:100px 0; overflow:hidden; color:var(--ivory);
  background:linear-gradient(120deg, var(--emerald-950), var(--emerald-800), var(--emerald-950));
  background-size:220% 220%; animation:ctaGradient 14s ease infinite;
}
@keyframes ctaGradient{
  0%{ background-position:0% 50%; } 50%{ background-position:100% 50%; } 100%{ background-position:0% 50%; }
}
.cta-premium .ring-deco{ opacity:.5; }

/* ---- Utility reveal variants ---- */
.reveal-scale{ opacity:0; transform:scale(.94); transition:opacity .7s var(--ease), transform .7s var(--ease); }
.reveal-scale.in{ opacity:1; transform:scale(1); }
.stagger > *{ opacity:0; transform:translateY(24px); transition:opacity .6s var(--ease), transform .6s var(--ease); }
.stagger.in > *{ opacity:1; transform:translateY(0); }
.stagger.in > *:nth-child(1){ transition-delay:.02s; }
.stagger.in > *:nth-child(2){ transition-delay:.09s; }
.stagger.in > *:nth-child(3){ transition-delay:.16s; }
.stagger.in > *:nth-child(4){ transition-delay:.23s; }
.stagger.in > *:nth-child(5){ transition-delay:.30s; }
.stagger.in > *:nth-child(6){ transition-delay:.37s; }
.stagger.in > *:nth-child(7){ transition-delay:.44s; }
.stagger.in > *:nth-child(8){ transition-delay:.51s; }
