/* =========================================================
   BLACK STUDIO — PROFESSIONAL STORE THEME
   Final visual layer: themed sections + premium cards
   ========================================================= */

:root {
  --bs-red: #ff3b30;
  --bs-red-2: #ff6a61;
  --bs-green: #00e6a1;
  --bs-cyan: #26d9ff;
  --bs-bg: #050707;
  --bs-panel: #0b1010;
  --bs-panel-2: #0f1714;
  --bs-line: rgba(255,255,255,.09);
  --bs-muted: #8d9795;
  --bs-radius: 24px;
}

/* Page depth */
body {
  background:
    radial-gradient(circle at 50% -10%, rgba(255,59,48,.07), transparent 32%),
    linear-gradient(180deg, #050707 0%, #070909 48%, #050606 100%);
}

main {
  position: relative;
}

/* Consistent content width */
main > section:not(.hero-section) {
  position: relative;
}

/* Search / feature areas */
.search-section,
.features-section {
  position: relative;
}

.search-box {
  background: rgba(15,18,18,.78) !important;
  border: 1px solid var(--bs-line) !important;
  box-shadow: 0 18px 50px rgba(0,0,0,.22);
}

.feature-card {
  background: linear-gradient(145deg, rgba(18,25,23,.96), rgba(8,12,11,.96)) !important;
  border: 1px solid rgba(255,255,255,.08) !important;
  box-shadow: 0 14px 35px rgba(0,0,0,.22);
}

/* =========================================================
   SECTION HEADERS
   ========================================================= */

.section-header,
.product-section-header {
  position: relative;
}

.section-title,
.product-section-title {
  font-size: clamp(24px, 3vw, 34px) !important;
  font-weight: 850 !important;
  letter-spacing: -.5px;
}

.section-title::before,
.product-section-title::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 30px;
  margin-right: 11px;
  vertical-align: -5px;
  border-radius: 999px;
  background: linear-gradient(180deg, var(--bs-red), #ff8b38);
  box-shadow: 0 0 18px rgba(255,59,48,.35);
}

.product-section:nth-of-type(even) .product-section-title::before {
  background: linear-gradient(180deg, #00e6a1, #25d9ff);
  box-shadow: 0 0 18px rgba(0,230,161,.25);
}

.section-link,
.product-view-all {
  font-weight: 800 !important;
  color: #ff6b61 !important;
  transition: transform .2s ease, color .2s ease;
}

.section-link:hover,
.product-view-all:hover {
  color: #fff !important;
  transform: translateX(3px);
}

/* =========================================================
   CATEGORY THEME
   ========================================================= */

.categories-section .container,
.all-categories-section .container {
  position: relative;
  overflow: hidden;
  padding: 24px !important;
  border: 1px solid rgba(255,255,255,.075) !important;
  border-radius: var(--bs-radius) !important;
  background:
    radial-gradient(circle at 12% 0%, rgba(0,230,161,.075), transparent 28%),
    radial-gradient(circle at 95% 100%, rgba(38,217,255,.055), transparent 25%),
    linear-gradient(145deg, #0d1513, #080c0c 70%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 20px 55px rgba(0,0,0,.25);
}

.category-slider {
  position: relative;
}

.category-viewport {
  border-radius: 20px;
  padding: 3px 2px 12px;
  touch-action: pan-x pan-y;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
}

.category-track {
  gap: 14px !important;
}

.category-card {
  position: relative;
  overflow: hidden;
  border-radius: 20px !important;
  padding: 7px !important;
  background:
    linear-gradient(145deg, rgba(18,28,25,.98), rgba(8,13,12,.98)) !important;
  border: 1px solid rgba(0,230,161,.12) !important;
  box-shadow: 0 14px 35px rgba(0,0,0,.28);
}

.category-card::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  height: 38%;
  background: linear-gradient(180deg, transparent, rgba(0,0,0,.38));
  pointer-events: none;
}

.category-card:hover {
  border-color: rgba(0,230,161,.42) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.35), 0 0 24px rgba(0,230,161,.08);
}

.category-image-box {
  aspect-ratio: 1 / .88 !important;
  border-radius: 16px !important;
  background:
    radial-gradient(circle at 50% 40%, rgba(255,255,255,.11), transparent 42%),
    linear-gradient(145deg, #17231f, #0b1110) !important;
  border: 1px solid rgba(255,255,255,.06);
}

.category-image {
  object-fit: cover !important;
  padding: 12px !important;
  filter: drop-shadow(0 14px 20px rgba(0,0,0,.42));
}

.category-name {
  position: relative;
  z-index: 2;
  padding: 12px 8px 10px !important;
  color: #f5f8f7 !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-align: left !important;
}

.category-arrow {
  background: rgba(3,10,9,.92) !important;
  border: 1px solid rgba(0,230,161,.28) !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.3);
}

.category-arrow:hover {
  background: var(--bs-green) !important;
  color: #03110c !important;
}

/* =========================================================
   PRODUCT SECTIONS
   ========================================================= */

.product-section {
  margin: 42px 0 !important;
  padding: 26px !important;
  border-radius: var(--bs-radius) !important;
  border: 1px solid rgba(255,255,255,.07) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(255,59,48,.095), transparent 28%),
    radial-gradient(circle at 100% 100%, rgba(255,110,55,.045), transparent 25%),
    linear-gradient(145deg, #160c09 0%, #0d0e0e 55%, #090b0b 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.035), 0 22px 60px rgba(0,0,0,.28);
}

.product-section:nth-of-type(even) {
  background:
    radial-gradient(circle at 0% 0%, rgba(0,230,161,.08), transparent 28%),
    radial-gradient(circle at 100% 100%, rgba(38,217,255,.045), transparent 25%),
    linear-gradient(145deg, #091512 0%, #0b1110 58%, #080c0c 100%) !important;
}

#hot-products,
#new-products {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 16px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-top: 6px !important;
  padding: 6px 2px 16px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  touch-action: pan-x pan-y !important;
  overscroll-behavior-x: contain !important;
  -webkit-overflow-scrolling: touch !important;
  scroll-behavior: smooth !important;
  scroll-snap-type: x proximity !important;
  scrollbar-width: none !important;
}

#hot-products::-webkit-scrollbar,
#new-products::-webkit-scrollbar {
  display: none !important;
}

.home-product-card {
  position: relative;
  flex: 0 0 calc((100% - 48px) / 4) !important;
  width: calc((100% - 48px) / 4) !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow: hidden;
  border-radius: 20px !important;
  border: 1px solid rgba(255,255,255,.095) !important;
  background: linear-gradient(145deg, #111b18, #080d0c) !important;
  box-shadow: 0 14px 36px rgba(0,0,0,.30);
  scroll-snap-align: start;
  transform: translateZ(0);
}

.home-product-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255,255,255,.055), transparent 35%, transparent 72%, rgba(0,230,161,.045));
  z-index: 3;
}

.home-product-card:hover {
  transform: translateY(-5px);
  border-color: rgba(0,230,161,.42) !important;
  box-shadow: 0 20px 45px rgba(0,0,0,.38), 0 0 28px rgba(0,230,161,.08);
}

.home-product-image {
  position: relative;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 40%, rgba(255,255,255,.14), transparent 40%),
    linear-gradient(145deg, #f4f5f4 0%, #d8ddda 100%) !important;
}

.home-product-image::after {
  content: "";
  position: absolute;
  inset: 55% 0 0;
  background: linear-gradient(180deg, transparent, rgba(4,10,8,.16));
  pointer-events: none;
}

.home-product-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  padding: 12px !important;
  filter: drop-shadow(0 16px 22px rgba(0,0,0,.28));
  transition: transform .35s ease;
}

.home-product-card:hover .home-product-image img {
  transform: scale(1.035);
}

.home-product-info {
  position: relative;
  z-index: 4;
  min-height: 126px;
  padding: 14px 15px 16px !important;
  background: linear-gradient(180deg, #102018 0%, #0a120f 100%) !important;
}

.home-product-info::before {
  content: "";
  display: block;
  width: 44px;
  height: 3px;
  margin-bottom: 9px;
  border-radius: 999px;
  background: var(--bs-green);
  box-shadow: 0 0 12px rgba(0,230,161,.25);
}

.home-product-info h3 {
  margin: 0 0 12px !important;
  color: #f7faf9 !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  white-space: normal !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.home-product-price strong {
  color: var(--bs-green) !important;
  font-size: 21px !important;
  font-weight: 900 !important;
}

.home-product-price del {
  color: #68726f !important;
  font-size: 13px !important;
}

/* Arrow buttons */
.product-slider-btn {
  width: 46px !important;
  height: 46px !important;
  background: rgba(4,12,10,.94) !important;
  border: 1px solid rgba(0,230,161,.3) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.35);
}

