/* ============================================================
   BLACK VIPER LABS — Complete Stylesheet
   Shared + Home + Products + Product Detail
   ============================================================ */

:root {
  /* Logo-matched lime green */
  --g: #a3ff00;
  --g2: #85d400;
  --g3: #5ea000;
  --g-glow: rgba(163,255,0,.15);
  --g-glow2: rgba(163,255,0,.06);
  --bg: #050505;
  --bg2: #0a0a0a;
  --bg3: #111111;
  --bg4: #1a1a1a;
  --border: rgba(0,255,65,.1);
  --border2: rgba(0,255,65,.25);
  --text: #f0f0f0;
  --muted: #888;
  --dim: #444;
  --red: #ff3333;
  --orange: #ff9900;
  --font-d: 'Bebas Neue',sans-serif;
  --font-h: 'Rajdhani',sans-serif;
  --font-b: 'Inter',sans-serif;
  --r: 8px;
  --r2: 16px;
  --tr: .3s ease;
  --shadow-g: 0 0 40px rgba(163,255,0,.2);
  --shadow-g2: 0 0 80px rgba(163,255,0,.35);
}

/* ── Arabic / RTL Support ── */
body.rtl { direction: rtl; text-align: right; }
body.rtl .nav-inner { flex-direction: row-reverse; }
body.rtl .nav-links-desktop { flex-direction: row; }
body.rtl .nav-dropdown-menu { left: auto; right: 0; }
body.rtl .cart-sidebar { left: 0; right: auto; transform: translateX(-100%); }
body.rtl .cart-sidebar.open { transform: translateX(0); }
body.rtl .ticker { animation: tickerRTL 30s linear infinite; }
body.rtl .announcement-bar { direction: rtl; }
body.rtl .orb-menu { flex-direction: column; }
body.rtl .float-badge { flex-direction: row-reverse; }
@keyframes tickerRTL { from{transform:translateX(0)} to{transform:translateX(50%)} }
body.rtl .hc-stats { flex-direction: row-reverse; }
body.rtl .video-section-inner { direction: rtl; }
body.rtl .story-grid { direction: rtl; }
body.rtl .prod-price-row { flex-direction: row-reverse; }
body.rtl .prod-info { text-align: right; }
body.rtl .faq-q { flex-direction: row-reverse; }
body.rtl .ci-item { flex-direction: row-reverse; }
body.rtl .timeline::before { left: auto; right: 0; }
body.rtl .tm-item { padding: 0 36px 40px 0; }
body.rtl .tm-dot { left: auto; right: -7px; }
body.rtl .story-quote { border-left: none; border-right: 3px solid var(--g); border-radius: var(--r) 0 0 var(--r); }
/* Arabic fonts/spacing handled in rtl-arabic.css */

/* ── Language Toggle Button ── */
.lang-toggle-btn,
.lang-toggle-btn.nav-icon-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  font-family: var(--font-h) !important;
  font-size: .78rem !important;
  font-weight: 700 !important;
  letter-spacing: .04em;
  padding: 6px 10px !important;
  border: 1px solid rgba(163,255,0,.2) !important;
  border-radius: 6px !important;
  color: var(--muted) !important;
  background: transparent !important;
  transition: all .2s !important;
  width: auto !important;
  min-width: 58px !important;
  height: 36px !important;
  max-width: none !important;
  flex-shrink: 0 !important;
  overflow: visible !important;
  cursor: pointer;
  z-index: 5;
  touch-action: manipulation;
  -webkit-tap-highlight-color: transparent;
}
.lang-toggle-btn:hover { border-color: var(--g) !important; color: var(--g) !important; }
.lang-toggle-btn .lang-en-label,
.lang-toggle-btn .lang-ar-label {
  color: var(--muted);
  transition: color .2s;
  padding: 2px 4px;
  border-radius: 4px;
  cursor: pointer;
}
.lang-toggle-btn .lang-en-label:hover,
.lang-toggle-btn .lang-ar-label:hover { color: var(--g); }
.lang-active { color: var(--g) !important; }
.lang-sep { color: rgba(255,255,255,.2); font-size: .7rem; pointer-events: none; }

/* ── Logo Image ── */
.bvl-logo-img {
  height: 44px;
  width: auto;
  object-fit: contain;
  filter: drop-shadow(0 0 6px rgba(163,255,0,.25));
  transition: filter .3s;
}
.bvl-logo-img:hover { filter: drop-shadow(0 0 12px rgba(163,255,0,.5)); }
.nav-logo { gap: 10px; align-items: center; }
.nav-logo-text { display: flex; flex-direction: column; line-height: 1; }
.footer-logo-img { height: 52px; width: auto; filter: drop-shadow(0 0 8px rgba(163,255,0,.2)); }

/* ── Expiry Badge ── */
.expiry-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  background: rgba(163,255,0,.06);
  border: 1px solid rgba(163,255,0,.2);
  border-radius: 100px;
  font-family: var(--font-h);
  font-size: .68rem;
  font-weight: 700;
  color: var(--g);
  letter-spacing: .08em;
  margin-top: 6px;
}
.expiry-warning { background: rgba(255,153,0,.08); border-color: rgba(255,153,0,.3); color: #ff9900; }

/* ── Reset ── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{background:var(--bg);color:var(--text);font-family:var(--font-b);overflow-x:hidden}
a{text-decoration:none;color:inherit}
ul{list-style:none}
img{max-width:100%;height:auto;display:block}
button{cursor:pointer;border:none;background:none;font-family:inherit;color:inherit}
input,select,textarea{font-family:inherit}
::-webkit-scrollbar{width:5px}
::-webkit-scrollbar-track{background:var(--bg)}
::-webkit-scrollbar-thumb{background:var(--g2);border-radius:3px}

/* ── Typography ── */
.font-d{font-family:var(--font-d)}
.font-h{font-family:var(--font-h)}
.green{color:var(--g)}
.muted{color:var(--muted)}

/* ── Container ── */
.container{max-width:min(1320px,96vw);margin:0 auto;padding:0 20px}

/* ── Buttons ── */
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 28px;border-radius:var(--r);font-family:var(--font-d);font-size:1rem;letter-spacing:.1em;transition:all var(--tr);cursor:pointer;border:none;position:relative;overflow:hidden}
.btn::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.18),transparent);transform:translateX(-100%);transition:transform .5s ease}
.btn:hover::before{transform:translateX(100%)}
.btn-primary{background:var(--g);color:#000}
.btn-primary:hover{background:#00e63a;box-shadow:var(--shadow-g2);transform:translateY(-2px)}
.btn-ghost{background:transparent;color:var(--text);border:1px solid rgba(255,255,255,.15)}
.btn-ghost:hover{border-color:var(--g);color:var(--g);background:var(--g-glow)}
.btn-outline{background:transparent;color:var(--g);border:1px solid var(--g)}
.btn-outline:hover{background:var(--g);color:#000;box-shadow:var(--shadow-g)}
.btn-sm{padding:9px 18px;font-size:.85rem}
.btn-lg{padding:18px 40px;font-size:1.2rem}
.btn-block{width:100%;justify-content:center}
.pay-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;background:var(--bg3);border:1px solid var(--border);border-radius:12px;font-family:var(--font-h);font-weight:700;font-size:.82rem;color:var(--text);text-decoration:none;cursor:pointer;transition:border-color .2s,color .2s,background .2s}
.pay-badge:hover{border-color:var(--g);color:var(--g);background:rgba(163,255,0,.06)}
a.pay-badge:focus-visible{outline:2px solid var(--g);outline-offset:2px}

/* ── Section headers ── */
.section-tag{font-family:var(--font-h);font-size:.7rem;font-weight:700;color:var(--g);letter-spacing:.35em;display:block;margin-bottom:10px}
.section-title{font-family:var(--font-d);font-size:clamp(2.2rem,4.5vw,3.8rem);letter-spacing:.04em;line-height:1}
.section-desc{color:var(--muted);margin-top:14px;line-height:1.7;max-width:580px;margin-left:auto;margin-right:auto}
.section-header{text-align:center;margin-bottom:52px}

/* ── Cards ── */
.card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2);transition:border-color var(--tr),transform var(--tr),box-shadow var(--tr)}
.card:hover{border-color:var(--border2);transform:translateY(-5px);box-shadow:0 16px 48px rgba(0,255,65,.1)}

/* ── Reveal animation (fancy scroll theatre) ── */
.reveal,.reveal-left,.reveal-right,.reveal-scale,.reveal-zoom,.reveal-blur{
  opacity:0;
  will-change:transform,opacity,filter;
  transition:
    opacity .85s cubic-bezier(.16,1,.3,1),
    transform .95s cubic-bezier(.16,1,.3,1),
    filter .85s ease,
    box-shadow .85s ease;
}
.reveal{transform:translateY(48px) scale(.96);filter:blur(6px)}
.reveal-left{transform:translateX(-56px) scale(.97);filter:blur(5px)}
.reveal-right{transform:translateX(56px) scale(.97);filter:blur(5px)}
.reveal-scale{transform:scale(.88);filter:blur(8px)}
.reveal-zoom{transform:translateY(30px) scale(1.08);filter:blur(4px)}
.reveal-blur{transform:translateY(24px);filter:blur(12px) brightness(.7)}

.reveal.revealed,.reveal-left.revealed,.reveal-right.revealed,
.reveal-scale.revealed,.reveal-zoom.revealed,.reveal-blur.revealed{
  opacity:1;
  transform:none;
  filter:none;
}

/* Stagger delays for cascade effect */
.reveal-d1{transition-delay:.08s}
.reveal-d2{transition-delay:.16s}
.reveal-d3{transition-delay:.24s}
.reveal-d4{transition-delay:.32s}
.reveal-d5{transition-delay:.40s}
.reveal-d6{transition-delay:.48s}
.reveal-d7{transition-delay:.56s}
.reveal-d8{transition-delay:.64s}

/* Green flash when an element lands */
.reveal.revealed,.reveal-left.revealed,.reveal-right.revealed,
.reveal-scale.revealed,.reveal-zoom.revealed,.reveal-blur.revealed{
  animation: revealGlow .9s ease both;
}
@keyframes revealGlow{
  0%{box-shadow:0 0 0 rgba(163,255,0,0)}
  35%{box-shadow:0 0 28px rgba(163,255,0,.18)}
  100%{box-shadow:0 0 0 rgba(163,255,0,0)}
}

/* Section headers get a stronger entrance */
.section-header.reveal.revealed .section-tag{
  animation: tagSlide .7s cubic-bezier(.16,1,.3,1) .05s both;
}
.section-header.reveal.revealed .section-title{
  animation: titlePop .85s cubic-bezier(.16,1,.3,1) .12s both;
}
@keyframes tagSlide{
  from{opacity:0;transform:translateY(12px) letter-spacing:.6em}
  to{opacity:1;transform:none}
}
@keyframes titlePop{
  from{opacity:0;transform:translateY(22px) scale(.94);text-shadow:0 0 0 rgba(163,255,0,0)}
  to{opacity:1;transform:none}
}

