:root{
  --bg: #f4f6fb;
  --bg2:#ffffff;
  --card:#ffffffcc;
  --stroke:#00000010;
  --text:#111827;
  --muted:#6b7280;
  --accent:#2563eb;
  --accent2:#7c3aed;

  --radius: 18px;
  --shadow: 0 20px 60px rgba(0,0,0,.10);
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  background: radial-gradient(900px 600px at 80% 10%, rgba(124,92,255,.10), transparent 60%),
              radial-gradient(900px 600px at 20% 10%, rgba(37,99,235,.10), transparent 55%),
              linear-gradient(180deg, var(--bg), var(--bg2));
  color:var(--text);
}

a{ color:inherit; text-decoration:none; }
.container{ width:min(1140px, 92%); margin:0 auto; }

.noise{ display:none; }

/* NAV */

/* BRAND LOGO IN NAV */
.brandLogo{
  width: 36px;
  height: 36px;
  border-radius: 12px;
  object-fit: cover;
  box-shadow: 0 10px 22px rgba(0,0,0,.08);
  border: 1px solid rgba(0,0,0,.06);
}
.brand{
  display:flex;
  gap:10px;
  align-items:center;
}
.brandText {
    font-weight: 700;
    font-size: clamp(18px, 2vw, 24px);
    letter-spacing: 0.8px;
}
.nav-wrap{
  position:fixed; top:0; left:0; right:0; z-index:50;
  backdrop-filter: blur(12px);
  background: rgba(255,255,255,.82);
  border-bottom:1px solid var(--stroke);
}
.nav{
  width:min(1140px, 92%);
  margin:0 auto;
  height:72px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.brand{ display:flex; gap:10px; align-items:center; }
.brandMark{
  width:36px; height:36px;
  border-radius:12px;
  display:grid; place-items:center;
  background: linear-gradient(135deg, var(--accent), var(--accent2));
  color:#fff;
  font-weight:800;
}
.brandText{ font-weight:700; }
.navLinks{ display:flex; gap:22px; align-items:center; }
.navLinks a{ color:var(--muted); font-weight:600; }
.navLinks a:hover{ color:var(--text); }

.navToggle{
  display:none;
  width:42px; height:42px;
  border-radius:14px;
  border:1px solid var(--stroke);
  background: rgba(255,255,255,.7);
}
.navToggle span{
  display:block;
  width:18px; height:2px;
  background: rgba(0,0,0,.65);
  margin:6px auto;
  border-radius:2px;
}

/* BUTTONS */
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  padding:12px 18px;
  border-radius: 14px;
  border:1px solid transparent;
  background: var(--accent);
  color:#fff;
  box-shadow: 0 16px 40px rgba(37,99,235,.22);
  font-weight:700;
  transition: transform .25s ease, box-shadow .25s ease;
}
.btn:hover{ transform: translateY(-2px); box-shadow: 0 18px 50px rgba(37,99,235,.28); }
.btn-small{ padding:10px 14px; border-radius: 12px; }
.btn-ghost{
  background: rgba(37,99,235,.08);
  color: var(--accent);
  border-color: rgba(37,99,235,.18);
  box-shadow:none;
}
.w100{ width:100%; }

/* HERO with VIDEO */
.hero{
  position:relative;
  min-height: 92vh;
  padding-top: 100px;
  overflow:hidden;
}
.heroMedia{
  padding-top: 92px;
}
.heroVideoWrap{
  position:absolute;
  inset:0;
  overflow:hidden;
}
.heroVideo{
  position:absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.05);
  filter: saturate(1.05) contrast(1.02);
}
.heroOverlay{
  position:absolute; inset:0;
  background:
    radial-gradient(900px 500px at 20% 20%, rgba(255,255,255,.25), rgba(255,255,255,.35) 50%, rgba(255,255,255,.25)),
    linear-gradient(180deg, rgba(255,255,255,.55), rgba(255,255,255,.90));
  pointer-events:none;
}
.heroGlow{
  position:absolute; inset:-30%;
  background: radial-gradient(closest-side, rgba(124,92,255,.18), transparent 65%);
  pointer-events:none;
}