.product-slider-btn:hover:not(:disabled) {
  background: var(--bs-green) !important;
  color: #04100c !important;
  border-color: var(--bs-green) !important;
}

/* =========================================================
   ALL PRODUCT / SHOP CARDS — SAME VISUAL LANGUAGE
   ========================================================= */

.product-card {
  border-radius: 20px !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  background: linear-gradient(145deg, #111b18, #080d0c) !important;
  box-shadow: 0 14px 36px rgba(0,0,0,.27);
}

.product-image-box {
  background:
    radial-gradient(circle at 50% 38%, rgba(255,255,255,.12), transparent 42%),
    linear-gradient(145deg, #f1f3f1, #dce1de) !important;
}

.product-image,
.product-image-box img {
  object-fit: cover !important;
  padding: 12px !important;
}

.product-info {
  background: linear-gradient(180deg, #102018, #0a120f) !important;
}

.product-category {
  color: var(--bs-green) !important;
}

.product-name {
  font-weight: 800 !important;
}

.product-price strong {
  color: var(--bs-green) !important;
}

/* =========================================================
   MOBILE — 2.5 PRODUCTS, CLEAN SWIPE
   ========================================================= */

@media (max-width: 600px) {
  .container {
    width: min(100% - 18px, var(--container));
  }

  .categories-section .container,
  .all-categories-section .container,
  .product-section {
    padding: 16px 10px !important;
    border-radius: 20px !important;
  }

  .section-title,
  .product-section-title {
    font-size: 24px !important;
  }

  .section-title::before,
  .product-section-title::before {
    height: 24px;
    width: 4px;
    margin-right: 8px;
  }

  #hot-products,
  #new-products {
    gap: 12px !important;
    padding-left: 1px !important;
    padding-right: 1px !important;
    touch-action: pan-x pan-y !important;
    scroll-snap-type: x proximity !important;
  }

  .home-product-card {
    flex: 0 0 calc((100% - 18px) / 2.5) !important;
    width: calc((100% - 18px) / 2.5) !important;
    border-radius: 17px !important;
  }

  .home-product-info {
    min-height: 112px;
    padding: 11px !important;
  }

  .home-product-info::before {
    width: 34px;
    height: 2px;
    margin-bottom: 7px;
  }

  .home-product-info h3 {
    font-size: 13px !important;
    margin-bottom: 9px !important;
  }

  .home-product-price strong {
    font-size: 16px !important;
  }

  .home-product-price del {
    font-size: 10px !important;
  }

  .product-slider-btn {
    width: 38px !important;
    height: 38px !important;
    font-size: 25px !important;
  }

  .product-slider-prev { left: 1px !important; }
  .product-slider-next { right: 1px !important; }

  .category-track {
    gap: 10px !important;
  }

  .category-card {
    flex-basis: 42vw !important;
    max-width: none !important;
  }
}

@media (min-width: 601px) and (max-width: 900px) {
  .home-product-card {
    flex-basis: calc((100% - 32px) / 3) !important;
    width: calc((100% - 32px) / 3) !important;
  }
}

/* Category dots */
.category-dots {
  margin-top: 13px !important;
  min-height: 8px;
}

.category-dot {
  width: 7px !important;
  height: 7px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.18) !important;
  transition: width .2s ease, background .2s ease;
}

.category-dot.active {
  width: 24px !important;
  background: linear-gradient(90deg, #00e6a1, #26d9ff) !important;
}


/* =========================================================
   BLACK STUDIO — CATEGORY SWIPE FIX
   Manual only: no auto-slide. Native horizontal scrolling
   on mobile + arrows + mouse drag on desktop.
   ========================================================= */

#home-categories .category-viewport {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-behavior: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
  touch-action: pan-x pan-y !important;
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
}

#home-categories .category-viewport::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}

#home-categories .category-track {
  width: max-content !important;
  transform: none !important;
  transition: none !important;
  will-change: auto;
}

#home-categories .category-card {
  flex: 0 0 auto;
}

#home-categories .category-image,
#home-categories .category-card img {
  pointer-events: none;
  -webkit-user-drag: none;
}

#home-categories .category-arrow:disabled {
  opacity: .38;
  cursor: default;
  transform: none;
}

/* Keep the previous category sizing on phones: 3 cards visible.
   The next card naturally appears after a swipe. */
@media (max-width: 480px) {
  #home-categories .category-card {
    flex-basis: calc((100% - 18px) / 3) !important;
    max-width: none !important;
  }

  #home-categories .category-track {
    gap: 9px !important;
  }
}

@media (max-width: 360px) {
  #home-categories .category-card {
    flex-basis: calc((100% - 14px) / 3) !important;
  }
}

/* =========================================================
   FINAL CATEGORY CAROUSEL FIX
   Native touch momentum + scroll snap + gentle autoplay.
   No JS touchmove hijacking.
   ========================================================= */
#home-categories .category-viewport {
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory !important;
  scroll-behavior: smooth !important;
  -webkit-overflow-scrolling: touch !important;
  overscroll-behavior-x: contain !important;
  touch-action: pan-x pan-y !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

#home-categories .category-viewport::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}

#home-categories .category-track {
  display: flex !important;
  width: max-content !important;
  transform: none !important;
  transition: none !important;
  will-change: auto !important;
}

#home-categories .category-card {
  flex: 0 0 auto !important;
  scroll-snap-align: start !important;
  scroll-snap-stop: normal !important;
}

#home-categories .category-image,
#home-categories .category-card img {
  pointer-events: none !important;
  -webkit-user-drag: none !important;
}

#home-categories .category-viewport.is-dragging {
  cursor: grabbing !important;
  user-select: none !important;
}

@media (max-width: 600px) {
  #home-categories .category-viewport {
    padding-bottom: 8px !important;
  }

  #home-categories .category-track {
    gap: 10px !important;
  }

  /* Preserve the compact category size: 3 cards + a small peek. */
  #home-categories .category-card {
    flex-basis: calc((100% - 20px) / 3) !important;
    max-width: none !important;
  }
}

/* =========================================================
   CATEGORY SIZE OVERRIDE — COMPACT MOBILE RAIL
   Keep categories short so Hot Products is visible below.
   ========================================================= */
#home-categories,
#home-categories .category-slider,
#home-categories .category-viewport,
#home-categories .category-track {
  min-height: 0 !important;
}

@media (max-width: 600px) {
  #home-categories .category-slider {
    height: 190px !important;
    align-items: center !important;
  }

  #home-categories .category-viewport {
    height: 180px !important;
    max-height: 180px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 0 !important;
    border-radius: 14px !important;
  }

  #home-categories .category-track {
    height: 180px !important;
    align-items: stretch !important;
    gap: 9px !important;
  }

  #home-categories .category-card {
    flex: 0 0 calc((100vw - 88px) / 3) !important;
    width: calc((100vw - 88px) / 3) !important;
    height: 174px !important;
    max-height: 174px !important;
    padding: 4px !important;
    border-radius: 13px !important;
    box-sizing: border-box !important;
  }

  #home-categories .category-image-box {
    width: 100% !important;
    height: 128px !important;
    min-height: 128px !important;
    max-height: 128px !important;
    aspect-ratio: auto !important;
    border-radius: 10px !important;
    padding: 4px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  #home-categories .category-image {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    padding: 4px !important;
    box-sizing: border-box !important;
  }

  #home-categories .category-name {
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    padding: 6px 3px !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  #home-categories .category-arrow {
    flex: 0 0 28px !important;
    width: 28px !important;
    height: 28px !important;
    font-size: 19px !important;
  }

  #home-categories .category-dots {
    margin-top: 6px !important;
    min-height: 7px !important;
  }
}

@media (max-width: 360px) {
  #home-categories .category-card {
    flex-basis: calc((100vw - 78px) / 3) !important;
    width: calc((100vw - 78px) / 3) !important;
  }
}

/* =========================================================
   FINAL POLISH — REMOVE EXTRA OUTER CARDS
   Keep the theme, but do NOT put the slider/card content
   inside another large rounded container.
   ========================================================= */