/* Fancy scroll progress bar */
#bvlScrollProgress{
  position:fixed;top:0;left:0;height:3px;width:0;
  z-index:9999;pointer-events:none;
  background:linear-gradient(90deg,var(--g2),var(--g),#d4ff66);
  box-shadow:0 0 12px rgba(163,255,0,.65),0 0 24px rgba(163,255,0,.35);
  transition:width .08s linear;
}

/* ════════════════════════════════════════
   ANNOUNCEMENT BAR
════════════════════════════════════════ */
.announcement-bar{
  position:relative;
  z-index:901;
  background:var(--g);
  padding:8px 0;
  overflow:hidden;
}
.announcement-bar p{font-family:var(--font-h);font-size:.8rem;font-weight:700;color:#000;letter-spacing:.08em;text-align:center;white-space:nowrap;animation:annScroll 20s linear infinite}
@keyframes annScroll{0%{transform:translateX(30%)}100%{transform:translateX(-30%)}}

/* ════════════════════════════════════════
   NAVBAR — sits below announcement at top, pins to top when scrolling
════════════════════════════════════════ */
.navbar{
  position:fixed;
  top:var(--announcement-h, 36px);
  left:0;
  right:0;
  z-index:900;
  padding:0;
  transition:top .28s ease, background .3s, backdrop-filter .3s, border-color .3s;
  border-bottom:1px solid transparent;
}
.navbar.nav-scrolled{
  top:0;
  background:rgba(5,5,5,.96);
  backdrop-filter:blur(20px);
  border-color:var(--border);
}
.nav-inner{max-width:1320px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:16px;justify-content:space-between}
.nav-logo{display:flex;align-items:center;gap:10px;flex-shrink:0}
.nav-logo-svg{width:42px;filter:drop-shadow(0 0 6px rgba(0,255,65,.5))}
.nav-brand{line-height:1}
.nav-brand-a{font-family:var(--font-d);font-size:1.1rem;letter-spacing:.2em;display:block}
.nav-brand-b{font-family:var(--font-d);font-size:.7rem;letter-spacing:.5em;color:var(--g)}
.nav-links-desktop{display:flex;gap:4px;flex:1;justify-content:center}
.nav-links-desktop{direction:ltr}
body.rtl .nav-links-desktop{direction:rtl}
.nav-link{font-family:var(--font-h);font-size:.88rem;font-weight:600;color:var(--muted);padding:8px 14px;border-radius:var(--r);letter-spacing:.08em;transition:color var(--tr),background var(--tr);position:relative}
.nav-link::after{content:'';position:absolute;bottom:4px;left:14px;right:14px;height:1px;background:var(--g);transform:scaleX(0);transition:transform var(--tr)}
.nav-link:hover,.nav-link.active{color:var(--text)}
.nav-link:hover::after,.nav-link.active::after{transform:scaleX(1)}

/* Products dropdown — flush under trigger so hover doesn't drop */
.nav-dropdown{position:relative}
.nav-dropdown-menu{
  position:absolute;
  top:100%;
  left:0;
  margin-top:0;
  background:var(--bg2);
  border:1px solid var(--border2);
  border-radius:var(--r);
  min-width:220px;
  padding:6px 0;
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:opacity .2s ease, visibility .2s ease, transform .2s ease;
  z-index:950;
  pointer-events:none;
  box-shadow:0 16px 40px rgba(0,0,0,.45);
}
.nav-dropdown:hover .nav-dropdown-menu,
.nav-dropdown:focus-within .nav-dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}
.nav-dropdown-item{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 16px;
  font-family:var(--font-h);
  font-size:.85rem;
  font-weight:600;
  color:var(--muted);
  transition:color .2s,background .2s;
  letter-spacing:.05em;
}
.nav-dropdown-item:hover,
.nav-dropdown-item:focus-visible{color:var(--g);background:var(--g-glow);outline:none}
.nav-dropdown-item span{font-size:1rem}

.nav-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}
.nav-icon-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--r);color:var(--muted);transition:color var(--tr),background var(--tr);position:relative}
.nav-icon-btn svg{width:20px;height:20px}
.nav-icon-btn:hover{color:var(--g);background:var(--g-glow)}
#bvlCartCount{position:absolute;top:4px;right:4px;background:var(--g);color:#000;font-size:.58rem;font-weight:800;min-width:16px;height:16px;border-radius:8px;display:none;align-items:center;justify-content:center;padding:0 3px}
.nav-hamburger{display:none;flex-direction:column;gap:5px;width:40px;height:40px;align-items:center;justify-content:center}
.nav-hamburger span{display:block;width:22px;height:2px;background:var(--text);border-radius:2px;transition:transform .3s,opacity .3s}
.nav-hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
.nav-hamburger.open span:nth-child(2){opacity:0}
.nav-hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}