.heroInner{ position:relative; z-index:2; padding: 48px 0 70px; }

.pill{
  display:inline-flex;
  padding:8px 14px;
  border-radius: 999px;
  border:1px solid rgba(37,99,235,.18);
  background: rgba(255,255,255,.75);
  color: rgba(37,99,235,.95);
  font-size: 12px;
  font-weight: 700;
}
.heroTitle{
  margin:18px 0 12px;
  font-size: clamp(38px, 5vw, 64px);
  line-height: 1.05;
  letter-spacing: -1px;
}
.muted{ color: rgba(17,24,39,.55); font-weight:800; }
.heroSub{
  max-width: 760px;
  color: rgba(107,114,128,.95);
  font-size: 18px;
  line-height: 1.7;
}
.heroCtas{ display:flex; gap:12px; margin-top: 18px; flex-wrap:wrap; }

.heroBadges{
  margin-top: 26px;
  display:flex;
  gap: 12px;
  flex-wrap: wrap;
}
.heroBadge{
  padding: 12px 14px;
  border-radius: 14px;
  border: 1px solid var(--stroke);
  background: rgba(255,255,255,.75);
  backdrop-filter: blur(10px);
}
.heroBadgeTitle{ font-weight: 900; }
.heroBadgeText{ color: var(--muted); margin-top: 4px; font-size: 13px; }

.heroStats{
  margin-top: 30px;
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap:14px;
}
.stat{
  border:1px solid var(--stroke);
  background: rgba(255,255,255,.78);
  backdrop-filter: blur(10px);
  border-radius: var(--radius);
  padding: 18px;
  box-shadow: var(--shadow);
}
.statNum{ font-size: 22px; font-weight: 900; letter-spacing: -.3px; }
.statText{ color: var(--muted); font-size: 13px; margin-top:6px; }

/* STRIP */
.strip{
  padding: 18px 0;
  border-top: 1px solid rgba(0,0,0,.06);
  border-bottom: 1px solid rgba(0,0,0,.06);
  background: rgba(255,255,255,.65);
}
.stripInner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.stripTitle{ font-weight: 900; color: rgba(17,24,39,.75); }
.stripItems{
  display:flex;
  gap: 16px;
  flex-wrap: wrap;
  color: rgba(107,114,128,.95);
  font-weight: 700;
}