/* Category: no giant enclosing card */
.categories-section .container,
.all-categories-section .container {
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.categories-section,
.all-categories-section {
  background:
    radial-gradient(circle at 8% 10%, rgba(0,230,161,.035), transparent 24%),
    radial-gradient(circle at 92% 90%, rgba(38,217,255,.025), transparent 22%) !important;
  border: 0 !important;
}

/* Category rail itself should not look like an extra card */
#home-categories .category-slider,
#home-categories .category-viewport {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

#home-categories .category-viewport {
  padding: 0 2px 8px !important;
}

/* Product sections: remove the big card surrounding all products */
.product-section {
  margin: 38px 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background:
    radial-gradient(circle at 2% 0%, rgba(255,59,48,.055), transparent 24%),
    radial-gradient(circle at 98% 100%, rgba(255,110,55,.025), transparent 24%) !important;
}

.product-section:nth-of-type(even) {
  background:
    radial-gradient(circle at 2% 0%, rgba(0,230,161,.045), transparent 24%),
    radial-gradient(circle at 98% 100%, rgba(38,217,255,.02), transparent 24%) !important;
}

/* Slider wrapper is only a rail, never an enclosing product card */
.product-slider-wrapper {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Give the actual products enough room so the next section is visible. */
#hot-products,
#new-products {
  margin-top: 10px !important;
  padding: 4px 2px 10px !important;
}

@media (max-width: 600px) {
  .categories-section,
  .all-categories-section {
    margin-top: 22px !important;
    margin-bottom: 24px !important;
  }

  .product-section {
    margin: 30px 0 !important;
  }

  .product-section-header {
    margin-bottom: 12px !important;
  }
}