/* Site-wide nav product search */
.nav-search{position:relative;display:flex;align-items:center}
.nav-search-backdrop{display:none}
.nav-search-panel{position:absolute;top:calc(100% + 8px);right:0;width:min(340px,calc(100vw - 32px));background:var(--bg2);border:1px solid var(--border2);border-radius:10px;padding:10px;z-index:80;box-shadow:0 16px 40px rgba(0,0,0,.55)}
body.rtl .nav-search-panel{right:auto;left:0}
.nav-search-bar{display:flex;align-items:center;gap:8px}
.nav-search-input{flex:1;width:100%;min-width:0;background:#0a0a0a;border:1px solid rgba(255,255,255,.14);color:var(--text);padding:10px 12px;border-radius:8px;font-family:var(--font-b);font-size:.9rem}
.nav-search-input:focus{outline:none;border-color:rgba(163,255,0,.45)}
.nav-search-close{display:none;flex-shrink:0;width:40px;height:40px;align-items:center;justify-content:center;border-radius:8px;color:var(--muted);background:transparent;border:1px solid rgba(255,255,255,.12);cursor:pointer;touch-action:manipulation}
.nav-search-close svg{width:18px;height:18px}
.nav-search-close:hover,.nav-search-close:focus-visible{color:var(--g);border-color:rgba(163,255,0,.35);background:var(--g-glow);outline:none}
.nav-search-drop{margin-top:8px;max-height:360px;overflow:auto;-webkit-overflow-scrolling:touch}
.nav-search-item{display:flex;gap:10px;align-items:center;padding:8px;border-radius:8px;color:inherit;text-decoration:none;transition:background .15s}
.nav-search-item:hover,.nav-search-item:focus-visible{background:rgba(163,255,0,.08);outline:none}
.nav-search-item img{width:42px;height:42px;object-fit:contain;border-radius:6px;background:#080808;flex-shrink:0}
.nav-search-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;text-align:start}
.nav-search-name{font-family:var(--font-h);font-weight:600;font-size:.88rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nav-search-sub{font-size:.72rem;color:var(--muted);letter-spacing:.04em}
.nav-search-empty{padding:12px 8px;color:var(--muted);font-size:.85rem}
.nav-search-all{display:block;text-align:center;padding:10px 8px;margin-top:4px;border-top:1px solid var(--border);color:var(--g);font-family:var(--font-h);font-weight:700;font-size:.8rem;letter-spacing:.08em;text-decoration:none}
.nav-search-all:hover{color:#c8ff4d}
.mobile-nav-search{margin:0 0 18px;padding:14px;border:1px solid var(--border2);border-radius:12px;background:rgba(255,255,255,.02)}
.mobile-nav-search-label{display:block;font-family:var(--font-h);font-size:.75rem;letter-spacing:.12em;color:var(--muted);margin-bottom:8px;text-align:start}
.mobile-nav-search-row{display:flex;gap:8px;align-items:stretch}
.mobile-nav-search-row input{flex:1;min-width:0;background:#0a0a0a;border:1px solid rgba(255,255,255,.14);color:#fff;padding:12px 12px;border-radius:8px;font-size:16px}
.mobile-nav-search-row input:focus{outline:none;border-color:rgba(163,255,0,.45)}
.mobile-nav-search-drop{margin-top:10px;max-height:min(42vh,320px);overflow:auto;-webkit-overflow-scrolling:touch}
.nav-search.is-open .nav-search-toggle{color:var(--g);background:var(--g-glow)}
body.nav-search-open{overflow:hidden}

/* Mobile nav */
.mobile-nav{
  position:fixed;inset:0;z-index:1100;
  display:flex;flex-direction:column;
  background:
    radial-gradient(ellipse 80% 50% at 100% 0%, rgba(163,255,0,.1), transparent 55%),
    radial-gradient(ellipse 60% 40% at 0% 100%, rgba(163,255,0,.05), transparent 50%),
    rgba(5,5,5,.985);
  opacity:0;visibility:hidden;
  transition:opacity .3s ease,visibility .3s ease;
  overflow-y:auto;-webkit-overflow-scrolling:touch;
  padding:max(100px, calc(var(--announcement-h, 36px) + 72px)) 20px max(36px, env(safe-area-inset-bottom));
}
.mobile-nav.open{opacity:1;visibility:visible}
body.mobile-nav-open .navbar{z-index:1200}
body.mobile-nav-open .announcement-bar{z-index:1201}
body.nav-search-open .navbar{z-index:1260}
body.nav-search-open .announcement-bar{z-index:1261}
.mobile-nav-inner{
  width:100%;max-width:420px;margin:0 auto;
  display:flex;flex-direction:column;gap:6px;
}
.mobile-nav-kicker{
  font-family:var(--font-h);font-size:.68rem;font-weight:700;
  letter-spacing:.28em;text-transform:uppercase;color:var(--g);
  padding:0 4px 10px;margin:0;opacity:.85;
}
.mobile-nav-link{
  font-family:var(--font-d);font-size:clamp(1.45rem,5vw,1.9rem);
  color:var(--text);letter-spacing:.12em;text-transform:uppercase;
  padding:14px 16px;border-radius:14px;text-align:left;
  border:1px solid transparent;
  transition:color .2s,background .2s,border-color .2s,transform .15s;
}
.mobile-nav-link:hover,.mobile-nav-link:focus-visible{
  color:var(--g);background:rgba(163,255,0,.06);border-color:rgba(163,255,0,.18);
  outline:none;
}

/* Shop accordion dropdown */
.mobile-shop{
  border:1px solid rgba(163,255,0,.2);
  border-radius:16px;
  background:linear-gradient(165deg, rgba(163,255,0,.07), rgba(255,255,255,.02) 45%, transparent);
  overflow:hidden;
  margin:4px 0 8px;
  box-shadow:0 0 0 1px rgba(0,0,0,.35) inset;
}
.mobile-shop-toggle{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;
  padding:16px 16px 16px 18px;background:transparent;color:inherit;text-align:left;
  cursor:pointer;border:0;font:inherit;
  transition:background .2s;
}
.mobile-shop-toggle:hover,.mobile-shop-toggle:focus-visible{
  background:rgba(163,255,0,.06);outline:none;
}
.mobile-shop-toggle-text{display:flex;flex-direction:column;gap:4px;min-width:0}
.mobile-shop-label{
  font-family:var(--font-d);font-size:clamp(1.45rem,5vw,1.9rem);
  letter-spacing:.12em;text-transform:uppercase;color:var(--g);
  line-height:1.1;
}
.mobile-shop-hint{
  font-family:var(--font-h);font-size:.72rem;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--muted);
}
.mobile-shop-chevron{
  flex-shrink:0;width:40px;height:40px;border-radius:12px;
  display:flex;align-items:center;justify-content:center;
  background:rgba(163,255,0,.1);border:1px solid rgba(163,255,0,.25);
  color:var(--g);
  transition:transform .3s cubic-bezier(.2,.8,.2,1),background .2s;
}
.mobile-shop.open .mobile-shop-chevron{
  transform:rotate(180deg);
  background:rgba(163,255,0,.18);
}
.mobile-shop-panel{
  display:grid;gap:6px;
  padding:0 10px;
  max-height:0;opacity:0;overflow:hidden;
  pointer-events:none;
  transition:max-height .4s cubic-bezier(.2,.8,.2,1),opacity .28s ease,padding .3s ease;
}
.mobile-shop.open .mobile-shop-panel{
  max-height:560px;opacity:1;padding:0 10px 12px;
  pointer-events:auto;
}
.mobile-shop-item{
  display:flex;align-items:center;gap:12px;
  padding:12px 12px;border-radius:12px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
  text-decoration:none;color:inherit;
  transition:background .2s,border-color .2s,transform .15s;
  min-height:56px;
}
.mobile-shop-item:hover,.mobile-shop-item:focus-visible,.mobile-shop-item:active{
  background:rgba(163,255,0,.1);
  border-color:rgba(163,255,0,.28);
  outline:none;transform:translateX(2px);
}
.mobile-shop-item--all{
  background:rgba(163,255,0,.08);
  border-color:rgba(163,255,0,.22);
}
.mobile-shop-ico{
  width:42px;height:42px;flex-shrink:0;border-radius:11px;
  display:flex;align-items:center;justify-content:center;
  font-size:1.15rem;
  background:rgba(0,0,0,.35);
  border:1px solid rgba(163,255,0,.15);
}
.mobile-shop-copy{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.mobile-shop-name{
  font-family:var(--font-h);font-size:.92rem;font-weight:700;
  letter-spacing:.06em;color:var(--text);
}
.mobile-shop-desc{
  font-size:.72rem;color:var(--muted);letter-spacing:.02em;line-height:1.35;
}
.mobile-shop-arrow{
  color:var(--g);opacity:.55;font-size:1rem;flex-shrink:0;
  transition:transform .2s,opacity .2s;
}
.mobile-shop-item:hover .mobile-shop-arrow,
.mobile-shop-item:focus-visible .mobile-shop-arrow{
  opacity:1;transform:translateX(3px);
}

/* legacy sub links (fallback pages) */
.mobile-nav-sub{font-family:var(--font-h);font-size:.95rem;color:var(--muted);padding:8px 24px;letter-spacing:.1em;text-align:center}
.mobile-nav-sub:hover{color:var(--g)}

/* Cart sidebar */
.cart-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:1000;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.cart-overlay.open{opacity:1;visibility:visible}
.cart-sidebar{position:fixed;top:0;right:0;width:400px;max-width:100vw;height:100vh;background:var(--bg2);border-left:1px solid var(--border);z-index:1001;display:flex;flex-direction:column;transform:translateX(100%);transition:transform .4s cubic-bezier(.25,.46,.45,.94)}
.cart-sidebar.open{transform:translateX(0)}
.cart-head{display:flex;align-items:center;justify-content:space-between;padding:20px 20px;border-bottom:1px solid var(--border)}
.cart-head h3{font-family:var(--font-d);font-size:1.4rem;letter-spacing:.15em;color:var(--g)}
.cart-head-close{font-size:1.8rem;color:var(--muted);transition:color .2s}
.cart-head-close:hover{color:var(--g)}
.cart-items{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:10px}
.cart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;gap:12px;color:var(--dim);text-align:center}
.cart-empty-icon{font-size:3rem;opacity:.4}
.cart-empty p{font-family:var(--font-h);font-size:1.1rem;color:var(--muted)}
.cart-empty span{font-size:.82rem}
.cart-item{display:flex;gap:12px;padding:12px;background:var(--bg3);border-radius:var(--r);border:1px solid var(--border);position:relative;animation:slideIn .3s ease}
@keyframes slideIn{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}
.cart-item-img{width:60px;height:60px;border-radius:6px;object-fit:cover;flex-shrink:0}
.cart-item-body{flex:1;min-width:0}
.cart-item-name{font-family:var(--font-h);font-size:.9rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cart-item-flavor{font-size:.72rem;color:var(--muted);margin:2px 0}
.cart-item-row{display:flex;align-items:center;justify-content:space-between;margin-top:6px}
.cart-item-price{color:var(--g);font-weight:700;font-size:.9rem;font-family:var(--font-h)}
.qty-ctrl{display:flex;align-items:center;gap:6px}
.qty-btn{width:22px;height:22px;background:var(--bg4);border:1px solid var(--border);border-radius:4px;font-size:.8rem;display:flex;align-items:center;justify-content:center;transition:border-color .2s,color .2s}
.qty-btn:hover{border-color:var(--g);color:var(--g)}
.qty-ctrl span{font-size:.82rem;min-width:18px;text-align:center}
.cart-item-del{position:absolute;top:8px;right:8px;color:var(--dim);font-size:1.1rem;line-height:1;transition:color .2s}
.cart-item-del:hover{color:var(--red)}
.cart-footer{padding:16px 20px 24px;border-top:1px solid var(--border)}
.cart-subtotal-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-family:var(--font-h);font-size:1rem}
.cart-total-val{color:var(--g);font-size:1.3rem;font-weight:700}
.shipping-track{height:4px;background:var(--bg4);border-radius:4px;margin-bottom:6px;overflow:hidden}
.shipping-bar{height:100%;background:linear-gradient(90deg,var(--g2),var(--g));border-radius:4px;transition:width .5s ease;width:0}
.shipping-msg{font-size:.72rem;color:var(--muted);margin-bottom:14px}
.cart-pop{animation:cartPop .4s ease}
@keyframes cartPop{0%,100%{transform:scale(1)}50%{transform:scale(1.35)}}

/* Toast */
#bvlToasts{position:fixed;bottom:24px;right:24px;z-index:5000;display:flex;flex-direction:column;gap:8px}
.bvl-toast{background:var(--bg3);border:1px solid var(--g);border-radius:var(--r);padding:12px 18px;min-width:260px;font-family:var(--font-h);font-size:.88rem;font-weight:600;box-shadow:0 8px 32px rgba(0,255,65,.15);opacity:0;transform:translateX(80px);transition:opacity .35s,transform .35s}
.bvl-toast.visible{opacity:1;transform:translateX(0)}

/* ════════════════════════════════════════
   FLYING ORB
════════════════════════════════════════ */
#bvlOrb{display:none!important}

/* WhatsApp floating CTA */
.bvl-wa-float{
  position:fixed;
  bottom:28px;
  right:28px;
  z-index:2000;
  width:60px;
  height:60px;
  border-radius:50%;
  background:#25d366;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 8px 28px rgba(37,211,102,.45),0 0 0 0 rgba(37,211,102,.4);
  animation:waPulse 2.2s ease-in-out infinite;
  transition:transform .25s ease,box-shadow .25s ease;
  text-decoration:none;
}
.bvl-wa-float:hover,.bvl-wa-float:active{
  transform:scale(1.08);
  box-shadow:0 10px 32px rgba(37,211,102,.65);
  animation:none;
}
.bvl-wa-float svg{display:block}
.bvl-wa-tip{
  position:absolute;
  right:72px;
  white-space:nowrap;
  background:#111;
  color:#fff;
  border:1px solid rgba(37,211,102,.35);
  padding:8px 12px;
  border-radius:8px;
  font-family:var(--font-h);
  font-size:.78rem;
  font-weight:700;
  opacity:0;
  pointer-events:none;
  transform:translateX(8px);
  transition:opacity .2s ease,transform .2s ease;
}
.bvl-wa-float:hover .bvl-wa-tip{opacity:1;transform:translateX(0)}
@keyframes waPulse{
  0%,100%{box-shadow:0 8px 28px rgba(37,211,102,.45),0 0 0 0 rgba(37,211,102,.35)}
  50%{box-shadow:0 8px 28px rgba(37,211,102,.55),0 0 0 12px rgba(37,211,102,0)}
}
@media(max-width:768px){
  .bvl-wa-float{bottom:20px;right:16px;width:56px;height:56px}
  .bvl-wa-tip{display:none}
  body.rtl .bvl-wa-float{right:auto;left:16px}
}
body.rtl .bvl-wa-float{right:auto;left:28px}
body.rtl .bvl-wa-tip{right:auto;left:72px}
.orb-core{width:64px;height:64px;background:var(--g);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;position:relative;z-index:2;transition:transform .3s,box-shadow .3s;box-shadow:0 0 20px rgba(0,255,65,.4),0 0 60px rgba(0,255,65,.2)}
.orb-core:hover{transform:scale(1.1);box-shadow:0 0 30px rgba(0,255,65,.7),0 0 80px rgba(0,255,65,.35)}
.orb-core svg{width:36px;height:20px}
.orb-ring{position:absolute;top:50%;left:50%;border-radius:50%;border:1px solid rgba(0,255,65,.3);transform:translate(-50%,-50%);animation:orbRing 2.5s ease-in-out infinite}
.r1{width:84px;height:84px;animation-delay:0s}
.r2{width:108px;height:108px;animation-delay:.5s}
@keyframes orbRing{0%,100%{opacity:.4;transform:translate(-50%,-50%) scale(1)}50%{opacity:.8;transform:translate(-50%,-50%) scale(1.05)}}
.orb-menu{position:absolute;bottom:76px;right:0;display:flex;flex-direction:column;gap:6px;opacity:0;visibility:hidden;transform:translateY(10px) scale(.95);transition:all .3s cubic-bezier(.34,1.56,.64,1);pointer-events:none}
.orb-open .orb-menu{opacity:1;visibility:visible;transform:translateY(0) scale(1);pointer-events:all}
.orb-link{display:flex;align-items:center;gap:10px;padding:9px 14px;background:var(--bg2);border:1px solid var(--border2);border-radius:100px;color:var(--text);font-family:var(--font-h);font-size:.82rem;font-weight:600;letter-spacing:.05em;white-space:nowrap;transition:all .2s;box-shadow:0 4px 16px rgba(0,0,0,.5)}
.orb-link:hover{background:var(--g);color:#000;border-color:var(--g);transform:translateX(-4px)}
.orb-link-icon{font-size:1rem}
.orb-admin{border-color:rgba(255,200,0,.3);color:var(--muted)}
.orb-admin:hover{background:#ff9900;color:#000;border-color:#ff9900}

/* ════════════════════════════════════════
   HOME PAGE
════════════════════════════════════════ */

/* Hero */
.hero{min-height:100vh;display:flex;align-items:center;padding:100px 24px 60px;position:relative;overflow:hidden}
.hero-bg{position:absolute;inset:0;z-index:0}
.hero-grid-bg{position:absolute;inset:0;background-image:linear-gradient(rgba(0,255,65,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(0,255,65,.03) 1px,transparent 1px);background-size:56px 56px;animation:gridMove 25s linear infinite}
@keyframes gridMove{from{background-position:0 0}to{background-position:56px 56px}}
.hero-glow-1{position:absolute;top:10%;left:-15%;width:700px;height:700px;background:radial-gradient(circle,rgba(0,255,65,.07) 0%,transparent 65%);animation:gFloat1 9s ease-in-out infinite}
.hero-glow-2{position:absolute;bottom:0;right:-10%;width:600px;height:600px;background:radial-gradient(circle,rgba(0,200,50,.05) 0%,transparent 65%);animation:gFloat2 11s ease-in-out infinite}
@keyframes gFloat1{0%,100%{transform:translate(0,0)}50%{transform:translate(30px,-50px)}}
@keyframes gFloat2{0%,100%{transform:translate(0,0)}50%{transform:translate(-25px,35px)}}
.hero-particles-wrap{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.hero-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;width:100%;max-width:1320px;margin:0 auto;gap:40px}

/* Hero content */
.hero-content{flex:1;max-width:660px}
.hero-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;background:rgba(0,255,65,.08);border:1px solid rgba(0,255,65,.2);border-radius:100px;font-family:var(--font-h);font-size:.72rem;font-weight:700;color:var(--g);letter-spacing:.18em;margin-bottom:24px;animation:fadeUp .8s ease .3s both}
.badge-pulse{width:7px;height:7px;border-radius:50%;background:var(--g);animation:pulse 1.4s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(0,255,65,.5)}70%{opacity:.7;box-shadow:0 0 0 8px rgba(0,255,65,0)}}

.hero-title{font-family:var(--font-d);line-height:.92;margin-bottom:24px;animation:fadeUp .8s ease .4s both}
.hero-title .line1{font-size:clamp(3.5rem,7vw,5.5rem);display:block;letter-spacing:.03em}
.hero-title .line2{font-size:clamp(4rem,8.5vw,7rem);display:block;color:var(--g);letter-spacing:.02em;text-shadow:0 0 40px rgba(0,255,65,.45),0 0 100px rgba(0,255,65,.2);animation:glowTitle 3s ease-in-out infinite}
@keyframes glowTitle{0%,100%{text-shadow:0 0 40px rgba(0,255,65,.45),0 0 100px rgba(0,255,65,.2)}50%{text-shadow:0 0 70px rgba(0,255,65,.75),0 0 160px rgba(0,255,65,.4)}}
.hero-title .line3{font-size:clamp(2rem,4vw,3.5rem);display:block;letter-spacing:.05em;color:var(--muted)}

.hero-sub{color:var(--muted);font-size:1.05rem;line-height:1.75;margin-bottom:32px;animation:fadeUp .8s ease .5s both}
.hero-cta{display:flex;align-items:center;gap:16px;margin-bottom:52px;flex-wrap:wrap;animation:fadeUp .8s ease .6s both}
.hero-cta .btn svg{width:16px;height:16px}

.hero-stats{display:flex;gap:0;animation:fadeUp .8s ease .7s both}
.stat-item{text-align:center;padding:0 24px;border-right:1px solid var(--border)}
.stat-item:first-child{padding-left:0}
.stat-item:last-child{border-right:none}
.stat-num{font-family:var(--font-d);font-size:2.2rem;color:var(--g);line-height:1;display:block}
.stat-suf{font-family:var(--font-d);font-size:1.4rem;color:var(--g)}
.stat-lbl{font-size:.72rem;color:var(--muted);letter-spacing:.12em;margin-top:4px;display:block}

@keyframes fadeUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}

/* Hero visual */
.hero-visual{flex:0 0 auto;width:480px;height:520px;position:relative;animation:fadeUp .9s ease .5s both}
.hero-visual-rings{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.hring{position:absolute;border-radius:50%;border:1px solid rgba(0,255,65,.12);animation:hRingPulse 3s ease-in-out infinite}
.hring:nth-child(1){width:340px;height:340px;animation-delay:0s}
.hring:nth-child(2){width:410px;height:410px;animation-delay:.4s}
.hring:nth-child(3){width:480px;height:480px;animation-delay:.8s}
@keyframes hRingPulse{0%,100%{opacity:.3;border-color:rgba(0,255,65,.1)}50%{opacity:.8;border-color:rgba(0,255,65,.3)}}
.hero-img-wrap{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);animation:heroFloat 7s ease-in-out infinite}
@keyframes heroFloat{0%,100%{transform:translate(-50%,-50%) translateY(0) rotate(0deg)}33%{transform:translate(-50%,-50%) translateY(-14px) rotate(.8deg)}66%{transform:translate(-50%,-50%) translateY(-7px) rotate(-.8deg)}}
.hero-img-glow{position:absolute;inset:-30px;border-radius:50%;background:radial-gradient(circle,rgba(0,255,65,.18) 0%,transparent 65%);animation:glowBreath 4s ease-in-out infinite}
@keyframes glowBreath{0%,100%{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.08)}}
.hero-img{width:280px;height:280px;border-radius:50%;object-fit:cover;border:2px solid rgba(0,255,65,.2);position:relative;z-index:1}
.hero-badge-float{position:absolute;background:var(--g);color:#000;padding:10px 14px;border-radius:10px;font-family:var(--font-d);font-size:.85rem;text-align:center;line-height:1.2;z-index:2;animation:badgeFloat 2s ease-in-out infinite}
.hero-badge-float.pos1{top:30px;right:10px;animation-delay:0s}
.hero-badge-float.pos2{bottom:60px;left:10px;animation-delay:1s;background:var(--bg2);color:var(--g);border:1px solid var(--g)}
@keyframes badgeFloat{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-6px) rotate(-4deg)}}
.hero-scroll-hint{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:8px;z-index:1}
.hero-scroll-hint span{font-size:.6rem;color:var(--dim);letter-spacing:.35em}
.scroll-line{width:1px;height:48px;background:linear-gradient(to bottom,var(--g),transparent);animation:scrollLine 1.6s ease-in-out infinite}
@keyframes scrollLine{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}100%{transform:scaleY(1);transform-origin:bottom;opacity:0}}