/* SECTIONS */
.section{ padding: 96px 0; position:relative; }
.sectionAlt{
  background: linear-gradient(180deg, rgba(255,255,255,.75), rgba(244,246,251,.55));
  border-top: 1px solid rgba(0,0,0,.06);
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.sectionHead{ margin-bottom: 18px; }
.h2{ font-size: 32px; margin: 0 0 10px; letter-spacing: -.3px; }
.sub{ color: var(--muted); margin:0; }

.grid2{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 26px;
  align-items:start;
}
.lead{ font-size: 18px; color: rgba(17,24,39,.85); line-height: 1.7; }
.p{ color: var(--muted); line-height: 1.85; }

.glassCard{
  border: 1px solid var(--stroke);
  background: rgba(255,255,255,.78);
  backdrop-filter: blur(10px);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
}

.miniCards{ margin-top: 18px; padding: 16px; display:grid; gap:14px; }
.miniTitle{ font-weight:900; letter-spacing:-.2px; margin-bottom: 8px; }
.miniText{ color: var(--muted); line-height: 1.6; }
.list{ margin:0; padding-left: 18px; color: var(--muted); line-height: 1.7; }
.list.compact li{ margin: 6px 0; }

.featureStack{ display:grid; gap: 12px; }
.feature{
  padding: 16px;
  display:flex; gap:12px; align-items:flex-start;
}
.icon{
  width:42px; height:42px;
  border-radius: 14px;
  display:grid; place-items:center;
  background: rgba(37,99,235,.10);
  border:1px solid rgba(37,99,235,.12);
  color: rgba(37,99,235,.95);
  font-size: 18px;
}
.featureTitle{ font-weight: 900; }
.featureText{ color: var(--muted); margin-top:6px; line-height: 1.6; }

/* IMAGE CARD */
.imageCard{
  margin-top: 14px;
  border-radius: var(--radius);
  overflow: hidden;
  border: 1px solid var(--stroke);
  background: #fff;
  box-shadow: var(--shadow);
}
.imageCard img{
  width: 100%;
  height: 220px;
  object-fit: cover;
  display:block;
}
.imageCardCap{
  padding: 12px 14px;
  color: rgba(17,24,39,.75);
  font-weight: 700;
}

/* CARDS */
.cards{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 14px;
  margin-top: 14px;
}
.card{
  border: 1px solid var(--stroke);
  background: rgba(255,255,255,.85);
  border-radius: var(--radius);
  padding: 16px;
  box-shadow: var(--shadow);
  transition: transform .25s ease, border-color .25s ease;
}
.card:hover{ transform: translateY(-6px); border-color: rgba(37,99,235,.20); }
.cardTop{ display:flex; align-items:center; justify-content:space-between; gap: 10px; }
.cardTitle{ font-weight: 950; letter-spacing: -.2px; }
.chip{
  font-size: 12px;
  padding: 6px 10px;
  border-radius: 999px;
  border:1px solid rgba(37,99,235,.18);
  background: rgba(37,99,235,.08);
  color: rgba(37,99,235,.95);
  font-weight: 800;
}

.cardImage{
  margin-top: 12px;
  border-radius: 14px;
  overflow:hidden;
  border: 1px solid rgba(0,0,0,.06);
}
.cardImage img{
  width:100%;
  height: 140px;
  object-fit: cover;
  display:block;
}

.cardLink{ display:inline-block; margin-top: 10px; color: rgba(37,99,235,.95); font-weight:900; }

.banner{
  margin-top: 18px;
  padding: 18px;
  border-radius: var(--radius);
  border: 1px solid rgba(37,99,235,.14);
  background: linear-gradient(135deg, rgba(37,99,235,.10), rgba(124,92,255,.10));
  display:flex; align-items:center; justify-content:space-between; gap: 12px;
}
.bannerTitle{ font-weight: 950; letter-spacing: -.2px; }
.bannerText{ color: var(--muted); margin-top:6px; }

/* WHY */
.whyGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 12px;
}
.why{ padding: 16px; display:flex; gap: 10px; align-items:flex-start; }
.whyDot{
  width:10px; height:10px; margin-top:6px;
  border-radius: 999px;
  background: radial-gradient(circle at 30% 30%, var(--accent), var(--accent2));
}
.whyText{ color: var(--muted); line-height: 1.7; }

/* TIMELINE */
.timeline{ display:grid; gap: 12px; }
.timeItem{
  display:grid;
  grid-template-columns: 80px 20px 1fr;
  gap: 12px;
  align-items:center;
  padding: 14px 14px;
  border-radius: var(--radius);
  border: 1px solid var(--stroke);
  background: rgba(255,255,255,.85);
  box-shadow: var(--shadow);
}
.timeYear{ font-weight: 950; }
.timeLine{
  width: 3px;
  height: 34px;
  background: linear-gradient(180deg, var(--accent), var(--accent2));
  border-radius: 3px;
  opacity: .9;
}
.timeText{ color: var(--muted); }

/* CONTACT */
.contactCard{ padding: 16px; }
.contactRow{ display:grid; grid-template-columns: 90px 1fr; gap: 10px; padding: 10px 0; border-bottom: 1px solid rgba(0,0,0,.06); }
.contactRow:last-child{ border-bottom:none; }
.label{ color: rgba(107,114,128,.95); font-size: 13px; font-weight: 800; }
.value{ font-weight: 900; }