/* Reliable store branding */
.brand-logo-box,
.logo-mark,
[data-site-logo],
.footer-logo-mark {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  border-radius: 13px !important;
  overflow: hidden !important;
  display: grid !important;
  place-items: center !important;
  flex: 0 0 46px !important;
  background: linear-gradient(145deg,#ff3b30,#c91f1a) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 10px 28px rgba(255,59,48,.18) !important;
}
.brand-logo-box img,
.logo-mark img,
[data-site-logo] img,
.footer-logo-mark img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
  padding: 5px !important;
  background: transparent !important;
}
.brand-initials { color:#fff; font-weight:950; font-size:18px; line-height:1; }
.logo-text { font-weight:900 !important; letter-spacing:-.45px; }

/* Reliable store branding */
.brand-logo-box,
.logo-mark,
[data-site-logo],
.footer-logo-mark {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  border-radius: 13px !important;
  overflow: hidden !important;
  display: grid !important;
  place-items: center !important;
  flex: 0 0 46px !important;
  background: linear-gradient(145deg,#ff3b30,#c91f1a) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 10px 28px rgba(255,59,48,.18) !important;
}
.brand-logo-box img,
.logo-mark img,
[data-site-logo] img,
.footer-logo-mark img {
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center !important;
  padding: 5px !important;
  background: transparent !important;
}
.brand-initials { color:#fff; font-weight:950; font-size:18px; line-height:1; }
.logo-text { font-weight:900 !important; letter-spacing:-.45px; }

.logo { gap: 11px !important; }
.logo-text {
  font-size: clamp(18px, 2.2vw, 23px) !important;
  font-weight: 950 !important;
  letter-spacing: -.65px !important;
  background: linear-gradient(90deg,#fff 0%,#d9ffef 58%,#00e6a1 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent !important;
  text-shadow: 0 0 22px rgba(0,230,161,.08);
}
.footer-brand-name {
  font-size: 21px !important;
  font-weight: 900 !important;
}
@media(max-width:700px){
 .brand-logo-box,.logo-mark,[data-site-logo],.footer-logo-mark{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important;border-radius:12px!important;flex-basis:42px!important}
 .logo-text{font-size:19px!important}
}

/* Premium inner-page consistency */
body{background:radial-gradient(circle at 10% 0%,rgba(255,59,48,.055),transparent 32%),radial-gradient(circle at 90% 10%,rgba(0,230,160,.045),transparent 30%),#080808}.page-heading,.cart-head,.checkout-head{position:relative}.page-heading h1,.cart-head h1,.checkout-head h1{letter-spacing:-.03em}.products-grid,.category-grid,.related-products-grid{align-items:stretch}.product-card,.category-card,.related-product-card,.cart-item,.checkout-panel,.profile-card,.order-card{box-shadow:0 14px 45px rgba(0,0,0,.22);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.product-card:hover,.category-card:hover,.related-product-card:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.16);box-shadow:0 18px 55px rgba(0,0,0,.3)}

/* FINAL TOUCH FIX: Explore category rails must allow normal vertical page scroll. */
.category-products-viewport,
.home-category-products {
  touch-action: auto !important;
  overscroll-behavior-y: auto !important;
}
.category-products-viewport.is-dragging { cursor: grabbing !important; }
.category-products-viewport.is-dragging .category-product-card { user-select:none !important; }

/* Keep uploaded branding inside a fixed premium frame without stretching. */
.logo-mark.brand-logo-box,
.footer-logo-mark.brand-logo-box,
[data-site-logo].brand-logo-box {
  overflow:hidden !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
}
.logo-mark.brand-logo-box img,
.footer-logo-mark.brand-logo-box img,
[data-site-logo].brand-logo-box img {
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:cover !important;
  object-position:center !important;
  padding:0 !important;
  margin:0 !important;
}


/* Premium mobile quick navigation */
.bs-mobile-nav{display:none}
@media (max-width:700px){
  body{padding-bottom:74px}
  /* Mobile: keep the main header clean; bottom navigation handles page links. */
  .site-header .main-nav{display:none!important;}
  .bs-mobile-nav{
    position:fixed;left:10px;right:10px;bottom:10px;z-index:5000;
    height:62px;padding:7px 6px;display:grid;
    gap:4px;border:1px solid rgba(255,255,255,.10);border-radius:20px;
    grid-template-columns:repeat(5,minmax(0,1fr));
    background:rgba(10,12,12,.88);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);
    box-shadow:0 14px 40px rgba(0,0,0,.45), inset 0 1px 0 rgba(255,255,255,.05);
  }
  .bs-mobile-nav-item{position:relative;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#8f9794;text-decoration:none;font-size:10px;font-weight:700;border-radius:15px;transition:all .2s ease}
  .bs-mobile-nav-item.active{color:#fff;background:linear-gradient(180deg,rgba(0,211,150,.18),rgba(0,211,150,.06));}
  .bs-mobile-nav-item:active{transform:scale(.94)}
  .bs-mobile-nav-icon{width:24px;height:24px;display:grid;place-items:center}
  .bs-mobile-nav-icon svg{width:21px;height:21px}
  .bs-mobile-nav-item b[data-cart-count]{position:absolute;top:4px;right:calc(50% - 18px);min-width:15px;height:15px;padding:0 3px;border-radius:99px;background:#ff3b30;color:#fff;font-size:8px;display:none;align-items:center;justify-content:center}
}


/* Premium floating support */
.bs-support-float{position:fixed;right:18px;bottom:88px;z-index:6000;font-family:inherit}
.bs-support-toggle{width:58px;height:58px;border:1px solid rgba(255,255,255,.14);border-radius:50%;background:linear-gradient(145deg,#ff5148,#e62f29);color:#fff;display:grid;place-items:center;font-size:25px;box-shadow:0 16px 35px rgba(0,0,0,.35),0 0 24px rgba(255,64,55,.18);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}
.bs-support-toggle:active{transform:scale(.94)}
.bs-support-panel{position:absolute;right:0;bottom:70px;width:245px;padding:12px;border:1px solid rgba(255,255,255,.11);border-radius:20px;background:rgba(10,13,12,.94);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 20px 60px rgba(0,0,0,.45)}
.bs-support-title{padding:5px 8px 10px;display:flex;flex-direction:column;gap:2px}.bs-support-title strong{color:#fff;font-size:15px}.bs-support-title small{color:#8d9692;font-size:11px}
.bs-support-link{display:flex;align-items:center;gap:10px;padding:11px 10px;border-radius:14px;color:#fff;text-decoration:none;transition:background .2s ease,transform .2s ease}.bs-support-link:hover{background:rgba(255,255,255,.06);transform:translateY(-1px)}
.bs-support-brand{width:35px;height:35px;border-radius:11px;display:grid;place-items:center;background:rgba(255,255,255,.07);font-size:18px}.bs-support-brand svg{width:20px;height:20px;display:block}.bs-support-link span:last-child{display:flex;flex-direction:column;gap:2px}.bs-support-link b{font-size:13px}.bs-support-link small{font-size:10px;color:#89918e}.bs-support-link.whatsapp .bs-support-brand{color:#2be879}.bs-support-link.telegram .bs-support-brand{color:#32b7ff}
.account-brand-mark{width:76px!important;height:76px!important;border-radius:22px!important;overflow:hidden!important;padding:0!important;display:grid!important;place-items:center!important}
.account-brand-mark img{width:100%!important;height:100%!important;object-fit:cover!important;display:block!important}
@media(max-width:700px){.bs-support-float{right:14px;bottom:86px}.bs-support-toggle{width:54px;height:54px}.bs-support-panel{bottom:64px;width:225px}}

@media(max-width:700px){
  body.auth-page .bs-mobile-nav{display:none!important}
}

.bs-mobile-nav-item{letter-spacing:.1px}
.bs-mobile-nav-item.active .bs-mobile-nav-icon{filter:drop-shadow(0 0 8px rgba(0,230,161,.28))}

/* =========================================================
   HOME-ONLY PREMIUM SUPPORT + CART NOTIFICATIONS
   ========================================================= */
.bs-support-float{position:fixed;right:18px;bottom:92px;z-index:9000;display:grid;place-items:center}
.bs-support-toggle{position:relative;width:64px;height:64px;border:1px solid rgba(255,255,255,.22);border-radius:22px;background:linear-gradient(145deg,#ff5b52 0%,#ff332b 55%,#d91f28 100%);color:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 18px 42px rgba(0,0,0,.42),0 0 28px rgba(255,64,55,.24);transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s ease}
.bs-support-toggle:hover{transform:translateY(-4px) scale(1.03);box-shadow:0 22px 48px rgba(0,0,0,.48),0 0 36px rgba(255,64,55,.36)}
.bs-support-toggle:active{transform:scale(.94)}
.bs-support-orb{width:40px;height:40px;border-radius:15px;display:grid;place-items:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.bs-support-orb-icon{font-size:22px;line-height:1;animation:bsSupportSpin 4s linear infinite}
.bs-support-pulse{position:absolute;inset:-7px;border-radius:27px;border:1px solid rgba(255,78,69,.45);animation:bsSupportPulse 2.2s ease-out infinite;pointer-events:none}
.bs-support-panel{position:absolute;right:0;bottom:78px;width:255px;padding:13px;border:1px solid rgba(255,255,255,.13);border-radius:22px;background:linear-gradient(145deg,rgba(15,19,18,.97),rgba(7,10,10,.95));backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 24px 70px rgba(0,0,0,.52);transform-origin:bottom right;animation:bsSupportPanelIn .25s ease both}
.bs-support-title{padding:6px 9px 11px;display:flex;flex-direction:column;gap:3px}.bs-support-title strong{color:#fff;font-size:15px}.bs-support-title small{color:#89918e;font-size:11px}
.bs-support-link{display:flex;align-items:center;gap:11px;padding:12px 10px;border-radius:15px;color:#fff;text-decoration:none;transition:transform .22s ease,background .22s ease}
.bs-support-link:hover{background:rgba(255,255,255,.07);transform:translateX(-3px)}
.bs-support-brand{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.07);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.bs-support-brand svg{width:21px;height:21px}.bs-support-link.whatsapp .bs-support-brand{color:#2be879}.bs-support-link.telegram .bs-support-brand{color:#32b7ff}
.bs-support-link span:last-child{display:flex;flex-direction:column;gap:2px}.bs-support-link b{font-size:13px}.bs-support-link small{font-size:10px;color:#89918e}
.bs-cart-toast-stack{position:fixed;inset:0;z-index:10000;pointer-events:none}.bs-cart-toast{position:fixed;left:50%;display:flex;align-items:center;gap:11px;min-width:235px;max-width:calc(100vw - 28px);padding:12px 15px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:linear-gradient(145deg,rgba(13,18,17,.97),rgba(5,8,8,.96));color:#fff;box-shadow:0 18px 55px rgba(0,0,0,.45);opacity:0;transition:opacity .35s ease,transform .35s cubic-bezier(.2,.8,.2,1)}
.bs-cart-toast-top{top:18px;transform:translate(-50%,-22px)}.bs-cart-toast-bottom{bottom:92px;transform:translate(-50%,22px)}.bs-cart-toast-stack.show .bs-cart-toast{opacity:1;transform:translate(-50%,0)}
.bs-cart-toast-icon{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:rgba(0,230,161,.12);color:#00e6a1;font-weight:900;font-size:17px}.bs-cart-toast-bottom .bs-cart-toast-icon{color:#32b7ff;background:rgba(50,183,255,.12)}
.bs-cart-toast b,.bs-cart-toast small{display:block}.bs-cart-toast b{font-size:13px}.bs-cart-toast small{margin-top:2px;color:#9aa39f;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:205px}
@keyframes bsSupportPulse{0%{transform:scale(.9);opacity:.8}70%,100%{transform:scale(1.2);opacity:0}}
@keyframes bsSupportSpin{0%,70%{transform:rotate(0deg) scale(1)}80%{transform:rotate(12deg) scale(1.08)}90%{transform:rotate(-8deg) scale(1.08)}100%{transform:rotate(0deg) scale(1)}}
@keyframes bsSupportPanelIn{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(max-width:700px){.bs-support-float{right:14px;bottom:84px}.bs-support-toggle{width:58px;height:58px;border-radius:19px}.bs-support-panel{bottom:70px;width:235px}.bs-cart-toast-bottom{bottom:82px}}


/* FINAL SUPPORT MOTION CLEANUP — functional, calm and professional */
.bs-support-orb-icon{animation:none !important}
.bs-support-pulse{display:none !important;animation:none !important}
.bs-support-toggle,.bs-support-panel,.bs-support-link{animation:none !important}
.bs-support-toggle{transition:box-shadow .16s ease,filter .16s ease !important}
.bs-support-toggle:hover{transform:none !important;filter:brightness(1.04)}
.bs-support-toggle:active{transform:scale(.98) !important}
.bs-support-panel{transition:none !important}
.bs-support-link{transition:background .14s ease !important}
.bs-support-link:hover{transform:none !important}


/* ============================================================
   ULTRA-SMOOTH 60FPS MOTION PASS
   GPU-friendly: transform/opacity only for animated motion.
   No business/data logic changed.
   ============================================================ */
:root{--bs-ease-smooth:cubic-bezier(.22,.61,.36,1);--bs-ease-spring:cubic-bezier(.2,.8,.2,1)}

/* Keep common interactive motion on compositor-friendly properties. */
button,a,.product-card,.category-card,.related-product-card,.pd-cart-btn,.pd-buy-btn,
.bs-mobile-nav-item,.category-products-arrow,.search-result-card{
  -webkit-tap-highlight-color:transparent;
}

/* Support button: subtle continuous premium motion, not a distracting pulse. */
.bs-support-toggle{
  will-change:transform,box-shadow;
  transform:translate3d(0,0,0);
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  animation:bsSupportFloat60 3.2s var(--bs-ease-smooth) infinite;
}
.bs-support-toggle:hover{
  animation-play-state:paused;
  transform:translate3d(0,-2px,0) scale(1.025);
}
.bs-support-toggle:active{
  animation-play-state:paused;
  transform:translate3d(0,0,0) scale(.97);
}
.bs-support-orb-icon{
  transform:translate3d(0,0,0);
  will-change:transform;
  animation:bsSupportIcon60 3.2s var(--bs-ease-smooth) infinite;
}
.bs-support-panel{
  will-change:transform,opacity;
  transform:translate3d(0,0,0);
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}
.bs-support-link{
  will-change:transform,background-color;
  transform:translate3d(0,0,0);
}

/* Generic premium micro-interactions. */
.product-card,.category-card,.related-product-card,.pd-cart-btn,.pd-buy-btn,
.bs-mobile-nav-item,.category-products-arrow,.support-item,.support-button{
  will-change:transform;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
}

/* Page/section reveal helper for elements that already opt into .bs-motion. */
.bs-motion{
  will-change:transform,opacity;
  animation:bsMotionIn60 .28s var(--bs-ease-smooth) both;
}

@keyframes bsSupportFloat60{
  0%,100%{transform:translate3d(0,0,0)}
  50%{transform:translate3d(0,-2px,0)}
}
@keyframes bsSupportIcon60{
  0%,100%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(0,-1px,0) scale(1.015)}
}
@keyframes bsMotionIn60{
  from{opacity:0;transform:translate3d(0,6px,0)}
  to{opacity:1;transform:translate3d(0,0,0)}
}

@media (prefers-reduced-motion:reduce){
  .bs-support-toggle,.bs-support-orb-icon,.bs-motion{animation:none!important}
  *,*::before,*::after{scroll-behavior:auto!important}
}

/* ==========================================
   BLACK STUDIO - STABLE DIRECT SUPPORT BUTTON
   ========================================== */
.bs-support-float{position:fixed;right:18px;bottom:88px;z-index:9000;display:flex;align-items:center;gap:8px;font-family:inherit}
.bs-support-toggle.bs-support-direct{width:72px;height:58px;border-radius:20px;display:flex;align-items:center;justify-content:center;gap:7px;text-decoration:none;color:#fff;background:linear-gradient(145deg,#ff5148,#e62f29);border:1px solid rgba(255,255,255,.18);box-shadow:0 14px 35px rgba(0,0,0,.42),0 0 24px rgba(255,59,48,.20);font-weight:900;transition:transform .18s ease,filter .18s ease}
.bs-support-direct:hover{transform:translateY(-2px);filter:brightness(1.05)}
.bs-support-direct:active{transform:scale(.97)}
.bs-support-icon{width:27px;height:27px;display:grid;place-items:center}
.bs-support-icon svg{width:27px;height:27px;display:block}
.bs-support-direct-label{font-size:13px;line-height:1}
.bs-support-mini{width:44px;height:44px;border-radius:15px;display:grid;place-items:center;text-decoration:none;color:#fff;background:#229ED9;border:1px solid rgba(255,255,255,.16);box-shadow:0 10px 24px rgba(0,0,0,.35)}
.bs-support-mini svg{width:23px;height:23px}
.bs-support-mini:hover{filter:brightness(1.08);transform:translateY(-1px)}
@media(max-width:700px){.bs-support-float{right:14px;bottom:84px}.bs-support-toggle.bs-support-direct{width:74px;height:58px;border-radius:18px}.bs-support-mini{width:44px;height:44px;border-radius:14px}.bs-support-direct-label{font-size:12px}}


/* =========================================================
   SUPPORT BUTTON — FINAL FLOATING MENU
   Only affects the home-page support control.
   ========================================================= */
.bs-support-float{
  position:fixed!important;
  right:18px!important;
  bottom:92px!important;
  z-index:9000!important;
  display:grid!important;
  place-items:end!important;
  contain:layout paint;
}
.bs-support-toggle{
  position:relative!important;
  width:64px!important;
  height:64px!important;
  padding:0!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,#ff5b52 0%,#ff332b 55%,#d91f28 100%)!important;
  color:#fff!important;
  display:grid!important;
  place-items:center!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent;
  box-shadow:0 18px 42px rgba(0,0,0,.42),0 0 28px rgba(255,64,55,.24)!important;
  transform:translate3d(0,0,0);
  will-change:transform,box-shadow;
  transition:transform .22s cubic-bezier(.22,.61,.36,1),box-shadow .22s ease,filter .22s ease!important;
}
.bs-support-toggle:hover{
  transform:translate3d(0,-3px,0) scale(1.025)!important;
  box-shadow:0 22px 48px rgba(0,0,0,.48),0 0 36px rgba(255,64,55,.32)!important;
}
.bs-support-toggle:active{
  transform:translate3d(0,0,0) scale(.96)!important;
}
.bs-support-orb{
  width:40px!important;
  height:40px!important;
  border-radius:15px!important;
  display:grid!important;
  place-items:center!important;
  background:rgba(255,255,255,.13)!important;
  border:1px solid rgba(255,255,255,.2)!important;
}
.bs-support-orb-icon{
  width:24px!important;
  height:24px!important;
  display:grid!important;
  place-items:center!important;
  font-size:0!important;
  line-height:0!important;
  animation:none!important;
  transform:translate3d(0,0,0)!important;
}
.bs-support-orb-icon svg{
  width:24px!important;
  height:24px!important;
  display:block!important;
  color:#fff!important;
}
.bs-support-pulse{
  position:absolute!important;
  inset:-6px!important;
  border-radius:27px!important;
  border:1px solid rgba(255,78,69,.35)!important;
  pointer-events:none!important;
  animation:none!important;
  opacity:.65;
}
.bs-support-menu{
  position:absolute!important;
  right:0!important;
  bottom:78px!important;
  width:255px!important;
  display:block!important;
  transform-origin:bottom right;
  transform:translate3d(0,8px,0) scale(.96);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease,transform .22s cubic-bezier(.22,.61,.36,1),visibility 0s linear .22s!important;
  will-change:transform,opacity;
}
.bs-support-menu:not([hidden]){
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate3d(0,0,0) scale(1);
  transition:opacity .18s ease,transform .22s cubic-bezier(.22,.61,.36,1),visibility 0s linear 0s!important;
}
.bs-support-panel{
  position:relative!important;
  right:auto!important;
  bottom:auto!important;
  width:100%!important;
  padding:13px!important;
  border:1px solid rgba(255,255,255,.13)!important;
  border-radius:22px!important;
  background:linear-gradient(145deg,rgba(15,19,18,.97),rgba(7,10,10,.95))!important;
  backdrop-filter:blur(22px);
  -webkit-backdrop-filter:blur(22px);
  box-shadow:0 24px 70px rgba(0,0,0,.52)!important;
  transform:none!important;
  animation:none!important;
}
.bs-support-title{
  padding:6px 9px 11px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
}
.bs-support-title strong{color:#fff;font-size:15px}
.bs-support-title small{color:#89918e;font-size:11px}
.bs-support-link{
  display:flex!important;
  align-items:center!important;
  gap:11px!important;
  padding:12px 10px!important;
  border-radius:15px!important;
  color:#fff!important;
  text-decoration:none!important;
  transform:translate3d(0,0,0);
  transition:background .16s ease,transform .16s cubic-bezier(.22,.61,.36,1)!important;
}
.bs-support-link:hover{
  background:rgba(255,255,255,.07)!important;
  transform:translate3d(-3px,0,0)!important;
}
.bs-support-brand{
  width:38px!important;
  height:38px!important;
  border-radius:12px!important;
  display:grid!important;
  place-items:center!important;
  background:rgba(255,255,255,.07)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08)!important;
}
.bs-support-brand svg{width:21px!important;height:21px!important;display:block!important}
.bs-support-link.whatsapp .bs-support-brand{color:#2be879!important}
.bs-support-link.telegram .bs-support-brand{color:#32b7ff!important}
.bs-support-link span:last-child{display:flex;flex-direction:column;gap:2px}
.bs-support-link b{font-size:13px}
.bs-support-link small{font-size:10px;color:#89918e}
@media(max-width:700px){
  .bs-support-float{right:14px!important;bottom:86px!important}
  .bs-support-toggle{width:56px!important;height:56px!important;border-radius:19px!important}
  .bs-support-orb{width:36px!important;height:36px!important;border-radius:13px!important}
  .bs-support-orb-icon,.bs-support-orb-icon svg{width:22px!important;height:22px!important}
  .bs-support-menu{bottom:68px!important;width:230px!important}
}
@media(prefers-reduced-motion:reduce){
  .bs-support-toggle,.bs-support-menu,.bs-support-link{transition:none!important}
}


/* =========================================================
   SUPPORT MENU — HARD FUNCTIONAL OVERRIDE
   This is intentionally scoped to the dynamically-created support widget.
   ========================================================= */
.bs-support-float .bs-support-menu[hidden]{display:none!important}
.bs-support-float .bs-support-menu:not([hidden]){
  display:block!important;
  position:absolute!important;
  right:0!important;
  bottom:78px!important;
  width:min(285px,calc(100vw - 28px))!important;
  max-width:calc(100vw - 28px)!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translate3d(0,0,0) scale(1)!important;
  z-index:9002!important;
}
.bs-support-float .bs-support-menu[hidden]{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.bs-support-float .bs-support-panel{
  display:block!important;
  width:100%!important;
  box-sizing:border-box!important;
}
@media(max-width:700px){
  .bs-support-float .bs-support-menu:not([hidden]){bottom:68px!important;width:270px!important}
}


/* =========================================================
   FINAL XTRA GADGET / DWIN-INSPIRED POLISH
   Visual-only layer + support reliability. Existing data logic untouched.
   ========================================================= */
:root{
  --bs-red:#00e6a1;
  --bs-red-2:#26d9ff;
  --bs-green:#00e6a1;
  --bs-bg:#030807;
  --bs-panel:#07110e;
  --bs-panel-2:#0b1713;
}
body{
  background:
    radial-gradient(circle at 12% -8%,rgba(0,230,161,.09),transparent 30%),
    radial-gradient(circle at 92% 12%,rgba(0,145,105,.07),transparent 28%),
    linear-gradient(180deg,#020605 0%,#050b09 52%,#020504 100%) !important;
}
.logo-text{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;line-height:1!important;}
.logo-subtitle{display:block!important;margin-top:6px!important;font-size:11px!important;letter-spacing:3px!important;font-weight:900!important;color:#00aef0!important;line-height:1!important;}
.section-title::before,.product-section-title::before{background:linear-gradient(180deg,#00e6a1,#26d9ff)!important;box-shadow:0 0 18px rgba(0,230,161,.25)!important;}
.section-link,.product-view-all{color:#00e6a1!important;}
.section-link:hover,.product-view-all:hover{color:#fff!important;}
.product-section,.product-section:nth-of-type(even){
  background:
    radial-gradient(circle at 0% 0%,rgba(0,230,161,.08),transparent 30%),
    radial-gradient(circle at 100% 100%,rgba(0,120,90,.05),transparent 28%),
    linear-gradient(145deg,#07120f 0%,#050b09 58%,#030706 100%) !important;
}
/* Four compact trust cards visible together on phones. */
.features-section{padding:14px 0 20px!important;}
.features-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:8px!important;}
.feature-card{min-width:0!important;min-height:66px!important;padding:9px 8px!important;gap:7px!important;border-radius:14px!important;background:linear-gradient(145deg,#0b1713,#050a08)!important;border:1px solid rgba(0,230,161,.14)!important;box-shadow:0 10px 24px rgba(0,0,0,.22)!important;}
.feature-card>span{width:30px!important;height:30px!important;flex:0 0 30px!important;font-size:15px!important;border-radius:9px!important;background:rgba(0,230,161,.08)!important;}
.feature-card strong{font-size:11px!important;line-height:1.15!important;white-space:nowrap!important;}
.feature-card small{font-size:9px!important;line-height:1.2!important;margin-top:3px!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
/* Hero: black + deep green only. */
.hero-slider{background:radial-gradient(circle at 84% 42%,rgba(0,230,161,.12),transparent 34%),radial-gradient(circle at 20% 100%,rgba(0,120,90,.10),transparent 38%),linear-gradient(135deg,#020504 0%,#07110e 52%,#03100b 100%)!important;border-color:rgba(0,230,161,.14)!important;}
.hero-slide::after{background:radial-gradient(circle,rgba(0,230,161,.12),rgba(0,230,161,.025) 48%,transparent 72%)!important;}
.hero-badge{border-color:rgba(0,230,161,.55)!important;color:#00e6a1!important;background:rgba(0,230,161,.045)!important;box-shadow:0 0 18px rgba(0,230,161,.08)!important;}
.hero-view-button{background:linear-gradient(135deg,#00b985,#00e6a1)!important;box-shadow:0 10px 28px rgba(0,230,161,.18),inset 0 1px 0 rgba(255,255,255,.18)!important;}
.hero-view-button:hover{box-shadow:0 14px 32px rgba(0,230,161,.28)!important;}
.hero-dot.active{background:#00e6a1!important;box-shadow:0 0 12px rgba(0,230,161,.3)!important;}
/* Footer: clean DWIN-inspired black/green layout. */
.pro-footer{margin-top:70px!important;padding:58px 0 24px!important;background:linear-gradient(180deg,#030706,#020504)!important;border-top:1px solid rgba(0,230,161,.13)!important;}
.footer-brand-pro{padding-bottom:28px!important;border-bottom:1px solid rgba(0,230,161,.10)!important;}
.footer-brand-head{display:flex!important;align-items:center!important;gap:14px!important;}
.footer-brand-copy{display:flex!important;flex-direction:column!important;gap:5px!important;}
.footer-brand-copy strong{font-size:27px!important;line-height:1!important;color:#f5faf8!important;}
.footer-brand-copy>span{font-size:11px!important;letter-spacing:3px!important;color:#00aef0!important;font-weight:900!important;}
.footer-brand-pro>p{max-width:760px!important;color:#7f8b87!important;line-height:1.8!important;margin:20px 0 18px!important;}
.pro-footer-grid{grid-template-columns:1fr 1fr 1.25fr!important;gap:34px!important;padding:30px 0!important;}
.pro-footer .footer-col h3{color:#f4faf8!important;font-size:16px!important;text-transform:uppercase!important;letter-spacing:2px!important;margin-bottom:16px!important;}
.pro-footer .footer-col a{color:#75817d!important;font-size:14px!important;padding:5px 0!important;display:block!important;}
.pro-footer .footer-col a:hover{color:#00e6a1!important;transform:translateX(3px)!important;}
.footer-support-note{display:block!important;margin-top:8px!important;color:#4f5b57!important;font-size:12px!important;}
.pro-footer .footer-trust{display:flex!important;flex-wrap:wrap!important;gap:10px!important;}
.pro-footer .footer-trust span{padding:8px 12px!important;border:1px solid rgba(0,230,161,.12)!important;border-radius:999px!important;color:#7e8b87!important;background:rgba(0,230,161,.035)!important;font-size:11px!important;}
.pro-footer .footer-bottom{display:flex!important;justify-content:space-between!important;gap:15px!important;padding-top:18px!important;border-top:1px solid rgba(0,230,161,.08)!important;color:#4f5b57!important;font-size:12px!important;}
/* Product detail advance notice */
.pd-advance-notice{display:flex!important;align-items:flex-start!important;gap:11px!important;margin:16px 0 18px!important;padding:13px 14px!important;border:1px solid rgba(0,230,161,.28)!important;border-radius:14px!important;background:linear-gradient(135deg,rgba(0,230,161,.08),rgba(0,0,0,.14))!important;box-shadow:0 8px 25px rgba(0,0,0,.18)!important;}
.pd-advance-icon{width:34px!important;height:34px!important;flex:0 0 34px!important;display:grid!important;place-items:center!important;border-radius:10px!important;background:#00e6a1!important;color:#03110c!important;font-weight:950!important;}
.pd-advance-notice strong{display:block!important;color:#00e6a1!important;font-size:14px!important;}
.pd-advance-notice small{display:block!important;margin-top:4px!important;color:#8c9894!important;line-height:1.5!important;font-size:11px!important;}
/* Professional page transition */
#bs-page-transition{position:fixed;inset:0;z-index:2147483646;display:grid;place-items:center;background:#020605;opacity:1;visibility:visible;pointer-events:auto;transition:opacity .28s cubic-bezier(.22,.61,.36,1),visibility .28s ease;}
#bs-page-transition.is-done{opacity:0;visibility:hidden;pointer-events:none;}
#bs-page-transition .bs-loader-ring{width:48px;height:48px;border-radius:50%;border:3px solid rgba(0,230,161,.14);border-top-color:#00e6a1;border-right-color:#26d9ff;animation:bsPageSpin .72s linear infinite;box-shadow:0 0 30px rgba(0,230,161,.10);}
@keyframes bsPageSpin{to{transform:rotate(360deg)}}
@media(max-width:600px){
  .features-section{padding-top:10px!important;}
  .features-grid{gap:5px!important;}
  .feature-card{min-height:64px!important;padding:7px 5px!important;gap:5px!important;border-radius:12px!important;}
  .feature-card>span{width:27px!important;height:27px!important;flex-basis:27px!important;font-size:13px!important;}
  .feature-card strong{font-size:9px!important;}
  .feature-card small{font-size:7.5px!important;line-height:1.15!important;}
  .logo-subtitle{font-size:9px!important;letter-spacing:2.5px!important;margin-top:5px!important;}
  .pro-footer{padding-top:42px!important;}
  .pro-footer-grid{grid-template-columns:1fr 1fr!important;gap:28px 18px!important;}
  .footer-support-col{grid-column:1/-1!important;}
  .footer-brand-copy strong{font-size:24px!important;}
  .pro-footer .footer-bottom{flex-direction:column!important;}
}


/* =========================================================
   V4 FINAL: XTRA GADGET / DWIN-INSPIRED MOBILE POLISH
   Visual-only changes + isolated support widget repair.
   ========================================================= */

/* Header brand: keep the subtitle visible and close to DWIN proportions. */
.logo-text{gap:0!important;}
.logo-name{display:block!important;font-size:24px!important;line-height:1.02!important;font-weight:800!important;}
.logo-subtitle{display:block!important;font-size:11px!important;letter-spacing:3.2px!important;margin-top:5px!important;font-weight:900!important;color:#00aef0!important;}
@media(max-width:600px){
  .logo-name{font-size:21px!important;}
  .logo-subtitle{font-size:10px!important;letter-spacing:2.7px!important;margin-top:5px!important;}
}

/* Compact vertical rhythm: pull categories and hot products upward. */
.hero-section{padding:6px 0 0!important;}
.search-section{padding:8px 0 5px!important;}
.features-section{padding:6px 0 8px!important;}
.categories-section{padding-top:10px!important;padding-bottom:8px!important;}
.product-section{margin:18px 0!important;padding-top:8px!important;padding-bottom:10px!important;}
.categories-section .container,.all-categories-section .container{padding-top:10px!important;padding-bottom:10px!important;}
.section-header{margin-bottom:10px!important;}
.product-section-header{margin-bottom:10px!important;}

/* Same visual footprint for every hero product image. */
.hero-image-wrapper{padding:8px 12px 15px 0!important;}
.hero-product-image{
  width:170px!important;
  height:170px!important;
  min-width:170px!important;
  min-height:170px!important;
  max-width:170px!important;
  max-height:170px!important;
  object-fit:contain!important;
  object-position:center!important;
  border-radius:10px!important;
}
@media(max-width:820px){
  .hero-section{padding-top:5px!important;}
  .hero-slider{min-height:220px!important;height:220px!important;border-radius:15px!important;}
  .hero-slide{height:220px!important;min-height:220px!important;}
  .hero-image-wrapper{height:220px!important;min-height:220px!important;padding:6px 10px 15px 0!important;}
  .hero-product-image{width:158px!important;height:158px!important;min-width:158px!important;min-height:158px!important;max-width:158px!important;max-height:158px!important;}
  .hero-content{padding-top:18px!important;padding-bottom:20px!important;}
  .hero-content h1{font-size:23px!important;margin-bottom:11px!important;}
}
@media(max-width:390px){
  .hero-slider,.hero-slide{height:210px!important;min-height:210px!important;}
  .hero-image-wrapper{height:210px!important;min-height:210px!important;}
  .hero-product-image{width:148px!important;height:148px!important;min-width:148px!important;min-height:148px!important;}
}

/* Four feature cards: small, readable and always four across. */
.features-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important;}
.feature-card{min-height:60px!important;padding:6px 5px!important;gap:5px!important;border-radius:11px!important;}
.feature-card>span{width:26px!important;height:26px!important;flex:0 0 26px!important;font-size:12px!important;border-radius:8px!important;}
.feature-card strong{font-size:9px!important;white-space:nowrap!important;}
.feature-card small{font-size:7.5px!important;line-height:1.1!important;margin-top:2px!important;}
@media(max-width:600px){
  .feature-card{min-height:58px!important;}
  .feature-card strong{font-size:8.5px!important;}
  .feature-card small{font-size:7px!important;}
}

/* Category cards: DWIN-inspired dark green, consistent and premium. */
.categories-section .container{
  border-color:rgba(0,230,161,.10)!important;
  background:linear-gradient(145deg,rgba(0,230,161,.035),rgba(0,0,0,.08))!important;
}
.category-card{
  background:linear-gradient(145deg,#07130f,#040907)!important;
  border-color:rgba(0,230,161,.16)!important;
  box-shadow:0 12px 30px rgba(0,0,0,.22)!important;
}
.category-card:hover{border-color:rgba(0,230,161,.48)!important;}

/* Footer: DWIN-inspired compact branding with Bangla headings. */
.pro-footer{margin-top:26px!important;padding:38px 0 18px!important;background:linear-gradient(180deg,#020706,#020403)!important;}
.footer-brand-pro{padding-bottom:22px!important;}
.footer-brand-head{gap:12px!important;}
.footer-brand-copy strong{font-size:22px!important;line-height:1!important;font-weight:800!important;}
.footer-brand-copy>span{font-size:10px!important;letter-spacing:2.8px!important;color:#00aef0!important;}
.footer-brand-pro>p{margin:14px 0 15px!important;max-width:720px!important;font-size:13px!important;line-height:1.7!important;color:#77837f!important;}
.pro-footer .footer-trust{gap:8px!important;}
.pro-footer .footer-trust span{font-size:10px!important;padding:7px 10px!important;}
.pro-footer-grid{padding:24px 0!important;grid-template-columns:1fr 1fr 1.1fr!important;gap:22px!important;}
.pro-footer .footer-col h3{font-size:14px!important;letter-spacing:1.6px!important;margin-bottom:11px!important;}
.pro-footer .footer-col a{font-size:13px!important;padding:4px 0!important;}
.footer-support-note{font-size:11px!important;margin-top:6px!important;}
.pro-footer .footer-bottom{font-size:11px!important;padding-top:14px!important;}
@media(max-width:600px){
  .pro-footer{margin-top:22px!important;padding:32px 0 16px!important;}
  .footer-brand-copy strong{font-size:21px!important;}
  .footer-brand-copy>span{font-size:9px!important;letter-spacing:2.6px!important;}
  .footer-brand-pro>p{font-size:12px!important;line-height:1.65!important;}
  .pro-footer-grid{padding:22px 0!important;gap:24px 18px!important;}
  .pro-footer .footer-col h3{font-size:13px!important;}
  .pro-footer .footer-col a{font-size:12px!important;}
}

/* Support: isolated, no hidden/display state can override the JS. */
.bs-support-float{z-index:2147483000!important;pointer-events:none!important;}
.bs-support-float .bs-support-toggle,
.bs-support-float .bs-support-menu,
.bs-support-float .bs-support-panel,
.bs-support-float .bs-support-link{pointer-events:auto!important;}
.bs-support-toggle{
  background:linear-gradient(145deg,#00c995,#00a878)!important;
  box-shadow:0 16px 38px rgba(0,0,0,.42),0 0 25px rgba(0,230,161,.20)!important;
}
.bs-support-toggle:hover{box-shadow:0 20px 46px rgba(0,0,0,.48),0 0 32px rgba(0,230,161,.30)!important;}
.bs-support-menu{
  position:absolute!important;
  right:0!important;
  bottom:78px!important;
  width:270px!important;
  max-width:calc(100vw - 28px)!important;
  z-index:2147483001!important;
  transform-origin:bottom right!important;
}
.bs-support-menu.is-visible{
  display:block!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translate3d(0,0,0) scale(1)!important;
}
.bs-support-menu:not(.is-visible){
  display:none!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.bs-support-panel{width:100%!important;box-sizing:border-box!important;}
.bs-support-link{cursor:pointer!important;}
@media(max-width:700px){
  .bs-support-float{right:14px!important;bottom:84px!important;}
  .bs-support-menu{bottom:70px!important;width:260px!important;}
}

/* XTRA GADGET - dark category surroundings */
.categories,.category-section,.categories-section,.category-wrapper,.category-container,.categories-container,.category-grid,.categories-grid,.category-list,.category-slider,.category-carousel,.category-card-wrapper{background:#030706!important;background-image:none!important;box-shadow:none!important}
.category-card,.categories .card,.category-item,.category-box,.category-tile{background:#070b0a!important;background-image:none!important;box-shadow:0 0 0 1px rgba(255,255,255,.045)!important}
.categories::before,.categories::after,.category-section::before,.category-section::after,.categories-section::before,.categories-section::after{opacity:0!important;background:none!important;box-shadow:none!important}


/* =========================================================
   XTRA GADGET — DWIN-STYLE VISUAL PASS
   Visual-only layer. Existing product/category/cart/support
   logic is intentionally untouched.
   ========================================================= */

/* Top announcement strip */
.xg-announcement-bar{
  min-height:34px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 18px;
  background:#020706;
  border-bottom:1px solid rgba(0,230,161,.10);
  color:#8c9995;
  font-size:10px;
  font-weight:700;
  letter-spacing:.3px;
  white-space:nowrap;
  overflow:hidden;
}
.xg-live-dot{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#00e6a1;box-shadow:0 0 10px rgba(0,230,161,.55);}
.xg-announcement-spacer{flex:1;}
@media(max-width:600px){.xg-announcement-bar{min-height:30px;padding:0 12px;font-size:8.5px;}.xg-announcement-bar>span:last-child{display:none;}}

/* Header proportions closer to the reference */
.site-header{background:rgba(2,7,6,.96)!important;border-bottom:1px solid rgba(0,230,161,.10)!important;}
.header-inner{min-height:72px!important;gap:14px!important;}
.logo{gap:11px!important;}
.logo-mark{width:42px!important;height:42px!important;border-radius:12px!important;background:#07100d!important;border:1px solid rgba(0,230,161,.24)!important;box-shadow:0 0 22px rgba(0,230,161,.06)!important;}
.logo-name{font-size:24px!important;font-weight:900!important;letter-spacing:-.5px!important;color:#f5f8f7!important;}
.logo-subtitle{font-size:11px!important;letter-spacing:3.1px!important;color:#00aef0!important;}
.header-icon{background:#0a0d0d!important;border-color:rgba(255,255,255,.10)!important;border-radius:13px!important;}

/* Dark premium page — no large green wash */
body{background:#020504!important;}
main{background:#020504!important;}

/* Hero: DWIN-like black/red/green balance */
.hero-section{padding:7px 0 4px!important;}
.hero-slider{
  border-radius:18px!important;
  background:
    radial-gradient(circle at 14% 54%,rgba(255,59,48,.11),transparent 32%),
    radial-gradient(circle at 86% 48%,rgba(0,230,161,.09),transparent 34%),
    linear-gradient(135deg,#070708 0%,#0a0e0d 52%,#07110e 100%)!important;
  border-color:rgba(0,230,161,.12)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 18px 42px rgba(0,0,0,.32)!important;
}
.hero-slide::after{background:radial-gradient(circle,rgba(0,230,161,.07),transparent 68%)!important;}
.hero-content h1{font-weight:900!important;}
.hero-view-button{border-radius:10px!important;}
.hero-arrow{background:rgba(3,10,8,.82)!important;border-color:rgba(0,230,161,.32)!important;}

/* Search: compact reference-style bar */
.search-section{padding:7px 0 5px!important;background:#020504!important;}
.search-box{min-height:58px!important;padding:5px!important;border-radius:14px!important;background:#0c1010!important;border:1px solid rgba(255,255,255,.10)!important;box-shadow:none!important;}
.search-box input{background:#0b0e0e!important;color:#fff!important;border-radius:11px!important;}
.search-box button{background:#00b985!important;border-color:#00b985!important;border-radius:11px!important;min-width:112px!important;}

/* Four DWIN-like compact trust items */
.features-section{padding:4px 0 12px!important;background:#020504!important;}
.features-grid{gap:0!important;overflow:hidden!important;border-top:1px solid rgba(255,255,255,.045)!important;border-bottom:1px solid rgba(255,255,255,.045)!important;}
.feature-card{
  min-height:70px!important;
  padding:8px 10px!important;
  border:0!important;
  border-right:1px solid rgba(255,255,255,.055)!important;
  border-radius:0!important;
  background:#050908!important;
  box-shadow:none!important;
}
.feature-card:last-child{border-right:0!important;}
.feature-card>span{width:34px!important;height:34px!important;flex-basis:34px!important;border-radius:10px!important;background:#071914!important;border:1px solid rgba(0,230,161,.08)!important;}
.feature-card strong{font-size:11px!important;color:#f2f6f4!important;}
.feature-card small{font-size:8px!important;color:#737d79!important;}
@media(max-width:600px){
 .feature-card{min-height:64px!important;padding:7px 6px!important;gap:5px!important;}
 .feature-card>span{width:28px!important;height:28px!important;flex-basis:28px!important;font-size:12px!important;}
 .feature-card strong{font-size:8.5px!important;}
 .feature-card small{font-size:6.8px!important;}
}

/* Categories: black outer section, DWIN-style compact colored cards */
.categories-section{padding:13px 0 7px!important;background:#020504!important;}
.categories-section .container{
  padding:10px 0 5px!important;
  border:0!important;
  border-radius:0!important;
  background:#020504!important;
  box-shadow:none!important;
}
.section-header{margin-bottom:10px!important;padding:0 14px!important;}
.section-title{font-size:25px!important;font-weight:900!important;}
.section-title::before{width:4px!important;height:28px!important;margin-right:9px!important;background:#00e6a1!important;box-shadow:0 0 12px rgba(0,230,161,.18)!important;}
.section-link{font-size:12px!important;color:#00e6a1!important;}
.category-slider{gap:7px!important;}
#home-categories .category-viewport{border-radius:0!important;background:transparent!important;}
#home-categories .category-track{gap:9px!important;}
#home-categories .category-card{
  background:#07100e!important;
  border:1px solid rgba(0,230,161,.18)!important;
  border-radius:17px!important;
  padding:5px!important;
  box-shadow:0 8px 24px rgba(0,0,0,.22)!important;
}
#home-categories .category-card:nth-child(3n+1){background:linear-gradient(145deg,#06202a,#061114)!important;border-color:rgba(25,184,220,.28)!important;}
#home-categories .category-card:nth-child(3n+2){background:linear-gradient(145deg,#291305,#100a06)!important;border-color:rgba(222,120,45,.28)!important;}
#home-categories .category-card:nth-child(3n){background:linear-gradient(145deg,#111a36,#080d1b)!important;border-color:rgba(69,105,210,.30)!important;}
#home-categories .category-image-box{background:rgba(0,0,0,.22)!important;border-radius:12px!important;}
#home-categories .category-name{font-size:10px!important;font-weight:800!important;color:#f1f5f3!important;padding:7px 4px 8px!important;}
#home-categories .category-arrow{background:rgba(2,9,7,.86)!important;border:1px solid rgba(0,230,161,.30)!important;width:34px!important;height:34px!important;flex-basis:34px!important;}
#home-categories .category-dots .category-dot.active{background:#00e6a1!important;}

/* Keep Hot Products immediately below categories like the reference */
.product-section{margin:8px 0 18px!important;padding:10px 0!important;background:#020504!important;}
.product-section-header{padding:0 14px!important;margin-bottom:8px!important;}
.product-section-title{font-size:25px!important;}
.product-section-title::before{background:#00e6a1!important;box-shadow:0 0 12px rgba(0,230,161,.18)!important;}
.product-section-subtitle{font-size:10px!important;color:#6f7975!important;}
.product-view-all{font-size:12px!important;color:#00e6a1!important;}

/* Footer: DWIN-like black, Bangla, compact */
.pro-footer{margin-top:20px!important;padding:38px 0 18px!important;background:#020504!important;border-top:1px solid rgba(255,255,255,.05)!important;}
.footer-brand-pro{border-bottom:1px solid rgba(255,255,255,.05)!important;padding-bottom:22px!important;}
.footer-brand-copy strong{font-size:22px!important;color:#f3f7f5!important;}
.footer-brand-copy>span{font-size:10px!important;letter-spacing:2.8px!important;color:#00aef0!important;}
.footer-brand-pro>p{color:#707b77!important;font-size:13px!important;margin:15px 0!important;}
.footer-trust span{background:#050908!important;border-color:rgba(255,255,255,.07)!important;color:#6e7975!important;}
.pro-footer-grid{grid-template-columns:1fr 1fr 1.15fr!important;gap:25px!important;padding:24px 0!important;}
.pro-footer .footer-col h3{font-size:15px!important;letter-spacing:1.8px!important;color:#f1f5f3!important;}
.pro-footer .footer-col a{font-size:13px!important;color:#6e7975!important;}
.pro-footer .footer-bottom{border-top:1px solid rgba(255,255,255,.05)!important;color:#4f5a56!important;}
@media(max-width:600px){.pro-footer-grid{grid-template-columns:1fr 1fr!important;}.footer-support-col{grid-column:1/-1!important;}}

/* =========================================================
   FINAL USER REQUEST — ALL PRODUCT CARDS USE HOT-PRODUCT SIZE
   ========================================================= */
@media(max-width:600px){
  .product-card{
    min-height:0!important;
    border-radius:17px!important;
  }
  .product-card .product-image-box{
    aspect-ratio:1/1!important;
    min-height:0!important;
    height:auto!important;
  }
  .product-card .product-image-box img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
    padding:10px!important;
  }
  .product-card .product-info{
    min-height:112px!important;
    height:112px!important;
    padding:11px!important;
    box-sizing:border-box!important;
  }
}