/* Ticker */
.ticker-wrap{overflow:hidden;background:var(--g);padding:11px 0}
.ticker{display:flex;gap:36px;white-space:nowrap;animation:tick 22s linear infinite}
.ticker span{font-family:var(--font-h);font-size:.82rem;font-weight:700;color:#000;letter-spacing:.1em;flex-shrink:0}
.ticker-dot{opacity:.4}
@keyframes tick{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* Home categories */
.home-cats{padding:90px 0}
.cats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.cat-card{padding:28px 20px;border-radius:var(--r2);border:1px solid var(--border);background:var(--bg2);text-align:center;cursor:pointer;transition:all var(--tr);position:relative;overflow:hidden}
.cat-card::after{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 110%,rgba(0,255,65,.07),transparent 65%);opacity:0;transition:opacity .3s}
.cat-card:hover::after{opacity:1}
.cat-card:hover{border-color:var(--border2);transform:translateY(-5px);box-shadow:0 12px 40px rgba(0,255,65,.1)}
.cat-icon{font-size:2.4rem;margin-bottom:14px;display:block;transition:transform .3s}
.cat-card:hover .cat-icon{transform:scale(1.25) rotate(-5deg)}
.cat-card h3{font-family:var(--font-h);font-size:1rem;font-weight:700;letter-spacing:.1em;margin-bottom:4px}
.cat-card p{font-size:.78rem;color:var(--muted);margin-bottom:8px}
.cat-count{font-size:.7rem;color:var(--g);font-family:var(--font-h);font-weight:600}

/* Home featured products */
.home-featured{padding:90px 0;background:linear-gradient(180deg,var(--bg) 0%,#030603 50%,var(--bg) 100%)}
.products-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}

/* Home features */
.home-features{padding:90px 0}
.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.feat-card{padding:28px;border:1px solid var(--border);background:var(--bg2);border-radius:var(--r2);transition:all var(--tr);position:relative;overflow:hidden}
.feat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--g),transparent);opacity:0;transition:opacity .3s}
.feat-card:hover::before{opacity:1}
.feat-card:hover{border-color:var(--border2);transform:translateY(-4px);box-shadow:0 8px 32px rgba(0,255,65,.08)}
.feat-icon-box{width:52px;height:52px;background:var(--g-glow);border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.6rem;margin-bottom:18px;transition:all .3s}
.feat-card:hover .feat-icon-box{border-color:var(--border2);background:rgba(0,255,65,.12)}
.feat-card h3{font-family:var(--font-h);font-size:.95rem;font-weight:700;letter-spacing:.1em;margin-bottom:10px}
.feat-card p{font-size:.85rem;color:var(--muted);line-height:1.7}

/* CTA banner */
.cta-banner{padding:80px 24px;background:linear-gradient(135deg,rgba(0,255,65,.07) 0%,rgba(0,40,15,.45) 100%);border-top:1px solid var(--border);border-bottom:1px solid var(--border);text-align:center}
.cta-banner-inner{max-width:680px;margin:0 auto}
.cta-banner h2{font-family:var(--font-d);font-size:clamp(2rem,4.5vw,3.5rem);margin-bottom:14px}
.cta-banner p{color:var(--muted);margin-bottom:28px;line-height:1.7}