.form{ padding: 16px; }
.formTitle{ font-weight: 950; font-size: 18px; margin-bottom: 10px; }
.field{ margin-top: 12px; }
.field label{ display:block; font-size: 13px; color: rgba(107,114,128,.95); margin-bottom: 6px; font-weight: 800; }
.field input, .field textarea{
  width:100%;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.95);
  color: var(--text);
  outline:none;
}
.field input:focus, .field textarea:focus{
  border-color: rgba(37,99,235,.45);
}
.formHint{ margin-top: 10px; color: rgba(107,114,128,.95); font-size: 12px; }
.note{ margin-top: 12px; color: rgba(107,114,128,.95); font-size: 13px; }

/* REVEAL */
.reveal{
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .7s ease, transform .7s ease;
}
.reveal.is-visible{
  opacity: 1;
  transform: translateY(0);
}

/* FOOTER */
.footer{
  padding: 36px 0;
  border-top: 1px solid rgba(0,0,0,.08);
  background: #0b1220;
  color: #e5e7eb;
}
.footerGrid{
  display:flex; justify-content:space-between; gap: 14px; flex-wrap:wrap;
}
.footerBrand{ font-weight: 950; color:#fff; }
.footerText{ color: rgba(229,231,235,.85); margin-top:6px; font-size: 13px; line-height: 1.6; }
.footerCols{ display:flex; gap: 22px; flex-wrap:wrap; }
.footerCol a{ display:block; margin-top: 8px; color: rgba(229,231,235,.85); }
.footerCol a:hover{ color:#fff; }
.footerTitle{ font-weight: 950; margin-bottom: 6px; color:#fff; }
.footerBottom{
  margin-top: 22px;
  text-align:center;
  color: rgba(229,231,235,.70);
  font-size: 12px;
}

/* RESPONSIVE */
@media (max-width: 980px){
  .grid2{ grid-template-columns: 1fr; }
  .cards{ grid-template-columns: 1fr; }
  .whyGrid{ grid-template-columns: 1fr; }
  .heroStats{ grid-template-columns: 1fr; }
  .navToggle{ display:block; }
  .navLinks{
    position:absolute;
    top:72px; left:0; right:0;
    padding: 14px 4%;
    display:none;
    background: rgba(255,255,255,.92);
    border-bottom: 1px solid rgba(0,0,0,.08);
  }
  .navLinks.is-open{ display:flex; flex-direction:column; align-items:flex-start; gap: 14px; }
  .heroVideo{ filter: saturate(1.0) contrast(1.0); }
}

/* Alerts */
.alertSuccess{
  margin: 10px 0 0;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(16,185,129,.25);
  background: rgba(16,185,129,.10);
  color: rgba(17,24,39,.95);
  font-weight: 700;
}
.alertError{
  margin: 10px 0 0;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(239,68,68,.25);
  background: rgba(239,68,68,.10);
  color: rgba(17,24,39,.95);
  font-weight: 700;
}

/* Select styling */
.field select{
  width:100%;
  padding: 12px 12px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.95);
  color: #111827;
  outline:none;
}
.field select:focus{
  border-color: rgba(37,99,235,.45);
}

/* Floating WhatsApp button */
.waFloat{
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 9999;
  padding: 12px 16px;
  border-radius: 999px;
  background: #16a34a;
  color: #fff;
  font-weight: 900;
  box-shadow: 0 18px 45px rgba(0,0,0,.18);
  border: 1px solid rgba(255,255,255,.25);
}
.waFloat:hover{
  transform: translateY(-2px);
}

/* =========================================================
   PREMIUM BACKGROUND LAYERS (Makes sections less plain)
   ========================================================= */

/* Soft global texture + grid */
body::before{
  content:"";
  position: fixed;
  inset: 0;
  z-index: -2;
  pointer-events:none;
  background:
    radial-gradient(1200px 700px at 15% 10%, rgba(37,99,235,.10), transparent 60%),
    radial-gradient(1000px 600px at 85% 15%, rgba(124,92,255,.10), transparent 60%),
    radial-gradient(900px 550px at 70% 90%, rgba(14,165,233,.08), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.75), rgba(244,246,251,.85));
}

/* Subtle grid overlay (very light) */
body::after{
  content:"";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events:none;
  opacity: .55;
  background-image:
    linear-gradient(to right, rgba(0,0,0,.045) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(0,0,0,.045) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: radial-gradient(circle at 50% 20%, rgba(0,0,0,1) 0%, rgba(0,0,0,.45) 45%, rgba(0,0,0,0) 78%);
}

/* Each section gets a soft “depth” glow so it won’t look flat */
.section{
  position: relative;
}
.section::before{
  content:"";
  position:absolute;
  inset: -40px -10px;
  z-index:-1;
  pointer-events:none;
  opacity:.65;
  background:
    radial-gradient(700px 360px at 15% 25%, rgba(37,99,235,.10), transparent 60%),
    radial-gradient(700px 360px at 85% 35%, rgba(124,92,255,.08), transparent 60%);
  filter: blur(2px);
}

/* =========================================================
   SCROLL SHOWCASE (Pump exposed view on scroll)
   ========================================================= */
.scrollShowcase{
  padding: 90px 0;
}

.showcaseGrid{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
  align-items:start;
}

/* Left steps */
.showcaseSteps{
  display:grid;
  gap: 12px;
}

.stepCard{
  border: 1px solid rgba(0,0,0,.06);
  background: rgba(255,255,255,.80);
  backdrop-filter: blur(10px);
  border-radius: 18px;
  padding: 16px;
  box-shadow: 0 16px 50px rgba(0,0,0,.08);
  transition: transform .25s ease, border-color .25s ease;
}
.stepCard.active{
  border-color: rgba(37,99,235,.22);
  transform: translateY(-2px);
}
.stepKicker{
  font-weight: 900;
  color: rgba(37,99,235,.95);
  font-size: 12px;
  letter-spacing:.6px;
  text-transform: uppercase;
}
.stepTitle{
  margin-top: 6px;
  font-weight: 950;
  font-size: 18px;
}
.stepText{
  margin-top: 6px;
  color: rgba(107,114,128,.95);
  line-height: 1.65;
}

/* Right sticky media */
.showcaseMedia{
  position: sticky;
  top: 92px; /* under navbar */
  border-radius: 24px;
  overflow:hidden;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.70);
  box-shadow: 0 26px 90px rgba(0,0,0,.12);
}

.showcaseMediaTop{
  padding: 14px 16px;
  border-bottom: 1px solid rgba(0,0,0,.06);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 12px;
}
.showcaseMediaTop .title{
  font-weight: 950;
}
.showcaseMediaTop .hint{
  font-size: 12px;
  color: rgba(107,114,128,.95);
  font-weight: 800;
}

.showcaseFrame{
  position: relative;
  aspect-ratio: 16 / 10;
  background:
    radial-gradient(700px 420px at 30% 25%, rgba(37,99,235,.10), transparent 60%),
    radial-gradient(700px 420px at 70% 55%, rgba(124,92,255,.10), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.85), rgba(244,246,251,.92));
}

