/*
Theme Name: BOSS 6688 Vape Store
Theme URI: https://boss6688.shop/
Description: Premium Australian vape store — purple magic theme with age verification, rotating announcement, magic effects, mobile bottom nav.
Version: 4.0.0
Author: BOSS 6688
Text Domain: iget-express
Tags: e-commerce, woocommerce, purple, mobile-first
*/

/* ========== Reset & Base ========== */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body {
  font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  color: #e8e8e8;
  background: #0f0a1e;
  line-height: 1.6;
  overflow-x: hidden;
  padding-bottom: 70px;
  position: relative;
}
body::before {
  content: '';
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background:
    radial-gradient(ellipse at 20% 0%, rgba(167,139,250,0.08) 0%, transparent 50%),
    radial-gradient(ellipse at 80% 100%, rgba(168,85,247,0.06) 0%, transparent 50%),
    radial-gradient(ellipse at 50% 50%, rgba(167,139,250,0.03) 0%, transparent 70%);
  z-index: -1;
  animation: bgShift 15s ease-in-out infinite alternate;
}
@keyframes bgShift {
  0% { background-position: 0% 0%, 100% 100%, 50% 50%; }
  100% { background-position: 100% 0%, 0% 100%, 50% 50%; }
}
h1, h2, h3, h4, h5, h6 {
  font-family: 'Space Grotesk', 'DM Sans', sans-serif;
  font-weight: 700;
  line-height: 1.2;
  color: #f5f5f5;
}
a { color: #a78bfa; text-decoration: none; transition: color .2s, text-shadow .2s; }
a:hover { color: #c4b5fd; text-shadow: 0 0 12px rgba(167,139,250,0.5); }
img { max-width: 100%; height: auto; display: block; }
ul, ol { list-style: none; }
button { cursor: pointer; font-family: inherit; }
input, select, textarea {
  font-family: inherit;
  font-size: 15px;
  background: #221a3d;
  color: #e8e8e8;
  border: 1px solid #333;
  border-radius: 8px;
  padding: 12px 14px;
  width: 100%;
  transition: border-color .2s, box-shadow .2s;
}
input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: #a78bfa;
  box-shadow: 0 0 0 3px rgba(167,139,250,0.15);
}
input::placeholder, textarea::placeholder { color: #666; }

/* ========== Top Announcement Bar ========== */
.announcement-bar {
  background: linear-gradient(90deg, #0f0a1e, #1a1230, #0f0a1e);
  border-bottom: 1px solid rgba(167,139,250,0.3);
  padding: 10px 20px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.announcement-bar::before {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(167,139,250,0.1), transparent);
  animation: shimmer 3s infinite;
}
@keyframes shimmer {
  0% { left: -100%; }
  100% { left: 100%; }
}
.announcement-bar p {
  color: #a78bfa;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  position: relative;
  z-index: 1;
}

/* ========== Header ========== */
.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  background: rgba(10,10,10,0.95);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(167,139,250,0.2);
}
.header-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.site-logo {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.5px;
  white-space: nowrap;
  color: #fff;
}
.site-logo span {
  background: linear-gradient(135deg, #a78bfa, #c4b5fd);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.main-nav { display: flex; gap: 28px; }
.main-nav ul, .main-nav .menu {
  display: flex;
  gap: 28px;
  list-style: none;
  margin: 0;
  padding: 0;
  align-items: center;
}
.main-nav ul li { list-style: none; margin: 0; padding: 0; }
.main-nav a {
  font-size: 15px;
  font-weight: 500;
  color: #ccc;
  position: relative;
}
.main-nav a::after {
  content: '';
  position: absolute;
  bottom: -4px; left: 0;
  width: 0; height: 2px;
  background: linear-gradient(90deg, #a78bfa, #c4b5fd);
  transition: width .3s;
}
.main-nav a:hover, .main-nav a.current-menu-item { color: #a78bfa; }
.main-nav a:hover::after, .main-nav a.current-menu-item::after { width: 100%; }
.header-actions { display: flex; align-items: center; gap: 16px; }
.header-cart {
  position: relative;
  font-size: 20px;
  display: flex;
  align-items: center;
  color: #ccc;
  transition: color .2s;
}
.header-cart:hover { color: #a78bfa; }
.header-cart .cart-count {
  position: absolute;
  top: -6px;
  right: -8px;
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  color: #0f0a1e;
  font-size: 11px;
  font-weight: 700;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* ========== Hero ========== */
.hero {
  background:
    radial-gradient(ellipse at center top, rgba(167,139,250,0.12) 0%, transparent 60%),
    linear-gradient(180deg, #0f0f0f 0%, #0f0a1e 100%);
  padding: 80px 20px;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.hero::before {
  content: '';
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(167,139,250,0.06) 0%, transparent 70%);
  animation: pulse 4s ease-in-out infinite;
}
@keyframes pulse {
  0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: 0.5; }
  50% { transform: translate(-50%, -50%) scale(1.2); opacity: 1; }
}
.hero h1 {
  font-size: clamp(32px, 5vw, 52px);
  margin-bottom: 16px;
  position: relative;
  z-index: 1;
}
.hero h1 .gold {
  background: linear-gradient(135deg, #a78bfa 0%, #c4b5fd 50%, #a78bfa 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.hero p {
  font-size: 17px;
  color: #999;
  max-width: 600px;
  margin: 0 auto 32px;
  position: relative;
  z-index: 1;
}
.hero .btn {
  display: inline-block;
  background: linear-gradient(135deg, #a78bfa 0%, #7c3aed 100%);
  color: #0f0a1e;
  padding: 16px 44px;
  border-radius: 50px;
  font-weight: 700;
  font-size: 16px;
  transition: transform .2s, box-shadow .2s;
  position: relative;
  z-index: 1;
  box-shadow: 0 4px 20px rgba(167,139,250,0.3);
}
.hero .btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(167,139,250,0.5);
  color: #0f0a1e;
}

/* ========== Trust Bar ========== */
.trust-bar {
  background: linear-gradient(90deg, #111, #1a1230, #111);
  border-top: 1px solid rgba(167,139,250,0.15);
  border-bottom: 1px solid rgba(167,139,250,0.15);
  color: #a78bfa;
  padding: 18px 20px;
}
.trust-bar-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  gap: 48px;
  flex-wrap: wrap;
}
.trust-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.trust-item .icon { font-size: 18px; }

/* ========== Section ========== */
.section {
  max-width: 1200px;
  margin: 0 auto;
  padding: 56px 20px;
}
.section-title {
  font-size: clamp(24px, 3vw, 36px);
  text-align: center;
  margin-bottom: 10px;
}
.section-subtitle {
  text-align: center;
  color: #888;
  font-size: 15px;
  margin-bottom: 36px;
}

/* ========== Product Grid ========== */
.products-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 24px;
}
.product-card {
  background: linear-gradient(145deg, #1e1736, #1a1230);
  border: 1px solid rgba(167,139,250,0.15);
  border-radius: 16px;
  overflow: hidden;
  transition: transform .3s, box-shadow .3s, border-color .3s;
  position: relative;
}
.product-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, #a78bfa, transparent);
  opacity: 0;
  transition: opacity .3s;
}
.product-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 48px rgba(167,139,250,0.15), 0 0 30px rgba(167,139,250,0.08);
  border-color: rgba(167,139,250,0.4);
}
.product-card:hover::before { opacity: 1; }
.product-card .product-thumb {
  position: relative;
  background: #111;
  aspect-ratio: 1;
  overflow: hidden;
}
.product-card .product-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s;
}
.product-card:hover .product-thumb img { transform: scale(1.08); }
.product-card .sale-badge {
  position: absolute;
  top: 12px;
  left: 12px;
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  color: #0f0a1e;
  font-size: 11px;
  font-weight: 700;
  padding: 5px 12px;
  border-radius: 50px;
  text-transform: uppercase;
  letter-spacing: .5px;
  z-index: 2;
}
.product-card .wishlist-btn {
  position: absolute;
  top: 12px;
  right: 12px;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(0,0,0,0.6);
  backdrop-filter: blur(4px);
  border: 1px solid rgba(167,139,250,0.3);
  color: #a78bfa;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  cursor: pointer;
  transition: all .2s;
  z-index: 2;
}
.product-card .wishlist-btn:hover {
  background: rgba(167,139,250,0.2);
  transform: scale(1.1);
}
.product-card .wishlist-btn.active { color: #ff4d6d; border-color: #ff4d6d; }
.product-card .product-info { padding: 16px; }
.product-card .product-title {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 8px;
  line-height: 1.3;
  min-height: 36px;
  color: #e8e8e8;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.product-card .product-price {
  display: flex;
  align-items: center;
  gap: 8px;
}
.product-card .price-now {
  font-size: 18px;
  font-weight: 700;
  color: #a78bfa;
}
.product-card .price-was {
  font-size: 13px;
  color: #666;
  text-decoration: line-through;
}
.product-card .add-to-cart-btn {
  display: block;
  width: 100%;
  margin-top: 12px;
  padding: 11px;
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  color: #0f0a1e;
  border: none;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 700;
  transition: all .2s;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.product-card .add-to-cart-btn:hover {
  box-shadow: 0 4px 16px rgba(167,139,250,0.4);
  transform: translateY(-1px);
}

/* WooCommerce standard button in custom product card */
.product-card .button {
  display: block;
  width: 100%;
  margin-top: 12px;
  padding: 11px;
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  color: #0f0a1e;
  border: none;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 700;
  transition: all .2s;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  text-align: center;
  line-height: 1.4;
}
.product-card .button:hover {
  background: linear-gradient(135deg, #818cf8, #7c3aed);
  box-shadow: 0 4px 16px rgba(167,139,250,0.4);
  transform: translateY(-1px);
  color: #0f0a1e;
}
.product-card .button.loading { opacity: 0.7; pointer-events: none; }
.product-card .button.added { background: #52c41a; color: #fff; }

/* ========== WooCommerce overrides ========== */
.woocommerce .products {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 24px;
}
.woocommerce ul.products li.product {
  margin: 0;
  background: linear-gradient(145deg, #1e1736, #1a1230);
  border: 1px solid rgba(167,139,250,0.15);
  border-radius: 16px;
  overflow: hidden;
  transition: transform .3s, box-shadow .3s, border-color .3s;
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 48px rgba(167,139,250,0.15);
  border-color: rgba(167,139,250,0.4);
}
.woocommerce ul.products li.product a img {
  margin: 0;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
}
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  padding: 14px 16px 4px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  color: #e8e8e8;
}
.woocommerce ul.products li.product .price {
  padding: 0 16px;
  font-size: 17px;
  font-weight: 700;
  color: #a78bfa;
}
.woocommerce ul.products li.product .price del {
  color: #666;
  font-size: 13px;
  font-weight: 400;
  margin-right: 6px;
}
.woocommerce ul.products li.product .button {
  margin: 10px 16px 16px;
  display: block;
  text-align: center;
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  color: #0f0a1e;
  border-radius: 10px;
  padding: 11px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
}
.woocommerce ul.products li.product .button:hover {
  box-shadow: 0 4px 16px rgba(167,139,250,0.4);
  color: #0f0a1e;
}
.woocommerce span.onsale {
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  color: #0f0a1e;
  font-size: 11px;
  font-weight: 700;
  padding: 5px 12px;
  border-radius: 50px;
  text-transform: uppercase;
  min-height: auto;
  line-height: 1;
  top: 12px;
  left: 12px;
}
.woocommerce .woocommerce-result-count { color: #999; }
.woocommerce .woocommerce-ordering select { width: auto; }

/* Single product */
.woocommerce div.product { padding: 24px; max-width: 1200px; margin: 0 auto; }
.woocommerce div.product .product_title { font-size: 28px; margin-bottom: 10px; color: #f5f5f5; }
.woocommerce div.product p.price { font-size: 26px; font-weight: 700; color: #a78bfa; }
.woocommerce div.product p.price del { color: #666; font-size: 18px; margin-right: 8px; }
.woocommerce div.product .woocommerce-product-gallery { margin-bottom: 24px; }
.woocommerce div.product form.cart { margin: 24px 0; }
.woocommerce div.product form.cart .button {
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  color: #0f0a1e;
  padding: 14px 36px;
  border-radius: 10px;
  font-weight: 700;
  text-transform: uppercase;
}
.woocommerce div.product form.cart .button:hover {
  box-shadow: 0 4px 20px rgba(167,139,250,0.4);
  color: #0f0a1e;
}
.woocommerce div.product .woocommerce-tabs { margin-top: 32px; }
.woocommerce div.product .woocommerce-tabs ul.tabs { border-bottom: 1px solid #333; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { font-weight: 600; color: #999; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: #a78bfa; }
.woocommerce div.product .woocommerce-Tabs-panel { color: #ccc; }

/* Cart */
.woocommerce-cart table.cart { background: #111; border-radius: 12px; overflow: hidden; }
.woocommerce-cart table.cart th { background: #221a3d; color: #a78bfa; padding: 14px; }
.woocommerce-cart table.cart td { padding: 14px; border-bottom: 1px solid #222; color: #ccc; }
.woocommerce-cart .cart-collaterals .cart_totals {
  width: 100%;
  background: #111;
  border-radius: 12px;
  padding: 24px;
  border: 1px solid rgba(167,139,250,0.2);
}
.woocommerce-cart .cart_totals h2 { color: #a78bfa; margin-bottom: 16px; }
.woocommerce .checkout-button, .woocommerce #place_order {
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  color: #0f0a1e;
  padding: 14px 36px;
  border-radius: 10px;
  font-weight: 700;
  text-transform: uppercase;
  border: none;
  width: 100%;
}
.woocommerce .checkout-button:hover, .woocommerce #place_order:hover {
  box-shadow: 0 4px 20px rgba(167,139,250,0.4);
  color: #0f0a1e;
}

/* ========== Age Verification Modal ========== */
.age-verification-overlay {
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0,0,0,0.92);
  backdrop-filter: blur(8px);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: opacity .4s, visibility .4s;
}
.age-verification-overlay.active { opacity: 1; visibility: visible; }
.age-verification-modal {
  background: linear-gradient(145deg, #221a3d, #1a1230);
  border: 1px solid rgba(167,139,250,0.3);
  border-radius: 24px;
  padding: 48px 40px;
  max-width: 460px;
  width: 90%;
  text-align: center;
  position: relative;
  box-shadow: 0 0 60px rgba(167,139,250,0.15);
  transform: scale(0.9);
  transition: transform .4s;
}
.age-verification-overlay.active .age-verification-modal { transform: scale(1); }
.age-verification-modal::before {
  content: '';
  position: absolute;
  top: -2px; left: -2px; right: -2px; bottom: -2px;
  background: linear-gradient(135deg, #a78bfa, transparent, #a78bfa);
  border-radius: 24px;
  z-index: -1;
  opacity: 0.5;
  animation: borderGlow 3s ease-in-out infinite;
}
@keyframes borderGlow {
  0%, 100% { opacity: 0.3; }
  50% { opacity: 0.7; }
}
.age-verification-logo {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 24px;
}
.age-verification-logo span {
  background: linear-gradient(135deg, #a78bfa, #c4b5fd);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.age-18-badge {
  width: 90px;
  height: 90px;
  border: 3px solid #a78bfa;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 24px;
  font-family: 'Space Grotesk', sans-serif;
  font-size: 32px;
  font-weight: 700;
  color: #a78bfa;
  box-shadow: 0 0 30px rgba(167,139,250,0.3);
  animation: badgePulse 2s ease-in-out infinite;
}
@keyframes badgePulse {
  0%, 100% { box-shadow: 0 0 20px rgba(167,139,250,0.2); }
  50% { box-shadow: 0 0 40px rgba(167,139,250,0.5); }
}
.age-verification-text {
  font-size: 16px;
  color: #999;
  letter-spacing: 2px;
  text-transform: uppercase;
  line-height: 1.8;
  margin-bottom: 24px;
}
.age-verification-question {
  font-size: 20px;
  font-weight: 600;
  color: #f5f5f5;
  margin-bottom: 28px;
}
.age-verification-buttons {
  display: flex;
  gap: 16px;
  justify-content: center;
}
.age-btn {
  flex: 1;
  padding: 16px 24px;
  border-radius: 10px;
  font-size: 15px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  cursor: pointer;
  transition: all .2s;
  border: none;
}
.age-btn-yes {
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  color: #0f0a1e;
}
.age-btn-yes:hover {
  box-shadow: 0 4px 20px rgba(167,139,250,0.5);
  transform: translateY(-2px);
}
.age-btn-leave {
  background: transparent;
  color: #a78bfa;
  border: 2px solid #a78bfa;
}
.age-btn-leave:hover { background: rgba(167,139,250,0.1); }
.age-verification-footer {
  margin-top: 28px;
  font-size: 12px;
  color: #666;
  line-height: 1.6;
}
.age-verification-footer a { color: #a78bfa; }

/* ========== Footer ========== */
.site-footer {
  background: linear-gradient(180deg, #0f0a1e, #0a0618);
  color: #888;
  padding: 48px 20px 90px;
  margin-top: 48px;
  border-top: 1px solid rgba(167,139,250,0.15);
}
.footer-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 36px;
}
.footer-col h4 {
  color: #a78bfa;
  font-size: 15px;
  margin-bottom: 16px;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.footer-col p { font-size: 14px; line-height: 1.7; color: #888; }
.footer-col a { color: #888; font-size: 14px; display: block; padding: 5px 0; transition: color .2s, padding-left .2s; }
.footer-col a:hover { color: #a78bfa; padding-left: 4px; }
.footer-bottom {
  max-width: 1200px;
  margin: 36px auto 0;
  padding-top: 24px;
  border-top: 1px solid #222;
  text-align: center;
  font-size: 13px;
  color: #666;
}

/* ========== Fixed Bottom Navigation (Mobile) ========== */
.bottom-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background: rgba(15,15,15,0.95);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(167,139,250,0.2);
  box-shadow: 0 -4px 24px rgba(0,0,0,0.5);
  display: flex;
  justify-content: space-around;
  align-items: center;
  height: 64px;
  padding: 0 8px;
}
.bottom-nav-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  text-decoration: none;
  color: #888;
  font-size: 10px;
  font-weight: 500;
  padding: 6px 4px;
  position: relative;
  transition: color .2s, transform .2s;
}
.bottom-nav-item:hover, .bottom-nav-item.active {
  color: #a78bfa;
  transform: translateY(-2px);
}
.bottom-nav-item .nav-icon {
  font-size: 20px;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.bottom-nav-item .nav-label { font-size: 10px; }
.bottom-nav-item .badge {
  position: absolute;
  top: 2px;
  right: 50%;
  transform: translateX(14px);
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  color: #0f0a1e;
  font-size: 10px;
  font-weight: 700;
  min-width: 16px;
  height: 16px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 4px;
}
.bottom-nav-item.whatsapp .nav-icon { color: #25D366; }
.bottom-nav-item.whatsapp:hover { color: #25D366; }

/* ========== WhatsApp Floating Button ========== */
.whatsapp-float {
  position: fixed;
  bottom: 80px;
  right: 16px;
  z-index: 998;
  width: 54px;
  height: 54px;
  background: linear-gradient(135deg, #25D366, #128C7E);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 20px rgba(37,211,102,0.4);
  transition: transform .2s, box-shadow .2s;
  animation: waFloat 3s ease-in-out infinite;
}
@keyframes waFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}
.whatsapp-float:hover {
  transform: scale(1.15);
  box-shadow: 0 6px 28px rgba(37,211,102,0.6);
}
.whatsapp-float svg { width: 28px; height: 28px; fill: #fff; }

/* ========== Magic Effects ========== */
.particle {
  position: fixed;
  width: 4px;
  height: 4px;
  background: #a78bfa;
  border-radius: 50%;
  pointer-events: none;
  z-index: 1;
  opacity: 0;
  animation: floatUp linear infinite;
}
@keyframes floatUp {
  0% { transform: translateY(100vh) scale(0); opacity: 0; }
  10% { opacity: 0.6; }
  90% { opacity: 0.6; }
  100% { transform: translateY(-100px) scale(1); opacity: 0; }
}

/* ========== Checkout Page (Shopify-style) ========== */
.iget-checkout-wrap {
  max-width: 1000px;
  margin: 0 auto;
  padding: 32px 20px 80px;
}
.iget-checkout-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 32px;
}
.iget-checkout-logo {
  font-family: 'Space Grotesk', sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: #fff;
}
.iget-checkout-logo span {
  background: linear-gradient(135deg, #a78bfa, #c4b5fd);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.iget-back-to-shop {
  color: #a78bfa;
  font-size: 14px;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 6px;
}
.iget-checkout-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 40px;
}
.iget-checkout-main h2 {
  font-size: 22px;
  margin-bottom: 8px;
  color: #f5f5f5;
}
.iget-checkout-main .section-desc {
  color: #888;
  font-size: 14px;
  margin-bottom: 20px;
}
.iget-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-bottom: 12px;
}
.iget-form-group { margin-bottom: 12px; }
.iget-form-group label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: #aaa;
  margin-bottom: 6px;
}
.iget-express-checkout {
  margin-bottom: 28px;
  padding-bottom: 28px;
  border-bottom: 1px solid #222;
}
.iget-express-checkout .divider {
  text-align: center;
  color: #666;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 16px 0;
  position: relative;
}
.iget-express-checkout .divider::before,
.iget-express-checkout .divider::after {
  content: '';
  position: absolute;
  top: 50%;
  width: 40%;
  height: 1px;
  background: #222;
}
.iget-express-checkout .divider::before { left: 0; }
.iget-express-checkout .divider::after { right: 0; }
.iget-express-btn {
  display: block;
  width: 100%;
  padding: 12px;
  border-radius: 10px;
  font-size: 14px;
  font-weight: 600;
  text-align: center;
  margin-bottom: 10px;
  border: none;
  cursor: pointer;
  transition: opacity .2s;
}
.iget-express-btn:hover { opacity: 0.9; }
.iget-express-btn.apple { background: #000; color: #fff; border: 1px solid #333; }
.iget-express-btn.google { background: #fff; color: #333; }
.iget-express-btn.link { background: #00C853; color: #fff; }

.iget-order-summary {
  background: linear-gradient(145deg, #1e1736, #1a1230);
  border: 1px solid rgba(167,139,250,0.2);
  border-radius: 16px;
  padding: 24px;
  height: fit-content;
  position: sticky;
  top: 80px;
}
.iget-order-summary h3 {
  font-size: 18px;
  margin-bottom: 16px;
  color: #a78bfa;
}
.iget-order-item {
  display: flex;
  gap: 12px;
  padding: 12px 0;
  border-bottom: 1px solid #222;
}
.iget-order-item img {
  width: 60px;
  height: 60px;
  object-fit: cover;
  border-radius: 8px;
}
.iget-order-item-info { flex: 1; }
.iget-order-item-title {
  font-size: 13px;
  font-weight: 600;
  color: #e8e8e8;
  line-height: 1.3;
}
.iget-order-item-price {
  font-size: 14px;
  font-weight: 700;
  color: #a78bfa;
  white-space: nowrap;
}
.iget-order-totals { margin-top: 16px; }
.iget-order-total-row {
  display: flex;
  justify-content: space-between;
  padding: 6px 0;
  font-size: 14px;
  color: #aaa;
}
.iget-order-total-row.final {
  border-top: 1px solid #333;
  margin-top: 8px;
  padding-top: 12px;
  font-size: 18px;
  font-weight: 700;
  color: #f5f5f5;
}
.iget-order-total-row.final .value { color: #a78bfa; }

.iget-why-us {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid #222;
}
.iget-why-us h4 {
  font-size: 16px;
  margin-bottom: 16px;
  color: #a78bfa;
}
.iget-why-item {
  display: flex;
  gap: 12px;
  margin-bottom: 14px;
}
.iget-why-item .icon { font-size: 20px; flex-shrink: 0; }
.iget-why-item .text h5 { font-size: 14px; color: #e8e8e8; margin-bottom: 2px; }
.iget-why-item .text p { font-size: 12px; color: #888; line-height: 1.4; }

.iget-pay-now {
  width: 100%;
  padding: 16px;
  background: linear-gradient(135deg, #a78bfa, #7c3aed);
  color: #0f0a1e;
  border: none;
  border-radius: 12px;
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  cursor: pointer;
  margin-top: 20px;
  transition: all .2s;
  box-shadow: 0 4px 20px rgba(167,139,250,0.3);
}
.iget-pay-now:hover {
  box-shadow: 0 6px 28px rgba(167,139,250,0.5);
  transform: translateY(-2px);
}

/* ========== Wishlist Page ========== */
.wishlist-empty {
  text-align: center;
  padding: 80px 20px;
  color: #888;
}
.wishlist-empty .icon { font-size: 56px; margin-bottom: 20px; }

/* ========== Responsive ========== */
@media (max-width: 768px) {
  .main-nav { display: none; }
  .hero { padding: 48px 16px; }
  .section { padding: 36px 16px; }
  .products-grid, .woocommerce .products {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
  .product-card .product-info { padding: 12px; }
  .product-card .product-title { font-size: 13px; min-height: 32px; }
  .product-card .price-now { font-size: 15px; }
  .trust-bar-inner { gap: 16px; }
  .trust-item { font-size: 11px; }
  .whatsapp-float { bottom: 76px; right: 12px; width: 48px; height: 48px; }
  .iget-checkout-layout {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .iget-order-summary { position: static; }
  .age-verification-modal { padding: 32px 24px; }
  .age-verification-text { font-size: 14px; letter-spacing: 1px; }
  .announcement-bar p { font-size: 11px; letter-spacing: 1px; }
}
@media (min-width: 769px) {
  .bottom-nav { display: none; }
  body { padding-bottom: 0; }
  .site-footer { padding-bottom: 48px; }
}

/* ========== Utilities ========== */
.container { max-width: 1200px; margin: 0 auto; padding: 0 20px; }
.text-center { text-align: center; }
.mt-20 { margin-top: 20px; }
.mb-20 { margin-bottom: 20px; }


/* =========================================================
   V3 POLISH — Aurora / Magic UI + Age Gate + Checkout
   ========================================================= */
:root{
  --gold:#a78bfa;
  --gold2:#c4b5fd;
  --violet:#a855f7;
  --cyan:#22d3ee;
  --pink:#f472b6;
  --bg:#0d0820;
}
body{background:radial-gradient(circle at 15% 10%,rgba(168,85,247,.10),transparent 25%),radial-gradient(circle at 85% 20%,rgba(34,211,238,.08),transparent 24%),#0d0820;}
body::after{
 content:'';position:fixed;inset:-20%;pointer-events:none;z-index:-2;opacity:.55;
 background:conic-gradient(from 0deg at 50% 50%,rgba(168,85,247,.08),rgba(34,211,238,.04),rgba(244,114,182,.05),rgba(124,58,237,.06),rgba(168,85,247,.08));
 filter:blur(70px);animation:auroraSpin 24s linear infinite;
}
@keyframes auroraSpin{to{transform:rotate(360deg) scale(1.04)}}
.announcement-bar{position:sticky;top:0;z-index:1100;background:linear-gradient(90deg,#0d0820,#151017,#0d0820);border-bottom:1px solid rgba(124,58,237,.30);box-shadow:0 8px 30px rgba(0,0,0,.25)}
.announcement-bar p{font-size:12px;letter-spacing:1.7px}
.site-header{top:39px;z-index:1090;border-bottom:1px solid rgba(255,255,255,.05);background:rgba(7,7,10,.84)}
.hero{background:radial-gradient(circle at 50% 25%,rgba(124,58,237,.14),transparent 35%),radial-gradient(circle at 15% 70%,rgba(168,85,247,.12),transparent 30%),radial-gradient(circle at 85% 70%,rgba(34,211,238,.09),transparent 28%),linear-gradient(180deg,#111016 0%,#0d0820 100%)}
.hero::after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent 0%,rgba(255,255,255,.035) 48%,transparent 58%);transform:translateX(-100%);animation:magicSweep 7s ease-in-out infinite;pointer-events:none}
@keyframes magicSweep{0%,55%{transform:translateX(-100%)}75%,100%{transform:translateX(100%)}}
.btn,.hero .btn,.iget-pay-now{position:relative;overflow:hidden}
.btn::after,.hero .btn::after,.iget-pay-now::after{content:'';position:absolute;top:-120%;left:-20%;width:35%;height:350%;transform:rotate(22deg);background:rgba(255,255,255,.23);filter:blur(8px);animation:buttonGlint 4.5s ease-in-out infinite;pointer-events:none}
@keyframes buttonGlint{0%,62%{left:-40%;opacity:0}70%{opacity:1}88%,100%{left:120%;opacity:0}}
.product-card,.products-grid li,.woocommerce ul.products li.product{position:relative;isolation:isolate}
.product-card::before,.woocommerce ul.products li.product::before{content:'';position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:conic-gradient(from 90deg,rgba(124,58,237,.0),rgba(124,58,237,.42),rgba(168,85,247,.24),rgba(34,211,238,.20),rgba(124,58,237,.0));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s;pointer-events:none}
.product-card:hover::before,.woocommerce ul.products li.product:hover::before{opacity:1}
.particle{z-index:2;filter:blur(.1px);mix-blend-mode:screen}
.magic-spark{position:fixed;width:3px;height:3px;border-radius:50%;pointer-events:none;z-index:3;background:var(--gold);box-shadow:0 0 12px currentColor,0 0 24px currentColor;animation:sparkRise linear forwards}
@keyframes sparkRise{0%{opacity:0;transform:translate3d(0,25px,0) scale(.4)}15%{opacity:1}100%{opacity:0;transform:translate3d(var(--dx),-110vh,0) scale(1.3)}}

/* Age gate closely follows supplied reference: dark, centered, gold-accented */
.age-verification-overlay{background:rgba(0,0,0,.965);backdrop-filter:blur(12px)}
.age-verification-modal{max-width:560px;padding:38px 34px 30px;border-radius:4px;background:linear-gradient(180deg,#060608,#020203);border:1px solid rgba(124,58,237,.12);box-shadow:0 0 90px rgba(0,0,0,.65),0 0 40px rgba(124,58,237,.06)}
.age-verification-modal::before{border-radius:5px;background:linear-gradient(120deg,rgba(124,58,237,.0),rgba(124,58,237,.5),rgba(168,85,247,.18),rgba(34,211,238,.16),rgba(124,58,237,.0));animation:ageBorder 6s linear infinite}
@keyframes ageBorder{to{transform:rotate(360deg)}}
.age-verification-logo{font-size:30px;margin-bottom:24px;letter-spacing:-.5px}
.age-18-badge{width:92px;height:92px;margin-bottom:32px}
.age-verification-text{max-width:430px;margin:0 auto 28px;font-size:15px;color:#7f8088;letter-spacing:4px;line-height:2.05}
.age-verification-question{font-size:22px;margin-bottom:28px}
.age-verification-buttons{gap:22px}
.age-btn{border-radius:0;padding:18px 20px}
.age-btn-yes{box-shadow:0 12px 35px rgba(124,58,237,.16)}
.age-btn-leave{background:transparent}
.age-verification-footer{max-width:460px;margin:28px auto 0;color:#575861}
.age-verification-footer a{text-decoration:underline;text-underline-offset:4px}

/* Top legal/context line */
.site-context-note{background:rgba(11,11,14,.88);border-bottom:1px solid rgba(124,58,237,.12);color:#a2a2aa;text-align:center;padding:9px 16px;font-size:11px;letter-spacing:1px}
.site-context-note strong{color:var(--gold)}

/* Checkout V3 */
.iget-checkout-wrap{max-width:1120px;padding-top:28px}
.iget-checkout-header{padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.06)}
.iget-checkout-layout{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:start;gap:48px}
.iget-checkout-main{min-width:0}
.iget-checkout-main h2{font-size:21px;letter-spacing:-.2px}
.iget-form-group input,.iget-form-group select,.iget-form-group textarea{background:#0d0d11;border-color:#24242b;border-radius:12px}
.iget-form-group input:focus,.iget-form-group select:focus{border-color:rgba(124,58,237,.65);box-shadow:0 0 0 3px rgba(124,58,237,.08),0 0 30px rgba(168,85,247,.08)}
.iget-express-checkout{background:linear-gradient(145deg,#111017,#0a0a0d);border:1px solid rgba(168,85,247,.16);padding:20px;border-radius:16px}
.iget-order-summary{background:linear-gradient(145deg,rgba(17,16,23,.96),rgba(8,8,11,.96));border-color:rgba(124,58,237,.2);box-shadow:0 18px 50px rgba(0,0,0,.25)}
.iget-regulatory-note{margin:18px 0;padding:14px 15px;border-left:2px solid var(--gold);border-radius:10px;background:rgba(124,58,237,.05);color:#9898a2;font-size:12px;line-height:1.65}
.iget-enquiry-btn{display:block;width:100%;margin-top:18px;padding:16px 20px;border:0;border-radius:12px;background:linear-gradient(135deg,#a78bfa,#7c3aed);color:#0d0820;font-weight:800;letter-spacing:1px;cursor:pointer}
.iget-payment-disabled{padding:18px;border:1px dashed rgba(255,255,255,.12);border-radius:14px;background:#0b0b0e;color:#85858e;font-size:13px;line-height:1.65}

@media (max-width:768px){
 .announcement-bar{top:0}.site-header{top:38px}.announcement-bar p{font-size:10px;letter-spacing:1px}
 .age-verification-modal{width:calc(100% - 24px);padding:34px 18px 24px}.age-verification-text{font-size:12px;letter-spacing:2.5px}.age-verification-question{font-size:20px}.age-verification-buttons{flex-direction:row;gap:12px}.age-btn{padding:16px 10px;font-size:13px}
 .site-context-note{font-size:10px;padding:8px 12px}
 .iget-checkout-wrap{padding:20px 14px 110px}.iget-checkout-layout{grid-template-columns:1fr;gap:20px}.iget-order-summary{position:static}.iget-form-row{grid-template-columns:1fr 1fr}.iget-checkout-header{margin-bottom:20px}
}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}

/* ============================================================
   REFERENCE-SITE REDESIGN (ref- prefix) v3.2
   ============================================================ */
.ref-section{max-width:1200px;margin:0 auto;padding:56px 20px;}
.ref-label{display:block;font-size:12px;letter-spacing:4px;color:#a78bfa;text-transform:uppercase;margin-bottom:14px;font-weight:600;}
.ref-h2{font-size:clamp(24px,4vw,38px);font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:1px;line-height:1.2;margin:0 0 12px;text-align:center;}
.gold-text{color:#a78bfa;}
.ref-eyebrow-sub{text-align:center;color:#888;font-size:13px;letter-spacing:2px;text-transform:uppercase;margin:0 0 32px;}

/* Hero */
.ref-hero{position:relative;min-height:420px;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;
  background:radial-gradient(ellipse at center,#15102a 0%,#0f0a1e 70%);border-bottom:1px solid rgba(167,139,250,.15);}
.ref-hero-bg{position:absolute;inset:0;background:
  radial-gradient(circle at 20% 50%,rgba(167,139,250,.12),transparent 40%),
  radial-gradient(circle at 80% 50%,rgba(168,85,247,.1),transparent 40%);}
.ref-hero-content{position:relative;z-index:2;padding:40px 20px;}
.ref-hero-badge{display:inline-block;padding:6px 16px;border:1px solid rgba(167,139,250,.5);border-radius:20px;font-size:11px;letter-spacing:3px;color:#a78bfa;margin-bottom:20px;}
.ref-hero-title{font-size:clamp(40px,8vw,72px);font-weight:900;color:#fff;line-height:1;margin:0 0 16px;text-transform:uppercase;letter-spacing:2px;}
.ref-hero-sub{color:#aaa;font-size:16px;margin:0 0 28px;letter-spacing:1px;}
.ref-hero-btn{display:inline-block;padding:15px 44px;background:linear-gradient(135deg,#a78bfa,#7c3aed);color:#0f0a1e;font-weight:800;font-size:14px;letter-spacing:2px;border-radius:30px;text-transform:uppercase;transition:all .3s;box-shadow:0 6px 24px rgba(167,139,250,.3);}
.ref-hero-btn:hover{transform:translateY(-2px);box-shadow:0 10px 32px rgba(167,139,250,.45);color:#0f0a1e;}

/* Source heading */
.ref-source{text-align:center;}
.ref-cat-btns{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:560px;margin:0 auto 28px;}
.ref-cat-btn{display:block;padding:18px 12px;border:1px solid rgba(167,139,250,.25);border-radius:14px;background:#1c1530;color:#ddd;font-size:13px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;transition:all .25s;text-align:center;}
.ref-cat-btn:hover{border-color:#a78bfa;background:rgba(167,139,250,.08);color:#a78bfa;}
.ref-cat-gold{background:linear-gradient(135deg,#a78bfa,#7c3aed);color:#0f0a1e;border-color:transparent;}
.ref-cat-gold:hover{background:linear-gradient(135deg,#818cf8,#7c3aed);color:#0f0a1e;}
.ref-trust-tags{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;max-width:560px;margin:0 auto 20px;}
.ref-trust-tag{padding:14px;border:1px solid rgba(255,255,255,.08);border-radius:12px;color:#bbb;font-size:13px;display:flex;align-items:center;gap:8px;justify-content:center;}
.ref-trust-tag span{color:#a78bfa;}
.ref-disclaimer{font-size:11px;color:#666;max-width:600px;margin:0 auto;line-height:1.6;}

/* Feature banner */
.ref-feature-banner{border-top:1px solid rgba(167,139,250,.12);border-bottom:1px solid rgba(167,139,250,.12);
  background:linear-gradient(135deg,#15102a,#0f0a1e);padding:48px 20px;text-align:center;}
.ref-feature-inner{max-width:1200px;margin:0 auto;}
.ref-feature-title{font-size:clamp(26px,5vw,40px);font-weight:800;color:#fff;text-transform:uppercase;margin:8px 0 24px;}
.ref-outline-btn{display:inline-block;padding:13px 32px;border:2px solid #a78bfa;border-radius:30px;color:#a78bfa;font-weight:700;font-size:13px;letter-spacing:2px;text-transform:uppercase;transition:all .25s;}
.ref-outline-btn:hover{background:#a78bfa;color:#0f0a1e;}

/* Product rows */
.ref-row-title{font-size:clamp(22px,4vw,32px);font-weight:800;color:#fff;text-transform:uppercase;margin:0 0 10px;line-height:1.25;}
.ref-row-link{display:inline-block;color:#a78bfa;font-size:13px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin-bottom:28px;border-bottom:1px solid rgba(167,139,250,.4);padding-bottom:3px;}
.ref-row-link:hover{color:#c4b5fd;}

/* Product grid + card (matches reference) */
.ref-product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.ref-product-card{display:flex;flex-direction:column;}
.ref-product-thumb{position:relative;aspect-ratio:1/1;border-radius:18px;overflow:hidden;display:flex;align-items:center;justify-content:center;margin-bottom:12px;}
.ref-product-img{width:72%!important;height:auto!important;max-height:80%;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(0,0,0,.35));}
.ref-product-thumb img{width:72%;height:auto;max-height:80%;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(0,0,0,.35));}
.ref-sale-tag{position:absolute;top:10px;left:10px;background:#e11d48;color:#fff;font-size:10px;font-weight:800;letter-spacing:1px;padding:4px 9px;border-radius:6px;z-index:2;}
.ref-product-name{color:#eee;font-size:13px;font-weight:600;line-height:1.35;margin-bottom:6px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;}
.ref-product-name:hover{color:#a78bfa;}
.ref-product-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.ref-product-brand{font-size:11px;color:#777;letter-spacing:1px;text-transform:uppercase;}
.ref-product-price{font-size:16px;font-weight:800;color:#a78bfa;white-space:nowrap;}

/* Coming soon */
.ref-coming-soon{border:1px solid rgba(167,139,250,.2);border-radius:16px;padding:32px 24px;}
.ref-coming-text{color:#999;font-size:15px;line-height:1.7;margin:0 0 18px;font-style:italic;}

/* Genuine banner */
.ref-genuine-banner{background:linear-gradient(135deg,#1a1508,#0d0b05);border-top:1px solid rgba(167,139,250,.15);border-bottom:1px solid rgba(167,139,250,.15);padding:56px 20px;text-align:center;}
.ref-genuine-title{font-size:clamp(22px,4vw,34px);font-weight:800;color:#fff;text-transform:uppercase;margin:0 0 16px;line-height:1.3;}
.ref-genuine-text{color:#999;font-size:15px;max-width:640px;margin:0 auto;line-height:1.7;}

/* Range cards */
.ref-range-list{display:flex;flex-direction:column;gap:16px;margin-top:32px;}
.ref-range-card{position:relative;display:block;background:linear-gradient(145deg,#1e1736,#1a1230);border:1px solid rgba(167,139,250,.15);border-radius:18px;padding:28px;overflow:hidden;transition:all .3s;}
.ref-range-card:hover{border-color:rgba(167,139,250,.4);transform:translateY(-2px);}
.ref-range-gold{background:linear-gradient(135deg,rgba(167,139,250,.12),#1a1230);border-color:rgba(167,139,250,.35);}
.ref-range-card h4{font-size:26px;font-weight:800;color:#fff;text-transform:uppercase;margin:8px 0;}
.ref-range-tag{display:block;font-size:11px;letter-spacing:2px;color:#888;text-transform:uppercase;margin-bottom:4px;}
.ref-range-badge{position:absolute;top:20px;right:20px;background:rgba(167,139,250,.15);color:#a78bfa;font-size:10px;font-weight:700;letter-spacing:1px;padding:5px 10px;border-radius:12px;}
.ref-range-card p{color:#888;font-size:14px;margin:8px 0 14px;}
.ref-range-link{color:#a78bfa;font-size:12px;font-weight:700;letter-spacing:2px;}
.ref-range-arrow{position:absolute;right:24px;bottom:24px;width:44px;height:44px;background:#a78bfa;color:#0f0a1e;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;}

/* Collection links */
.ref-collection-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:20px;}
.ref-collection-links a{color:#aaa;font-size:15px;border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:2px;}
.ref-collection-links a:hover{color:#a78bfa;border-color:#a78bfa;}

/* FAQ */
.ref-faq-list{display:flex;flex-direction:column;gap:12px;margin-top:28px;}
.ref-faq-item{background:#1c1530;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:0;overflow:hidden;}
.ref-faq-item summary{padding:20px 22px;font-size:14px;font-weight:700;color:#eee;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;text-transform:uppercase;letter-spacing:.5px;}
.ref-faq-item summary::-webkit-details-marker{display:none;}
.ref-faq-plus{color:#a78bfa;font-size:22px;font-weight:400;flex-shrink:0;}
.ref-faq-item[open] .ref-faq-plus{transform:rotate(45deg);}
.ref-faq-item p{padding:0 22px 20px;color:#999;font-size:14px;line-height:1.7;margin:0;}

/* Wholesale */
.ref-wholesale{text-align:center;padding:64px 20px;background:linear-gradient(180deg,#0f0a1e,#15102a);}
.ref-wholesale-btn{margin-top:24px;}

/* Age bar */
.ref-age-bar{display:flex;align-items:center;justify-content:center;gap:12px;padding:18px 20px;border-top:1px solid rgba(255,255,255,.06);color:#888;font-size:11px;letter-spacing:2px;text-transform:uppercase;text-align:center;}
.ref-age-icon{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid rgba(167,139,250,.4);border-radius:50%;color:#a78bfa;font-weight:800;font-size:12px;flex-shrink:0;}

/* Desktop */
@media(min-width:768px){
  .ref-product-grid{grid-template-columns:repeat(4,1fr);gap:24px;}
  .ref-cat-btns{grid-template-columns:repeat(4,1fr);max-width:900px;}
  .ref-trust-tags{grid-template-columns:repeat(4,1fr);max-width:1000px;}
  .ref-hero{min-height:520px;}
  .ref-range-list{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
  .ref-range-gold{grid-column:1/-1;}
}

/* ============================================================
   BOSS6688 PURPLE MAGIC OVERRIDES v4.0
   ============================================================ */

/* Rotating announcement bar */
.announcement-bar{overflow:hidden;height:38px;display:flex;align-items:center;position:relative;}
.announcement-track{display:flex;flex-direction:column;width:100%;animation:annRotate 12s infinite;}
.announcement-track p{margin:0;height:38px;line-height:38px;white-space:nowrap;text-align:center;flex-shrink:0;}
@keyframes annRotate{
  0%,28%{transform:translateY(0);}
  33%,61%{transform:translateY(-38px);}
  66%,94%{transform:translateY(-76px);}
  100%{transform:translateY(0);}
}
@media(max-width:768px){.announcement-bar{height:32px}.announcement-track p{height:32px;line-height:32px;font-size:10px}
@keyframes annRotate{0%,28%{transform:translateY(0)}33%,61%{transform:translateY(-32px)}66%,94%{transform:translateY(-64px)}100%{transform:translateY(0)}}}

/* Age modal — purple magic */
.age-verification-overlay{background:radial-gradient(ellipse at center,rgba(30,16,60,.97) 0%,rgba(8,4,20,.99) 100%)!important;backdrop-filter:blur(16px);}
.age-verification-modal{
  border-radius:24px!important;
  background:linear-gradient(160deg,#1e1440 0%,#140b2e 50%,#0d0820 100%)!important;
  border:1px solid rgba(167,139,250,.3)!important;
  box-shadow:0 0 100px rgba(124,58,237,.25),0 0 50px rgba(167,139,250,.12),inset 0 1px 0 rgba(167,139,250,.15)!important;
  position:relative;overflow:hidden;
}
.age-verification-modal::after{
  content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;
  background:radial-gradient(circle at 30% 20%,rgba(167,139,250,.08),transparent 40%),
             radial-gradient(circle at 70% 80%,rgba(34,211,238,.06),transparent 40%);
  pointer-events:none;
}
.age-verification-modal>*{position:relative;z-index:2;}
.age-verification-logo{background:linear-gradient(135deg,#c4b5fd,#a78bfa,#818cf8);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-weight:900;}
.age-verification-logo span{-webkit-text-fill-color:transparent;}
.age-18-badge{
  border:2px solid #a78bfa!important;
  background:radial-gradient(circle,rgba(167,139,250,.15),transparent)!important;
  box-shadow:0 0 30px rgba(167,139,250,.3),inset 0 0 20px rgba(167,139,250,.1)!important;
  color:#c4b5fd!important;
}
.age-btn-yes{
  background:linear-gradient(135deg,#a78bfa,#7c3aed)!important;
  color:#fff!important;border-radius:14px!important;
  box-shadow:0 8px 30px rgba(124,58,237,.4)!important;
  transition:all .3s;
}
.age-btn-yes:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(124,58,237,.55)!important;}
.age-btn-leave{border:1px solid rgba(167,139,250,.3)!important;color:#a78bfa!important;border-radius:14px!important;}
.age-verification-footer a{color:#a78bfa!important;}

/* Hero purple glow */
.ref-hero{background:radial-gradient(ellipse at center,#1a1040 0%,#0d0820 70%)!important;border-bottom:1px solid rgba(167,139,250,.15)!important;}
.ref-hero-bg{background:
  radial-gradient(circle at 20% 50%,rgba(167,139,250,.15),transparent 40%),
  radial-gradient(circle at 80% 50%,rgba(34,211,238,.1),transparent 40%)!important;}
.ref-hero-btn{background:linear-gradient(135deg,#a78bfa,#7c3aed)!important;color:#fff!important;box-shadow:0 6px 24px rgba(124,58,237,.35)!important;}
.ref-hero-btn:hover{box-shadow:0 10px 32px rgba(124,58,237,.5)!important;}
.ref-hero-badge{border-color:rgba(167,139,250,.5)!important;color:#c4b5fd!important;}

/* Category buttons purple */
.ref-cat-btn{border-color:rgba(167,139,250,.25)!important;background:#1c1530!important;}
.ref-cat-btn:hover{border-color:#a78bfa!important;background:rgba(167,139,250,.1)!important;color:#c4b5fd!important;}
.ref-cat-gold{background:linear-gradient(135deg,#a78bfa,#7c3aed)!important;color:#fff!important;border-color:transparent!important;}
.ref-cat-gold:hover{background:linear-gradient(135deg,#b79bff,#8b5cf6)!important;color:#fff!important;}

/* Product card purple tint */
.ref-product-thumb{box-shadow:0 4px 20px rgba(124,58,237,.12);}
.ref-product-price{color:#a78bfa!important;}
.ref-outline-btn{border-color:#a78bfa!important;color:#c4b5fd!important;}
.ref-outline-btn:hover{background:#a78bfa!important;color:#fff!important;}

/* Range cards purple */
.ref-range-card{border-color:rgba(167,139,250,.15)!important;background:linear-gradient(145deg,#1c1530,#14102a)!important;}
.ref-range-card:hover{border-color:rgba(167,139,250,.4)!important;}
.ref-range-gold{background:linear-gradient(135deg,rgba(167,139,250,.12),#14102a)!important;border-color:rgba(167,139,250,.35)!important;}
.ref-range-arrow{background:#a78bfa!important;}
.ref-range-badge{background:rgba(167,139,250,.15)!important;color:#c4b5fd!important;}
.ref-range-link{color:#a78bfa!important;}

/* Feature/genuine banners */
.ref-feature-banner{background:linear-gradient(135deg,#1a1040,#0d0820)!important;border-color:rgba(167,139,250,.12)!important;}
.ref-genuine-banner{background:linear-gradient(135deg,#1a1040,#14102a)!important;border-color:rgba(167,139,250,.15)!important;}
.ref-wholesale{background:linear-gradient(180deg,#0d0820,#1a1040)!important;}

/* FAQ purple */
.ref-faq-item{background:#1c1530!important;border-color:rgba(167,139,250,.1)!important;}
.ref-faq-item summary{color:#e8e8f0!important;}
.ref-faq-plus{color:#a78bfa!important;}

/* Bottom nav purple accent */
.bottom-nav-item .nav-label{color:#888;}
.bottom-nav-item.shop .nav-label{color:#a78bfa;}
.bottom-nav{border-top:1px solid rgba(167,139,250,.2)!important;background:rgba(13,8,32,.97)!important;backdrop-filter:blur(16px);}

/* Header */
.site-header{background:rgba(13,8,32,.92)!important;border-bottom:1px solid rgba(167,139,250,.15)!important;}
.site-logo span{background:linear-gradient(135deg,#c4b5fd,#a78bfa);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;}

/* Footer */
.site-footer{background:#0d0820!important;border-top:1px solid rgba(167,139,250,.12)!important;}
.site-footer h4{color:#c4b5fd!important;}
.site-footer a:hover{color:#a78bfa!important;}