/* Testimonials */
.testimonials{padding:90px 0}
.testi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:40px}
.testi-card{padding:26px;border:1px solid var(--border);background:var(--bg2);border-radius:var(--r2);position:relative;transition:all var(--tr);display:flex;flex-direction:column;gap:0}
.testi-card.featured{border-color:rgba(0,255,65,.25);background:linear-gradient(135deg,var(--bg2),rgba(0,25,10,.8))}
.testi-card:hover{border-color:var(--border2);transform:translateY(-4px);box-shadow:0 8px 32px rgba(0,255,65,.08)}
.testi-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;min-height:28px}
.testi-stars{color:#ffa500;font-size:.9rem;letter-spacing:2px;line-height:1;flex:1;min-width:0}
.testi-text{font-size:.87rem;color:var(--muted);line-height:1.75;font-style:italic;margin-bottom:18px}
.testi-author{display:flex;align-items:center;gap:12px;margin-top:auto}
.testi-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,var(--g2),#003311);display:flex;align-items:center;justify-content:center;font-family:var(--font-h);font-size:.78rem;font-weight:700;color:var(--g);border:1px solid var(--border2);flex-shrink:0}
.testi-name{font-family:var(--font-h);font-size:.92rem;font-weight:700;display:block}
.testi-role{font-size:.72rem;color:var(--muted)}
.testi-badge{position:static;flex-shrink:0;padding:3px 8px;border-radius:4px;background:var(--g-glow);border:1px solid var(--border);color:var(--g);font-family:var(--font-h);font-size:.6rem;font-weight:700;letter-spacing:.08em;white-space:nowrap}
.rating-wrap{text-align:center;padding:36px;background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2)}
.rating-big-num{font-family:var(--font-d);font-size:5rem;color:var(--g);line-height:1;text-shadow:0 0 30px rgba(0,255,65,.4)}
.rating-stars-big{color:#ffa500;font-size:1.4rem;margin:10px 0 8px;letter-spacing:3px;line-height:1.2;display:block}

/* Newsletter */
.newsletter{padding:90px 0;position:relative;overflow:hidden}
.newsletter-bg{position:absolute;inset:0;background:radial-gradient(ellipse at center,rgba(0,80,30,.18) 0%,transparent 65%)}
.newsletter-content{position:relative;z-index:1;text-align:center;max-width:580px;margin:0 auto}
.newsletter-emoji{font-size:3.5rem;margin-bottom:16px}
.newsletter-content h2{font-family:var(--font-d);font-size:clamp(2rem,4.5vw,3.5rem);margin-bottom:14px}
.newsletter-content p{color:var(--muted);margin-bottom:30px;line-height:1.7}
.newsletter-form{display:flex;gap:8px;margin-bottom:10px}
.newsletter-form input{flex:1;padding:14px 18px;background:var(--bg3);border:1px solid var(--border);border-radius:var(--r);color:var(--text);font-size:.95rem;outline:none;transition:border-color .2s}
.newsletter-form input:focus{border-color:var(--g)}
.newsletter-note{font-size:.72rem;color:var(--dim)}

/* ════════════════════════════════════════
   PRODUCTS PAGE
════════════════════════════════════════ */
.page-hero{padding:130px 24px 60px;background:linear-gradient(180deg,var(--bg2) 0%,var(--bg) 100%);border-bottom:1px solid var(--border);text-align:center;position:relative;overflow:hidden}
.page-hero::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at top center,rgba(0,255,65,.06) 0%,transparent 60%)}
.page-hero-content{position:relative;z-index:1}
.page-breadcrumb{font-family:var(--font-h);font-size:.78rem;color:var(--muted);letter-spacing:.08em;margin-bottom:12px}
.page-breadcrumb a{color:var(--g);transition:color .2s}
.page-breadcrumb a:hover{color:#fff}
.page-title{font-family:var(--font-d);font-size:clamp(3rem,6vw,5rem);letter-spacing:.05em;margin-bottom:14px}
.page-desc{color:var(--muted);max-width:560px;margin:0 auto;line-height:1.7}

/* Category submenu — full-bleed horizontal scroll */
.cat-submenu{
  background:var(--bg2);
  border-bottom:1px solid var(--border);
  position:sticky;
  top:0;
  z-index:50;
  transition:top .3s;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-x;
  overscroll-behavior-x:contain;
  scrollbar-width:thin;
  scrollbar-color:rgba(163,255,0,.45) transparent;
  cursor:grab;
  mask-image:linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
  -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 16px, #000 calc(100% - 16px), transparent 100%);
}
.cat-submenu.is-dragging{cursor:grabbing}
.cat-submenu.is-dragging .cat-tab{pointer-events:none}
.cat-submenu::-webkit-scrollbar{height:4px}
.cat-submenu::-webkit-scrollbar-thumb{background:rgba(163,255,0,.4);border-radius:4px}
.cat-submenu-inner{
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:0;
  width:max-content;
  min-width:100%;
  max-width:none;
  margin:0 auto;
  padding:0 16px;
  box-sizing:border-box;
}
.cat-tab{display:flex;align-items:center;gap:8px;padding:16px 22px;font-family:var(--font-h);font-size:.88rem;font-weight:700;color:var(--muted);letter-spacing:.08em;border-bottom:2px solid transparent;transition:color .2s,border-color .2s;white-space:nowrap;cursor:pointer;flex:0 0 auto;scroll-snap-align:start}
.cat-tab:hover{color:var(--text)}
.cat-tab.active{color:var(--g);border-bottom-color:var(--g)}
.cat-tab-icon{font-size:1rem}

/* Products layout */
.products-layout{display:flex;gap:28px;padding:48px 0 80px}
.products-sidebar{width:240px;flex-shrink:0}
.products-sidebar-sticky{position:sticky;top:72px}
.sidebar-section{margin-bottom:28px}
.sidebar-title{font-family:var(--font-h);font-size:.72rem;font-weight:700;letter-spacing:.25em;color:var(--g);margin-bottom:12px}
.sidebar-option{display:flex;align-items:center;gap:8px;padding:7px 0;font-size:.85rem;color:var(--muted);cursor:pointer;transition:color .2s}
.sidebar-option:hover,.sidebar-option.active{color:var(--text)}
.sidebar-option input[type="checkbox"]{width:18px;height:18px;flex-shrink:0}
.price-range{width:100%}
.products-main{flex:1;min-width:0}
.products-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:12px;flex-wrap:wrap}
.products-count{font-family:var(--font-h);font-size:.85rem;color:var(--muted)}
.products-count strong{color:var(--text)}
.sort-select{padding:8px 14px;background:var(--bg3);border:1px solid var(--border);border-radius:var(--r);color:var(--text);font-size:.82rem;font-family:var(--font-h);font-weight:600;outline:none;transition:border-color .2s;cursor:pointer}
.sort-select:focus{border-color:var(--g)}
.view-btns{display:flex;gap:4px}
.view-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--border);color:var(--muted);font-size:.8rem;transition:all .2s}
.view-btn.active,.view-btn:hover{border-color:var(--g);color:var(--g);background:var(--g-glow)}
.products-catalog{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.products-catalog.list-view{grid-template-columns:1fr}

/* Product card */
.prod-card{background:var(--bg2);border:1px solid var(--border);border-radius:var(--r2);overflow:hidden;transition:border-color .3s,transform .3s,box-shadow .3s;cursor:pointer;display:flex;flex-direction:column}
.prod-card:hover{border-color:var(--border2);transform:translateY(-6px);box-shadow:0 16px 50px rgba(0,255,65,.12)}
.prod-img-wrap{position:relative;overflow:hidden;aspect-ratio:1;background:var(--bg3)}
.prod-img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.prod-card:hover .prod-img{transform:scale(1.08)}
.prod-overlay{position:absolute;inset:0;background:rgba(0,0,0,.6);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;opacity:0;transition:opacity .3s}
.prod-card:hover .prod-overlay{opacity:1}
.prod-overlay-btn{padding:9px 20px;border-radius:var(--r);font-family:var(--font-h);font-size:.82rem;font-weight:700;letter-spacing:.08em;transition:all .2s;border:none;cursor:pointer}
.prod-overlay-btn:hover{transform:translateY(-2px)}
.ovr-view{background:var(--g);color:#000}
.ovr-cart{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(8px)}
.prod-labels{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:4px}
.prod-label{padding:2px 7px;border-radius:4px;font-size:.62rem;font-family:var(--font-h);font-weight:700;letter-spacing:.1em;line-height:1.5}
.lbl-new{background:var(--g);color:#000}
.lbl-hot{background:#ff4422;color:#fff}
.lbl-sale{background:#ff9900;color:#000}
.lbl-bestseller{background:rgba(0,255,65,.15);color:var(--g);border:1px solid var(--g)}
.lbl-limited{background:rgba(255,100,0,.15);color:#ff6600;border:1px solid #ff6600}
.prod-wish{position:absolute;top:10px;right:10px;width:30px;height:30px;background:rgba(0,0,0,.6);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;backdrop-filter:blur(8px);border:1px solid var(--border);transition:all .2s}
.prod-wish:hover{border-color:#ff4444;color:#ff4444}
.prod-info{padding:14px;flex:1;display:flex;flex-direction:column}
.prod-cat-tag{font-family:var(--font-h);font-size:.65rem;font-weight:700;color:var(--g);letter-spacing:.2em;margin-bottom:4px}
.prod-name{font-family:var(--font-h);font-size:.98rem;font-weight:700;line-height:1.2;margin-bottom:6px;flex:1}
.prod-subtitle{font-size:.75rem;color:var(--muted);margin-bottom:8px}
.prod-stars{color:#ffa500;font-size:.72rem;letter-spacing:1.5px}
.prod-rating-count{font-size:.68rem;color:var(--muted);margin-left:4px}
.prod-price-row{display:flex;align-items:center;justify-content:space-between;margin-top:10px}
.prod-price{font-family:var(--font-h);font-size:1.15rem;font-weight:700;color:var(--g)}
.prod-price-old{font-size:.8rem;color:var(--dim);text-decoration:line-through;margin-left:6px}
.prod-add-mini{width:30px;height:30px;background:var(--g-glow);border:1px solid var(--border2);border-radius:6px;color:var(--g);font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .2s}
.prod-add-mini:hover{background:var(--g);color:#000;box-shadow:var(--shadow-g)}

/* List view card */
.list-view .prod-card{flex-direction:row}
.list-view .prod-img-wrap{width:200px;flex-shrink:0;aspect-ratio:unset}
.list-view .prod-info{padding:20px}

/* ════════════════════════════════════════
   PRODUCT DETAIL PAGE
════════════════════════════════════════ */
.product-detail{padding:120px 0 80px}
.product-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}

/* Gallery */
.product-gallery{position:sticky;top:100px}
.gallery-main{position:relative;border-radius:var(--r2);overflow:hidden;border:1px solid var(--border);aspect-ratio:1;margin-bottom:12px;background:var(--bg3)}
.gallery-main img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.gallery-main:hover img{transform:scale(1.04)}
.gallery-main-badge{position:absolute;top:16px;left:16px;background:var(--g);color:#000;padding:5px 10px;border-radius:6px;font-family:var(--font-d);font-size:.82rem;letter-spacing:.1em}
.gallery-thumbs{display:flex;gap:10px;overflow-x:auto}
.gallery-thumb{width:72px;height:72px;border-radius:8px;border:2px solid var(--border);overflow:hidden;cursor:pointer;flex-shrink:0;transition:border-color .2s}
.gallery-thumb.active,.gallery-thumb:hover{border-color:var(--g)}
.gallery-thumb img{width:100%;height:100%;object-fit:cover}

/* Product info */
.product-info-col{}
.product-info-cat{font-family:var(--font-h);font-size:.72rem;font-weight:700;color:var(--g);letter-spacing:.25em;margin-bottom:8px}
.product-info-name{font-family:var(--font-d);font-size:clamp(2rem,4vw,3rem);line-height:1;margin-bottom:6px}
.product-info-sub{font-family:var(--font-h);font-size:1rem;color:var(--muted);margin-bottom:18px}
.product-info-rating{display:flex;align-items:center;gap:8px;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid var(--border)}
.product-info-rating .stars{color:#ffa500;font-size:.9rem;letter-spacing:2px}
.review-count{font-size:.82rem;color:var(--muted)}
.product-price-block{margin-bottom:24px}
.product-price-main{font-family:var(--font-d);font-size:3rem;color:var(--g);line-height:1}
.product-price-old-d{font-family:var(--font-h);font-size:1.1rem;color:var(--dim);text-decoration:line-through;margin-left:10px}
.product-save-tag{display:inline-block;margin-top:6px;padding:3px 10px;background:rgba(255,153,0,.15);border:1px solid rgba(255,153,0,.3);border-radius:100px;font-size:.72rem;font-family:var(--font-h);font-weight:700;color:#ff9900}
.stock-status{display:flex;align-items:center;gap:6px;font-family:var(--font-h);font-size:.82rem;font-weight:600;margin-bottom:20px}
.stock-dot{width:8px;height:8px;border-radius:50%;background:var(--g)}
.stock-status.low .stock-dot{background:#ff9900}
.stock-status.out .stock-dot{background:var(--red)}

/* Options */
.option-label{font-family:var(--font-h);font-size:.72rem;font-weight:700;color:var(--muted);letter-spacing:.2em;margin-bottom:10px}
.flavor-grid{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.flavor-pill{padding:7px 16px;border-radius:100px;border:1px solid var(--border);font-size:.82rem;color:var(--muted);transition:all .2s;cursor:pointer}
.flavor-pill:hover,.flavor-pill.active{border-color:var(--g);color:var(--g);background:var(--g-glow)}
.qty-selector{display:flex;align-items:center;gap:12px;margin-bottom:24px}
.qty-selector label{font-family:var(--font-h);font-size:.72rem;font-weight:700;color:var(--muted);letter-spacing:.2em}
.qty-box{display:flex;align-items:center;background:var(--bg3);border:1px solid var(--border);border-radius:var(--r)}
.qty-box button{width:38px;height:38px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:var(--muted);transition:color .2s}
.qty-box button:hover{color:var(--g)}
.qty-box span{min-width:36px;text-align:center;font-family:var(--font-h);font-weight:700}
.product-actions{display:flex;gap:10px;margin-bottom:24px}
.product-actions .btn{flex:1;justify-content:center}

/* Trust badges */
.trust-badges{display:flex;gap:16px;flex-wrap:wrap;padding:20px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:24px}
.trust-badge{display:flex;align-items:center;gap:6px;font-size:.75rem;color:var(--muted)}
.trust-badge span:first-child{font-size:1rem}

/* Tabs */
.product-tabs{margin-top:48px}
.tab-nav{display:flex;border-bottom:1px solid var(--border);margin-bottom:28px}
.tab-btn{padding:12px 20px;font-family:var(--font-h);font-size:.88rem;font-weight:700;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .2s,border-color .2s;letter-spacing:.08em;cursor:pointer}
.tab-btn.active{color:var(--g);border-bottom-color:var(--g)}
.tab-pane{display:none}
.tab-pane.active{display:block}
.tab-pane h4{font-family:var(--font-h);font-size:.9rem;font-weight:700;letter-spacing:.1em;margin:16px 0 8px;color:var(--text)}
.tab-pane p,.tab-pane li{font-size:.88rem;color:var(--muted);line-height:1.75}
.tab-pane ul{padding-left:20px;list-style:disc}

/* Nutrition table */
.nutrition-table{width:100%;border-collapse:collapse;font-size:.85rem}
.nutrition-table th{text-align:left;font-family:var(--font-h);font-size:.7rem;letter-spacing:.15em;color:var(--g);padding:8px 12px;border-bottom:2px solid var(--border2);font-weight:700}
.nutrition-table td{padding:10px 12px;border-bottom:1px solid var(--border);color:var(--muted)}
.nutrition-table td:last-child{text-align:right;color:var(--text);font-weight:600}
.nutrition-table tr:last-child td{border-bottom:none}
.nutrition-table tr:hover td{background:var(--bg3)}

/* Related products */
.related-products{padding:64px 0;border-top:1px solid var(--border)}

/* ════════════════════════════════════════
   FOOTER
════════════════════════════════════════ */
.footer{background:var(--bg2);border-top:1px solid var(--border)}
.footer-top{padding:60px 0}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:48px}
.footer-logo-wrap{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.footer-logo-svg{width:42px}
.footer-logo-name{font-family:var(--font-d);font-size:1.05rem;letter-spacing:.2em}
.footer-about{color:var(--muted);font-size:.83rem;line-height:1.75;margin-bottom:20px}
.footer-socials{display:flex;gap:10px}
.footer-social{width:36px;height:36px;border:1px solid var(--border);border-radius:6px;display:flex;align-items:center;justify-content:center;color:var(--muted);transition:all .2s}
.footer-social svg{width:15px;height:15px}
.footer-social:hover{border-color:var(--g);color:var(--g);background:var(--g-glow)}
.footer-col h4{font-family:var(--font-h);font-size:.7rem;font-weight:700;letter-spacing:.28em;color:var(--g);margin-bottom:16px}
.footer-col ul{display:flex;flex-direction:column;gap:9px}
.footer-col a{font-size:.83rem;color:var(--muted);transition:color .2s}
.footer-col a:hover{color:var(--g)}
.footer-bottom{padding:18px 0;border-top:1px solid var(--border)}
.footer-bottom-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}
.footer-copy{font-size:.78rem;color:var(--dim)}
.footer-trust{display:flex;gap:14px;font-size:.75rem;color:var(--muted)}

/* ════════════════════════════════════════
   RESPONSIVE
════════════════════════════════════════ */
@media(max-width:1200px){
  .cats-grid{grid-template-columns:repeat(2,1fr)}
  .products-row,.home-featured .products-row{grid-template-columns:repeat(2,1fr)}
  .features-grid{grid-template-columns:repeat(2,1fr)}
  .products-catalog{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr;gap:32px}
  .product-detail-grid{grid-template-columns:1fr;gap:32px}
  .product-gallery{position:static}
  .testi-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .nav-links-desktop{display:none}
  .nav-hamburger{display:flex}
  .nav-inner{gap:12px}
  .hero-inner{flex-direction:column;text-align:center}
  .hero-content{max-width:100%}
  .hero-cta{justify-content:center}
  .hero-stats{justify-content:center}
  .hero-visual{width:260px;height:280px}
  /* Soften heavy desktop-only parallax; keep product motion alive on phones */
  .hero-glow-1,.hero-glow-2{animation-duration:14s}
  .prod-overlay{display:none!important}
  .prod-labels{top:8px;left:8px;gap:6px}
  .prod-label{font-size:.72rem;padding:4px 8px;border-radius:6px}
  .cats-grid{grid-template-columns:1fr 1fr}
  .products-row{grid-template-columns:1fr 1fr}
  .products-layout{flex-direction:column}
  .products-sidebar{width:100%}
  .products-catalog{grid-template-columns:1fr 1fr}
  .testi-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .newsletter-form{flex-direction:column}
  .footer-bottom-inner{flex-direction:column;text-align:center}
  #bvlOrb{bottom:20px;right:20px}
}
@media(max-width:480px){
  .cats-grid{grid-template-columns:1fr}
  .products-row{grid-template-columns:1fr}
  .products-catalog{grid-template-columns:1fr}
  .features-grid{grid-template-columns:1fr}
   .hero-stats{flex-wrap:wrap;justify-content:center}
  .stat-item{border-right:none;padding:0 16px}
}

/* ── Home V2 Featured ── */
.home-featured-v2{padding:90px 0;background:linear-gradient(180deg,var(--bg) 0%,#020602 50%,var(--bg) 100%)}

/* ── Elite CTA Banner ── */
.cta-banner{margin-top:60px;background:linear-gradient(135deg,rgba(0,255,65,.08) 0%,rgba(0,20,10,.5) 100%);border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:60px 24px;text-align:center}
.cta-banner-inner{max-width:700px;margin:0 auto}
.cta-banner-inner h2{font-family:var(--font-d);font-size:clamp(2.2rem,5vw,3.8rem);margin-bottom:12px}
.cta-banner-inner p{color:var(--muted);margin-bottom:28px;font-size:.95rem;line-height:1.7}

/* ── Section Layout Extras ── */
.section-header{text-align:center;margin-bottom:52px}
.section-header.align-left{text-align:left}
.section-desc{color:var(--muted);font-size:.95rem;max-width:560px;margin:.8rem auto 0;line-height:1.75}

/* ── Rating Display ── */
.rating-wrap{text-align:center;margin-top:48px;display:flex;flex-direction:column;align-items:center;gap:6px}
.rating-big-num{font-family:var(--font-d);font-size:4rem;color:var(--g);line-height:1}
.rating-stars-big{font-size:1.6rem;color:#f5a623;letter-spacing:2px}

/* ── Footer Extras ── */
.footer-about{font-size:.82rem;color:var(--muted);line-height:1.75;margin-top:12px;margin-bottom:16px}
.footer-logo-wrap{display:flex;align-items:center;gap:10px;margin-bottom:0}
.footer-logo-name{font-family:var(--font-d);font-size:1.1rem;letter-spacing:.12em;color:var(--text)}

/* ── Mobile nav subs (legacy) ── */
.mobile-nav-sub{display:block;padding:10px 28px;font-family:var(--font-h);font-size:.78rem;font-weight:700;letter-spacing:.12em;color:var(--muted);text-decoration:none;border-bottom:1px solid rgba(255,255,255,.04);transition:color .2s,background .2s}
.mobile-nav-sub:hover{color:var(--g);background:rgba(0,255,65,.05)}

/* ── Video modal open scroll lock ── */
body.modal-open{overflow:hidden}

/* ══════════════════════════════════════════
   INTERACTIVE IMAGES
══════════════════════════════════════════ */
.img-interactive{
  transition: transform .25s ease, box-shadow .3s ease;
  transform-style: preserve-3d;
  will-change: transform;
}
.img-interactive:hover{
  box-shadow: 0 20px 50px rgba(0,0,0,.45), 0 0 30px rgba(163,255,0,.12);
  z-index: 2;
}

/* Shine sweep */
.img-shine{ position: relative; overflow: hidden; }
.img-shine::after{
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(105deg, transparent 40%, rgba(163,255,0,.18) 50%, transparent 60%);
  transform: translateX(-120%);
  transition: transform .7s ease;
  pointer-events: none;
  z-index: 3;
}
.img-shine:hover::after{ transform: translateX(120%); }

/* Product image zoom */
.prod-img-wrap{ position: relative; overflow: hidden; }
.prod-img{
  transition: transform .55s cubic-bezier(.2,.8,.2,1), filter .4s;
  will-change: transform;
}
.prod-card:hover .prod-img,
.img-interactive:hover .prod-img{
  transform: scale(1.12);
  filter: brightness(1.08) saturate(1.1);
}

/* Category image zoom */
.cat-v2-img{ overflow: hidden; }
.cat-v2-img .img-logo-stamp,
.home-cats-v2 .img-logo-stamp { display: none !important; }
.cat-v2-img img{
  transition: transform .7s cubic-bezier(.2,.8,.2,1), filter .4s;
}
.cat-v2:hover .cat-v2-img img{
  transform: scale(1.15);
  filter: brightness(.55) saturate(1.2);
}

/* Gallery zoom-follow */
.gallery-zoomable{ overflow: hidden; cursor: zoom-in; }
.gallery-zoomable img{
  transition: transform .15s ease-out;
  will-change: transform;
}

/* Logo stamp on product images */
.img-logo-stamp{
  position: absolute;
  bottom: 8px;
  right: 8px;
  width: 36px;
  height: 36px;
  object-fit: contain;
  opacity: .55;
  filter: drop-shadow(0 0 6px rgba(163,255,0,.4));
  z-index: 4;
  pointer-events: none;
  transition: opacity .3s, transform .3s;
}
.prod-img-wrap:hover .img-logo-stamp,
.gallery-main:hover .img-logo-stamp,
.cat-v2:hover .img-logo-stamp{
  opacity: .9;
  transform: scale(1.1);
}
body.rtl .img-logo-stamp{ right: auto; left: 8px; }

/* Showcase logo badge */
.showcase-logo-badge{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 72px;
  height: 72px;
  object-fit: contain;
  z-index: 5;
  filter: drop-shadow(0 0 20px rgba(163,255,0,.5));
  animation: logoPulse 3s ease-in-out infinite;
  pointer-events: none;
  opacity: .85;
}
@keyframes logoPulse{
  0%,100%{ filter: drop-shadow(0 0 12px rgba(163,255,0,.4)); transform: translate(-50%,-50%) scale(1); }
  50%{ filter: drop-shadow(0 0 28px rgba(163,255,0,.7)); transform: translate(-50%,-50%) scale(1.06); }
}

/* Athlete strip interactive — hover + auto center focus */
.athlete-card{ overflow: hidden; cursor: pointer; }
.athlete-card img{
  transition: transform .5s cubic-bezier(.22,.61,.36,1), filter .4s;
}
.athlete-card:hover img,
.athlete-card.is-focus img{
  transform: scale(1.12);
  filter: brightness(1) saturate(1.25);
}
.athlete-overlay{
  transition: background .3s, opacity .3s;
}
.athlete-card:hover .athlete-overlay,
.athlete-card.is-focus .athlete-overlay{
  opacity: 1;
  background: linear-gradient(transparent 20%, rgba(0,0,0,.85));
}
.athlete-card:hover .athlete-overlay span,
.athlete-card.is-focus .athlete-overlay span{
  color: var(--g);
  text-shadow: 0 0 20px rgba(163,255,0,.6);
  letter-spacing: .25em;
  transform: translateY(0);
}

/* Orb logo */
.orb-logo-img{
  width: 34px;
  height: 34px;
  object-fit: contain;
  filter: drop-shadow(0 0 8px rgba(163,255,0,.5));
}

/* Nav logo larger + glow pulse */
.bvl-logo-img{
  height: 48px;
  animation: logoNavGlow 4s ease-in-out infinite;
}
@keyframes logoNavGlow{
  0%,100%{ filter: drop-shadow(0 0 6px rgba(163,255,0,.25)); }
  50%{ filter: drop-shadow(0 0 14px rgba(163,255,0,.55)); }
}

/* Footer logo interactive */
.footer-logo-img{
  height: 60px;
  transition: transform .35s, filter .35s;
}
.footer-logo-wrap:hover .footer-logo-img{
  transform: scale(1.08) rotate(-3deg);
  filter: drop-shadow(0 0 16px rgba(163,255,0,.55));
}

/* Video thumb interactive */
.video-thumb{ overflow: hidden; cursor: pointer; }
.video-thumb img{
  transition: transform .6s ease, filter .4s;
}
.video-thumb:hover img{
  transform: scale(1.08);
  filter: brightness(.7);
}

/* Loading / brand splash helper */
.bvl-brand-mark{
  width: 80px;
  height: 80px;
  object-fit: contain;
  filter: drop-shadow(0 0 20px rgba(163,255,0,.5));
}

/* ── Mobile-friendly site polish ── */
@media (max-width: 900px) {
  .container { padding-left: 16px; padding-right: 16px; }
  .nav-links-desktop { display: none; }
  .products-layout { grid-template-columns: 1fr !important; }
  .prod-detail-grid { grid-template-columns: 1fr !important; gap: 24px; }
  .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 24px; }
}
@media (max-width: 640px) {
  .announcement-bar { font-size: .72rem; padding: 8px 10px; }
  .footer-grid { grid-template-columns: 1fr !important; }
  .cat-tabs { overflow-x: auto; flex-wrap: nowrap; -webkit-overflow-scrolling: touch; }
  .stats-row, .hc-stats { flex-wrap: wrap; justify-content: center; gap: 16px; }
  .cart-sidebar { width: min(100vw, 380px); }
  input, select, textarea, button { font-size: 16px; } /* prevents iOS zoom */
  .page-hero { padding: 48px 0 28px; }
}

/* ── Touch-first responsive behavior ── */
.nav-inner { direction: ltr; }
.nav-logo { order: 0; margin-right: auto; }
.nav-links-desktop { order: 1; }
.nav-actions { order: 2; margin-left: auto; direction: ltr; }
body.rtl .nav-inner { flex-direction: row; }
body.rtl .nav-logo { margin-left: 0; margin-right: auto; }
body.rtl .nav-actions { margin-left: 0; }
body.rtl .nav-links-desktop { flex-direction: row-reverse; }
body.mobile-nav-open { overflow: hidden; }

@media (max-width: 768px) {
  .nav-inner {
    min-height: 68px;
    padding: 10px 14px;
    gap: 6px;
  }
  .nav-logo { min-width: 0; }
  .bvl-logo-img { height: 42px; flex: 0 0 auto; }
  .nav-brand { min-width: 0; }
  .nav-brand-a { font-size: .92rem; letter-spacing: .13em; white-space: nowrap; }
  .nav-brand-b { font-size: .62rem; letter-spacing: .35em; }
  .nav-actions { gap: 2px; flex: 0 0 auto; }
  .nav-icon-btn,.nav-hamburger { width: 42px; height: 42px; touch-action: manipulation; }
  .lang-toggle-btn.nav-icon-btn {
    width: auto !important;
    min-width: 54px !important;
    height: 42px !important;
    padding: 6px 8px !important;
  }
  .lang-toggle-btn { padding: 6px 7px !important; min-width: 48px; justify-content: center; }

  /* Full-width mobile search sheet */
  .nav-search-backdrop{
    display:block;
    position:fixed;inset:0;z-index:1240;
    background:rgba(0,0,0,.72);
    -webkit-tap-highlight-color:transparent;
  }
  .nav-search-backdrop[hidden]{display:none !important}
  .nav-search-panel{
    position:fixed;
    top:var(--nav-search-top, calc(var(--announcement-h, 36px) + 68px));
    left:0;right:0;
    width:100%;
    max-width:none;
    border-radius:0 0 16px 16px;
    border-left:none;border-right:none;
    border-top:1px solid var(--border2);
    padding:12px 14px max(14px, env(safe-area-inset-bottom));
    z-index:1250;
    max-height:calc(100dvh - var(--nav-search-top, calc(var(--announcement-h, 36px) + 68px)));
    display:flex;flex-direction:column;
    box-shadow:0 24px 48px rgba(0,0,0,.65);
    background:
      linear-gradient(180deg, rgba(163,255,0,.04), transparent 48px),
      var(--bg2);
  }
  body.rtl .nav-search-panel{left:0;right:0}
  .nav-search-panel[hidden]{display:none !important}
  .nav-search-bar{gap:10px;flex-shrink:0}
  .nav-search-input{
    font-size:16px; /* prevent iOS zoom */
    min-height:48px;
    padding:12px 14px;
  }
  .nav-search-close{
    display:inline-flex;
    width:48px;height:48px;
  }
  .nav-search-drop{
    margin-top:10px;
    flex:1 1 auto;
    max-height:none;
    min-height:0;
    overflow:auto;
    overscroll-behavior:contain;
  }
  .nav-search-item{
    padding:12px 10px;
    min-height:56px;
    gap:12px;
    border-radius:10px;
    touch-action:manipulation;
  }
  .nav-search-item:active{background:rgba(163,255,0,.1)}
  .nav-search-item img{width:48px;height:48px}
  .nav-search-name{
    white-space:normal;
    font-size:.95rem;
    line-height:1.25;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .nav-search-sub{font-size:.78rem}
  .nav-search-empty{padding:16px 10px;font-size:.9rem}
  .nav-search-all{
    padding:14px 10px;
    font-size:.85rem;
    min-height:48px;
    display:flex;align-items:center;justify-content:center;
    touch-action:manipulation;
  }
  .mobile-nav-search-drop .nav-search-item{
    padding:12px 8px;
    min-height:54px;
  }
  .mobile-nav-search-row .btn{min-height:48px;padding:0 14px;touch-action:manipulation}

  .mobile-nav {
    padding: max(92px, calc(env(safe-area-inset-top) + 82px)) 16px max(30px, env(safe-area-inset-bottom));
    transform: translateY(-10px);
    transition: opacity .25s ease, visibility .25s ease, transform .3s cubic-bezier(.2,.8,.2,1);
  }
  .mobile-nav.open { transform: translateY(0); }
  .mobile-nav-link {
    min-height: 52px;
    display: flex;
    align-items: center;
    touch-action: manipulation;
  }
  .mobile-shop-toggle,
  .mobile-shop-item {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }
  .mobile-nav-link:active {
    color: var(--g);
    background: rgba(163,255,0,.1);
    border-color: rgba(163,255,0,.22);
    transform: scale(.985);
  }
  .mobile-shop-item:active {
    transform: scale(.985);
  }

  .prod-img-wrap { isolation: isolate; }
  .prod-labels {
    max-width: calc(100% - 50px);
    align-items: flex-start;
    z-index: 5;
  }
  body.rtl .prod-labels { left: auto; right: 8px; align-items: flex-end; }
  .prod-label {
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
    letter-spacing: .04em;
    line-height: 1.2;
  }
  .prod-wish { top: 8px; right: 8px; z-index: 6; }
  body.rtl .prod-wish { right: auto; left: 8px; }
  .prod-info { padding: 12px; }
  .prod-name { overflow-wrap: anywhere; }
  .prod-price-row { gap: 8px; flex-wrap: wrap; }
  .prod-add-mini { min-width: 36px; min-height: 36px; }

  .reveal,.reveal-left,.reveal-right,.reveal-scale,.reveal-zoom,.reveal-blur {
    opacity: 0 !important;
    transform: translateY(28px) scale(.97) !important;
    filter: blur(4px) !important;
    animation: none !important;
    transition: opacity .6s cubic-bezier(.16,1,.3,1), transform .7s cubic-bezier(.16,1,.3,1), filter .6s ease !important;
  }
  .reveal-left { transform: translateX(-28px) scale(.97) !important; }
  .reveal-right { transform: translateX(28px) scale(.97) !important; }
  .reveal.revealed,.reveal-left.revealed,.reveal-right.revealed,
  .reveal-scale.revealed,.reveal-zoom.revealed,.reveal-blur.revealed {
    opacity: 1 !important;
    transform: none !important;
    filter: none !important;
  }
}

@media (max-width: 420px) {
  .nav-brand { display: none; }
  .prod-label { font-size: .64rem; padding: 3px 6px; }
  .prod-labels { gap: 3px; }
}

/* Touch / coarse pointer: replace hover with press + entrance theatre */
@media (hover: none), (pointer: coarse) {
  /* Kill sticky :hover lift (phones keep hover after tap) — motion uses :active / .is-pressed */
  .card:hover,.cat-card:hover,.feat-card:hover,.testi-card:hover,
  .prod-card:hover,.cat-v2:hover,.athlete-card:hover,.showcase-card:hover,
  .img-interactive:hover {
    transform: none;
    box-shadow: none;
  }
  .prod-card:hover .prod-img,.cat-v2:hover .cat-v2-img img,
  .athlete-card:hover img,.video-thumb:hover img,.img-interactive:hover .prod-img {
    transform: none;
    filter: none;
  }
  /* Keep auto spotlight effects on touch devices */
  .athlete-card.is-focus img {
    transform: scale(1.12) !important;
    filter: brightness(1) saturate(1.25) !important;
  }
  .athlete-card.is-focus-center {
    transform: translateY(-10px) scale(1.08) !important;
  }
  .athlete-card.is-focus-side.ac-left {
    transform: translateY(-6px) scale(1.04) rotate(-2deg) !important;
  }
  .athlete-card.is-focus-side.ac-right {
    transform: translateY(-6px) scale(1.04) rotate(2deg) !important;
  }
  .prod-overlay { display: none !important; }

  .prod-card,
  .cat-v2,
  .gallery-main,
  .athlete-card {
    position: relative;
    isolation: isolate;
    transition: transform .28s cubic-bezier(.2,.8,.2,1), box-shadow .28s ease, border-color .28s ease;
    will-change: transform;
  }

  .prod-card .prod-img,
  .gallery-main img,
  .cat-v2-img img {
    transition: transform .45s cubic-bezier(.2,.8,.2,1), filter .35s ease;
    will-change: transform;
  }

  .prod-card::before,
  .gallery-main::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 4;
    pointer-events: none;
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px transparent;
    transition: box-shadow .28s ease, opacity .28s ease;
    opacity: 0;
  }

  .prod-img-wrap::after,
  .gallery-main::after {
    content: '';
    position: absolute;
    inset: -40%;
    z-index: 2;
    pointer-events: none;
    opacity: 0;
    background: radial-gradient(circle at 50% 55%, rgba(163,255,0,.32), transparent 55%);
    transition: opacity .35s ease;
  }

  /* Soft entrance when cards scroll into view */
  .prod-card.mob-enter {
    animation: mobCardIn .55s cubic-bezier(.2,.8,.2,1) both;
  }
  @keyframes mobCardIn {
    from { opacity: 0; transform: translateY(18px) scale(.96); }
    to { opacity: 1; transform: translateY(0) scale(1); }
  }

  /* Press / tap = the mobile "hover" */
  .prod-card.is-pressed,
  .prod-card:active {
    transform: translateY(-6px) scale(1.02) !important;
    border-color: rgba(163,255,0,.55);
    box-shadow: 0 18px 40px rgba(0,0,0,.45), 0 0 28px rgba(163,255,0,.22) !important;
  }
  .prod-card.is-pressed::before,
  .prod-card:active::before {
    opacity: 1;
    box-shadow: inset 0 0 0 1.5px rgba(163,255,0,.85), inset 0 0 24px rgba(163,255,0,.12);
  }
  .prod-card.is-pressed .prod-img-wrap::after,
  .prod-card:active .prod-img-wrap::after { opacity: 1; }
  .prod-card.is-pressed .prod-img,
  .prod-card:active .prod-img {
    transform: scale(1.12) !important;
    filter: brightness(1.12) saturate(1.15) drop-shadow(0 10px 16px rgba(163,255,0,.2)) !important;
  }

  .gallery-main.is-pressed,
  .gallery-main:active {
    border-color: rgba(163,255,0,.75);
    box-shadow: 0 16px 40px rgba(0,0,0,.5), 0 0 28px rgba(163,255,0,.18);
    transform: scale(1.015);
  }
  .gallery-main.is-pressed::before,
  .gallery-main:active::before {
    opacity: 1;
    box-shadow: inset 0 0 0 1.5px rgba(163,255,0,.8);
  }
  .gallery-main.is-pressed::after,
  .gallery-main:active::after { opacity: 1; }
  .gallery-main.is-pressed img,
  .gallery-main:active img {
    transform: scale(1.1);
    filter: brightness(1.1) saturate(1.12);
  }

  .gallery-thumb:active,
  .gallery-thumb.is-pressed {
    transform: translateY(-3px) scale(1.04);
    border-color: var(--g);
    box-shadow: 0 8px 18px rgba(163,255,0,.25);
  }

  .cat-v2:active,
  .cat-v2.is-pressed,
  .cat-card:active,
  .cat-card.is-pressed {
    transform: translateY(-4px) scale(1.02) !important;
    border-color: rgba(163,255,0,.45);
    box-shadow: 0 12px 28px rgba(163,255,0,.15) !important;
  }
  .cat-v2:active .cat-v2-img img,
  .cat-v2.is-pressed .cat-v2-img img {
    transform: scale(1.08) !important;
  }

  .brand-scroller-track { animation-play-state: running; }

  .btn:active,.hc-btn-primary:active,.hc-btn-video:active,.prod-add-mini:active {
    transform: scale(.97);
  }

  /* Continuous subtle glow pulse so cards feel alive even without tap */
  .prod-card.mob-alive {
    animation: mobPulse 2.8s ease-in-out infinite;
  }
  .prod-card.mob-alive.mob-enter {
    animation: mobCardIn .55s cubic-bezier(.2,.8,.2,1) both, mobPulse 2.8s ease-in-out .55s infinite;
  }
  .prod-card.mob-alive.is-pressed,
  .prod-card.mob-alive:active {
    animation: none;
  }
  @keyframes mobPulse {
    0%,100% { box-shadow: 0 0 0 rgba(163,255,0,0); border-color: var(--border); }
    50% { box-shadow: 0 0 18px rgba(163,255,0,.12); border-color: rgba(163,255,0,.28); }
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *,*::before,*::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
  /* Keep brand / ticker marquees looping (photo strip is JS-driven) */
  .brand-scroller-track,
  .ticker,
  .announcement-bar p {
    animation-duration: 28s !important;
    animation-iteration-count: infinite !important;
    animation-timing-function: linear !important;
    animation-play-state: running !important;
  }
  .reveal,.reveal-left,.reveal-right,.reveal-scale,.reveal-zoom,.reveal-blur { opacity: 1 !important; transform: none !important; filter: none !important; animation: none !important; }
}

/* Desktop-only storefront hover theatre. Transform motion stays on dedicated
   inner elements so it never competes with card layout or touch gestures. */
@media (hover: hover) and (pointer: fine) {
  .prod-card {
    position: relative;
    isolation: isolate;
  }
  .prod-card::before {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 6;
    pointer-events: none;
    border-radius: inherit;
    box-shadow: inset 0 0 0 1px transparent;
    transition: box-shadow .32s ease;
  }
  .prod-card:hover::before {
    box-shadow: inset 0 0 0 1px rgba(163,255,0,.72), inset 0 0 28px rgba(163,255,0,.08);
  }
  .prod-img-wrap::before {
    content: '';
    position: absolute;
    inset: -35%;
    z-index: 2;
    pointer-events: none;
    opacity: 0;
    background: radial-gradient(circle at 50% 55%, rgba(163,255,0,.28), transparent 52%);
    transition: opacity .4s ease;
  }
  .prod-card:hover .prod-img-wrap::before { opacity: 1; }
  .prod-card:hover .prod-img {
    transform: scale(1.13);
    filter: brightness(1.12) saturate(1.14) drop-shadow(0 12px 18px rgba(163,255,0,.18));
  }
  .prod-card .prod-overlay-btn {
    opacity: 0;
    transform: translateY(12px);
    transition: opacity .24s ease, transform .28s cubic-bezier(.2,.8,.2,1);
  }
  .prod-card:hover .prod-overlay-btn {
    opacity: 1;
    transform: translateY(0);
  }
  .prod-card:hover .prod-overlay-btn:nth-child(2) { transition-delay: .06s; }

  .gallery-main {
    transition: border-color .3s ease, box-shadow .35s ease;
  }
  .gallery-main::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 5;
    pointer-events: none;
    opacity: 0;
    background: linear-gradient(112deg, transparent 32%, rgba(163,255,0,.2) 48%, transparent 64%);
    transform: translateX(-90%);
  }
  .gallery-main:hover {
    border-color: rgba(163,255,0,.8);
    box-shadow: 0 22px 60px rgba(0,0,0,.55), 0 0 34px rgba(163,255,0,.16);
  }
  .gallery-main:hover::after {
    opacity: 1;
    transform: translateX(90%);
    transition: transform .8s ease, opacity .2s ease;
  }
  .gallery-thumb {
    transition: border-color .2s ease, box-shadow .25s ease, transform .25s ease;
  }
  .gallery-thumb:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 22px rgba(163,255,0,.2);
  }
}

/* ── Custom checkboxes (site-wide) ── */
input[type="checkbox"] {
  -webkit-appearance: none;
  appearance: none;
  width: 1.15rem;
  height: 1.15rem;
  margin: 0;
  flex-shrink: 0;
  vertical-align: middle;
  box-sizing: border-box;
  border: 1.5px solid rgba(163, 255, 0, 0.35);
  border-radius: 4px;
  background: #0c0c0c;
  cursor: pointer;
  position: relative;
  transition: border-color .15s ease, background .15s ease, box-shadow .15s ease;
  accent-color: var(--g, #a3ff00);
}

input[type="checkbox"]:hover {
  border-color: var(--g, #a3ff00);
  background: #121212;
}

input[type="checkbox"]:focus {
  outline: none;
}

input[type="checkbox"]:focus-visible {
  outline: 2px solid var(--g, #a3ff00);
  outline-offset: 2px;
  border-color: var(--g, #a3ff00);
}

input[type="checkbox"]:checked {
  background: var(--g, #a3ff00);
  border-color: var(--g, #a3ff00);
}

input[type="checkbox"]:checked::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 45%;
  width: 0.28rem;
  height: 0.55rem;
  border: solid #050505;
  border-width: 0 2px 2px 0;
  transform: translate(-50%, -55%) rotate(45deg);
}

input[type="checkbox"]:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

input[type="checkbox"]:indeterminate {
  background: rgba(163, 255, 0, 0.35);
  border-color: var(--g, #a3ff00);
}

input[type="checkbox"]:indeterminate::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0.55rem;
  height: 2px;
  background: #050505;
  border: none;
  transform: translate(-50%, -50%);
}

/* Comfortable click target when paired with a label */
label:has(> input[type="checkbox"]) {
  cursor: pointer;
  user-select: none;
}