.showcaseImg{
  position:absolute;
  inset: 0;
  width:100%;
  height:100%;
  object-fit: contain;
  padding: 14px;
  transform: translate3d(0,0,0) scale(1.02);
  transition: transform .6s ease, filter .6s ease, opacity .35s ease;
  filter: drop-shadow(0 28px 55px rgba(0,0,0,.20));
}

/* Small “depth” motion as we scroll (JS updates CSS vars) */
.showcaseFrame{
  --rx: 0deg;
  --ry: 0deg;
  --tz: 0px;
}
.showcaseImg{
  transform: perspective(900px) rotateX(var(--rx)) rotateY(var(--ry)) translateZ(var(--tz)) scale(1.02);
}

/* Responsive */
@media (max-width: 980px){
  .showcaseGrid{ grid-template-columns: 1fr; }
  .showcaseMedia{ position: relative; top:auto; }
}

/* =========================================================
   PRODUCTS WE OFFER
   ========================================================= */

.sectionAfterHero{
  padding-top: 80px;
}

.offerGrid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 18px;
  margin-top: 30px;
}

.offerCard{
  display:flex;
  gap:14px;
  align-items:flex-start;
  padding: 22px;
  border-radius: 22px;
  border: 1px solid rgba(0,0,0,.06);
  background: rgba(255,255,255,.88);
  backdrop-filter: blur(12px);
  box-shadow: 0 24px 70px rgba(0,0,0,.10);
  transition: all .3s ease;
}

.offerCard:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.25);
  box-shadow: 0 30px 90px rgba(0,0,0,.14);
}

.offerIcon{
  width: 50px;
  height: 50px;
  border-radius: 16px;
  display:grid;
  place-items:center;
  font-size: 20px;
  background: linear-gradient(135deg, rgba(37,99,235,.12), rgba(124,92,255,.12));
  border: 1px solid rgba(37,99,235,.18);
}

.offerTitle{
  font-weight: 950;
  font-size: 18px;
  letter-spacing: -.3px;
}

.offerText{
  margin-top: 6px;
  color: var(--muted);
  line-height: 1.6;
  font-weight: 600;
}

/* =========================================================
   PRODUCT CATEGORIES
   ========================================================= */

.catGrid{
  display:grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 20px;
  margin-top: 30px;
}

.catCard{
  padding: 22px;
  border-radius: 22px;
  border: 1px solid rgba(0,0,0,.06);
  background: rgba(255,255,255,.92);
  box-shadow: 0 24px 70px rgba(0,0,0,.08);
  transition: all .3s ease;
}

.catCard:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.25);
  box-shadow: 0 30px 90px rgba(0,0,0,.14);
}

.catTop{
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.catTitle{
  font-weight: 950;
  font-size: 18px;
}

.catList{
  margin-top: 16px;
  padding-left: 18px;
  line-height: 1.9;
  font-weight: 600;
  color: var(--muted);
}

.catLink{
  display:inline-block;
  margin-top: 14px;
  font-weight: 900;
  color: var(--accent);
}

/* =========================================================
   BEST SELLERS
   ========================================================= */

.bsBlock{
  margin-top: 50px;
}

.bsHead{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom: 18px;
}

.bsTitle{
  font-weight: 950;
  font-size: 22px;
}

.bsAll{
  font-weight: 900;
  color: var(--accent);
}

.bsGrid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 20px;
}

.bsCard{
  padding: 22px;
  border-radius: 22px;
  border: 1px solid rgba(0,0,0,.06);
  background: linear-gradient(135deg, rgba(255,255,255,.95), rgba(244,246,251,.90));
  box-shadow: 0 24px 70px rgba(0,0,0,.08);
  transition: all .3s ease;
}

.bsCard:hover{
  transform: translateY(-6px);
  border-color: rgba(37,99,235,.25);
  box-shadow: 0 30px 90px rgba(0,0,0,.14);
}

.bsName{
  font-weight: 950;
  font-size: 18px;
}

.bsDesc{
  margin-top: 8px;
  color: var(--muted);
  line-height: 1.7;
  font-weight: 600;
}

.bsBtn{
  margin-top: 16px;
}

/* =========================================================
   RESPONSIVE IMPROVEMENTS
   ========================================================= */

@media (max-width: 980px){

  .offerGrid{
    grid-template-columns: 1fr;
  }

  .catGrid{
    grid-template-columns: 1fr;
  }

  .bsGrid{
    grid-template-columns: 1fr;
  }

}
/* =========================================================
   BEST SELLERS WITH THUMBNAILS
   ========================================================= */

.bsCard{
  display:flex;
  gap:18px;
  align-items:flex-start;
}

.bsThumb{
  width:110px;
  height:110px;
  border-radius:18px;
  overflow:hidden;
  border:1px solid rgba(0,0,0,.06);
  background: #fff;
  box-shadow: 0 14px 40px rgba(0,0,0,.08);
  flex-shrink:0;
  transition: transform .35s ease;
}

.bsThumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  transition: transform .5s ease;
}

.bsCard:hover .bsThumb img{
  transform: scale(1.08);
}

.bsContent{
  flex:1;
}

.bsName{
  font-weight:950;
  font-size:18px;
}

.bsDesc{
  margin-top:6px;
  font-weight:600;
  color: var(--muted);
  line-height:1.6;
}

.bsBtn{
  margin-top:12px;
}

/* Responsive */
@media (max-width: 768px){
  .bsCard{
    flex-direction:column;
  }

  .bsThumb{
    width:100%;
    height:160px;
  }
}

/* ===== Premium Nav Enhancements ===== */
.brandMeta { display:flex; flex-direction:column; line-height:1.1; }
.brandTag{
  font-size: 12px;
  font-weight: 800;
  color: rgba(107,114,128,.95);
  margin-top: 4px;
}

.nav-wrap{
  border-bottom: 1px solid rgba(0,0,0,.06);
  box-shadow: 0 12px 30px rgba(0,0,0,.06);
}
.nav-wrap::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:-1px;
  height:2px;
  background: linear-gradient(90deg, rgba(37,99,235,.0), rgba(37,99,235,.55), rgba(124,92,255,.55), rgba(37,99,235,.0));
  pointer-events:none;
}

.navLinks a{
  position:relative;
  padding: 10px 2px;
}
.navLinks a::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:2px;
  height:2px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(37,99,235,.0), rgba(37,99,235,.75), rgba(124,92,255,.75), rgba(37,99,235,.0));
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .25s ease;
  opacity:.9;
}
.navLinks a:hover::after{ transform: scaleX(1); }
.navLinks a.is-active{ color: var(--text); }
.navLinks a.is-active::after{ transform: scaleX(1); }

.navCta{ margin-left: 6px; }

.navIconBtn{
  width: 40px;
  height: 40px;
  border-radius: 14px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.75);
}
.navIconBtn.wa{
  border-color: rgba(22,163,74,.25);
}

/* Dropdown */
.navDrop{ position:relative; }
.navCaret{ font-size: 11px; margin-left: 6px; opacity:.7; }

.navDropMenu{
  position:absolute;
  top: 54px;
  left: -140px;
  width: min(760px, 92vw);
  padding: 14px;
  border-radius: 18px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(14px);
  box-shadow: 0 26px 80px rgba(0,0,0,.14);
  opacity:0;
  transform: translateY(8px);
  pointer-events:none;
  transition: opacity .2s ease, transform .2s ease;
}
.navDrop:hover .navDropMenu{
  opacity:1;
  transform: translateY(0);
  pointer-events:auto;
}

.dropGrid{
  display:grid;
  grid-template-columns: 1fr 1fr 1.1fr;
  gap: 14px;
}
.dropCol a{
  display:block;
  padding: 10px 10px;
  border-radius: 12px;
  color: rgba(17,24,39,.85);
  font-weight: 800;
}
.dropCol a:hover{
  background: rgba(37,99,235,.07);
}

.dropTitle{
  font-weight: 950;
  margin: 6px 8px 10px;
  color: rgba(17,24,39,.75);
}

.dropCTA{
  border-radius: 16px;
  border: 1px solid rgba(37,99,235,.14);
  background: linear-gradient(135deg, rgba(37,99,235,.10), rgba(124,92,255,.10));
  padding: 14px;
}
.dropCTATitle{ font-weight: 950; }
.dropCTAText{ margin-top:6px; color: rgba(107,114,128,.95); line-height:1.5; }

@media (max-width: 980px){
  .navDropMenu{ position: static; width:100%; left:auto; top:auto; opacity:1; transform:none; pointer-events:auto; box-shadow:none; border:none; padding:0; background:transparent; }
  .dropGrid{ grid-template-columns: 1fr; }
}

/* Make hover area continuous */
.navDrop { position: relative; }

/* invisible bridge so hover doesn't break */
.navDrop::after{
  content:"";
  position:absolute;
  left:0;
  top:100%;
  width:100%;
  height:14px;   /* increase if still vanishing */
}

/* show menu when hovering anywhere inside navDrop (link or menu) */
.navDrop:hover .navDropMenu,
.navDrop:focus-within .navDropMenu{
  opacity:1;
  transform: translateY(0);
  pointer-events:auto;
}

/* keep menu clickable */
.navDropMenu{
  z-index: 9999;
}