/* ==== v45 FA neutralizer: first-stylesheet @font-face wins over all.min.css ==== */
@font-face { font-family: 'Font Awesome 6 Free'; font-style: normal; font-weight: 900; font-display: block;
  src: url(data:font/woff2;base64,d09GMgABAAAAAAHsAAoAAAAABCQAAAGjAwUFAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAANMqBIAE2AiQDCMsGBCAFgxgHIBtzAyCuCngytIshdCKUT50wJl5KRRrhjNmPh6+5fH83uRIrHg8oWTHpzhldcqhkhT1XMq7Ck8vQOk8lfYI8KBRVCI0tD6KdfmGmnmTSF/MlLPNk1QhgoMCqdj4Ne8EHb2oiF694iuk5l5pwfe8TRVAaZoGFmHqTGEFezfaeLihSzvdKYjvqgLX5rR/Vj6QlA9ANAFg9O9rx+t/+346vCvFlCxAQq/GKMQAJGf2wQD9iDFAoBP/bVYXHAgFKquNIsx4UTgHEwFZjs3Tk05bBQ0PnBB6A6Jtm2LIecgHWOReLjIl3ub6GG9fXYDAliZY0WSHFP7SJK6sVtBL/PYJclhbOO+h3LTzaEvjmzfFktZIe4gvNEgg+S0/XBuiOEO+nuCYagH0QKV4MAAiEAABNLmFRtGAeoEyY5TNJqzqTLTn0CxtTuvL/bzXj0evq9g6eTpbmFi5osjEFrWVv54JWdTd1trc1lUJamEicTE2P2vY2liak7fS/agiZAiZXz9TJ2dLeDi0S8ZhsjkTA43AFaHKx4e2idYouoiipZVDD57GN8VgAAAAA) format('woff2'); }
/* ==== end v45 ==== */

:root {
  --bg: #0a0a0a;
  --bg2: #111111;
  --card-bg: rgba(255, 255, 255, 0.04);
  --card-border: rgba(255, 255, 255, 0.12);
  --card-hover: rgba(255, 255, 255, 0.06);
  --pink: #ffffff;
  --pink2: #000000;
  --cyan: #ffffff;
  --text: #f0f0f0;
  --dim: #888888;
  --dim2: #666666;
  --green: #00FF88;
  --red: #FF4444;
}
/* ===== TITLES: PINK WAVE EFFECT ===== */
.header-logo span, .nav-link,
.section-title, .step-card h3,
.faq-item h3, .cta-title,
.card-title, .hero-title,
.text-cyan, .text-pink,
.hero-subtitle, .stat-number,
.card-price, .policy-price {
  color: var(--text);
  background: linear-gradient(90deg, #ffffff 0%, #9cc3ff 25%, #3b82f6 50%, #9cc3ff 75%, #ffffff 100%);
  background-size: 300% 300%;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: pinkWave 5s ease-in-out infinite;
  text-shadow: 0 0 10px rgba(255,255,255,0.3);
}
.product-wrapper .fs-5,
.product-wrapper .variant .price,
.cart-price-text {
  color: #ffffff;
  font-weight: 700;
  text-shadow: 0 1px 3px rgba(0,0,0,0.3);
}
/* ===== SECTION BADGES: WHITE ONLY ===== */
.section-badge, .hero-badge {
  color: var(--text); font-weight: 700;
}
/* ===== OTHER IMPORTANT TEXT: GLOW ONLY ===== */
.btn-login,
.trust-card h3, .policy-card h3,
.review-name, .card-tag, .card-buy {
  color: var(--text); animation: textGlow 3s ease-in-out infinite;
}
.hero-badge, .section-badge, .section-title { font-weight: 700; }
@keyframes pinkWave { 0%,100% { background-position: 0% 50%; } 50% { background-position: 100% 50%; } }
@keyframes textGlow { 0%,100% { text-shadow: 0 0 4px rgba(255,255,255,0.15); } 50% { text-shadow: 0 0 12px rgba(255,255,255,0.35); } }
.atlas-page {
  background: #000000 !important;
  font-family: 'Poppins', sans-serif !important;
  color: var(--text) !important;
  overflow-x: hidden;
  min-height: 100vh;
  position: relative;
}
/* ===== HEADER ===== */
header {
  position: fixed; top: 0; left: 0; right: 0; z-index: 1000;
  padding: 14px 0;
  transition: background 0.6s, backdrop-filter 0.6s;
}
header.background-opaque {
  background: rgba(0, 0, 0, 0.85);
  backdrop-filter: blur(16px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.header-inner {
  max-width: 1200px; margin: 0 auto; padding: 0 24px;
  display: flex; align-items: center; justify-content: space-between;
}
.header-logo {
  display: flex; align-items: center; gap: 10px;
  text-decoration: none; font-family: 'Fredoka One', cursive;
  font-size: 20px; letter-spacing: 2px; transition: opacity 0.3s;
}
.header-logo:hover { opacity: 0.85; }
.header-logo img { width: 36px; height: 36px; border-radius: 50%; }
.hamburger {
  display: none;
  flex-direction: column;
  gap: 5px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 4px;
  z-index: 1001;
}
.hamburger span {
  display: block;
  width: 24px;
  height: 2px;
  background: var(--text);
  border-radius: 2px;
  transition: all 0.3s;
}
.hamburger.active span:nth-child(1) { transform: rotate(45deg) translate(5px, 5px); }
.hamburger.active span:nth-child(2) { opacity: 0; }
.hamburger.active span:nth-child(3) { transform: rotate(-45deg) translate(5px, -5px); }
.header-nav {
  display: flex;
  align-items: center;
  gap: 28px;
}
.nav-link {
  text-decoration: none;
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  padding: 4px 0;
  position: relative;
}
.nav-link::after {
  content: ''; position: absolute; left: 0; bottom: -2px;
  width: 0; height: 2px;
  background: var(--pink);
  transition: width 0.3s;
  box-shadow: 0 0 6px var(--pink);
}
.nav-link:hover { opacity: 0.8; }
.nav-link:hover::after { width: 100%; }
/* ===== PRODUCTS DROPDOWN ===== */
.nav-dropdown { position: relative; }
.nav-dropdown > .dd-toggle { display: flex; align-items: center; gap: 6px; }
.dd-caret { transition: transform 0.25s; }
.nav-dropdown:hover .dd-caret,
.nav-dropdown:focus-within .dd-caret { transform: rotate(180deg); }
.nav-dropdown-panel {
  position: absolute; top: calc(100% + 16px); left: 50%;
  transform: translateX(-50%) translateY(10px);
  background: rgba(10, 10, 14, 0.97);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 12px; padding: 8px; min-width: 240px;
  opacity: 0; visibility: hidden; pointer-events: none;
  transition: all 0.25s ease;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.55);
  z-index: 1100;
}
.nav-dropdown:hover .nav-dropdown-panel,
.nav-dropdown:focus-within .nav-dropdown-panel {
  opacity: 1; visibility: visible; pointer-events: auto;
  transform: translateX(-50%) translateY(0);
}
.nav-dropdown-panel::before {
  content: ''; position: absolute; top: -14px; left: 0; right: 0; height: 14px;
}
.dd-item {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 14px; border-radius: 8px;
  color: #eeeeee; text-decoration: none;
  font-family: 'Poppins', sans-serif;
  font-size: 13px; font-weight: 600; letter-spacing: 0.5px;
  transition: all 0.2s;
}
.dd-item:hover { background: rgba(255, 255, 255, 0.08); color: #ffffff; }
.dd-all {
  color: #ffffff;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px 8px 4px 4px;
  margin-bottom: 6px; padding-bottom: 12px;
}
.header-actions { display: flex; align-items: center; gap: 8px; }
.btn-login {
  display: flex; align-items: center; gap: 6px;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.2);
  font-family: 'Poppins', sans-serif; font-size: 13px; font-weight: 700;
  padding: 8px 16px; border-radius: 8px; cursor: pointer;
  transition: all 0.3s;
}
.btn-login svg { color: #b8a9d4; flex-shrink: 0; }
.btn-login:hover {
  border-color: var(--pink);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.1), inset 0 0 20px rgba(255, 255, 255, 0.02);
}
.btn-login:hover svg { color: var(--pink); }

/* ===== SELLAUTH DEFAULT NAVBAR ===== */
.navbar {
  background: linear-gradient(135deg, rgba(13,5,32,0.95), rgba(26,10,48,0.95)) !important;
  backdrop-filter: blur(10px);
  border-bottom: 1px solid rgba(255,255,255,0.1) !important;
}
.navbar .navbar-brand span {
  color: var(--text);
  font-family: 'Fredoka One', cursive;
  font-size: 18px;
  letter-spacing: 2px;
}
.navbar .navbar-brand img { max-height: 32px; }
.navbar .navbar-nav .nav-item a.nav-link {
  color: var(--dim) !important;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 1px;
  transition: color 0.3s;
}
.navbar .navbar-nav .nav-item a.nav-link:hover,
.navbar .navbar-nav .nav-item a.nav-link.active {
  color: var(--pink) !important;
}
.navbar .btn-outline-primary {
  border-color: rgba(255,255,255,0.3) !important;
  color: var(--text) !important;
}
.navbar .btn-outline-primary:hover {
  background: rgba(255,255,255,0.15) !important;
  border-color: var(--pink) !important;
}
.navbar .cart .btn .count {
  background: var(--pink) !important;
  color: #fff !important;
}
/* ===== SELLAUTH DEFAULT FOOTER ===== */
footer.footer {
  background: linear-gradient(135deg, rgba(13,5,32,0.98), rgba(26,10,48,0.98)) !important;
  border-top: 1px solid rgba(255,255,255,0.1) !important;
}
.footer .logo p { color: var(--text); font-family: 'Fredoka One', cursive; }
.footer h5 { color: var(--pink); font-weight: 700; font-size: 14px; text-transform: uppercase; letter-spacing: 2px; }
.footer .nav li a {
  color: var(--dim) !important;
  font-size: 14px;
  transition: color 0.3s;
}
.footer .nav li a:hover { color: var(--pink) !important; }
/* ===== SELLAUTH DEFAULT COMPONENTS ===== */
.component { color: var(--text); padding-top: 56px; }
.component h1, .component h2, .component h3, .component h4, .component h5 { color: var(--text); }
/* Pages without hero need padding-top for fixed header */
.component.py-5-nav { padding-top: calc(56px + 1rem) !important; }

/* Backgrounds */
.bg-gray {
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid rgba(255,255,255,0.08);
}

/* Section titles */
.section-title h1, .section-title h2, .section-title p {
  color: var(--text) !important;
}

/* Form controls */
.form-label {
  color: var(--pink) !important;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.form-control, .form-select {
  background: rgba(255,255,255,0.04) !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
  color: var(--text) !important;
  border-radius: 8px !important;
}
.form-control:focus, .form-select:focus {
  border-color: var(--pink) !important;
  box-shadow: 0 0 0 3px rgba(255,255,255,0.15) !important;
}
.form-control::placeholder {
  color: var(--dim) !important;
  opacity: 0.6;
}

/* Buttons - scoped to our theme only */
.atlas-page .btn-primary {
  background: linear-gradient(135deg, var(--pink), #000000);
  border: none;
  color: #fff;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  border-radius: 50px;
  transition: all 0.3s;
}
.atlas-page .btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 30px rgba(255,255,255,0.3);
}
.atlas-page .btn-outline-primary {
  background: #ffffff !important;
  border: 2px solid #ffffff !important;
  color: #000000 !important;
  font-weight: 600;
  border-radius: 50px;
  transition: all 0.3s;
}
.atlas-page .btn-outline-primary:hover {
  background: #eeeeee !important;
  border-color: #eeeeee !important;
  color: #000000 !important;
}
.atlas-page .btn-outline {
  border: 1px solid rgba(255,255,255,0.1);
  color: var(--dim);
  background: transparent;
  border-radius: 8px;
  font-size: 13px;
  transition: all 0.3s;
}
.atlas-page .btn-outline:hover {
  border-color: var(--pink);
  color: var(--pink);
}

/* Product cards */
/* Cards - scoped */
.atlas-page .card {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 12px;
  transition: all 0.3s;
}
.atlas-page .card:hover {
  border-color: rgba(255,255,255,0.3);
  transform: translateY(-2px);
  box-shadow: 0 8px 30px rgba(255,255,255,0.1);
}
.atlas-page .card .card-title {
  color: var(--text);
  font-family: 'Fredoka One', cursive;
}
.atlas-page .card .card-text {
  color: var(--dim);
}
.atlas-page .card .price {
  color: var(--pink);
  font-weight: 700;
}
.atlas-page .card .text-primary { color: var(--pink); }
.atlas-page .card .overlay .btn-primary { font-size: 12px; padding: 6px 16px; }

/* Text muted - scoped */
.atlas-page .text-muted {
  color: var(--dim);
}

/* Modals - scoped */
.atlas-page .modal-content {
  background: #000000;
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 16px;
}
.atlas-page .modal-header {
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.atlas-page .modal-title {
  color: var(--text);
  font-family: 'Fredoka One', cursive;
}
.atlas-page .btn-close {
  filter: invert(0.8);
  opacity: 0.7;
}

/* Pagination - scoped */
.atlas-page .pagination .page-link {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.12);
  color: var(--text);
}
.atlas-page .pagination .page-link:hover {
  background: rgba(255,255,255,0.1);
  border-color: var(--pink);
}
.atlas-page .pagination .page-item.active .page-link {
  background: var(--pink);
  border-color: var(--pink);
}

/* Stock badges */
.stock-unlimited { color: var(--green); }

/* Customer dashboard sidebar */
.customer-sidebar { background: rgba(255,255,255,0.02) !important; border-right: 1px solid rgba(255,255,255,0.08) !important; }

.btn-cart {
  position: relative; display: flex; align-items: center;
  color: var(--dim); text-decoration: none;
  padding: 8px 10px; border-radius: 8px;
  border: 1px solid transparent; transition: all 0.3s;
}
.btn-cart:hover { color: var(--pink); border-color: rgba(255,255,255,0.2); }
.cart-count {
  position: absolute; top: 0; right: 0;
  background: var(--pink); color: #000;
  font-size: 10px; font-weight: 700;
  min-width: 18px; height: 18px; border-radius: 9px;
  display: flex; align-items: center; justify-content: center;
  padding: 0 4px; border: 2px solid #000000;
}
/* ===== HERO ===== */
.hero {
  min-height: 100vh;
  display: flex; align-items: center; justify-content: center;
  text-align: center; padding: 120px 24px 80px;
  position: relative;
}
.hero-content { max-width: 750px; position: relative; z-index: 1; }
.hero-badge {
  display: inline-block;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.2);
  font-size: 12px; font-weight: 700; letter-spacing: 3px;
  text-transform: uppercase; padding: 8px 20px; border-radius: 20px;
  margin-bottom: 24px;
}
.hero-title {
  font-family: 'Fredoka One', cursive;
  font-size: 110px; line-height: 0.82;
  margin-bottom: 20px; letter-spacing: 10px;
}
.text-cyan, .text-pink {
  -webkit-text-stroke: 2px rgba(255, 255, 255, 0.6);
  text-stroke: 2px rgba(255, 255, 255, 0.6);
  paint-order: stroke fill;
  display: inline-block;
}
.hero-subtitle {
  font-family: 'Poppins', sans-serif;
  font-size: 18px; font-weight: 700;
  color: var(--text);
  margin-bottom: 40px; letter-spacing: 8px; text-transform: uppercase;
  opacity: 0.75;
}
@keyframes textAnim {
  0% { background-position: 200% 50%; }
  50% { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}
.hero-stats {
  display: flex; align-items: center; justify-content: center;
  gap: 36px; margin-bottom: 44px;
}
.stat { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.stat-number {
  font-family: 'Fredoka One', cursive; font-size: 30px;
}
.stat-label {
  font-size: 13px; font-weight: 600; color: var(--dim2);
  text-transform: uppercase; letter-spacing: 3px;
}
.stat-divider {
  width: 1px; height: 44px; background: rgba(255,255,255,0.08);
}
.hero-buttons {
  display: flex; align-items: center; justify-content: center; gap: 16px;
}
/* Default btn-primary for checkout & system pages */
.btn-primary {
  background: #fff !important;
  border: 1px solid #ccc !important;
  color: #000 !important;
}
/* Hero buttons - scoped to atlas pages */
.atlas-page .btn-primary {
  display: inline-flex; align-items: center; gap: 12px;
  background: #fff !important;
  color: #000 !important; text-decoration: none;
  padding: 16px 44px; border-radius: 50px;
  font-family: 'Fredoka One', cursive; font-size: 18px;
  letter-spacing: 2px;
  transition: all 0.3s; position: relative; overflow: hidden;
}
.atlas-page .btn-primary::before {
  content: ''; position: absolute; top: 0; left: -100%;
  width: 100%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(0,0,0,0.1), transparent);
  transition: left 0.6s;
}
.atlas-page .btn-primary:hover::before { left: 100%; }
.atlas-page .btn-primary:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 50px rgba(255, 255, 255, 0.35);
}
.btn-arrow { width: 12px; height: 12px; fill: none; stroke: #000; stroke-width: 2.5; transition: transform 0.3s; }
.atlas-page .btn-primary:hover .btn-arrow { transform: translateX(5px); }
.atlas-page .btn-secondary {
  display: inline-flex; align-items: center; color: var(--dim);
  text-decoration: none; padding: 16px 36px; border-radius: 50px;
  font-family: 'Poppins', sans-serif; font-size: 15px; font-weight: 600;
  letter-spacing: 1px; border: 1px solid rgba(255,255,255,0.1);
  transition: all 0.3s;
}
.atlas-page .btn-secondary:hover {
  border-color: var(--pink); color: var(--text);
  background: rgba(255,255,255,0.05);
  box-shadow: 0 0 20px rgba(255,255,255,0.05);
}
.hero-scroll {
  position: absolute; bottom: 30px; left: 50%; transform: translateX(-50%);
  display: flex; flex-direction: column; align-items: center; gap: 8px;
  color: var(--dim2); font-size: 11px; font-weight: 600;
  letter-spacing: 2px; text-transform: uppercase;
  animation: fadeInUp 1s 1.5s both;
}
.scroll-line { width: 1px; height: 30px; background: linear-gradient(var(--dim2), transparent); animation: scrollPulse 2s ease-in-out infinite; }
@keyframes scrollPulse {
  0%, 100% { opacity: 0.3; }
  50% { opacity: 1; }
}
@keyframes fadeInUp {
  from { opacity: 0; transform: translateX(-50%) translateY(10px); }
  to { opacity: 1; transform: translateX(-50%) translateY(0); }
}
/* ===== SECTIONS ===== */
.section {
  padding: 100px 24px;
  max-width: 1200px;
  margin: 0 auto;
}
.section-header {
  text-align: center;
  margin-bottom: 56px;
}
.section-badge {
  display: inline-block;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.2);
  font-size: 11px; font-weight: 700; letter-spacing: 3px;
  text-transform: uppercase; padding: 6px 18px; border-radius: 20px;
  margin-bottom: 16px;
}
.section-title {
  font-family: 'Fredoka One', cursive; font-size: 48px;
  text-align: center; margin-bottom: 12px;
  letter-spacing: 6px;
}
.section-desc {
  text-align: center; font-size: 16px; font-weight: 500;
  max-width: 500px; margin: 0 auto;
  color: var(--text); opacity: 0.7;
}
/* ===== HOW IT WORKS ===== */
.steps-grid {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}
.step-card {
  flex: 1;
  max-width: 280px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  padding: 36px 24px;
  text-align: center;
  position: relative;
  transition: all 0.4s;
}
.step-card:hover {
  border-color: rgba(255, 255, 255, 0.25);
  transform: translateY(-4px);
  box-shadow: 0 12px 40px rgba(255, 255, 255, 0.05), 0 0 30px rgba(255, 255, 255, 0.03);
}
.step-number {
  font-family: 'Fredoka One', cursive;
  font-size: 48px;
  color: transparent;
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.2);
  text-stroke: 1px rgba(255, 255, 255, 0.2);
  opacity: 0.15;
  position: absolute;
  top: 12px;
  left: 20px;
  line-height: 1;
}
.step-icon {
  width: 64px; height: 64px;
  margin: 0 auto 16px;
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  display: flex; align-items: center; justify-content: center;
  color: var(--pink);
  transition: all 0.3s;
}
.step-card:hover .step-icon {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.25);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.05);
}
.step-card h3 {
  font-family: 'Fredoka One', cursive;
  font-size: 20px;
  margin-bottom: 8px;
  letter-spacing: 1px;
}
.step-card p {
  font-size: 13px;
  font-weight: 500;
  color: var(--text);
  opacity: 0.6;
}
.step-connector {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.3;
  animation: connectorPulse 2s ease-in-out infinite;
}
@keyframes connectorPulse {
  0%, 100% { opacity: 0.2; transform: translateX(0); }
  50% { opacity: 0.5; transform: translateX(3px); }
}
/* ===== PRODUCTS GRID ===== */
.products-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.product-card {
  position: relative;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid var(--card-border);
  border-radius: 20px;
  padding: 28px 24px 24px;
  display: flex;
  flex-direction: column;
  transition: all 0.4s;
  overflow: hidden;
}
.product-card:hover {
  transform: translateY(-6px);
  border-color: rgba(255, 255, 255, 0.25);
  background: rgba(255, 255, 255, 0.04);
  box-shadow: 0 12px 60px rgba(255, 255, 255, 0.06), 0 0 40px rgba(255, 255, 255, 0.02);
}
.card-glow {
  position: absolute; top: -50%; left: -50%;
  width: 200%; height: 200%;
  background: radial-gradient(circle at 50% 50%, rgba(0, 255, 255, 0.02), transparent 50%);
  opacity: 0; transition: opacity 0.5s;
  pointer-events: none;
}
.product-card:hover .card-glow { opacity: 1; }
.card-badge {
  position: absolute; top: 12px; right: 12px;
  background: linear-gradient(135deg, var(--pink), #000000);
  color: #fff; font-size: 10px; font-weight: 700;
  padding: 4px 14px; border-radius: 20px;
  letter-spacing: 1px; text-transform: uppercase;
}
.card-icon-wrap {
  width: 48px; height: 48px; border-radius: 14px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  display: flex; align-items: center; justify-content: center;
  color: var(--pink);
  margin-bottom: 16px;
  transition: all 0.3s;
}
.product-card:hover .card-icon-wrap {
  background: rgba(255, 255, 255, 0.1);
  border-color: rgba(255, 255, 255, 0.25);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.05);
}
.card-title {
  font-family: 'Fredoka One', cursive; font-size: 22px;
  margin-bottom: 10px; letter-spacing: 1px;
}
.card-desc {
  font-size: 13px;
  line-height: 1.7;
  margin-bottom: 16px;
  flex-grow: 1;
  color: var(--text);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.card-icon-emoji {
  font-size: 30px;
  line-height: 1;
}
.card-features { display: flex; flex-direction: column; gap: 6px; margin-bottom: 20px; }
.feature {
  display: flex; align-items: center; gap: 8px;
  font-size: 12px; font-weight: 500;
  color: var(--text);
}
.feature svg { flex-shrink: 0; }
.card-footer {
  display: flex; align-items: center; justify-content: space-between;
  padding-top: 16px; border-top: 1px solid rgba(255,255,255,0.08);
  margin-bottom: 12px;
}
.card-price {
  font-family: 'Fredoka One', cursive; font-size: 26px; letter-spacing: 1px;
}
.card-tag {
  font-size: 12px; font-weight: 600; text-transform: uppercase;
  letter-spacing: 1px;
  padding: 4px 12px; border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.1);
}
.card-buy {
  display: block;
  text-align: center;
  padding: 10px;
  border-radius: 10px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.02));
  border: 1px solid rgba(255, 255, 255, 0.15);
  text-decoration: none;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  transition: all 0.3s;
}
.card-buy:hover {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0.05));
  border-color: rgba(255, 255, 255, 0.3);
  transform: translateY(-1px);
}
/* ===== DIVIDER ===== */
.section-divider {
  display: flex; align-items: center; justify-content: center;
  gap: 20px; padding: 20px 24px; max-width: 500px; margin: 0 auto;
}
.divider-line { flex: 1; height: 1px; background: rgba(255,255,255,0.08); }
.divider-icon { display: flex; align-items: center; justify-content: center; opacity: 0.4; }
/* ===== TRUST ===== */
.trust-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.trust-card {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 16px;
  padding: 28px 20px;
  text-align: center;
  transition: all 0.3s;
}
.trust-card:hover {
  border-color: rgba(255, 255, 255, 0.2);
  transform: translateY(-3px);
  box-shadow: 0 8px 30px rgba(255, 255, 255, 0.03);
}
.trust-icon {
  margin-bottom: 14px;
  display: flex;
  justify-content: center;
  opacity: 0.7;
}
.trust-card h3 {
  font-family: 'Fredoka One', cursive;
  font-size: 17px;
  margin-bottom: 6px;
  letter-spacing: 1px;
}
.trust-card p {
  font-size: 13px;
  font-weight: 500;
  color: var(--text);
  opacity: 0.55;
}
/* ===== PAYMENT ===== */
.policy-cards {
  display: flex; justify-content: center; gap: 24px;
  max-width: 750px; margin: 0 auto;
}
.policy-card {
  flex: 1; position: relative;
  background: rgba(255,255,255,0.02);
  border: 1px solid var(--card-border);
  border-radius: 20px; padding: 36px 28px;
  text-align: center; transition: all 0.3s;
}
.policy-card:hover {
  border-color: rgba(255,255,255,0.2);
  transform: translateY(-3px);
  box-shadow: 0 8px 40px rgba(255,255,255,0.04), 0 0 30px rgba(255,255,255,0.02);
}
.policy-card.recommended {
  border-color: rgba(0, 255, 136, 0.15);
  background: rgba(0, 255, 136, 0.02);
}
.policy-card.recommended:hover { border-color: rgba(0, 255, 136, 0.3); }
.policy-badge {
  position: absolute; top: -10px; left: 50%; transform: translateX(-50%);
  background: var(--green); color: #0a0a1a;
  font-size: 10px; font-weight: 700; letter-spacing: 2px;
  text-transform: uppercase; padding: 4px 18px; border-radius: 20px;
}
.policy-icon { margin-bottom: 16px; display: flex; justify-content: center; }
.policy-card h3 {
  font-family: 'Fredoka One', cursive; font-size: 22px;
  margin-bottom: 8px; letter-spacing: 1px;
}
.policy-price {
  font-family: 'Fredoka One', cursive; font-size: 20px; margin-bottom: 20px;
}
.policy-list { list-style: none; display: flex; flex-direction: column; gap: 10px; }
.policy-list li {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  font-size: 14px; font-weight: 500;
  color: var(--text); opacity: 0.7;
}
/* ===== FAQ ===== */
.faq-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.faq-item {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px; padding: 24px;
  transition: all 0.3s;
}
.faq-item:hover {
  border-color: rgba(255,255,255,0.15);
  background: rgba(255,255,255,0.02);
  box-shadow: 0 0 20px rgba(255,255,255,0.02);
}
.faq-icon { margin-bottom: 12px; opacity: 0.5; }
.faq-item h3 {
  font-family: 'Fredoka One', cursive; font-size: 17px;
  margin-bottom: 8px; letter-spacing: 1px;
}
.faq-item p {
  font-size: 14px; font-weight: 500; line-height: 1.7;
  color: var(--text); opacity: 0.6;
}
/* ===== CTA ===== */
.cta-section { padding: 60px 24px 120px; }
.cta-box { position: relative; max-width: 650px; margin: 0 auto; text-align: center; overflow: hidden; }
.cta-glow {
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 300px; height: 300px;
  background: radial-gradient(circle, rgba(255,255,255,0.08), transparent 70%);
  border-radius: 50%; filter: blur(40px);
  pointer-events: none;
}
.cta-content {
  position: relative;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 24px; padding: 60px 40px;
}
.cta-title {
  font-family: 'Fredoka One', cursive; font-size: 38px;
  margin-bottom: 12px; letter-spacing: 3px;
}
.cta-text {
  font-size: 16px; font-weight: 500; margin-bottom: 32px;
  color: var(--text); opacity: 0.7;
}
.btn-large { padding: 18px 52px; font-size: 19px; }
/* ===== VAPORWAVE FOOTER ===== */
.vapor-footer {
  text-align: center;
  padding: 24px;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.vapor-footer p {
  color: var(--dim);
  font-size: 12px;
  letter-spacing: 1px;
  opacity: 0.6;
  margin: 0;
}
.vapor-footer-grid {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 40px;
  flex-wrap: wrap;
  max-width: 1100px;
  margin: 0 auto;
  padding: 8px 24px 16px;
  text-align: left;
}
.vapor-footer-brand { max-width: 340px; }
.vapor-footer-title {
  font-family: 'Fredoka One', cursive;
  font-size: 20px;
  letter-spacing: 1.5px;
  background: linear-gradient(90deg, var(--pink), #b8a9d4);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: block;
  margin-bottom: 10px;
}
.vapor-footer-copy { line-height: 1.7; }
.vapor-footer-col h5 {
  font-family: 'Fredoka One', cursive;
  color: var(--pink);
  font-size: 13px;
  letter-spacing: 2px;
  text-transform: uppercase;
  margin: 0 0 12px;
}
.vapor-footer-link {
  display: block;
  color: var(--dim);
  font-size: 13px;
  font-weight: 500;
  text-decoration: none;
  padding: 4px 0;
  letter-spacing: 0.5px;
  transition: color 0.2s, padding-left 0.2s;
}
.vapor-footer-link:hover { color: var(--pink); padding-left: 4px; }
.light-mode .vapor-footer-title { -webkit-text-fill-color: #000000; }
.light-mode .vapor-footer-copy { color: #555570; }
@media (max-width: 768px) {
  .vapor-footer-grid {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 28px;
  }
}
.light-mode .vapor-footer { border-top-color: rgba(255,255,255,0.12); }
.light-mode .vapor-footer p { color: #555570; }
/* ===== BACK TO TOP ===== */
.back-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.2);
  color: var(--pink);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.3s;
  z-index: 999;
}
.back-to-top.visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.back-to-top:hover {
  background: rgba(255, 255, 255, 0.2);
  border-color: var(--pink);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.15);
  transform: translateY(-2px);
}
/* ===== MODAL - scoped to atlas pages ===== */
.atlas-page .modal {
  display: flex; position: fixed; z-index: 9999;
  left: 0; top: 0; width: 100%; height: 100%;
  background: rgba(0,0,0,0.85);
  justify-content: center; align-items: center;
  opacity: 0; visibility: hidden; transition: all 0.4s;
}
.atlas-page .modal.show { opacity: 1; visibility: visible; }
.atlas-page .modal-content { position: relative; max-width: 90vw; max-height: 85vh; }
.atlas-page .modal-content img { max-width: 90vw; max-height: 85vh; border-radius: 16px; border: 1px solid rgba(255,255,255,0.1); }
.atlas-page .close-modal {
  position: absolute; top: -40px; right: -8px;
  font-size: 36px; color: var(--dim); cursor: pointer;
  transition: color 0.3s; background: none; border: none; line-height: 1;
}
.close-modal:hover { color: var(--pink); }
/* ===== UTILITY ===== */
.green-text { color: var(--green) !important; font-weight: 700 !important; }
.pink-text { color: transparent !important; font-weight: 700 !important; background-image: linear-gradient(90deg, #ffffff, #aaaaaa, #ffffff) !important; background-size: 200% 100% !important; -webkit-background-clip: text !important; background-clip: text !important; animation: textAnim 3s ease-in-out infinite !important; }
.red-text { color: var(--red) !important; font-weight: 700 !important; background: none !important; -webkit-background-clip: unset !important; background-clip: unset !important; animation: none !important; }
/* ===== REVIEWS ===== */
.reviews-section { padding-bottom: 60px; }
.review-card {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 20px;
  padding: 28px 24px;
  transition: all 0.3s;
}
.review-card:hover {
  border-color: rgba(255, 255, 255, 0.2);
  transform: translateY(-3px);
  box-shadow: 0 8px 30px rgba(255, 255, 255, 0.03);
}
.review-stars {
  display: flex;
  gap: 2px;
  margin-bottom: 14px;
}
.review-text {
  font-size: 14px;
  font-weight: 500;
  line-height: 1.7;
  margin-bottom: 18px;
  color: var(--text);
  opacity: 0.7;
}
.review-author {
  display: flex;
  align-items: center;
  gap: 12px;
}
.review-avatar {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.2), rgba(0, 255, 255, 0.1));
  border: 1px solid rgba(255, 255, 255, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: 'Fredoka One', cursive;
  font-size: 16px;
  color: var(--pink);
  flex-shrink: 0;
}
.review-name {
  display: block;
  font-family: 'Fredoka One', cursive;
  font-size: 15px;
  letter-spacing: 1px;
}
.review-role {
  display: block;
  font-size: 11px;
  font-weight: 500;
  color: var(--text);
  opacity: 0.5;
}
/* ===== LOADING SCREEN ===== */
.loader-screen {
  position: fixed;
  top: 0; left: 0; right: 0; bottom: 0;
  background: #000000;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 99999;
  transition: opacity 0.8s ease, visibility 0.8s ease;
}
.loader-screen.hidden {
  opacity: 0;
  visibility: hidden;
}
.loader-content {
  text-align: center;
}
.loader-logo {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  margin-bottom: 20px;
  animation: pulse 1.5s ease-in-out infinite;
  will-change: transform;
}
@keyframes pulse {
  0%, 100% { transform: scale(1); opacity: 0.8; }
  50% { transform: scale(1.1); opacity: 1; }
}
.loader-brand {
  font-family: 'Fredoka One', cursive;
  font-size: 36px;
  letter-spacing: 6px;
  margin-bottom: 30px;
  color: transparent;
  background-image: linear-gradient(90deg, #fff, var(--pink), #fff);
  background-size: 200% 100%;
  -webkit-background-clip: text; background-clip: text;
  animation: textAnim 2s ease-in-out infinite;
}
.loader-bar {
  width: 200px;
  height: 2px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 2px;
  margin: 0 auto;
  overflow: hidden;
}
.loader-fill {
  width: 40%;
  height: 100%;
  background: linear-gradient(90deg, var(--pink), #fff);
  border-radius: 2px;
  animation: loading 1.5s ease-in-out infinite;
}
@keyframes loading {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(350%); }
}
/* ===== THEME TOGGLE ===== */
.toggle-theme {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: var(--dim);
  cursor: pointer;
  transition: all 0.3s;
  position: relative;
}
.toggle-theme:hover {
  border-color: var(--pink);
  color: var(--pink);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.05);
}
.toggle-theme .icon-sun,
.toggle-theme .icon-moon {
  position: absolute;
  transition: opacity 0.3s, transform 0.3s;
}
.toggle-theme .icon-sun { opacity: 1; transform: rotate(0); }
.toggle-theme .icon-moon { opacity: 0; transform: rotate(90deg); }
.light-mode .toggle-theme .icon-sun { opacity: 0; transform: rotate(-90deg); }
.light-mode .toggle-theme .icon-moon { opacity: 1; transform: rotate(0); }
/* ===== LIGHT MODE ===== */
.light-mode {
  --bg: #ffffff;
  --bg2: #f0f0f5;
  --card-bg: #ffffff;
  --card-border: rgba(0, 0, 0, 0.08);
  --card-hover: #fafafa;
  --pink: #000000;
  --cyan: #00BFFF;
  --text: #000000;
  --dim: #555570;
  --dim2: #8888a0;
}
.light-mode.atlas-page {
  background: #ffffff !important;
}
.light-mode header.background-opaque {
  background: rgba(255, 255, 255, 0.9);
  border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}
.light-mode .hamburger span { background: #000000; }
.light-mode .loader-screen { background: #ffffff; }
.light-mode .star-empty { background: rgba(0, 0, 0, 0.12); }
.light-mode .step-card { background: #ffffff; border-color: rgba(0, 0, 0, 0.08); box-shadow: 0 1px 3px rgba(0,0,0,0.04); }
.light-mode .step-card:hover { border-color: var(--pink); box-shadow: 0 4px 12px rgba(255,255,255,0.08); }
.light-mode .step-icon { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.15); }
.light-mode .pink-text { background-image: linear-gradient(90deg, #0a101f, #1d4ed8, #0a101f) !important; color: transparent !important; }
.light-mode .step-number { -webkit-text-stroke-color: rgba(255,255,255,0.2); }
.light-mode .step-connector svg { stroke: currentColor; }
.light-mode .section-badge { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.15); }
.light-mode .product-card { background: #ffffff; border-color: rgba(0, 0, 0, 0.08); box-shadow: 0 1px 3px rgba(0,0,0,0.04); }
.light-mode .product-card:hover { background: #ffffff; border-color: var(--pink); box-shadow: 0 4px 12px rgba(255,255,255,0.08); }
.light-mode .card-icon-wrap { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.15); }
.light-mode .card-footer { border-top-color: rgba(0, 0, 0, 0.06); }
.light-mode .card-tag { border-color: rgba(0, 0, 0, 0.08); }
.light-mode .card-buy { background: rgba(255,255,255,0.06); border-color: rgba(255,255,255,0.15); }
.light-mode .card-buy:hover { background: rgba(255,255,255,0.1); border-color: var(--pink); }
.light-mode .divider-line { background: rgba(0, 0, 0, 0.06); }
.light-mode .trust-card { background: #ffffff; border-color: rgba(0, 0, 0, 0.08); box-shadow: 0 1px 3px rgba(0,0,0,0.04); }
.light-mode .review-card { background: #ffffff; border-color: rgba(0, 0, 0, 0.08); box-shadow: 0 1px 3px rgba(0,0,0,0.04); }
.light-mode .review-card:hover { border-color: var(--pink); }
.light-mode .policy-card { background: #ffffff; border-color: rgba(0, 0, 0, 0.08); box-shadow: 0 1px 3px rgba(0,0,0,0.04); }
.light-mode .policy-card.recommended { border-color: rgba(0,255,136,0.3); background: rgba(0,255,136,0.03); }
.light-mode .faq-item { background: #ffffff; border-color: rgba(0, 0, 0, 0.08); box-shadow: 0 1px 3px rgba(0,0,0,0.04); }
.light-mode .faq-item:hover { background: #fafafa; border-color: var(--pink); }
.light-mode .faq-icon { opacity: 0.5; }
.light-mode .cta-content { background: #ffffff; border-color: rgba(0, 0, 0, 0.08); box-shadow: 0 1px 3px rgba(0,0,0,0.04); }
.light-mode .stat-divider { background: rgba(0,0,0,0.06); }
.light-mode .stat-label { color: #555570; }
.light-mode .stat-icon { color: #000000; }
.light-mode .hero-scroll { color: #555570; }
.light-mode .scroll-line { background: linear-gradient(#555570, transparent); }
.light-mode .btn-secondary { border-color: rgba(0,0,0,0.1); color: #555570; }
.light-mode .btn-secondary:hover { border-color: var(--pink); color: #000000; background: rgba(255,255,255,0.04); }
.light-mode .btn-login { border-color: rgba(0,0,0,0.1); }
.light-mode .btn-login svg { color: #555570; }
.light-mode .btn-cart { color: #555570; }
.light-mode .cart-count { border-color: #ffffff; }
.light-mode .modal { background: rgba(255,255,255,0.85); }
.light-mode .back-to-top { background: rgba(255,255,255,0.8); border-color: rgba(0, 0, 0, 0.08); }
.light-mode .policy-list li { opacity: 0.9; }
.light-mode .faq-header:hover { background: rgba(0,0,0,0.02); }
.light-mode .gallery-placeholder { background: #ffffff; }
.light-mode .gallery-item:hover .gallery-placeholder { background: #fafafa; }
.light-mode .toast { background: rgba(255,255,255,0.95); box-shadow: 0 4px 12px rgba(0,0,0,0.08); }
.light-mode .quick-view-content { background: #ffffff; }
.light-mode .cookie-banner button { color: #fff; }
.light-mode .support-button { background: rgba(255,255,255,0.08); border-color: rgba(255,255,255,0.15); }
.light-mode .support-button:hover { background: rgba(255,255,255,0.12); }
.light-mode .header-nav.open { background: rgba(255,255,255,0.97); }
.light-mode .nav-link:hover { color: #000000; }
.light-mode .compare-table { background: #ffffff; border-color: rgba(0, 0, 0, 0.08); }
.light-mode .compare-table th { background: #f8f8fa; }
.light-mode .compare-table td { color: #000000; }
.light-mode .compare-table .compare-featured td { color: #000000; }
.light-mode .compare-featured { background: rgba(255,255,255,0.03); }
.light-mode .mobile-sticky-cta { background: rgba(255,255,255,0.95); box-shadow: 0 -2px 8px rgba(0,0,0,0.06); }
.light-mode .cookie-banner { background: rgba(255,255,255,0.95); box-shadow: 0 4px 12px rgba(0,0,0,0.08); }
.light-mode .cookie-banner p { color: #000000; }
/* ===== LIGHT MODE FIXES ===== */
.light-mode .navbar {
  background: linear-gradient(135deg, rgba(255,255,255,0.95), rgba(245,240,250,0.95)) !important;
  border-bottom: 1px solid rgba(0,0,0,0.06) !important;
}
.light-mode footer.footer {
  background: linear-gradient(135deg, rgba(255,255,255,0.98), rgba(245,240,250,0.98)) !important;
  border-top: 1px solid rgba(0,0,0,0.06) !important;
}
.light-mode .modal-content {
  background: #ffffff !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
}
.light-mode .gallery-image-overlay {
  background: linear-gradient(transparent, rgba(255,255,255,0.9)) !important;
}
.light-mode .gallery-image-overlay .gallery-text-label {
  color: #000000 !important;
}
.light-mode .gallery-image-overlay .gallery-text-desc {
  color: #555570 !important;
}
.light-mode .support-button .support-tooltip {
  background: rgba(255,255,255,0.95) !important;
  color: #000000 !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
}
.light-mode .support-button .support-tooltip::after {
  border-left-color: rgba(255,255,255,0.95) !important;
}
.light-mode .maintenance {
  background: #ffffff !important;
}
.light-mode .toast-notification {
  background: rgba(255,255,255,0.95) !important;
  color: #000000 !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.08) !important;
}
.light-mode .toast-notification .toast-n-body {
  color: #555570 !important;
}
/* ===== COMPREHENSIVE LIGHT MODE ===== */
.light-mode .component .card { background: #ffffff !important; border-color: rgba(0,0,0,0.06) !important; }
.light-mode .component .table thead th { color: #555570 !important; border-bottom-color: rgba(0,0,0,0.08) !important; }
.light-mode .component .table tbody td { color: #000000 !important; border-color: rgba(0,0,0,0.04) !important; }
.light-mode .component .table tbody tr:hover td { background: rgba(255,255,255,0.02) !important; }
.light-mode .component .modal-content { background: #ffffff !important; border-color: rgba(0,0,0,0.08) !important; }
.light-mode .component .modal-header { border-bottom-color: rgba(0,0,0,0.06) !important; }
.light-mode .component .modal-body p { color: #555570 !important; }
.light-mode .component .nav-pills .nav-link { color: #555570 !important; border-color: rgba(0,0,0,0.06) !important; }
.light-mode .component .nav-pills .nav-link:hover,
.light-mode .component .nav-pills .nav-link.active { background: rgba(255,255,255,0.04) !important; color: #000000 !important; }
.light-mode .component .alert-info { color: #555570 !important; }
.light-mode .component .badge.bg-secondary { background: rgba(0,0,0,0.04) !important; color: #555570 !important; }
.light-mode .component .badge.bg-light.text-dark { background: rgba(0,0,0,0.04) !important; color: #000000 !important; }
.light-mode .ticket-messages-container { background: rgba(255,255,255,0.5) !important; border-color: rgba(0,0,0,0.06) !important; }
.light-mode .ticket-textarea { background: #ffffff !important; color: #000000 !important; border-color: rgba(0,0,0,0.1) !important; }
.light-mode .ticket-time-ago { color: #8888a0 !important; }
.light-mode .ticket-sender-name { color: #000000 !important; }
.light-mode .faq .accordion-item { background: #ffffff !important; border-color: rgba(0,0,0,0.06) !important; }
.light-mode .faq .accordion-button { background: #ffffff !important; color: #000000 !important; }
.light-mode .faq .accordion-body { color: #555570 !important; }
.light-mode .product-wrapper .fs-5 { color: #000000 !important; -webkit-text-fill-color: #000000 !important; background: none !important; }
.light-mode .product-wrapper .variant .price { color: #000000 !important; -webkit-text-fill-color: #000000 !important; text-shadow: none !important; }
.light-mode .product-wrapper .variant .price s { color: rgba(0,0,0,0.4) !important; }
.light-mode .product-wrapper .editor { color: #555570 !important; }
.light-mode .product-wrapper .editor h1,
.light-mode .product-wrapper .editor h2,
.light-mode .product-wrapper .editor h3,
.light-mode .product-wrapper .editor h4,
.light-mode .product-wrapper .editor h5,
.light-mode .product-wrapper .editor strong { color: #000000 !important; }
.light-mode .product-wrapper .badges a { color: #555570 !important; border-color: rgba(0,0,0,0.08) !important; }
.light-mode .product-wrapper .badges a:hover { color: #000000 !important; border-color: #000000 !important; }
.light-mode .product-wrapper .live-stats p { color: #555570 !important; }
.light-mode .product-wrapper .live-stats strong { color: #000000 !important; }
.light-mode .product-wrapper .addon-item { background: #ffffff !important; border-color: rgba(0,0,0,0.06) !important; }
.light-mode .product-wrapper .addon-item .fw-medium { color: #000000 !important; }
.light-mode .product-wrapper .addon-item .small.text-muted { color: #555570 !important; }
.light-mode .product-wrapper .alert-warning { color: #555570 !important; }
.light-mode .product-wrapper .product-img-placeholder { background: rgba(0,0,0,0.02) !important; }
.light-mode .product-wrapper .input-group .form-control { color: #000000 !important; background: #ffffff !important; }
.light-mode .product-wrapper .section-title h2 { color: #000000 !important; }
.light-mode .page-content .card { background: #ffffff !important; border-color: rgba(0,0,0,0.06) !important; }
.light-mode .page-content .table thead th { color: #555570 !important; border-bottom-color: rgba(0,0,0,0.08) !important; }
.light-mode .page-content .table tbody td { color: #000000 !important; border-color: rgba(0,0,0,0.04) !important; }
.light-mode .page-content .table tbody tr:hover td { background: rgba(255,255,255,0.02) !important; }
.light-mode .page-content .alert-info { color: #555570 !important; }
.light-mode .page-content .section-title h1 { color: #000000 !important; }
.light-mode .dash-card { background: #ffffff !important; border-color: rgba(0,0,0,0.06) !important; }
.light-mode .dash-card:hover { border-color: rgba(255,255,255,0.15) !important; }
.light-mode .dash-card-label { color: #555570 !important; }
.light-mode .dash-card-value { color: #000000 !important; }
.light-mode .dash-card-title { color: #000000 !important; }
.light-mode .dash-card-product { color: #000000 !important; }
.light-mode .dash-card-meta { color: #555570 !important; }
.light-mode .dash-card-link { color: #555570 !important; }
.light-mode .dash-card-empty { color: #555570 !important; }
.light-mode .dash-card-amount { color: #000000 !important; }
.light-mode .dash-card-desc { color: #555570 !important; }
.light-mode .dash-table thead th { color: #555570 !important; border-bottom-color: rgba(0,0,0,0.08) !important; }
.light-mode .dash-table tbody td { color: #000000 !important; border-color: rgba(0,0,0,0.04) !important; }
.light-mode .dash-table tbody tr:hover td { background: rgba(255,255,255,0.02) !important; }
.light-mode .dash-status { background: rgba(0,0,0,0.03) !important; color: #555570 !important; }
.light-mode .dash-date { color: #555570 !important; }
.light-mode .dash-price { color: #000000 !important; }
.light-mode .dash-empty { color: #555570 !important; }
.light-mode .dash-alert { color: #555570 !important; }
.light-mode .dash-modal .modal-content { background: #ffffff !important; }
.light-mode .dash-modal .modal-header { border-bottom-color: rgba(0,0,0,0.06) !important; }
.light-mode .dash-modal .modal-header .modal-title { color: #000000 !important; }
.light-mode .dash-modal .modal-body p { color: #555570 !important; }
.light-mode .dash-modal .btn-close { filter: invert(0.5) !important; }
.light-mode .maintenance { background: #ffffff !important; }
.light-mode .support-popup { background: #ffffff !important; color: #000000 !important; }
.light-mode .chat-window { background: #f8f8fa !important; }
.light-mode .chat-message.bot { background: #f0f0f5 !important; color: #000000 !important; border-left-color: #000000 !important; }
.light-mode .chat-message.user { background: #000000 !important; color: #fff !important; }
.light-mode .typing { background: #f0f0f5 !important; border-left-color: #000000 !important; }
.light-mode .page-hero-title { background: linear-gradient(90deg,#000000,#000000,#000000) !important; background-size: 300% 300% !important; -webkit-background-clip: text !important; -webkit-text-fill-color: transparent !important; }
.light-mode .page-hero-subtitle { color: #555570 !important; }
.light-mode .header-logo img { filter: brightness(0); }
.light-mode .loader-logo { filter: brightness(0); }
/* ===== TOAST NOTIFICATIONS ===== */
.toast-container {
  position: fixed;
  bottom: 80px;
  right: 20px;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  gap: 8px;
  pointer-events: none;
}
.atlas-page .toast {
  background: rgba(10, 3, 25, 0.9);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: 12px;
  padding: 12px 16px;
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 13px;
  font-weight: 500;
  color: var(--text);
  max-width: 280px;
  animation: toastIn 0.4s ease;
  box-shadow: 0 4px 20px rgba(0,0,0,0.3);
}
.atlas-page .toast.toast-out {
  animation: toastOut 0.4s ease forwards;
}
.atlas-page .toast-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--green);
  flex-shrink: 0;
  box-shadow: 0 0 6px var(--green);
}
@keyframes toastIn {
  from { opacity: 0; transform: translateX(30px); }
  to { opacity: 1; transform: translateX(0); }
}
@keyframes toastOut {
  from { opacity: 1; transform: translateX(0); }
  to { opacity: 0; transform: translateX(30px); }
}
/* ===== FAQ ACCORDION ===== */
.faq-item { padding: 0; overflow: hidden; }
.faq-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 20px 24px;
  cursor: pointer;
  user-select: none;
  transition: background 0.3s;
}
.faq-header:hover {
  background: rgba(255, 255, 255, 0.02);
}
.faq-header h3 {
  flex: 1;
  margin-bottom: 0 !important;
}
.faq-arrow {
  flex-shrink: 0;
  transition: transform 0.3s;
  opacity: 0.5;
}
.faq-item.active .faq-arrow {
  transform: rotate(180deg);
}
.faq-body {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, padding 0.4s ease;
  padding: 0 24px;
}
.faq-item.active .faq-body {
  max-height: 800px;
  padding: 0 24px 20px;
}
.faq-item.active .faq-icon { opacity: 0.8; }
/* ===== REVIEWS CAROUSEL ===== */
/* ===== REVIEWS SCROLL ===== */
@keyframes scroll-left {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
@keyframes scroll-right {
  0% { transform: translateX(-50%); }
  100% { transform: translateX(0); }
}
.reviews-scroll-list { max-width: 1400px; margin: 0 auto; padding: 0 16px; display: flex; flex-direction: column; gap: 1rem; }
.reviews-scroll-wrap { overflow: hidden; mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent); -webkit-mask-image: linear-gradient(to right, transparent, black 10%, black 90%, transparent); }
.reviews-scroll-inner { display: flex; gap: 1rem; width: fit-content; }
.reviews-scroll-left .reviews-scroll-inner { animation: scroll-left 40s linear infinite; }
.reviews-scroll-right .reviews-scroll-inner { animation: scroll-right 40s linear infinite; }
.reviews-scroll-inner:hover { animation-play-state: paused; }
.reviews-scroll-inner .review-card { flex-shrink: 0; width: 420px; margin: 0; }
/* ===== GALLERY ===== */
.gallery-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
.gallery-item {
  aspect-ratio: 3/2;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  overflow: hidden;
  transition: all 0.3s;
  position: relative;
  display: block;
  text-decoration: none;
  color: inherit;
}
.gallery-item:hover {
  border-color: rgba(255, 255, 255, 0.2);
  transform: translateY(-3px);
  box-shadow: 0 8px 30px rgba(255, 255, 255, 0.04);
}
.gallery-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  background: rgba(255,255,255,0.02);
  transition: all 0.3s;
}
.gallery-item:hover .gallery-placeholder {
  background: rgba(255,255,255,0.03);
}
.gallery-image-wrapper {
  width: 100%; height: 100%; position: relative; overflow: hidden;
}
.gallery-img {
  width: 100%; height: 100%; object-fit: cover; display: block;
}
.gallery-image-overlay {
  position: absolute; bottom: 0; left: 0; right: 0;
  padding: 20px; background: linear-gradient(transparent, rgba(5,2,16,0.9));
  display: flex; flex-direction: column; align-items: flex-start; gap: 4px;
  opacity: 0; transition: opacity 0.3s ease;
}
.gallery-item:hover .gallery-image-overlay {
  opacity: 1;
}
.gallery-image-overlay .gallery-text-label {
  font-size: 16px; font-weight: 700; color: #fff;
  font-family: 'Fredoka One', cursive;
}
.gallery-image-overlay .gallery-text-desc {
  font-size: 12px; color: rgba(255,255,255,0.8); line-height: 1.5;
}
/* ===== PRODUCT CATEGORY CHIPS ===== */
.products-hero { margin-bottom: 40px; }
.products-hero-title { letter-spacing: 4px; }

.ax-cats {
  display: flex; flex-wrap: wrap; justify-content: center; gap: 10px;
  margin-bottom: 40px;
}
.ax-cat-chip {
  display: inline-flex; align-items: center;
  padding: 9px 18px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  color: var(--text);
  text-decoration: none;
  font-size: 13px; font-weight: 700; letter-spacing: 0.5px;
  background: rgba(255, 255, 255, 0.03);
  transition: all 0.25s;
}
.ax-cat-chip:hover {
  border-color: rgba(255, 255, 255, 0.35);
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}
.ax-cat-chip.active {
  background: #ffffff;
  color: #000000;
  border-color: #ffffff;
}
/* ===== BREADCRUMBS ===== */
.atlas-breadcrumbs {
  display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
  margin: 110px 0 8px;
  font-size: 13px; font-weight: 600; letter-spacing: 0.5px;
}
.atlas-breadcrumbs a {
  color: var(--dim);
  text-decoration: none;
  transition: color 0.2s;
}
.atlas-breadcrumbs a:hover { color: #ffffff; }
.atlas-bc-sep { color: var(--dim2); }
.atlas-bc-current {
  color: #ffffff;
  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
  max-width: 260px;
}
/* ===== VIEW ALL PRODUCTS ===== */
.products-view-all {
  text-align: center;
  margin-top: 36px;
}
.products-view-all .btn-secondary {
  display: inline-flex;
}
/* ===== REVIEW STATS ===== */
.review-stats {
  display: flex;
  justify-content: center;
  gap: 64px;
  margin: -8px 0 44px;
  flex-wrap: wrap;
}
.review-stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}
.review-stat svg { color: var(--pink); }
.review-stat-stars {
  display: flex;
  gap: 3px;
}
.review-stat-stars svg { color: #f5c518; }
.review-stat-value {
  font-size: 22px;
  font-weight: 800;
  color: #ffffff;
  letter-spacing: 0.5px;
}
.review-stat-label {
  font-size: 11px;
  color: rgba(255,255,255,0.5);
  letter-spacing: 0.5px;
  text-transform: uppercase;
  text-align: center;
}
.review-date {
  display: block;
  font-size: 11px;
  color: rgba(255,255,255,0.4);
  margin-top: 3px;
}
.light-mode .review-stat-value { color: #000000; }
.light-mode .review-stat-label { color: #555570; }
.light-mode .review-date { color: #9999aa; }
/* ===== PAYMENT BADGES ===== */
.pay-badges {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.pay-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 26px;
  padding: 0 10px;
  border-radius: 5px;
  font-weight: 800;
  font-size: 11px;
  letter-spacing: 0.5px;
  line-height: 1;
  font-family: 'Poppins', sans-serif;
}
.pay-visa { background: #1a1f71; color: #ffffff; }
.pay-mc { background: #ffffff; gap: 2px; padding: 0 6px; }
.pay-mc i { width: 14px; height: 14px; border-radius: 50%; display: inline-block; }
.pay-mc .mc-a { background: #eb001b; }
.pay-mc .mc-b { background: #f79e1b; margin-left: -6px; opacity: 0.9; }
.pay-amex { background: #2e77bc; color: #ffffff; }
.pay-stripe { background: #635bff; color: #ffffff; }
.vapor-footer-secure {
  margin-top: 12px;
  font-size: 11px;
  color: rgba(255,255,255,0.4);
}
.light-mode .vapor-footer-secure { color: #9999aa; }
/* ===== LIVE SEARCH ===== */
.ax-search {
  position: relative;
  max-width: 560px;
  margin: 0 auto 28px;
}
.ax-search-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(255,255,255,0.4);
  pointer-events: none;
}
.ax-search-input {
  width: 100%;
  padding: 13px 46px 13px 44px;
  border-radius: 50px;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.04);
  color: #ffffff;
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  outline: none;
  transition: all 0.3s;
}
.ax-search-input::placeholder { color: rgba(255,255,255,0.4); }
.ax-search-input:focus {
  border-color: var(--pink);
  background: rgba(255,255,255,0.06);
  box-shadow: 0 0 0 4px rgba(233,30,160,0.12);
}
.ax-search-input::-webkit-search-cancel-button { -webkit-appearance: none; }
.ax-search-count {
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  font-weight: 600;
  color: var(--pink);
  background: rgba(233,30,160,0.1);
  padding: 3px 10px;
  border-radius: 50px;
}
.ax-search-empty {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 48px 20px;
  color: rgba(255,255,255,0.45);
  font-size: 15px;
  text-align: center;
  border: 1px dashed rgba(255,255,255,0.15);
  border-radius: 16px;
  margin-top: 8px;
}
.light-mode .ax-search-icon { color: rgba(0,0,0,0.4); }
.light-mode .ax-search-input {
  background: rgba(0,0,0,0.03);
  border-color: rgba(0,0,0,0.1);
  color: #000000;
}
.light-mode .ax-search-input::placeholder { color: rgba(0,0,0,0.4); }
.light-mode .ax-search-empty { color: rgba(0,0,0,0.45); border-color: rgba(0,0,0,0.15); }
/* ===== QUICK VIEW MODAL ===== */
.quick-view-content {
  background: rgba(10, 3, 25, 0.95);
  backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  padding: 40px 32px;  max-width: 420px;
  width: 90vw;
}
.quick-view-body {
  text-align: center;
}
.quick-view-body .card-icon-wrap {
  margin: 0 auto 16px;
}
.quick-view-body .card-features {
  text-align: left;
  margin-bottom: 20px;
}
.quick-view-body .card-footer {
  justify-content: center;
  margin-bottom: 16px;
}
/* ===== LANG TOGGLE ===== */
.btn-lang {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: transparent;
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: var(--dim);
  cursor: pointer;
  transition: all 0.3s;
  font-family: 'Fredoka One', cursive;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 1px;
}
.btn-lang:hover {
  border-color: var(--pink);
  color: var(--pink);
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.05);
}
.light-mode .btn-lang { border-color: rgba(0,0,0,0.1); color: #555570; }
.light-mode .btn-lang:hover { color: var(--pink); }
.light-mode .countdown-label { color: #555570; }
.light-mode .gallery-text-desc { color: #555570; }
.light-mode .star-text { color: #555570; }
.light-mode .card-stars .star-empty { background: rgba(0,0,0,0.08); }
/* ===== COMPARE TABLE ===== */
.compare-section { padding-bottom: 60px; }
.compare-table-wrap { overflow-x: auto; }
.compare-table {
  width: 100%;
  border-collapse: collapse;
  background: rgba(255,255,255,0.02);
  border-radius: 16px;
  overflow: hidden;
}
.compare-table th,
.compare-table td {
  padding: 16px 20px;
  text-align: center;
  border-bottom: 1px solid rgba(255,255,255,0.06);
  font-size: 14px;
  color: var(--text);
}
.compare-table th {
  font-family: 'Fredoka One', cursive;
  font-size: 16px;
  letter-spacing: 1px;
  background: rgba(255,255,255,0.02);
  border-bottom: 1px solid rgba(255,255,255,0.1);
}
.compare-table th:first-child,
.compare-table td:first-child {
  text-align: left;
  font-weight: 600;
  color: var(--dim);
}
.compare-featured {
  background: rgba(255,255,255,0.03);
}
.compare-table tr:hover td {
  background: rgba(255,255,255,0.01);
}
/* ===== STICKY MOBILE CTA ===== */
.mobile-sticky-cta {
  position: fixed;
  bottom: 0; left: 0; right: 0;
  background: rgba(10,3,25,0.95);
  backdrop-filter: blur(12px);
  border-top: 1px solid rgba(255,255,255,0.1);
  padding: 12px 16px;
  z-index: 999;
  display: none;
}
@media (max-width: 768px) {
  .mobile-sticky-cta { display: flex; }
}
/* ===== COOKIE BANNER ===== */
.cookie-banner {
  position: fixed;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(10,3,25,0.95);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 16px;
  padding: 16px 24px;
  display: flex;
  align-items: center;
  gap: 16px;
  z-index: 9999;
  max-width: 500px;
  width: 90%;
  opacity: 0;
  visibility: hidden;
  transition: all 0.4s;
}
.cookie-banner.show {
  opacity: 1;
  visibility: visible;
}
.cookie-banner p {
  flex: 1;
  font-size: 13px;
  font-weight: 500;
  color: var(--dim);
  margin: 0;
}
.cookie-banner .cookie-link {
  font-size: 12px;
  color: rgba(255,255,255,0.55);
  text-decoration: underline;
  white-space: nowrap;
}
.cookie-banner .cookie-link:hover { color: #ffffff; }
.cookie-banner .cookie-accept {
  border: none;
  cursor: pointer;
  background: linear-gradient(135deg, var(--pink), #7c3aed);
  color: #ffffff;
  font-family: 'Poppins', sans-serif;
  font-size: 12px;
  font-weight: 700;
  padding: 10px 20px;
  border-radius: 50px;
  white-space: nowrap;
  transition: all 0.25s;
}
.cookie-banner .cookie-accept:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(233,30,160,0.35);
}
.light-mode .cookie-banner .cookie-link { color: rgba(0,0,0,0.55); }
.light-mode .cookie-banner .cookie-link:hover { color: #000000; }
@media (max-width: 768px) {
  .cookie-banner {
    flex-direction: column;
    text-align: center;
    bottom: 80px;
  }
}
/* ===== SCROLL REVEAL ===== */
/* ===== FEEDBACK PAGE ===== */
.testimonials .testimonial{background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:24px;margin-bottom:20px;transition:all 0.3s}
.testimonials .testimonial:hover{border-color:rgba(255,255,255,0.2)}
.testimonials .testimonial .content .message p{color:var(--dim);font-size:13px;line-height:1.6}
.testimonials .testimonial .footer .items{color:var(--text);font-size:12px;font-weight:600}
.testimonials .testimonial .footer .date{color:var(--dim2);font-size:11px}
.light-mode .testimonials .testimonial{background:rgba(255,255,255,0.5);border-color:rgba(255,255,255,0.1)}
/* ===== STATUS PAGE ===== */
.status-cards .status-card{background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.08);border-radius:16px;padding:24px;margin-bottom:12px;display:flex;align-items:center;justify-content:space-between;transition:all 0.3s;text-decoration:none;color:var(--text)}
.status-cards .status-card:hover{border-color:rgba(255,255,255,0.2);transform:translateY(-1px)}
.status-cards .status-card h3{font-family:'Fredoka One',cursive;font-size:16px;color:var(--text);margin:0}
.status-cards .status-group h2{font-family:'Fredoka One',cursive;font-size:22px;color:var(--text);margin:24px 0 16px}
.light-mode .status-cards .status-card{background:rgba(255,255,255,0.4);border-color:rgba(255,255,255,0.1)}
/* ===== RESPONSIVE ===== */
@media (max-width: 1024px) {
  .hero-title { font-size: 80px; }
  .products-grid { grid-template-columns: repeat(2, 1fr); }
  .section-title { font-size: 38px; }
  .trust-grid { grid-template-columns: repeat(2, 1fr); }
  .steps-grid { flex-direction: column; }
  .step-connector { transform: rotate(90deg); }
  .gallery-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
  .hamburger { display: flex; }
  .header-nav {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(10, 3, 25, 0.95);
    backdrop-filter: blur(16px);
    flex-direction: column;
    justify-content: center;
    gap: 32px;
    opacity: 0;
    visibility: hidden;
    transition: all 0.4s;
    z-index: 1000;
  }
  .header-nav.open {
    opacity: 1;
    visibility: visible;
  }
  .nav-link { font-size: 24px; }
  .nav-dropdown-panel {
    position: static; transform: none; min-width: 0;
    width: min(80vw, 340px);
    opacity: 0; visibility: hidden; pointer-events: none;
    background: rgba(255, 255, 255, 0.04);
    border: 1px solid rgba(255, 255, 255, 0.08);
    margin-top: 14px;
  }
  .header-nav.open .nav-dropdown-panel {
    opacity: 1; visibility: visible; pointer-events: auto;
  }
  .nav-dropdown:hover .nav-dropdown-panel,
  .nav-dropdown:focus-within .nav-dropdown-panel { transform: none; }
  .nav-dropdown-panel::before { display: none; }
  .dd-item { font-size: 16px; justify-content: center; }
  .dd-all { justify-content: center; }
  .nav-dropdown > .dd-toggle { font-size: 24px; justify-content: center; }
  .hero-title { font-size: 56px; letter-spacing: 6px; }
  .text-cyan, .text-pink { -webkit-text-stroke: 2px rgba(255,255,255,0.6); }
  .hero-subtitle { font-size: 14px; letter-spacing: 4px; }
  .hero-stats { flex-direction: column; gap: 16px; }
  .stat-divider { display: none; }
  .hero-buttons { flex-direction: column; gap: 12px; }
  .products-grid { grid-template-columns: 1fr; gap: 16px; }
  .section { padding: 60px 16px; }
  .section-title { font-size: 30px; }
  .policy-cards { flex-direction: column; }
  .faq-grid { grid-template-columns: 1fr; }
  .trust-grid { grid-template-columns: 1fr; }
  .cta-content { padding: 40px 24px; }
  .cta-title { font-size: 28px; }
  .back-to-top { bottom: 20px; right: 20px; width: 42px; height: 42px; }
  .gallery-grid { grid-template-columns: 1fr; }
  .reviews-scroll-inner .review-card { width: 340px; }
}
@media (max-width: 480px) {
  .hero-title { font-size: 42px; }
  .btn-primary { padding: 14px 32px; font-size: 16px; }
  .btn-secondary { padding: 14px 24px; font-size: 13px; }
  .reviews-scroll-inner .review-card { width: 280px; }
}
/* ===== SUPPORT POPUP ===== */
@keyframes spinBorder {
  0% { transform: translate(-50%,-50%) rotate(0deg); }
  100% { transform: translate(-50%,-50%) rotate(360deg); }
}
.support-button {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 1100;
  background: linear-gradient(135deg, #3b82f6, #2563eb);
  color: #fff;
  border-radius: 50%;
  width: 60px;
  height: 60px;
  font-size: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 20px rgba(255,255,255,0.3);
  cursor: pointer;
  overflow: visible;
  transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.3s;
  animation: supportSlideIn 0.6s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}
@keyframes supportSlideIn {
  0% { transform: translateY(80px) scale(0.5); opacity: 0; }
  100% { transform: translateY(0) scale(1); opacity: 1; }
}
.support-button:hover {
  transform: scale(1.12);
  box-shadow: 0 6px 30px rgba(255,255,255,0.5);
}
.support-button .support-tooltip {
  position: absolute;
  right: 68px;
  top: 50%;
  transform: translateY(-50%) translateX(10px);
  background: rgba(10, 3, 25, 0.9);
  backdrop-filter: blur(8px);
  color: #fff;
  padding: 8px 16px;
  border-radius: 8px;
  font-size: 13px;
  font-weight: 500;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s, transform 0.3s;
  border: 1px solid rgba(255,255,255,0.2);
}
.support-button:hover .support-tooltip {
  opacity: 1;
  transform: translateY(-50%) translateX(0);
}
.support-button .support-tooltip::after {
  content: '';
  position: absolute;
  right: -6px;
  top: 50%;
  transform: translateY(-50%);
  border-left: 6px solid rgba(10, 3, 25, 0.9);
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
}
.support-button .support-ring {
  position: absolute;
  top: 50%; left: 50%;
  width: 60px; height: 60px;
  border-radius: 50%;
  border: 2px solid transparent;
  border-top-color: #ffffff;
  border-right-color: #000000;
  animation: spinBorder 3s linear infinite;
  transform-origin: center;
}
.support-button:hover .support-ring {
  border-top-color: #ffffff;
  border-right-color: #ffffff;
  width: 70px; height: 70px;
  transition: width 0.3s, height 0.3s;
}
.support-button::after {
  content: "";
  position: absolute;
  top: 50%; left: 50%;
  width: 60px; height: 60px;
  border-radius: 50%;
  background: linear-gradient(135deg, #3b82f6, #2563eb);
  transform: translate(-50%, -50%);
  animation: supportPulse 2s infinite;
  z-index: -1;
}
.support-button::before {
  content: "";
  position: absolute;
  top: 50%; left: 50%;
  width: 60px; height: 60px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(59,130,246,0), rgba(59,130,246,.5));
  transform: translate(-50%, -50%);
  animation: supportPulse2 2s infinite 0.6s;
  z-index: -2;
}
@keyframes supportPulse {
  0% { transform: translate(-50%,-50%) scale(1); opacity: 0.5; }
  70% { transform: translate(-50%,-50%) scale(1.6); opacity: 0; }
  100% { transform: translate(-50%,-50%) scale(1.6); opacity: 0; }
}
@keyframes supportPulse2 {
  0% { transform: translate(-50%,-50%) scale(1); opacity: 0.4; }
  70% { transform: translate(-50%,-50%) scale(2.2); opacity: 0; }
  100% { transform: translate(-50%,-50%) scale(2.2); opacity: 0; }
}
.support-popup {
  position: fixed;
  bottom: 90px;
  right: 20px;
  width: 320px;
  max-width: 90%;
  background: #1a1a22;
  color: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 24px rgba(0,0,0,0.5);
  transform: scale(0);
  transform-origin: bottom right;
  transition: transform 0.3s ease;
  z-index: 1150;
  display: flex;
  flex-direction: column;
  max-height: 480px;
}
.support-popup.show { transform: scale(1); }
.support-header {
  background: #000000;
  padding: 12px 16px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
}
.support-header .title { color: #fff; font-weight: 700; font-size: 15px; letter-spacing: 0.5px; font-family: 'Fredoka One', cursive; }
.close-popup { background: transparent; border: none; color: #fff; font-size: 22px; cursor: pointer; line-height: 1; }
.chat-window {
  flex: 1;
  overflow-y: auto;
  padding: 12px;
  background: #1a1a22;
  border-bottom: 1px solid rgba(255,255,255,0.3);
  max-height: 280px;
}
.chat-message { padding: 10px 14px; margin: 8px 0; border-radius: 12px; max-width: 92%; line-height: 1.5; word-wrap: break-word; font-size: 13px; }
.chat-message.bot { background: #2d2d3a; border-left: 3px solid #000000; }
.chat-message.user { background: #000000; margin-left: auto; }
.typing { display: inline-block; background: #2d2d3a; border-left: 3px solid #000000; padding: 10px 14px; border-radius: 12px; margin: 6px 0; }
.support-dot { height: 6px; width: 6px; margin: 0 2px; background-color: #fff; border-radius: 50%; display: inline-block; animation: supportBounce 1.4s infinite; }
.support-dot:nth-child(2) { animation-delay: 0.2s; }
.support-dot:nth-child(3) { animation-delay: 0.4s; }
@keyframes supportBounce { 0%,80%,100%{transform:scale(0.8);opacity:0.6} 40%{transform:scale(1.2);opacity:1} }
.options-container { display: flex; flex-direction: column; padding: 12px; gap: 6px; }
.options-divider { height: 1px; background: rgba(255,255,255,0.2); }
.option-btn {
  background: linear-gradient(90deg, #3b82f6, #93c5fd);
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 12px 18px;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: box-shadow 0.3s;
  box-shadow: 0 0 12px rgba(255,255,255,0.3);
}
.option-btn:hover {
  box-shadow: 0 0 20px rgba(255,255,255,0.5);
  color: #fff;
}
.option-btn::before {
  content: "";
  position: absolute;
  top: -50%; left: -50%;
  width: 200%; height: 200%;
  background: linear-gradient(120deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.3) 50%, rgba(255,255,255,0) 100%);
  transform: rotate(25deg) translateX(-100%);
  z-index: 1;
  pointer-events: none;
  transition: transform 0.7s ease;
}
.option-btn:hover::before { transform: rotate(25deg) translateX(100%); }
.chat-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(90deg, #3b82f6, #93c5fd);
  color: #fff;
  border: none;
  border-radius: 6px;
  padding: 10px 18px;
  font-weight: 600;
  font-size: 13px;
  text-decoration: none;
  margin-top: 8px;
  box-shadow: 0 0 10px rgba(255,255,255,0.3);
  transition: box-shadow 0.3s;
}
.chat-button:hover { box-shadow: 0 0 18px rgba(255,255,255,0.5); color: #fff; text-decoration: none; }
/* ===== STAR RATINGS ===== */
.card-stars{display:flex;flex-direction:row;align-items:center;gap:4px;margin:8px 0 10px;flex-wrap:nowrap}.card-stars .star{width:14px;height:14px;flex-shrink:0;display:inline-block;position:static;z-index:auto;pointer-events:auto;border-radius:0;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpolygon points='12 2 15.09 8.26 22 9.27 17 14.14 18.18 21.02 12 17.77 5.82 21.02 7 14.14 2 9.27 8.91 8.26 12 2'/%3E%3C/svg%3E") center/contain no-repeat;background:#000000}.star-half{background:linear-gradient(90deg,#000000 50%,rgba(255,255,255,0.1) 50%)}.star-empty{background:rgba(255,255,255,0.1)}.star-text{font-size:12px;font-weight:700;color:var(--dim);margin-left:2px;white-space:nowrap}.star-filled{background:#000000!important}.light-mode .star-empty{background:rgba(0,0,0,0.08)}
/* ===== COUNTDOWN ===== */
.countdown-section{padding-bottom:60px}.countdown-box{display:flex;align-items:center;justify-content:center;gap:12px;padding:32px 24px;background:rgba(255,255,255,0.02);border-radius:20px;border:1px solid rgba(255,255,255,0.1);max-width:500px;margin:0 auto}.countdown-item{display:flex;flex-direction:column;align-items:center;gap:4px}.countdown-number{font-family:'Fredoka One',cursive;font-size:42px;font-weight:700;color:#000000;line-height:1;text-shadow:0 0 20px rgba(255,255,255,0.2)}.countdown-label{font-size:11px;font-weight:600;color:var(--dim);text-transform:uppercase;letter-spacing:1px}.countdown-sep{font-size:32px;font-weight:700;color:rgba(255,255,255,0.15);padding-bottom:18px}.light-mode .countdown-box{background:rgba(255,255,255,0.3)}.light-mode .countdown-number{color:#000000}.light-mode .countdown-sep{color:rgba(0,0,0,0.15)}
@media (max-width: 480px){.countdown-number{font-size:26px}.countdown-sep{font-size:20px}.countdown-box{gap:8px;padding:24px 16px}}
/* ===== GALLERY TEXT ===== */
.gallery-text-icon{font-size:36px;line-height:1;margin-bottom:8px}.gallery-text-label{font-size:16px;font-weight:700;color:var(--text);font-family:'Fredoka One',cursive;margin-bottom:4px}.gallery-text-desc{font-size:12px;color:var(--dim);line-height:1.5;max-width:180px}.gallery-item .gallery-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:40px 20px;min-height:220px}
/* ===== FOOTER LEGAL ===== */
.footer-legal{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:center;margin-top:8px}.footer-legal a{color:var(--dim);font-size:12px;text-decoration:none;transition:color 0.2s}.footer-legal a:hover{color:var(--text)}.footer-legal-sep{color:rgba(255,255,255,0.1);font-size:12px}.light-mode .footer-legal a{color:var(--dim)}.light-mode .footer-legal a:hover{color:var(--text)}.light-mode .footer-legal-sep{color:rgba(0,0,0,0.1)}
/* ===== LANG TRANSITION ===== */
[data-i18n]{transition:opacity 0.25s ease}.lang-switching [data-i18n]{opacity:0}
/* ===== STAT ICON ===== */
.stat-icon{font-size:20px;line-height:1;display:inline-block}
/* ===== CARDS (DASHBOARD) ===== */
.component .card{background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.08);border-radius:16px;color:var(--text);transition:all 0.3s}.component .card:hover{border-color:rgba(255,255,255,0.15)}.component .card h4,.component .card h5{font-family:'Fredoka One',cursive;color:var(--text);font-size:18px;margin-bottom:8px}.component .card p{color:var(--dim);font-size:13px;line-height:1.5}.component .card .text-muted{color:var(--dim2)!important}.component .card .small{font-size:12px}.light-mode .component .card{background:rgba(255,255,255,0.5);border-color:rgba(255,255,255,0.06)}
/* ===== TABLES ===== */
.component .table{color:var(--text);margin:0}.component .table thead th{font-family:'Fredoka One',cursive;font-size:13px;color:var(--dim);text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid rgba(255,255,255,0.08);padding:12px 8px;background:transparent}.component .table tbody td{border-color:rgba(255,255,255,0.04);color:var(--text);font-size:13px;padding:10px 8px;vertical-align:middle}.component .table tbody tr:hover td{background:rgba(255,255,255,0.02)}.component .table a.text-accent-500{color:#7EB8FF!important;text-decoration:none}.component .table a.text-accent-500:hover{color:#c7e2ff!important}.light-mode .component .table thead th{color:#666666;border-bottom-color:rgba(255,255,255,0.1)}.light-mode .table tbody td{border-color:rgba(0,0,0,0.04);color:#000000}.light-mode .component .table tbody tr:hover td{background:rgba(255,255,255,0.02)}
/* ===== NAV PILLS (CUSTOMER SIDEBAR) ===== */
.component .nav-pills .nav-link{background:transparent;border:1px solid rgba(255,255,255,0.08);border-radius:12px;color:var(--dim);font-size:14px;font-weight:500;padding:10px 16px;transition:all 0.3s;cursor:pointer}.component .nav-pills .nav-link:hover,.component .nav-pills .nav-link.active{background:rgba(255,255,255,0.08);border-color:rgba(255,255,255,0.2);color:var(--text)}.component .nav-pills .nav-link.active{color:#000000;font-weight:600}.light-mode .component .nav-pills .nav-link{color:#666666;border-color:rgba(255,255,255,0.06)}.light-mode .component .nav-pills .nav-link:hover,.light-mode .component .nav-pills .nav-link.active{background:rgba(255,255,255,0.04);color:#000000}
/* ===== ALERTS ===== */
.component .alert-info{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);border-radius:12px;color:var(--dim);font-size:13px}.component .alert-info a{color:#000000;text-decoration:none;font-weight:600}.component .alert-info a:hover{color:#ffffff;text-decoration:underline}
/* ===== BADGES ===== */
.component .badge.bg-secondary{background:rgba(255,255,255,0.05)!important;color:var(--dim)!important;font-size:11px;font-weight:600;padding:4px 10px;border-radius:20px}.component .badge.bg-light.text-dark{background:rgba(255,255,255,0.05)!important;color:var(--text)!important;font-size:11px;font-weight:600;padding:4px 10px;border-radius:20px;text-decoration:none!important}
/* ===== TICKET MESSAGES ===== */
.ticket-messages-container{border-radius:16px!important;border:1px solid rgba(255,255,255,0.08)!important;background:rgba(255,255,255,0.02)!important;overflow:hidden}.ticket-messages-scroll{max-height:500px;overflow-y:auto;scroll-behavior:smooth}.ticket-message-content p{color:var(--dim)!important;font-size:13px;line-height:1.6}.ticket-avatar-img{width:40px;height:40px;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,0.2)}.ticket-avatar-placeholder{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center}.ticket-avatar-icon{width:20px;height:20px;color:#fff}.ticket-sender-name{font-size:13px;font-weight:600;color:var(--text)}.ticket-sender-name.text-accent-500{color:#7EB8FF!important}.ticket-time-ago{font-size:11px;color:var(--dim2)}.ticket-textarea{background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.08);border-radius:12px;color:var(--text);font-size:13px;padding:12px;resize:none;min-height:44px}.ticket-textarea:focus{border-color:#000000;outline:none;box-shadow:0 0 12px rgba(255,255,255,0.08)}.ticket-send-btn{background:linear-gradient(135deg,#000000,#000000)!important;border:none!important;color:#fff!important;border-radius:12px!important;padding:10px 20px!important;font-weight:600!important;font-size:14px!important;min-height:44px;transition:all 0.3s}.ticket-send-btn:hover{box-shadow:0 4px 16px rgba(255,255,255,0.3)!important}
/* ===== MAINTENANCE PAGE ===== */
.maintenance{background:#000000!important;min-height:100vh;z-index:1}.maintenance .maintenance-icon-wrapper{width:140px;height:140px;border-radius:50%;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12)}.maintenance .maintenance-icon-wrapper svg{color:#000000;width:80px;height:80px}.maintenance .maintenance-accent{color:#000000;text-shadow:0 0 20px rgba(255,255,255,0.3)}.maintenance .btn-primary{background:linear-gradient(135deg,#000000,#000000);border:none;color:#fff;font-family:'Poppins',sans-serif;font-weight:700;font-size:16px;padding:16px 36px;border-radius:50px;text-transform:uppercase;letter-spacing:1px;transition:all 0.3s}.maintenance .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(255,255,255,0.3)}
/* ===== FAQ ACCORDION (COMPONENT) ===== */
.faq .accordion-item{background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.08);border-radius:14px!important;margin-bottom:10px;overflow:hidden}.faq .accordion-button{background:rgba(255,255,255,0.02);color:var(--text);font-family:'Poppins',sans-serif;font-size:15px;font-weight:600;padding:18px 22px;box-shadow:none!important;transition:all 0.3s}.faq .accordion-button:not(.collapsed){background:rgba(255,255,255,0.04);color:#000000}    .faq .accordion-button::after{filter:invert(0.5)}.faq .accordion-body{color:var(--dim);font-size:14px;line-height:1.7;padding:8px 22px 18px}.light-mode .faq .accordion-item{background:rgba(255,255,255,0.3);border-color:rgba(255,255,255,0.06)}.light-mode .faq .accordion-button{background:rgba(255,255,255,0.3);color:#000000}.light-mode .faq .accordion-button:not(.collapsed){background:rgba(255,255,255,0.04);color:#000000}
/* ===== MODAL (DELETE ACCOUNT) ===== */
.component .modal-content{background:#111111;border:1px solid rgba(255,255,255,0.1);border-radius:20px}.component .modal-header{border-bottom:1px solid rgba(255,255,255,0.06);padding:20px 24px}.component .modal-title{font-family:'Fredoka One',cursive;font-size:20px;color:var(--text)}.component .modal-body{padding:24px}.component .modal-body p{color:var(--dim);font-size:14px;line-height:1.6}.component .btn-outline-primary{background:transparent;border:1px solid rgba(255,255,255,0.2);color:#000000;border-radius:12px;padding:12px 24px;font-weight:600;font-size:14px}.component .btn-outline-primary:hover{background:rgba(255,255,255,0.06)}.component .btn-danger{background:rgba(255,68,68,0.1);border:1px solid rgba(255,68,68,0.2);color:#FF4444;border-radius:12px;padding:12px 24px;font-weight:600;font-size:14px}.component .btn-danger:hover{background:rgba(255,68,68,0.15)}.light-mode .component .modal-content{background:#f5edf8;border-color:rgba(255,255,255,0.08)}
/* ===== PRODUCT DETAIL PAGE ===== */
.product-wrapper .display-6{font-family:'Fredoka One',cursive;font-size:32px;margin-bottom:8px;color:var(--text);background:linear-gradient(90deg,#ffffff 0%,#9cc3ff 25%,#3b82f6 50%,#9cc3ff 75%,#ffffff 100%);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:pinkWave 5s ease-in-out infinite;text-shadow:0 0 10px rgba(255,255,255,0.3)}
.product-wrapper .fs-5{font-family:'Fredoka One',cursive;font-size:24px;color:#ffffff;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,0.3)}
.product-wrapper .form-label{font-family:'Poppins',sans-serif;font-size:13px;font-weight:600;color:var(--dim);text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}
.product-wrapper .variant.btn-primary{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:16px 20px;margin-bottom:8px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.12);border-radius:12px;color:var(--text);font-family:'Poppins',sans-serif;font-size:14px;text-align:left;transition:all 0.3s;cursor:pointer}
.product-wrapper .variant.btn-primary:hover{border-color:rgba(255,255,255,0.35);background:rgba(255,255,255,0.06)}
.product-wrapper .variant.btn-primary.active{border-color:#000000;background:rgba(255,255,255,0.1);box-shadow:0 0 20px rgba(255,255,255,0.1)}
.product-wrapper .variant .name{font-weight:600;color:var(--text)}
.product-wrapper .variant .description{font-size:12px;color:var(--dim);margin:2px 0 0}
.product-wrapper .variant .stock{font-size:11px;color:var(--dim);margin:4px 0 0}
.product-wrapper .variant .stock-unlimited{color:#00FF88}
.product-wrapper .variant .price{font-family:'Fredoka One',cursive;font-size:18px;color:#ffffff;white-space:nowrap;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,0.3)}
.product-wrapper .variant .price s{color:rgba(255,255,255,0.55);font-size:14px;margin-left:6px}
.product-wrapper .variant.btn-primary:disabled{opacity:1}
.product-wrapper .variant.btn-primary:disabled .price{color:#ffffff}
.product-wrapper .variant .active-indicator{color:#000000;flex-shrink:0}
.product-wrapper .variant .active-indicator svg{width:24px;height:24px}
.product-wrapper .input-group .btn-outline-primary.input-group-btn{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.2);color:#000000;padding:8px 14px;border-radius:8px;transition:all 0.3s}
.product-wrapper .input-group .btn-outline-primary.input-group-btn:hover{background:rgba(255,255,255,0.15);border-color:#000000}
.product-wrapper .input-group .btn-outline-primary.input-group-btn svg{width:18px;height:18px}
.product-wrapper .input-group .form-control{background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.12);color:var(--text);text-align:center;font-family:'Poppins',sans-serif;font-size:16px;font-weight:600;border-radius:8px;padding:8px}
.product-wrapper .stock-indicator.btn-outline-primary{background:rgba(0,255,136,0.06);border:1px solid rgba(0,255,136,0.2);color:#00FF88;font-size:12px;font-weight:600;padding:4px 12px;border-radius:20px;cursor:default;font-family:'Poppins',sans-serif;letter-spacing:0.5px}
.product-wrapper .stock-indicator.btn-outline-danger{border-color:rgba(255,68,68,0.3);color:#FF4444;font-size:12px;font-weight:600;padding:4px 12px;border-radius:20px;cursor:default;font-family:'Poppins',sans-serif;letter-spacing:0.5px}
.product-wrapper .product-tabs .btn-primary{background:linear-gradient(135deg,#000000,#000000);border:none;color:#fff;font-family:'Poppins',sans-serif;font-size:13px;font-weight:600;padding:8px 20px;border-radius:25px;transition:all 0.3s}
.product-wrapper .product-tabs .btn-outline-primary{background:transparent;border:1px solid rgba(255,255,255,0.25);color:var(--dim);font-family:'Poppins',sans-serif;font-size:13px;font-weight:600;padding:8px 20px;border-radius:25px;transition:all 0.3s}
.product-wrapper .product-tabs .btn-outline-primary:hover{border-color:#000000;color:var(--text)}
.product-wrapper .carousel{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,0.1)}
.product-wrapper .thumbnails{display:flex;gap:8px;margin-top:12px;flex-wrap:wrap}
.product-wrapper .thumbnails button{border:2px solid rgba(255,255,255,0.08);border-radius:8px;overflow:hidden;padding:0;background:transparent;cursor:pointer;transition:border-color 0.3s;width:64px;height:64px}
.product-wrapper .thumbnails button.active,.product-wrapper .thumbnails button:hover{border-color:#000000}
.product-wrapper .thumbnails button img{width:100%;height:100%;object-fit:cover}
.product-wrapper .editor{color:var(--dim);font-family:'Poppins',sans-serif;font-size:14px;line-height:1.7}
.product-wrapper .editor h1,.product-wrapper .editor h2,.product-wrapper .editor h3,.product-wrapper .editor h4,.product-wrapper .editor h5{font-family:'Fredoka One',cursive;color:var(--text)}
.product-wrapper .editor strong{color:var(--text)}
.product-wrapper .editor a{color:#000000;text-decoration:underline}
.product-wrapper .editor a:hover{color:#ffffff}
.product-wrapper .product-img-placeholder{background:rgba(255,255,255,0.02);border-radius:16px;display:flex;align-items:center;justify-content:center;min-height:300px}
.product-wrapper .live-stats svg{width:20px;height:20px;color:#000000;flex-shrink:0}
.product-wrapper .live-stats p{font-size:13px;color:var(--dim);margin:0}
.product-wrapper .live-stats strong{color:var(--text)}
.product-wrapper .badges a{display:inline-flex;align-items:center;gap:6px;color:var(--dim);font-size:12px;text-decoration:none;padding:4px 12px;border:1px solid rgba(255,255,255,0.12);border-radius:20px;transition:all 0.3s;margin-right:6px}
.product-wrapper .badges a:hover{border-color:#000000;color:var(--text)}
.product-wrapper .status{display:flex;align-items:center;gap:8px;margin-bottom:12px}
.product-wrapper .status .indicator{width:10px;height:10px;border-radius:50%;position:relative}
.product-wrapper .status .pulsating{width:10px;height:10px;border-radius:50%;opacity:0.4;animation:pulse 2s infinite}
.product-wrapper .status .label{font-size:13px;font-weight:600;font-family:'Poppins',sans-serif}
.product-wrapper .buy-buttons .btn-primary{background:linear-gradient(135deg,#000000,#000000);border:none;color:#fff;font-family:'Poppins',sans-serif;font-weight:700;font-size:16px;padding:16px 32px;border-radius:50px;text-transform:uppercase;letter-spacing:1px;transition:all 0.3s;cursor:pointer}
.product-wrapper .buy-buttons .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(255,255,255,0.3)}
.product-wrapper .buy-buttons .btn-outline-primary{background:transparent;border:2px solid #000000;color:#000000;font-family:'Poppins',sans-serif;font-weight:700;font-size:16px;padding:16px 32px;border-radius:50px;text-transform:uppercase;letter-spacing:1px;transition:all 0.3s;cursor:pointer}
.product-wrapper .buy-buttons .btn-outline-primary:hover{background:rgba(255,255,255,0.1);transform:translateY(-2px);box-shadow:0 8px 30px rgba(255,255,255,0.15)}
.product-wrapper .buy-buttons svg{width:20px;height:20px}
.product-wrapper .btn-addon-add{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.2);color:#000000;font-size:13px;font-weight:600;padding:6px 16px;border-radius:25px;transition:all 0.3s;font-family:'Poppins',sans-serif}
.product-wrapper .btn-addon-add:hover{background:rgba(255,255,255,0.15)}
.product-wrapper .btn-addon-remove{background:rgba(255,68,68,0.08);border:1px solid rgba(255,68,68,0.2);color:#FF4444;font-size:13px;font-weight:600;padding:6px 16px;border-radius:25px;transition:all 0.3s;font-family:'Poppins',sans-serif}
.product-wrapper .btn-addon-remove:hover{background:rgba(255,68,68,0.15)}
.product-wrapper .addon-item{background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.08);border-radius:12px}
.product-wrapper .addon-item .fw-medium{font-weight:600;color:var(--text);font-size:14px}
.product-wrapper .addon-item .small.text-muted{font-size:12px;color:var(--dim)!important}
.product-wrapper .form-text.text-danger{color:#FF4444!important;font-size:12px;margin-top:4px}
.product-wrapper .alert-warning{background:rgba(255,165,0,0.08);border:1px solid rgba(255,165,0,0.2);color:var(--dim);border-radius:12px;font-size:13px;padding:12px 16px}
.product-wrapper .volume-discount .form-control{background:rgba(0,255,136,0.06);border:1px solid rgba(0,255,136,0.15);color:#00FF88;font-size:13px;text-align:center;border-radius:12px;padding:10px}
.product-wrapper .section-title h2{font-family:'Fredoka One',cursive;font-size:22px;color:var(--text);margin-bottom:20px}
.light-mode .product-wrapper .variant.btn-primary{background:rgba(0,0,0,0.02);border-color:rgba(255,255,255,0.15)}
.light-mode .product-wrapper .variant.btn-primary:hover{background:rgba(255,255,255,0.04)}
.light-mode .product-wrapper .variant.btn-primary.active{background:rgba(255,255,255,0.06);border-color:#000000}
.light-mode .product-wrapper .input-group .form-control{background:rgba(255,255,255,0.5)}
.light-mode .product-wrapper .stock-indicator.btn-outline-primary{background:rgba(0,255,136,0.04)}
.light-mode .product-wrapper .thumbnails button{border-color:rgba(0,0,0,0.08)}
.light-mode .product-wrapper .product-img-placeholder{background:rgba(0,0,0,0.02)}
.light-mode .product-wrapper .addon-item{background:rgba(255,255,255,0.4)}
.light-mode .header-logo span,.light-mode .nav-link,.light-mode .section-title,.light-mode .step-card h3,.light-mode .faq-item h3,.light-mode .cta-title,.light-mode .card-title,.light-mode .hero-title,.light-mode .text-cyan,.light-mode .text-pink,.light-mode .hero-subtitle,.light-mode .stat-number,.light-mode .card-price,.light-mode .policy-price{background:linear-gradient(90deg,#0a101f 0%,#1d4ed8 25%,#93c5fd 50%,#1d4ed8 75%,#0a101f 100%);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;color:#000000}
.light-mode .product-wrapper .fs-5,.light-mode .product-wrapper .variant .price,.light-mode .cart-price-text{color:#222;font-weight:700;background:none;-webkit-text-fill-color:#222}

/* ===== PAYMENTS SECTION ===== */
#es-payments-section * { box-sizing: border-box; }
#es-payments-section .payments-animate { opacity:0;transform:translateY(38px);transition:opacity 0.9s ease,transform 0.9s cubic-bezier(0.22,1,0.36,1);will-change:opacity,transform; }
#es-payments-section.payments-loaded .payments-animate { opacity:1;transform:translateY(0); }
#es-payments-section.payments-loaded .payments-subtitle { transition-delay:0.14s; }
#es-payments-section.payments-loaded .payments-grid { transition-delay:0.28s; }
#es-payments-section .payments-wrap { width:100%;max-width:1400px;margin:0 auto;padding:0 16px; }
#es-payments-section .payments-panel { max-width:1180px;margin:0 auto;padding:34px 28px;border-radius:22px;background:rgba(10,10,14,0.5);border:1px solid rgba(255,255,255,0.07);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 20px 50px rgba(0,0,0,0.28),inset 0 1px 0 rgba(255,255,255,0.04),0 0 40px rgba(255,255,255,0.06);text-align:center;position:relative;overflow:hidden; }
#es-payments-section .payments-panel::before { content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at top center,rgba(255,255,255,0.08),transparent 35%),linear-gradient(to bottom,rgba(255,255,255,0.02),transparent 28%); }
#es-payments-section .payments-title { position:relative;z-index:1;margin:0 0 12px;color:#f5f5f5;font-size:clamp(30px,4vw,46px);line-height:1.08;font-weight:800;letter-spacing:-0.03em; }
#es-payments-section .payments-subtitle { position:relative;z-index:1;margin:0 auto 34px;max-width:760px;color:rgba(255,255,255,0.62);font-size:18px;line-height:1.65; }
#es-payments-section .payments-grid { position:relative;z-index:1;display:flex;justify-content:center;align-items:center;gap:22px;flex-wrap:wrap; }
#es-payments-section .payment-card { width:170px;height:100px;display:flex;align-items:center;justify-content:center;padding:18px;border-radius:18px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.08);box-shadow:inset 0 1px 0 rgba(255,255,255,0.03),0 10px 24px rgba(0,0,0,0.16);transition:transform 0.22s ease,border-color 0.22s ease,background 0.22s ease,box-shadow 0.22s ease;flex-direction:column;gap:6px; }
#es-payments-section .payment-card:hover { transform:translateY(-3px);background:rgba(255,255,255,0.1);border-color:rgba(255,255,255,0.24);box-shadow:inset 0 1px 0 rgba(255,255,255,0.04),0 14px 30px rgba(0,0,0,0.2),0 0 18px rgba(255,255,255,0.08); }
#es-payments-section .payment-card img { max-width:100%;max-height:36px;width:auto;height:auto;object-fit:contain;display:block;filter:brightness(0) invert(1);opacity:0.85;transition:opacity 0.22s; }
#es-payments-section .payment-card:hover img { opacity:1; }
#es-payments-section .payment-card .pay-icon { font-size:28px;line-height:1; }
#es-payments-section .payment-card .pay-name { font-size:13px;font-weight:600;letter-spacing:0.5px;color:rgba(255,255,255,0.75); }
.light-mode #es-payments-section .payments-panel { background:rgba(240,230,245,0.8);border-color:rgba(0,0,0,0.08); }
.light-mode #es-payments-section .payments-title { color:#000000; }
.light-mode #es-payments-section .payments-subtitle { color:rgba(30,10,50,0.6); }
.light-mode #es-payments-section .payment-card { background:rgba(255,255,255,0.04);border-color:rgba(0,0,0,0.06); }
.light-mode #es-payments-section .payment-card .pay-name { color:rgba(30,10,50,0.7); }
.light-mode #es-payments-section .payment-card:hover { background:rgba(255,255,255,0.08); }
.light-mode #es-payments-section .payment-card img { filter:none;opacity:0.7; }
.light-mode #es-payments-section .payment-card:hover img { opacity:1; }
#es-payments-section .payment-card .pay-svg { width:36px;height:36px;display:flex;align-items:center;justify-content:center; }
#es-payments-section .payment-card .pay-svg svg { width:100%;height:100%; }
@media (max-width:768px) {
  #es-payments-section { padding:48px 0; }
  #es-payments-section .payments-wrap { padding:0 12px; }
  #es-payments-section .payments-panel { padding:26px 18px;border-radius:18px; }
  #es-payments-section .payments-subtitle { font-size:16px;margin-bottom:24px; }
  #es-payments-section .payments-grid { gap:14px; }
  #es-payments-section .payment-card { width:calc(50% - 7px);min-width:135px;height:84px;padding:14px;border-radius:14px; }
  #es-payments-section .payment-card img { max-height:28px; }
  #es-payments-section .payment-card .pay-svg { width:28px;height:28px; }
  #es-payments-section .payment-card .pay-icon { font-size:22px; }
  #es-payments-section .payment-card .pay-name { font-size:12px; }
  }
/* ===== SHIMMER BADGE ===== */
.shimmer-badge { position:relative;overflow:hidden; }
.shimmer-badge::after { content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(120deg,transparent 30%,rgba(255,255,255,0.15) 50%,transparent 70%);animation:shimmerSlide 3s ease-in-out infinite;pointer-events:none; }
@keyframes shimmerSlide { 0%{transform:translateX(-100%) rotate(20deg)} 100%{transform:translateX(200%) rotate(20deg)} }
/* ===== 3D CARD TILT ===== */
.tilt-card { perspective:1000px; }
.tilt-card-inner { transition:transform 0.15s ease;transform-style:preserve-3d;will-change:transform; }
.tilt-card-inner .tilt-glow { position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity 0.3s;background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,0.12),transparent 60%);z-index:2; }
.tilt-card-inner:hover .tilt-glow { opacity:1; }
/* ===== LOADING PERCENTAGE ===== */
.loader-percent { font-family:'Fredoka One',cursive;font-size:14px;color:rgba(255,255,255,0.5);letter-spacing:2px;margin-top:8px;transition:opacity 0.5s; }
.light-mode .loader-percent { color: rgba(0,0,0,0.4); }
/* ===== SECTION HEADER REVEAL ===== */
.section-header { perspective:600px; }
.section-header .section-badge { display:inline-block; }
.section-header.revealed .section-badge { animation:badgeReveal 0.6s ease both; }
@keyframes badgeReveal { 0%{opacity:0;transform:translateY(10px) scale(0.9)} 100%{opacity:1;transform:translateY(0) scale(1)} }
/* ===== GLASS CARD BORDER GLOW ===== */
.glass-border-glow { position:relative; }
.glass-border-glow::before { content:'';position:absolute;inset:-1px;border-radius:inherit;background:linear-gradient(135deg,rgba(59,130,246,.05),transparent 40%,transparent 60%,rgba(59,130,246,.55));opacity:0;transition:opacity 0.5s;z-index:-1; }
.glass-border-glow:hover::before { opacity:0.3; }
/* ===== TYPEWRITER CURSOR ===== */
.typewriter-cursor::after { content:'|';animation:twBlink 0.8s step-end infinite;color:#000000;margin-left:2px; }
@keyframes twBlink { 0%,100%{opacity:1} 50%{opacity:0} }
/* ===== MAGNETIC BUTTON ===== */
.magnetic-btn-wrap { position:relative;display:inline-flex; }
.magnetic-btn { transition:transform 0.2s cubic-bezier(0.34,1.56,0.64,1);will-change:transform; }
/* ===== RESPONSIVE TOAST NOTIFICATION ===== */
.toast-notification { position:fixed;bottom:100px;right:24px;z-index:1200;background:rgba(10,3,25,0.9);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,0.2);border-radius:12px;padding:14px 20px;color:#fff;font-size:13px;max-width:300px;transform:translateX(120%);transition:transform 0.4s cubic-bezier(0.34,1.56,0.64,1);box-shadow:0 8px 30px rgba(0,0,0,0.4); }
.toast-notification.show { transform:translateX(0); }
.toast-notification .toast-n-title { font-weight:700;font-size:14px;margin-bottom:4px;color:#000000; }
.toast-notification .toast-n-body { color:rgba(255,255,255,0.8);line-height:1.5; }
/* ===== RIPPLE EFFECT ===== */
.ripple-effect { position:absolute;border-radius:50%;background:rgba(255,255,255,0.25);pointer-events:none;animation:rippleAnim 0.6s ease-out forwards;z-index:5; }
@keyframes rippleAnim { 0%{transform:scale(0);opacity:1} 100%{transform:scale(2.5);opacity:0} }
/* ===== SUPPORT NOTIFICATION DOT ===== */
.support-notif-dot { position:absolute;top:2px;right:2px;width:12px;height:12px;background:#FF4444;border-radius:50%;border:2px solid #000000;z-index:5;animation:notifPing 2s infinite;pointer-events:none; }
@keyframes notifPing { 0%{transform:scale(1);opacity:1} 50%{transform:scale(1.3);opacity:0.8} 100%{transform:scale(1);opacity:1} }
/* ===== ANIMATED CTA BORDER ===== */
.cta-box { position:relative;overflow:hidden; }
.cta-box::before { content:'';position:absolute;inset:-2px;border-radius:inherit;background:conic-gradient(from var(--angle,0deg),rgba(59,130,246,0),rgba(59,130,246,.45),rgba(147,197,253,.9),rgba(59,130,246,.45),rgba(59,130,246,0));opacity:0;transition:opacity 0.5s;animation:ctaBorderSpin 3s linear infinite;z-index:-1; }
.cta-box:hover::before { opacity:0.5; }
@property --angle { syntax:'<angle>';initial-value:0deg;inherits:false; }
@keyframes ctaBorderSpin { 0%{--angle:0deg} 100%{--angle:360deg} }
/* ===== SECTION DIVIDER ANIMATION ===== */
.section-divider .divider-line { transition:transform 0.6s cubic-bezier(0.22,1,0.36,1); }
.section-divider .divider-icon { transition:transform 0.6s cubic-bezier(0.34,1.56,0.64,1),opacity 0.4s;opacity:0.7; }
.section-divider:hover .divider-line { transform:scaleX(1.15); }
.section-divider:hover .divider-icon { transform:rotate(180deg) scale(1.2);opacity:1; }
/* ===== GLOW TEXT ON HERO ===== */
.hero-title .text-cyan,.hero-title .text-pink { transition:text-shadow 0.3s; }
.hero-title:hover .text-cyan { text-shadow:0 0 30px rgba(0,255,255,0.5),0 0 60px rgba(0,255,255,0.2); }
.hero-title:hover .text-pink { text-shadow:0 0 30px rgba(255,255,255,0.5),0 0 60px rgba(255,255,255,0.2); }
/* ===== BUTTON MAGNETIC BASE ===== */
.atlas-page .btn-primary,.atlas-page .btn-secondary,.atlas-page .card-buy,.option-btn,.chat-button { transition:transform 0.15s ease,box-shadow 0.3s,background 0.3s,color 0.3s;will-change:transform;position:relative;overflow:hidden; }
/* ===== PAGE HERO ===== */
.page-hero { position:relative;padding:120px 24px 80px;text-align:center;overflow:hidden; }
.page-hero-sm { padding:100px 24px 60px; }
.page-hero-bg { position:absolute;inset:0;pointer-events:none;overflow:hidden; }
.page-hero-content { position:relative;z-index:1;animation:pageHeroFade 0.8s cubic-bezier(0.22,1,0.36,1) both; }
.page-hero-title { font-family:'Fredoka One',cursive;font-size:clamp(32px,5vw,56px);color:var(--text);margin:0 0 12px;background:linear-gradient(90deg,#ffffff,#9cc3ff,#3b82f6,#9cc3ff,#ffffff);background-size:300% 300%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;animation:pinkWave 5s ease-in-out infinite; }
.page-hero-subtitle { font-size:clamp(14px,2vw,18px);color:var(--dim);max-width:600px;margin:0 auto;line-height:1.6; }
@keyframes pageHeroFade { 0%{opacity:0;transform:translateY(30px)} 100%{opacity:1;transform:translateY(0)} }
/* ===== PAGE CONTENT WRAPPER ===== */
.page-content { padding:0 24px 80px;animation:pageContentFade 0.6s ease 0.3s both; }
@keyframes pageContentFade { 0%{opacity:0;transform:translateY(20px)} 100%{opacity:1;transform:translateY(0)} }
.page-content .container.component { max-width:1200px;margin:0 auto;padding:0; }
.page-content .card { background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:16px;backdrop-filter:blur(12px);transition:all 0.3s; }
.page-content .card:hover { border-color:rgba(255,255,255,0.15);box-shadow:0 8px 32px rgba(0,0,0,0.2); }
.page-content .table thead th { font-family:'Fredoka One',cursive;font-size:13px;color:var(--dim);text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid rgba(255,255,255,0.08);padding:12px 8px;background:transparent; }
.page-content .table tbody td { border-color:rgba(255,255,255,0.04);color:var(--text);font-size:13px;padding:10px 8px;vertical-align:middle; }
.page-content .table tbody tr:hover td { background:rgba(255,255,255,0.02); }
.page-content .text-accent-500 { color:#7EB8FF!important;text-decoration:none;transition:color 0.2s; }
.page-content .text-accent-500:hover { color:#c7e2ff!important; }
.page-content .btn-outline-primary { border:1px solid rgba(255,255,255,0.25);color:#000000;transition:all 0.3s;border-radius:10px;font-weight:600; }
.page-content .btn-outline-primary:hover { background:rgba(255,255,255,0.1);border-color:#000000;color:#000000; }
.page-content .btn-primary { background:linear-gradient(135deg,#000000,#000000);border:none;border-radius:10px;font-weight:600;transition:all 0.3s; }
.page-content .btn-primary:hover { transform:translateY(-2px);box-shadow:0 8px 25px rgba(255,255,255,0.3); }
.page-content .btn-link { color:#000000;text-decoration:none;font-weight:600; }
.page-content .badge { border-radius:20px;padding:4px 12px;font-size:11px;font-weight:600; }
.page-content .alert-info { background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);border-radius:12px;color:var(--dim);font-size:13px; }
.page-content .section-title h1 { font-family:'Fredoka One',cursive;font-size:24px;color:var(--text);margin-bottom:24px; }
.py-5-nav { padding-top:100px; }
/* ===== DASHBOARD CARDS ===== */
.dash-card { background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:16px;backdrop-filter:blur(12px);transition:all 0.4s cubic-bezier(0.22,1,0.36,1);position:relative;overflow:hidden;animation:dashFadeIn 0.5s cubic-bezier(0.22,1,0.36,1) both; }
.dash-card::before { content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,0.03),transparent);opacity:0;transition:opacity 0.4s;pointer-events:none; }
.dash-card:hover { border-color:rgba(255,255,255,0.2);transform:translateY(-3px);box-shadow:0 12px 40px rgba(0,0,0,0.25); }
.dash-card:hover::before { opacity:1; }
.dash-card:nth-child(1) { animation-delay:0.05s; }
.dash-card:nth-child(2) { animation-delay:0.1s; }
.dash-card:nth-child(3) { animation-delay:0.15s; }
.dash-card-label { font-family:'Fredoka One',cursive;font-size:13px;text-transform:uppercase;letter-spacing:1px;color:var(--dim);margin:0 0 8px; }
.dash-card-value { font-family:'Fredoka One',cursive;font-size:28px;color:var(--text);margin:0; }
.dash-card-icon { width:40px;height:40px;border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,0.12),rgba(0,255,255,0.08));display:flex;align-items:center;justify-content:center;margin-bottom:16px;color:#000000; }
.dash-card-title { font-family:'Fredoka One',cursive;font-size:16px;color:var(--text);margin:0; }
.dash-card-product { font-family:'Fredoka One',cursive;font-size:15px;color:var(--text);margin:0 0 4px; }
.dash-card-meta { color:var(--dim);font-size:12px; }
.dash-card-link { color:var(--dim);text-decoration:none;transition:color 0.2s; }
.dash-card-link:hover { color:#000000; }
.dash-card-empty { color:var(--dim);font-size:13px;font-style:italic; }
.dash-card-amount { font-family:'Fredoka One',cursive;font-size:22px;color:var(--text);margin:0; }
.dash-card-desc { color:var(--dim);font-size:13px;line-height:1.5;margin:0; }
.dash-card-link-block { cursor:pointer; }
.dash-card-link-block:hover .mb-0 { color:#000000!important; }
.dash-card-link-block .mb-0 { transition:color 0.3s; }
@keyframes dashFadeIn { 0%{opacity:0;transform:translateY(15px)} 100%{opacity:1;transform:translateY(0)} }
/* ===== DASHBOARD TABLE ===== */
.dash-table { margin:0; }
.dash-table thead th { font-family:'Fredoka One',cursive;font-size:12px;color:var(--dim);text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid rgba(255,255,255,0.08);padding:12px 8px;background:transparent; }
.dash-table tbody td { border-color:rgba(255,255,255,0.04);color:var(--text);font-size:13px;padding:10px 8px;vertical-align:middle; }
.dash-table tbody tr { transition:background 0.2s; }
.dash-table tbody tr:hover td { background:rgba(255,255,255,0.02); }
.dash-status { display:inline-block;font-size:11px;font-weight:600;padding:3px 10px;border-radius:20px;text-transform:capitalize;background:rgba(255,255,255,0.04);color:var(--dim); }
.dash-status[data-status="completed"],.dash-status[data-status="paid"] { background:rgba(0,255,136,0.1);color:#00FF88; }
.dash-status[data-status="pending"],.dash-status[data-status="refunded"] { background:rgba(255,165,0,0.1);color:#FFA500; }
.dash-status[data-status="cancelled"],.dash-status[data-status="expired"] { background:rgba(255,50,50,0.1);color:#FF3232; }
.dash-status[data-status="info"] { background:rgba(0,255,255,0.08);color:#ffffff; }
.dash-status[data-status="invoice"] { background:rgba(255,255,255,0.08);color:#000000;text-decoration:none; }
.dash-date { color:var(--dim);font-size:11px; }
.dash-price { font-weight:600;color:var(--text); }
.dash-empty { color:var(--dim);font-size:13px;padding:24px 0; }
.dash-action-link { background:none;border:none;color:#000000;font-size:12px;font-weight:600;cursor:pointer;padding:4px 0;text-decoration:none;transition:color 0.2s; }
.dash-action-link:hover { color:#ffffff; }
.dash-delete-btn { display:inline-flex;align-items:center;gap:8px;background:rgba(255,50,50,0.06);border:1px solid rgba(255,50,50,0.12);color:#FF5252;padding:8px 20px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all 0.3s; }
.dash-delete-btn:hover { background:rgba(255,50,50,0.1);border-color:rgba(255,50,50,0.25);transform:translateY(-1px); }
.dash-modal .modal-content { background:var(--bg);border:1px solid rgba(255,255,255,0.1);border-radius:16px; }
.dash-modal .modal-header { border-bottom:1px solid rgba(255,255,255,0.06);padding:20px 24px; }
.dash-modal .modal-header .modal-title { font-family:'Fredoka One',cursive;font-size:16px;color:var(--text); }
.dash-modal .modal-body { padding:20px 24px; }
.dash-modal .modal-body p { color:var(--dim);font-size:13px;line-height:1.6; }
.dash-modal .btn-close { filter:invert(1);opacity:0.5; }
.dash-modal .btn-close:hover { opacity:1; }
/* ===== ALERT ===== */
.dash-alert { background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);border-radius:12px;padding:12px 16px;color:var(--dim);font-size:13px;animation:dashFadeIn 0.5s ease both;animation-delay:0.05s; }
.dash-alert small { line-height:1.5; }
.dash-alert .text-accent-500 { font-weight:600; }
/* ===== TOP UP BUTTONS ===== */
.dash-topup-grid { display:flex;flex-wrap:wrap;gap:8px;margin-top:12px; }
.dash-topup-btn { position:relative;min-width:80px;padding:10px 20px;border:1px solid rgba(255,255,255,0.2);background:rgba(255,255,255,0.04);border-radius:12px;color:#000000;font-weight:600;font-size:14px;cursor:pointer;transition:all 0.3s;overflow:hidden; }
.dash-topup-btn:hover { border-color:#000000;background:rgba(255,255,255,0.1);transform:translateY(-2px);box-shadow:0 4px 15px rgba(255,255,255,0.2); }
.dash-topup-btn:disabled { opacity:0.5;cursor:not-allowed;transform:none; }
.dash-topup-spinner { position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#000000;display:flex; }
/* ===== AFFILIATE ===== */
.dash-affiliate-link { display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:12px;padding:10px 14px;background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.06);border-radius:10px; }
.dash-affiliate-url { font-size:12px;color:var(--dim);word-break:break-all;flex:1; }
.dash-icon-btn { display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;border-radius:8px;background:rgba(255,255,255,0.06);color:#000000;cursor:pointer;transition:all 0.3s; }
.dash-icon-btn:hover { background:rgba(255,255,255,0.12);transform:translateY(-1px); }
.dash-icon-btn:disabled { opacity:0.4;cursor:not-allowed;transform:none; }
/* ===== TICKET PAGE ===== */
.ticket-subject { font-family:'Fredoka One',cursive;font-size:18px;color:var(--text); }
.ticket-messages-container { overflow:hidden;border-radius:16px; }
.ticket-messages-scroll { max-height:500px;overflow-y:auto;background:rgba(255,255,255,0.01); }
.ticket-messages-scroll::-webkit-scrollbar { width:5px; }
.ticket-messages-scroll::-webkit-scrollbar-track { background:transparent; }
.ticket-messages-scroll::-webkit-scrollbar-thumb { background:rgba(255,255,255,0.2);border-radius:10px; }
.ticket-message { opacity:0;animation:ticketMsgIn 0.4s cubic-bezier(0.22,1,0.36,1) forwards; }
.ticket-message--own { animation-delay:0.1s; }
@keyframes ticketMsgIn { 0%{opacity:0;transform:translateX(-10px)} 100%{opacity:1;transform:translateX(0)} }
.ticket-avatar { flex-shrink:0; }
.ticket-avatar-img { width:36px;height:36px;border-radius:50%;object-fit:cover; }
.ticket-avatar-placeholder { width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff; }
.ticket-avatar-icon { width:20px;height:20px; }
.ticket-sender-name { font-family:'Fredoka One',cursive;font-size:12px;color:var(--dim); }
.ticket-time-ago { font-size:10px;color:var(--dim);opacity:0.5; }
.ticket-message-content { background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.04);border-radius:12px;padding:10px 14px;display:inline-block;max-width:85%;text-align:left;font-size:13px;line-height:1.5;color:var(--text); }
.ticket-message--own .ticket-message-content { background:rgba(255,255,255,0.06);border-color:rgba(255,255,255,0.1); }
.ticket-textarea { background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.06);border-radius:12px;color:var(--text);font-size:13px;resize:none;padding:10px 14px;transition:border-color 0.3s; }
.ticket-textarea:focus { border-color:#000000;outline:none;box-shadow:0 0 0 2px rgba(255,255,255,0.1); }
.ticket-textarea::placeholder { color:var(--dim);opacity:0.5; }
.ticket-send-btn { border-radius:12px!important;padding:10px 20px; }
/* ===== MAINTENANCE ===== */
.maintenance-icon-wrapper { width:140px;height:140px;border-radius:50%;background:rgba(255,255,255,0.02);border:1px solid rgba(255,255,255,0.1);display:flex;align-items:center;justify-content:center;transition:all 0.3s; }
.maintenance-icon-rotating { animation:maintenanceSpin 8s linear infinite;color:#000000; }
.maintenance-svg { filter:drop-shadow(0 0 20px rgba(255,255,255,0.3)); }
@keyframes maintenanceSpin { 0%{transform:rotate(0deg)} 100%{transform:rotate(360deg)} }
.maintenance-accent { color:#000000; }
.maintenance .glow-text { animation:glowPulse 2s ease-in-out infinite; }
@keyframes glowPulse { 0%,100%{text-shadow:0 0 20px rgba(255,255,255,0.5)} 50%{text-shadow:0 0 40px rgba(255,255,255,0.8),0 0 80px rgba(255,255,255,0.4)} }

/* ===== PRODUCTS PAGE ===== */
.ax-products__grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)); gap: 20px; width: 100%; }
.ax-products__grid--centered { justify-items: center; }
.ax-products__item { width: 100%; }
.ax-products-page__header { margin-bottom: 40px; }
.ax-products-page__title-wrap { display: flex; align-items: center; gap: 14px; margin-bottom: 6px; }
.ax-products-page__title-accent { display: block; width: 4px; height: 28px; background: var(--pink); border-radius: 2px; flex-shrink: 0; }
.ax-products-page__title { font-family: 'Fredoka One', cursive; font-size: clamp(22px, 3vw, 32px); font-weight: 700; color: var(--text); margin: 0; line-height: 1.2; }
.ax-products-page__category-sub { font-size: 13px; color: var(--dim); margin: 0 0 0 18px; }
.ax-products-page__category-sub strong { color: var(--text); font-weight: 700; }
.ax-products-page__mobile-bar { display: none; align-items: center; gap: 12px; margin-bottom: 20px; }
@media (max-width: 1023px) { .ax-products-page__mobile-bar { display: flex; } }
.ax-products-page__mobile-filter-btn { display: inline-flex; align-items: center; gap: 8px; padding: 10px 18px; border-radius: 10px; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.12); color: var(--dim); font-size: 13px; font-weight: 700; cursor: pointer; transition: background .18s, color .18s; font-family: 'Fredoka One', cursive; }
.ax-products-page__mobile-filter-btn:hover { background: rgba(255,255,255,0.06); color: var(--text); }
.ax-products-page__mobile-reset { font-size: 12px; color: #ffffff; text-decoration: underline; font-weight: 700; }
.ax-products-page__layout { display: grid; grid-template-columns: 260px 1fr; gap: 32px; align-items: start; }
@media (max-width: 1023px) { .ax-products-page__layout { grid-template-columns: 1fr; } .ax-products-page__sidebar { display: none; } }
.ax-products-page__sidebar { position: sticky; top: 24px; }
.ax-products-page__filter-card { background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.12); border-radius: 14px; overflow: hidden; position: relative; }
.ax-products-page__filter-top-line { position: absolute; top: 0; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, #ffffff, rgba(255,255,255,0.5), transparent); }
.ax-products-page__form { padding: 20px 18px 18px; display: flex; flex-direction: column; gap: 20px; }
.ax-products-page__section { display: flex; flex-direction: column; gap: 10px; }
.ax-products-page__section + .ax-products-page__section { padding-top: 18px; border-top: 1px solid rgba(255,255,255,0.12); }
.ax-products-page__section-title { display: flex; align-items: center; gap: 7px; font-size: 10px; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; color: var(--dim); margin: 0; }
.ax-products-page__cat-list { display: flex; flex-direction: column; gap: 2px; }
.ax-products-page__cat-item { display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 8px; font-size: 13px; font-weight: 500; color: var(--dim); text-decoration: none; transition: background .15s, color .15s; border: 1px solid transparent; }
.ax-products-page__cat-item:hover { background: rgba(255,255,255,0.06); color: var(--text); }
.ax-products-page__cat-item--active { background: rgba(255,255,255,0.1); color: #ffffff; border-color: rgba(255,255,255,0.2); font-weight: 700; }
.ax-products-page__cat-dot { width: 5px; height: 5px; border-radius: 50%; background: currentColor; flex-shrink: 0; opacity: .5; }
.ax-products-page__cat-item--active .ax-products-page__cat-dot { opacity: 1; }
.ax-products-page__input-wrap { position: relative; }
.ax-products-page__input { width: 100%; padding: 9px 12px 9px 36px; background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.12); border-radius: 9px; color: var(--text); font-size: 13px; outline: none; transition: border-color .18s, box-shadow .18s; box-sizing: border-box; }
.ax-products-page__input:focus { border-color: #ffffff; box-shadow: 0 0 0 3px rgba(255,255,255,0.1); }
.ax-products-page__input::placeholder { color: var(--dim); }
.ax-products-page__input-icon { position: absolute; left: 10px; top: 50%; transform: translateY(-50%); width: 14px; height: 14px; color: var(--dim); pointer-events: none; }
.ax-products-page__input--price { padding-left: 12px; padding-right: 30px; }
.ax-products-page__price-row { display: grid; grid-template-columns: 1fr auto 1fr; gap: 6px; align-items: center; }
.ax-products-page__price-sep { font-size: 12px; color: var(--dim); text-align: center; }
.ax-products-page__price-field { position: relative; }
.ax-products-page__currency-symbol { position: absolute; right: 9px; top: 50%; transform: translateY(-50%); font-size: 11px; color: var(--dim); pointer-events: none; }
.ax-products-page__filter-actions { display: flex; flex-direction: column; gap: 8px; padding-top: 18px; border-top: 1px solid rgba(255,255,255,0.12); }
.ax-products-page__apply-btn { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 10px 16px; border-radius: 9px; background: #ffffff; border: none; color: #000; font-size: 13px; font-weight: 700; font-family: 'Fredoka One', cursive; cursor: pointer; transition: background .18s, box-shadow .18s; letter-spacing: .04em; }
.ax-products-page__apply-btn:hover { background: rgba(255,255,255,0.8); box-shadow: 0 4px 16px rgba(255,255,255,0.2); }
.ax-products-page__reset-link { display: block; text-align: center; font-size: 12px; color: var(--dim); text-decoration: none; padding: 8px; border-radius: 8px; border: 1px solid rgba(255,255,255,0.12); transition: color .15s, background .15s; }
.ax-products-page__reset-link:hover { color: var(--text); background: rgba(255,255,255,0.06); }
.ax-products-page__main { min-width: 0; }
.ax-products-page__pagination { margin-top: 40px; }
.ax-products-page__empty { display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 72px 24px; text-align: center; }
.ax-products-page__empty-icon { width: 64px; height: 64px; border-radius: 50%; background: rgba(255,255,255,0.04); display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,0.12); }
.ax-products-page__empty-icon svg { width: 28px; height: 28px; color: var(--dim); }
.ax-products-page__empty-title { font-family: 'Fredoka One', cursive; font-size: 20px; font-weight: 700; color: var(--text); margin: 0; }
.ax-products-page__empty-sub { font-size: 14px; color: var(--dim); margin: 0; }
.ax-products-page__empty-link { display: inline-flex; align-items: center; gap: 7px; padding: 10px 22px; border-radius: 10px; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.12); color: var(--dim); font-size: 13px; font-weight: 700; text-decoration: none; transition: background .18s, color .18s; margin-top: 4px; }
.ax-products-page__empty-link:hover { background: #ffffff; color: #000; }
.ax-products-page__modal-wrap { position: fixed; inset: 0; z-index: 9000; overflow-y: auto; display: flex; align-items: flex-end; justify-content: center; }
@media (min-width: 640px) { .ax-products-page__modal-wrap { align-items: center; } }
.ax-products-page__modal-backdrop { position: fixed; inset: 0; background: rgba(0,0,0,.7); backdrop-filter: blur(4px); }
.ax-products-page__modal-panel { position: relative; z-index: 1; width: 100%; max-width: 440px; max-height: 88vh; overflow-y: auto; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.12); border-radius: 16px 16px 0 0; padding: 0 0 24px; margin: 0; }
@media (min-width: 640px) { .ax-products-page__modal-panel { border-radius: 16px; margin: 24px; } }
.ax-products-page__modal-head { display: flex; align-items: center; justify-content: space-between; padding: 18px 18px 14px; border-bottom: 1px solid rgba(255,255,255,0.12); position: sticky; top: 0; background: rgba(255,255,255,0.04); z-index: 1; }
.ax-products-page__modal-title { font-family: 'Fredoka One', cursive; font-size: 15px; font-weight: 700; color: var(--text); margin: 0; }
/* ===== CHECKOUT / SYSTEM PAGES CATCH-ALL ===== */
body:not(:has(.atlas-page)) button,
body:not(:has(.atlas-page)) input[type="submit"],
body:not(:has(.atlas-page)) input[type="button"] {
  background-color: #000000 !important;
  color: #ffffff !important;
  border: 1px solid #333333 !important;
  border-radius: 8px !important;
}
.ax-products-page__modal-close { width: 28px; height: 28px; border-radius: 7px; background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.12); color: var(--dim); display: flex; align-items: center; justify-content: center; cursor: pointer; transition: background .15s, color .15s; }
.ax-products-page__modal-close:hover { background: #ffffff; color: #000; border-color: #ffffff; }
.ax-products-page__group-modal { position: relative; z-index: 1; width: 100%; max-width: 1100px; max-height: 90vh; overflow-y: auto; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.12); border-radius: 16px; padding: 0 0 24px; margin: 24px; }
.ax-products-page__group-grid { padding: 20px; display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 20px; }
/* ===== LIGHT MODE: DROPDOWN / CHIPS / BREADCRUMBS ===== */
.light-mode .nav-dropdown-panel { background: rgba(255,255,255,0.97); border-color: rgba(0,0,0,0.12); box-shadow: 0 20px 50px rgba(0,0,0,0.18); }
.light-mode .dd-item { color: #222222; }
.light-mode .dd-item:hover { background: rgba(0,0,0,0.05); color: #000000; }
.light-mode .dd-all { color: #000000; border-bottom-color: rgba(0,0,0,0.1); }
.light-mode .ax-cat-chip { color: #222222; border-color: rgba(0,0,0,0.15); background: rgba(0,0,0,0.03); }
.light-mode .ax-cat-chip:hover { border-color: rgba(0,0,0,0.3); background: rgba(0,0,0,0.06); color: #000000; }
.light-mode .ax-cat-chip.active { background: #000000; color: #ffffff; border-color: #000000; }
.light-mode .atlas-breadcrumbs a { color: #555570; }
.light-mode .atlas-breadcrumbs a:hover { color: #000000; }
.light-mode .atlas-bc-sep { color: #8888a0; }
.light-mode .atlas-bc-current { color: #000000; }
.light-mode .gallery-text-icon { color: #000000; }
.light-mode .header-nav.open { background: rgba(255,255,255,0.97); }


/* ==== AEXOR v2 dashboard styles (imported from theme 220349 ==== */
.ax-spacer {
  display: block;
  width: 100%;
  height: var(--total-h);
  pointer-events: none;
}
.ax-spacer--no-ribbon {
  height: calc(var(--topbar-h) + var(--nav-h));
}
.ax-header {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100vw !important;
  max-width: 100vw !important;
  z-index: 9999 !important;
  display: block !important;
  
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}
.ax-topbar {
  width: 100%;
  height: 32px;
  background: var(--r);
  overflow: hidden;
  display: flex;
  align-items: center;
  position: relative;
  
  background-image: repeating-linear-gradient(
    -52deg,
    transparent,
    transparent 14px,
    rgba(0,0,0,0.10) 14px,
    rgba(0,0,0,0.10) 16px
  );
  background-color: var(--r);
}
.ax-topbar::before,
.ax-topbar::after {
  content: '';
  position: absolute;
  top: 0;
  bottom: 0;
  width: 80px;
  z-index: 2;
  pointer-events: none;
}
.ax-topbar::before {
  left: 0;
  background: linear-gradient(90deg, var(--r), transparent);
}
.ax-topbar::after {
  right: 0;
  background: linear-gradient(-90deg, var(--r), transparent);
}
.ax-topbar__track {
  display: flex;
  align-items: center;
  width: max-content;
  animation: ax-ticker 28s linear infinite;
  will-change: transform;
}
.ax-topbar__track:hover {
  animation-play-state: paused;
}
.ax-topbar__set {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.ax-topbar__item {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 0 22px;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.90);
  white-space: nowrap;
  text-decoration: none;
  border-right: 1px solid rgba(255,255,255,0.12);
  height: 32px;
  transition: background 0.18s, color 0.18s;
}
.ax-topbar__item--link {
  cursor: pointer;
}
.ax-topbar__item--link:hover {
  background: rgba(0,0,0,0.15);
  color: #fff;
}
.ax-topbar__pip {
  width: 4px;
  height: 4px;
  background: rgba(255,255,255,0.40);
  border-radius: 50%;
  flex-shrink: 0;
}
.ax-topbar__arrow {
  font-size: 11px;
  opacity: 0.65;
  transition: opacity 0.18s, transform 0.18s;
}
.ax-topbar__item--link:hover .ax-topbar__arrow {
  opacity: 1;
  transform: translate(2px, -1px);
}
.ax-nav-shell {
  width: 100%;
  background: var(--s0);
  border-bottom: 1px solid var(--b1);
  position: relative;
}
.ax-nav-glow {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    var(--r-glow) 20%,
    var(--r) 40%,
    var(--r-hi) 50%,
    var(--r) 60%,
    var(--r-glow) 80%,
    transparent 100%
  );
  pointer-events: none;
  opacity: 0.7;
  z-index: 2;
}
.ax-nav-scanlines {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(
    0deg, transparent, transparent 2px,
    rgba(0,0,0,0.04) 2px, rgba(0,0,0,0.04) 4px
  );
  pointer-events: none;
  z-index: 0;
}
.ax-nav {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 0 36px;
  height: var(--nav-h);
  display: flex;
  align-items: center;
}
.ax-brand {
  display: flex;
  align-items: center;
  gap: 11px;
  text-decoration: none;
  flex-shrink: 0;
  margin-right: 32px;
  padding-right: 32px;
  border-right: 1px solid var(--b1);
  height: 100%;
  transition: opacity 0.2s;
}
.ax-brand:hover { opacity: 0.85; }
.ax-brand__img-wrap {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  background: var(--s2);
  border: 1px solid var(--b2);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: border-color 0.25s, box-shadow 0.25s;
}
.ax-brand:hover .ax-brand__img-wrap {
  border-color: var(--r-border);
  box-shadow: 0 0 18px var(--r-glow);
}
.ax-brand__img-wrap--empty {
  color: var(--r);
  background: var(--r-lo);
  border-color: var(--r-border);
}
.ax-brand__img-wrap--empty svg { width: 19px; height: 19px; }
.ax-brand__img { width: 100%; height: 100%; object-fit: contain; padding: 4px; }
.ax-brand__text { display: flex; flex-direction: column; gap: 2px; }
.ax-brand__name {
  font-family: var(--f-h);
  font-size: 15px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
  line-height: 1;
}
.ax-brand__sub {
  font-size: 8.5px;
  font-weight: 700;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--r);
  line-height: 1;
}
.ax-links {
  display: flex;
  align-items: center;
  gap: 2px;
  flex: 1;
  height: 100%;
  overflow-x: auto;
  overflow-y: visible;
}
.ax-link {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 36px;
  padding: 0 13px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--t2);
  text-decoration: none;
  border-radius: var(--rad);
  border: 1px solid transparent;
  white-space: nowrap;
  overflow: hidden;
  transition: color 0.18s, border-color 0.18s;
}
.ax-link::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--r-lo);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.2s ease;
  border-radius: inherit;
}
.ax-link:hover::before,
.ax-link--on::before { transform: scaleX(1); }
.ax-link:hover { color: var(--t1); border-color: var(--b1); }
.ax-link--on { color: var(--t1); border-color: var(--r-border); }
.ax-link__text { position: relative; z-index: 1; }
.ax-link__bar {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) scaleX(0);
  width: 50%;
  height: 2px;
  background: var(--r);
  border-radius: 2px 2px 0 0;
  transition: transform 0.2s ease;
}
.ax-link:hover .ax-link__bar,
.ax-link--on .ax-link__bar { transform: translateX(-50%) scaleX(1); }
.ax-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
  margin-left: auto;
  padding-left: 24px;
  border-left: 1px solid var(--b1);
  height: 100%;
}
.ax-currency {
  display: flex;
  align-items: center;
  gap: 5px;
  height: 34px;
  padding: 0 10px;
  background: var(--s2);
  border: 1px solid var(--b1);
  border-radius: var(--rad);
  transition: border-color 0.2s;
}
.ax-currency:hover { border-color: var(--b2); }
.ax-currency__globe { width: 12px; height: 12px; color: var(--t3); flex-shrink: 0; }
.ax-currency__select {
  appearance: none;
  background: transparent;
  border: none;
  color: var(--t2);
  font-family: var(--f-b);
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  outline: none;
  padding-right: 8px;
}
.ax-currency__caret { width: 9px; height: 9px; color: var(--t3); flex-shrink: 0; pointer-events: none; }
.ax-ghost {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 34px;
  padding: 0 14px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--t2);
  background: var(--s2);
  border: 1px solid var(--b1);
  border-radius: var(--rad);
  text-decoration: none;
  cursor: pointer;
  white-space: nowrap;
  position: relative;
  overflow: hidden;
  transition: color 0.18s, border-color 0.18s;
}
.ax-ghost::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, var(--r-lo), transparent);
  opacity: 0;
  transition: opacity 0.2s;
}
.ax-ghost:hover::before { opacity: 1; }
.ax-ghost:hover { color: var(--t1); border-color: var(--r-border); }
.ax-ghost svg { width: 14px; height: 14px; flex-shrink: 0; position: relative; z-index: 1; }
.ax-ghost--on { color: var(--t1) !important; background: var(--r-mid) !important; border-color: var(--r-border) !important; }
.ax-cart {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: var(--rad);
  border: 1px solid var(--b1);
  background: var(--s2);
  color: var(--t2);
  text-decoration: none;
  transition: color 0.18s, border-color 0.18s, background 0.18s;
  flex-shrink: 0;
}
.ax-cart:hover { color: var(--t1); border-color: var(--r-border); background: var(--r-lo); }
.ax-cart--on { color: var(--r-hi) !important; background: var(--r-lo) !important; border-color: var(--r-border) !important; }
.ax-cart svg { width: 16px; height: 16px; }
.ax-cart__badge {
  position: absolute;
  top: -6px; right: -6px;
  min-width: 16px; height: 16px;
  padding: 0 4px;
  background: var(--r);
  color: #fff;
  font-size: 9px;
  font-weight: 800;
  border-radius: 99px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 10px var(--r-glow);
  z-index: 10;
  animation: ax-pop 0.3s cubic-bezier(0.34,1.56,0.64,1) both;
}
.ax-ribbon {
  width: 100%;
  border-top: 1px solid var(--b1);
  background: var(--s1);
  position: relative;
}
.ax-ribbon::after {
  content: '';
  position: absolute;
  bottom: 0; left: 8%; right: 8%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--r-glow), transparent);
}
.ax-ribbon__inner {
  width: 100%;
  padding: 0 36px;
  height: var(--ribbon-h);
  display: flex;
  align-items: center;
}
.ax-stat { display: flex; align-items: center; gap: 8px; padding-right: 18px; }
.ax-stat__num {
  font-family: var(--f-d);
  font-size: 16px;
  letter-spacing: 0.05em;
  color: var(--r-hi);
  line-height: 1;
}
.ax-stat__lbl {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  color: var(--t3);
}
.ax-ribbon__div {
  width: 1px; height: 13px;
  background: var(--b2);
  margin-right: 18px;
  flex-shrink: 0;
}
.ax-ribbon__desc {
  font-size: 11px;
  color: var(--t3);
  margin-left: auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 40%;
}
.ax-foot-spacer { display: none; }
.ax-footer {
  position: relative;
  width: 100vw !important;
  max-width: 100vw !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  background: var(--s0);
  border-top: 1px solid var(--b1);
  margin-top: 80px;
  overflow: hidden;
}
.ax-footer__glow {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(
    90deg,
    transparent 0%,
    var(--r-glow) 20%,
    var(--r) 40%,
    var(--r-hi) 50%,
    var(--r) 60%,
    var(--r-glow) 80%,
    transparent 100%
  );
  opacity: 0.6;
  pointer-events: none;
}
.ax-footer::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(var(--b1) 1px, transparent 1px),
    linear-gradient(90deg, var(--b1) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: radial-gradient(ellipse 80% 60% at 50% 0%, black 0%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 80% 60% at 50% 0%, black 0%, transparent 100%);
  pointer-events: none;
  opacity: 0.5;
}
.ax-footer__main {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 56px 48px 48px;
  display: flex;
  align-items: flex-start;
  gap: 0;
}
.ax-footer__brand {
  flex: 0 0 280px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding-right: 48px;
}
.ax-footer__logo-link {
  display: flex;
  align-items: center;
  gap: 11px;
  text-decoration: none;
}
.ax-footer__logo-wrap {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  border: 1px solid var(--b2);
  background: var(--s2);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: border-color 0.25s, box-shadow 0.25s;
}
.ax-footer__logo-link:hover .ax-footer__logo-wrap {
  border-color: var(--r-border);
  box-shadow: 0 0 18px var(--r-glow);
}
.ax-footer__logo-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 4px;
}
.ax-footer__brand-text {
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.ax-footer__brand-name {
  font-family: var(--f-h);
  font-size: 16px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
  line-height: 1;
}
.ax-footer__brand-tag {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--r);
}
.ax-footer__brand-desc {
  font-size: 12.5px;
  color: var(--t3);
  line-height: 1.65;
  max-width: 240px;
}
.ax-footer__socials {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
.ax-social {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 8px;
  border: 1px solid var(--b1);
  background: var(--s2);
  color: var(--t3);
  text-decoration: none;
  transition: color 0.2s, border-color 0.2s, background 0.2s, box-shadow 0.2s;
  flex-shrink: 0;
}
.ax-social svg { width: 15px; height: 15px; }
.ax-social:hover { background: var(--s3); color: var(--t1); }
.ax-social--discord:hover { color: #5865f2; border-color: rgba(88,101,242,0.35); box-shadow: 0 0 12px rgba(88,101,242,0.2); }
.ax-social--telegram:hover { color: #29b6f6; border-color: rgba(41,182,246,0.35); box-shadow: 0 0 12px rgba(41,182,246,0.2); }
.ax-social--instagram:hover { color: #e1306c; border-color: rgba(225,48,108,0.35); box-shadow: 0 0 12px rgba(225,48,108,0.2); }
.ax-social--tiktok:hover { color: #f62755; border-color: rgba(246,39,85,0.35);  box-shadow: 0 0 12px rgba(246,39,85,0.2);  }
.ax-social--youtube:hover { color: #ff0000; border-color: rgba(255,0,0,0.35);    box-shadow: 0 0 12px rgba(255,0,0,0.2);    }
.ax-footer__vdiv {
  width: 1px;
  align-self: stretch;
  background: linear-gradient(180deg, transparent, var(--b2) 20%, var(--b2) 80%, transparent);
  flex-shrink: 0;
  margin: 0 48px;
}
.ax-footer__nav {
  flex: 1;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 40px 24px;
}
.ax-footer__col {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ax-footer__col-title {
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--r);
  margin-bottom: 4px;
  display: block;
}
.ax-footer__navlink {
  font-size: 13px;
  font-weight: 400;
  color: var(--t3);
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: color 0.18s, gap 0.18s;
  width: fit-content;
}
.ax-footer__navlink::before {
  content: '';
  display: inline-block;
  width: 0;
  height: 1px;
  background: var(--r);
  transition: width 0.2s ease;
  flex-shrink: 0;
}
.ax-footer__navlink:hover {
  color: var(--t1);
}
.ax-footer__navlink:hover::before {
  width: 10px;
}
.ax-footer__bottom {
  position: relative;
  z-index: 1;
  width: 100%;
  border-top: 1px solid var(--b1);
  background: var(--s1);
}
.ax-footer__bottom-inner {
  width: 100%;
  padding: 0 48px;
  height: 44px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.ax-footer__bottom-left {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}
.ax-footer__badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.06em;
  color: var(--t3);
  font-family: var(--f-h);
  text-transform: uppercase;
}
.ax-footer__badge-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--r);
  box-shadow: 0 0 6px var(--r-glow);
  animation: ax-pulse 2s ease-in-out infinite;
  flex-shrink: 0;
}
.ax-footer__copy {
  font-size: 11px;
  color: var(--t3);
  opacity: 0.6;
}
.ax-footer__bottom-right {
  display: flex;
  align-items: center;
}
.ax-footer__made {
  font-size: 11px;
  color: var(--t3);
  opacity: 0.5;
}
.ax-footer__made-link {
  color: var(--r);
  text-decoration: none;
  font-weight: 600;
  opacity: 1;
  transition: opacity 0.18s;
}
.ax-footer__made-link:hover { opacity: 0.75; }
.ax-products {
  width: 100%;
  padding: 48px 0 64px;
}
.ax-products__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 32px;
  flex-wrap: wrap;
}
.ax-products__title-wrap {
  display: flex;
  align-items: center;
  gap: 14px;
}
.ax-products__title-accent {
  display: block;
  width: 4px;
  height: 28px;
  background: linear-gradient(180deg, var(--r-hi), var(--r));
  border-radius: 4px;
  flex-shrink: 0;
  box-shadow: 0 0 12px var(--r-glow);
}
.ax-products__title {
  font-family: var(--f-h);
  font-size: 22px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
}
.ax-products__search-wrap {
  flex-shrink: 0;
}
.ax-products__search {
  display: flex;
  align-items: center;
  gap: 10px;
  height: 40px;
  padding: 0 14px;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: var(--rad);
  min-width: 260px;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.ax-products__search:focus-within {
  border-color: var(--r-border);
  box-shadow: 0 0 0 3px var(--r-lo);
}
.ax-products__search-icon {
  width: 15px;
  height: 15px;
  color: var(--t3);
  flex-shrink: 0;
}
.ax-products__search-input {
  flex: 1;
  background: transparent;
  border: none;
  outline: none;
  color: var(--t1);
  font-family: var(--f-b);
  font-size: 13px;
}
.ax-products__search-input::placeholder { color: var(--t3); }
.ax-products__search-kbd {
  display: flex;
}
.ax-products__search-kbd kbd {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background: var(--s3);
  border: 1px solid var(--b2);
  border-radius: 4px;
  font-size: 10px;
  font-family: var(--f-b);
  color: var(--t3);
}
.ax-products__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 20px;
  width: 100%;
}
.ax-products__grid--centered {
  justify-items: center;
}
.ax-products__item {
  width: 100%;
}
.ax-card {
  display: block;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: var(--t1);
  border-radius: 12px;
  outline: none;
  
  transform: perspective(900px) rotateX(0deg) rotateY(0deg) scale3d(1,1,1);
  transition: transform 0.12s ease, box-shadow 0.2s ease;
  transform-style: preserve-3d;
  will-change: transform;
}
.ax-card:hover {
  box-shadow:
    0 20px 60px rgba(0,0,0,0.5),
    0 0 0 1px var(--r-border),
    0 0 40px var(--r-lo);
}
.ax-card__inner {
  position: relative;
  width: 100%;
  height: 100%;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: border-color 0.2s;
}
.ax-card:hover .ax-card__inner {
  border-color: var(--r-border);
}
.ax-card__shine {
  display: none !important;
}
.ax-card__img-wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  background: var(--s2);
  border-bottom: 1px solid var(--b1);
}
.ax-card__img {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  display: block;
  transition: transform 0.5s cubic-bezier(0.25,0.46,0.45,0.94);
}
.ax-card__img--group {
  aspect-ratio: 21/9;
}
.ax-card:hover .ax-card__img {
  transform: scale(1.05);
}
.ax-card__img-empty {
  width: 100%;
  aspect-ratio: 16/9;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r);
  opacity: 0.25;
}
.ax-card__img-empty svg { width: 52px; height: 52px; }
.ax-card__img-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 50%;
  background: linear-gradient(0deg, var(--s1) 0%, transparent 100%);
  pointer-events: none;
}
.ax-card__badges {
  position: absolute;
  top: 10px;
  right: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  z-index: 2;
}
.ax-card__badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  border-radius: 6px;
  font-size: 10px;
  font-weight: 700;
  font-family: var(--f-h);
  letter-spacing: 0.06em;
  color: #fff;
  text-transform: uppercase;
  backdrop-filter: blur(6px);
}
.ax-card__group-tag {
  position: absolute;
  bottom: 10px;
  left: 10px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  background: rgba(0,0,0,0.6);
  backdrop-filter: blur(8px);
  border: 1px solid var(--b2);
  border-radius: 6px;
  font-size: 10px;
  font-weight: 600;
  font-family: var(--f-h);
  color: var(--t2);
  z-index: 2;
}
.ax-card__group-tag svg { width: 11px; height: 11px; }
.ax-card__stock {
  position: absolute;
  top: 10px;
  left: 10px;
  padding: 3px 9px;
  border-radius: 6px;
  font-size: 9.5px;
  font-weight: 700;
  font-family: var(--f-h);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  z-index: 2;
  backdrop-filter: blur(6px);
}
.ax-card__stock--out {
  background: rgba(220,38,38,0.18);
  border: 1px solid rgba(220,38,38,0.3);
  color: #f87171;
}
.ax-card__stock--inf {
  background: rgba(34,197,94,0.12);
  border: 1px solid rgba(34,197,94,0.25);
  color: #4ade80;
}
.ax-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 16px 18px 18px;
  gap: 12px;
}
.ax-card__body-top {
  display: flex;
  flex-direction: column;
  gap: 6px;
  flex: 1;
}
.ax-card__name {
  font-family: var(--f-h);
  font-size: 15px;
  font-weight: 700;
  color: var(--t1);
  letter-spacing: -0.01em;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ax-card__meta {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
.ax-card__meta-item {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 11px;
  color: var(--t3);
  font-weight: 500;
}
.ax-card__meta-item svg { width: 12px; height: 12px; }
.ax-card__price-row {
  display: flex;
  align-items: baseline;
  gap: 8px;
}
.ax-card__price {
  font-family: var(--f-h);
  font-size: 18px;
  font-weight: 800;
  color: var(--r-hi);
  letter-spacing: -0.02em;
  display: flex;
  align-items: baseline;
  gap: 4px;
}
.ax-card__price-sep {
  font-size: 13px;
  color: var(--t3);
  font-weight: 400;
}
.ax-card__price-slash {
  font-size: 12px;
  color: var(--t3);
  text-decoration: line-through;
  font-weight: 400;
}
.ax-card__cta {
  margin-top: auto;
}
.ax-card__cta-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  height: 36px;
  padding: 0 16px;
  background: var(--r);
  border-radius: 8px;
  font-family: var(--f-h);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: #fff;
  text-decoration: none;
  border: none;
  position: relative;
  overflow: hidden;
  transition: background 0.2s;
  z-index: 10;
  pointer-events: all !important;
}
.ax-card__cta-btn:hover {
  background: var(--r-hi);
}
.ax-card__cta-btn svg {
  width: 13px;
  height: 13px;
  flex-shrink: 0;
}
.ax-card__cta-btn--ghost {
  background: transparent;
  border: 1px solid var(--r-border);
  color: var(--r-hi);
}
.ax-card__cta-btn--ghost:hover {
  background: var(--r-lo);
}
.ax-card__cta-btn::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.10), transparent);
  transform: translateX(-100%);
  transition: transform 0.5s ease;
}
.ax-card:hover .ax-card__cta-btn::before {
  transform: translateX(100%);
}
.ax-card:hover .ax-card__cta-btn {
  background: var(--r-hi);
}
.ax-card__cta-btn svg { width: 13px; height: 13px; flex-shrink: 0; }
.ax-card__cta-btn--ghost {
  background: transparent;
  border: 1px solid var(--r-border);
  color: var(--r-hi);
}
.ax-card:hover .ax-card__cta-btn--ghost {
  background: var(--r-lo);
}
.ax-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 9000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}
.ax-modal-backdrop__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.82);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}
.ax-modal {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1100px;
  max-height: 88vh;
  overflow-y: auto;
  background: var(--s1);
  border: 1px solid var(--b2);
  border-radius: 14px;
  box-shadow: 0 40px 100px rgba(0,0,0,0.7), 0 0 0 1px var(--r-border);
  scrollbar-width: thin;
  scrollbar-color: var(--b2) transparent;
}
.ax-modal__glow {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--r), transparent);
  opacity: 0.6;
  pointer-events: none;
}
.ax-modal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 24px;
  border-bottom: 1px solid var(--b1);
  position: sticky;
  top: 0;
  background: var(--s1);
  z-index: 2;
}
.ax-modal__title-wrap {
  display: flex;
  align-items: center;
  gap: 12px;
}
.ax-modal__title-pip {
  display: block;
  width: 3px;
  height: 20px;
  background: var(--r);
  border-radius: 3px;
  flex-shrink: 0;
}
.ax-modal__title {
  font-family: var(--f-h);
  font-size: 17px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
}
.ax-modal__count {
  font-size: 11px;
  font-weight: 600;
  color: var(--t3);
  background: var(--s3);
  border: 1px solid var(--b1);
  border-radius: 99px;
  padding: 2px 10px;
  font-family: var(--f-h);
}
.ax-modal__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: var(--s2);
  border: 1px solid var(--b1);
  border-radius: 8px;
  color: var(--t3);
  cursor: pointer;
  transition: color 0.18s, border-color 0.18s, background 0.18s;
}
.ax-modal__close:hover {
  color: var(--t1);
  border-color: var(--r-border);
  background: var(--r-lo);
}
.ax-modal__close svg { width: 15px; height: 15px; }
.ax-modal__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 16px;
  padding: 20px 24px 24px;
}
.ax-card { cursor: default; }
.ax-card__nav { cursor: pointer; }
.ax-card__cta-btn { cursor: pointer; }
.ax-card {
  transition: box-shadow 0.2s ease, transform 0.08s ease;
  transform-style: preserve-3d;
  will-change: transform;
}
.ax-card.ax-card--resetting {
  transition: transform 0.35s cubic-bezier(0.23,1,0.32,1), box-shadow 0.2s ease;
}
.ax-hero {
  position: relative;
  width: 100vw !important;
  max-width: 100vw !important;
  left: 50% !important;
  right: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  overflow: hidden;
  padding: 96px 0 112px;
  background: var(--bg);
}
.ax-hero__bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}
.ax-hero__grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(var(--b1) 1px, transparent 1px),
    linear-gradient(90deg, var(--b1) 1px, transparent 1px);
  background-size: 56px 56px;
  mask-image: radial-gradient(ellipse 80% 70% at 50% 0%, black 0%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 80% 70% at 50% 0%, black 0%, transparent 100%);
  opacity: 0.6;
}
.ax-hero__glow-left {
  position: absolute;
  top: -60px;
  left: -120px;
  width: 520px;
  height: 520px;
  border-radius: 50%;
  background: radial-gradient(circle, var(--r-glow) 0%, transparent 70%);
  opacity: 0.45;
  filter: blur(40px);
}
.ax-hero__glow-right {
  position: absolute;
  bottom: -80px;
  right: -100px;
  width: 480px;
  height: 480px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0,136,255,0.12) 0%, transparent 70%);
  opacity: 0.5;
  filter: blur(60px);
}
.ax-hero__inner {
  position: relative;
  z-index: 1;
  max-width: 860px;
  margin: 0 auto;
  padding: 0 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 28px;
}
.ax-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 5px 16px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  border-radius: 99px;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--r-hi);
}
.ax-hero__eyebrow-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--r);
  box-shadow: 0 0 8px var(--r-glow);
  animation: ax-pulse 2s ease-in-out infinite;
  flex-shrink: 0;
}
.ax-hero__headline {
  font-family: var(--f-h);
  font-size: clamp(2.4rem, 5.5vw, 4.2rem);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -0.03em;
  color: var(--t1);
  max-width: 800px;
}
.ax-hero__headline mark,
.ax-hero__headline .ax-hl {
  background: none;
  color: transparent;
  background-image: linear-gradient(90deg, var(--r-hi), #33DDFF);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.ax-hero__sub {
  font-size: clamp(0.95rem, 2vw, 1.15rem);
  color: var(--t2);
  line-height: 1.65;
  max-width: 580px;
  font-family: var(--f-b);
}
.ax-hero__ctas {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 4px;
}
.ax-hero__cta {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  height: 44px;
  padding: 0 26px;
  border-radius: 10px;
  font-family: var(--f-h);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  text-decoration: none;
  white-space: nowrap;
  position: relative;
  overflow: hidden;
  transition: transform 0.18s ease, box-shadow 0.2s ease;
}
.ax-hero__cta:hover { transform: translateY(-1px); }
.ax-hero__cta svg { width: 15px; height: 15px; flex-shrink: 0; }
.ax-hero__cta--primary {
  background: var(--r);
  color: #fff;
  box-shadow: 0 6px 28px var(--r-glow);
}
.ax-hero__cta--primary::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.12), transparent);
  transform: translateX(-100%);
  transition: transform 0.5s ease;
}
.ax-hero__cta--primary:hover::before { transform: translateX(100%); }
.ax-hero__cta--primary:hover { background: var(--r-hi); box-shadow: 0 8px 36px var(--r-glow); }
.ax-hero__cta--secondary {
  background: var(--s2);
  color: var(--t2);
  border: 1px solid var(--b2);
}
.ax-hero__cta--secondary:hover {
  color: var(--t1);
  border-color: var(--r-border);
  background: var(--r-lo);
  box-shadow: 0 4px 20px var(--r-lo);
}
.ax-hero__trust {
  display: flex;
  align-items: center;
  gap: 0;
  flex-wrap: wrap;
  justify-content: center;
  padding: 12px 20px;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 12px;
  margin-top: 4px;
}
.ax-hero__trust-item {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 4px 18px;
  font-family: var(--f-h);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--t3);
}
.ax-hero__trust-item svg { width: 14px; height: 14px; color: var(--r); flex-shrink: 0; }
.ax-hero__trust-sep {
  width: 1px;
  height: 14px;
  background: var(--b2);
  flex-shrink: 0;
}
.ax-hero__stats {
  display: flex;
  align-items: center;
  gap: 0;
  margin-top: 8px;
}
.ax-hero__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 0 36px;
}
.ax-hero__stat-num {
  font-family: var(--f-d);
  font-size: 34px;
  letter-spacing: 0.04em;
  color: var(--r-hi);
  line-height: 1;
}
.ax-hero__stat-unit {
  font-size: 18px;
  color: var(--t3);
}
.ax-hero__stat-lbl {
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--t3);
}
.ax-hero__stat-div {
  width: 1px;
  height: 40px;
  background: linear-gradient(180deg, transparent, var(--b2), transparent);
  flex-shrink: 0;
}
.ax-features {
  padding: 64px 0 72px;
  width: 100%;
}
.ax-features__header {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 40px;
}
.ax-features__header-wrap {
  display: flex;
  align-items: center;
  gap: 14px;
}
.ax-features__header-accent {
  display: block;
  width: 4px;
  height: 28px;
  background: linear-gradient(180deg, var(--r-hi), var(--r));
  border-radius: 4px;
  flex-shrink: 0;
  box-shadow: 0 0 12px var(--r-glow);
}
.ax-features__title {
  font-family: var(--f-h);
  font-size: 22px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
}
.ax-features__subtitle {
  font-size: 13.5px;
  color: var(--t3);
  line-height: 1.6;
  max-width: 520px;
  margin-left: 18px;
}
.ax-features__grid {
  display: grid;
  gap: 18px;
  width: 100%;
}
.ax-features__grid--2 { grid-template-columns: repeat(2, 1fr); }
.ax-features__grid--3 { grid-template-columns: repeat(3, 1fr); }
.ax-features__grid--4 { grid-template-columns: repeat(4, 1fr); }
.ax-feat-card {
  position: relative;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  padding: 28px 24px 24px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  overflow: hidden;
  transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
}
.ax-feat-card:hover {
  border-color: var(--r-border);
  box-shadow: 0 12px 40px rgba(0,0,0,0.35), 0 0 0 1px var(--r-border), 0 0 28px var(--r-lo);
  transform: translateY(-2px);
}
.ax-feat-card__line {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--r), transparent);
  opacity: 0;
  transition: opacity 0.2s;
}
.ax-feat-card:hover .ax-feat-card__line { opacity: 1; }
.ax-feat-card__icon-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 10px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  color: var(--r-hi);
  font-size: 18px;
  flex-shrink: 0;
  transition: background 0.2s, box-shadow 0.2s;
}
.ax-feat-card:hover .ax-feat-card__icon-wrap {
  background: var(--r-mid);
  box-shadow: 0 0 20px var(--r-glow);
}
.ax-feat-card__icon-wrap svg { width: 20px; height: 20px; }
.ax-feat-card__body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}
.ax-feat-card__title {
  font-family: var(--f-h);
  font-size: 15px;
  font-weight: 700;
  color: var(--t1);
  letter-spacing: -0.01em;
  line-height: 1.25;
}
.ax-feat-card__desc {
  font-size: 13px;
  color: var(--t3);
  line-height: 1.6;
}
.ax-reviews {
  padding: 48px 0 64px;
  width: 100%;
}
.ax-reviews__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 32px;
  flex-wrap: wrap;
}
.ax-reviews__title-wrap {
  display: flex;
  align-items: center;
  gap: 14px;
}
.ax-reviews__title-accent {
  display: block;
  width: 4px;
  height: 28px;
  background: linear-gradient(180deg, var(--r-hi), var(--r));
  border-radius: 4px;
  flex-shrink: 0;
  box-shadow: 0 0 12px var(--r-glow);
}
.ax-reviews__title {
  font-family: var(--f-h);
  font-size: 22px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
}
.ax-reviews__sort {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}
.ax-reviews__sort-label {
  font-size: 12px;
  font-weight: 600;
  color: var(--t3);
  font-family: var(--f-h);
  white-space: nowrap;
  text-transform: uppercase;
  letter-spacing: 0.08em;
}
.ax-reviews__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 16px;
  width: 100%;
}
.ax-review-card {
  position: relative;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  cursor: pointer;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.ax-review-card:hover {
  border-color: var(--r-border);
  box-shadow: 0 8px 32px rgba(0,0,0,0.3), 0 0 20px var(--r-lo);
}
.ax-review-card__top-line {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--r-glow), transparent);
  opacity: 0;
  transition: opacity 0.2s;
}
.ax-review-card:hover .ax-review-card__top-line { opacity: 1; }
.ax-review-card__body {
  flex: 1;
  padding: 18px 18px 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ax-review-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.ax-review-card__stars {
  display: flex;
  align-items: center;
  gap: 2px;
}
.ax-review-card__star-filled {
  width: 13px;
  height: 13px;
  color: var(--r-hi);
  flex-shrink: 0;
}
.ax-review-card__star-empty {
  color: var(--t3);
  width: 14px;
  height: 14px;
  opacity: 0.4;
}
.ax-review-card__date {
  font-size: 10.5px;
  color: var(--t3);
  font-weight: 500;
  font-family: var(--f-b);
}
.ax-review-card__message {
  font-size: 13.5px;
  color: var(--t2);
  line-height: 1.6;
  word-break: break-word;
}
.ax-review-card__message--truncated {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ax-review-card__reply {
  background: rgba(255,255,255,0.03);
  border: 1px solid var(--b1);
  border-left: 2px solid var(--r);
  border-radius: 8px;
  padding: 10px 12px;
  margin-top: 2px;
}
.ax-review-card__reply-text {
  font-size: 12.5px;
  color: var(--t3);
  line-height: 1.55;
}
.ax-review-card__reply-meta {
  font-size: 10px;
  color: var(--t3);
  opacity: 0.6;
  margin-top: 6px;
  text-align: right;
}
.ax-review-card__reply-meta span {
  color: var(--r);
  opacity: 1;
}
.ax-review-card__footer {
  padding: 9px 18px;
  border-top: 1px solid var(--b1);
  background: rgba(0,0,0,0.15);
  display: flex;
  align-items: center;
  gap: 6px;
}
.ax-review-card__product {
  font-size: 10.5px;
  color: var(--t3);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ax-review-card__product-icon {
  width: 12px;
  height: 12px;
  color: var(--r);
  flex-shrink: 0;
}
.ax-reviews__view-all {
  display: flex;
  justify-content: center;
  margin-top: 32px;
}
.ax-reviews__view-all-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 38px;
  padding: 0 22px;
  background: transparent;
  border: 1px solid var(--r-border);
  border-radius: 8px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--r-hi);
  text-decoration: none;
  transition: background 0.18s, box-shadow 0.18s;
}
.ax-reviews__view-all-link:hover {
  background: var(--r-lo);
  box-shadow: 0 0 20px var(--r-lo);
}
.ax-reviews__view-all-link svg { width: 13px; height: 13px; }
.ax-reviews__empty {
  font-size: 14px;
  color: var(--t3);
  padding: 24px 0;
}
.ax-faq {
  padding: 48px 0 64px;
  width: 100%;
}
.ax-faq__header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 32px;
}
.ax-faq__header-accent {
  display: block;
  width: 4px;
  height: 28px;
  background: linear-gradient(180deg, var(--r-hi), var(--r));
  border-radius: 4px;
  flex-shrink: 0;
  box-shadow: 0 0 12px var(--r-glow);
}
.ax-faq__title {
  font-family: var(--f-h);
  font-size: 22px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
}
.ax-faq__list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  max-width: 820px;
}
.ax-faq-item {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 12px;
  overflow: hidden;
  transition: border-color 0.2s;
}
.ax-faq-item--open,
.ax-faq-item:hover {
  border-color: var(--r-border);
}
.ax-faq-item__trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 22px;
  background: none;
  border: none;
  cursor: pointer;
  text-align: left;
}
.ax-faq-item__q {
  font-family: var(--f-h);
  font-size: 14.5px;
  font-weight: 700;
  color: var(--t1);
  letter-spacing: -0.01em;
  line-height: 1.35;
  flex: 1;
}
.ax-faq-item__icon {
  width: 20px;
  height: 20px;
  border-radius: 6px;
  background: var(--s2);
  border: 1px solid var(--b1);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: background 0.2s, border-color 0.2s, transform 0.25s ease;
  color: var(--t3);
}
.ax-faq-item--open .ax-faq-item__icon {
  background: var(--r-lo);
  border-color: var(--r-border);
  color: var(--r-hi);
  transform: rotate(45deg);
}
.ax-faq-item__icon svg { width: 11px; height: 11px; }
.ax-faq-item__answer {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.3s ease, padding 0.2s ease;
}
.ax-faq-item--open .ax-faq-item__answer {
  
}
.ax-faq-item__answer-inner {
  padding: 0 22px 20px;
  border-top: 1px solid var(--b1);
  padding-top: 16px;
  margin-top: -1px;
}
.ax-faq-item__a {
  font-size: 13.5px;
  color: var(--t3);
  line-height: 1.7;
  white-space: pre-line;
}
.ax-text-block {
  padding: 40px 0 56px;
  width: 100%;
}
.ax-text-block--bg {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  padding: 36px 40px;
}
.ax-text-block__header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 20px;
}
.ax-text-block__header--center {
  justify-content: center;
  text-align: center;
}
.ax-text-block__header--right {
  justify-content: flex-end;
  text-align: right;
}
.ax-text-block__title-accent {
  display: block;
  width: 4px;
  height: 28px;
  background: linear-gradient(180deg, var(--r-hi), var(--r));
  border-radius: 4px;
  flex-shrink: 0;
  box-shadow: 0 0 12px var(--r-glow);
}
.ax-text-block__title {
  font-family: var(--f-h);
  font-size: 22px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
}
.ax-text-block__body {
  font-size: 14px;
  color: var(--t3);
  line-height: 1.7;
  max-width: 720px;
  white-space: pre-line;
}
.ax-text-block__body--center { margin: 0 auto; text-align: center; }
.ax-text-block__body--right { margin-left: auto; text-align: right; }
.ax-text-block__buttons {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 24px;
}
.ax-text-block__buttons--center { justify-content: center; }
.ax-text-block__buttons--right { justify-content: flex-end; }
.ax-product-page {
  padding: 32px 0 64px;
  width: 100%;
}
.ax-product-page__breadcrumb {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 24px;
  font-size: 12px;
  font-family: var(--f-h);
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--t3);
}
.ax-product-page__breadcrumb a {
  color: var(--t3);
  text-decoration: none;
  transition: color 0.18s;
}
.ax-product-page__breadcrumb a:hover { color: var(--r-hi); }
.ax-product-page__breadcrumb-sep { color: var(--b2); }
.ax-product-page__breadcrumb-current { color: var(--t2); }
.ax-product-page__layout {
  display: flex;
  gap: 28px;
  align-items: flex-start;
}
.ax-product-page__left { flex: 0 0 60%; }
.ax-product-page__right { flex: 0 0 calc(40% - 28px); }
.ax-product-page__card {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  overflow: hidden;
}
.ax-product-page__title-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 20px 24px;
  border-bottom: 1px solid var(--b1);
  background: rgba(0,0,0,0.2);
}
.ax-product-page__title {
  font-family: var(--f-h);
  font-size: 20px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
  line-height: 1.25;
  flex: 1;
}
.ax-product-page__status {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  flex-shrink: 0;
}
.ax-product-page__tabs {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 14px 20px 0;
  border-bottom: 1px solid var(--b1);
  overflow-x: auto;
}
.ax-product-page__tab {
  display: inline-flex;
  align-items: center;
  height: 32px;
  padding: 0 14px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--t3);
  background: transparent;
  border: none;
  border-radius: 8px 8px 0 0;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  transition: color 0.18s, border-color 0.18s;
  white-space: nowrap;
  position: relative;
  bottom: -1px;
}
.ax-product-page__tab:hover { color: var(--t2); }
.ax-product-page__tab--active { color: var(--r-hi); border-bottom-color: var(--r); }
.ax-product-page__desc {
  padding: 24px;
}
.ax-product-page__buy-card {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  overflow: hidden;
  position: sticky;
  top: calc(var(--total-h) + 20px);
}
.ax-product-page__price-block {
  padding: 20px 24px;
  border-bottom: 1px solid var(--b1);
  background: rgba(0,0,0,0.2);
}
.ax-product-page__price {
  font-family: var(--f-h);
  font-size: 28px;
  font-weight: 800;
  color: var(--r-hi);
  letter-spacing: -0.02em;
}
.ax-product-page__price-each {
  font-size: 12px;
  color: var(--t3);
  margin-top: 2px;
}
.ax-product-page__upsells-title {
  font-family: var(--f-h);
  font-size: 16px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.01em;
  margin-bottom: 16px;
  padding-left: 14px;
  border-left: 3px solid var(--r);
}
.ax-login-backdrop {
  position: fixed;
  inset: 0;
  z-index: 9100;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}
.ax-login-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.88);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}
.ax-login-modal {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 420px;
  background: var(--s1);
  border: 1px solid var(--b2);
  border-radius: 16px;
  box-shadow: 0 40px 100px rgba(0,0,0,0.7), 0 0 0 1px var(--r-border);
  overflow: hidden;
}
.ax-login-modal__top-line {
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--r), var(--r-hi), var(--r), transparent);
}
.ax-login-modal__brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 28px 32px 0;
  text-align: center;
}
.ax-login-modal__logo {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r-hi);
  box-shadow: 0 0 20px var(--r-glow);
}
.ax-login-modal__logo svg { width: 22px; height: 22px; }
.ax-login-modal__title {
  font-family: var(--f-h);
  font-size: 18px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
}
.ax-login-modal__sub {
  font-size: 12.5px;
  color: var(--t3);
  line-height: 1.5;
}
.ax-login-modal__close {
  position: absolute;
  top: 14px;
  right: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: var(--s2);
  border: 1px solid var(--b1);
  border-radius: 7px;
  color: var(--t3);
  cursor: pointer;
  transition: color 0.18s, border-color 0.18s, background 0.18s;
}
.ax-login-modal__close:hover {
  color: var(--t1);
  border-color: var(--r-border);
  background: var(--r-lo);
}
.ax-login-modal__close svg { width: 13px; height: 13px; }
.ax-login-modal__body {
  padding: 24px 32px 28px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.ax-login-modal__step-label {
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--t3);
  font-family: var(--f-h);
}
.ax-login-modal__hint {
  font-size: 12px;
  color: var(--t3);
  margin-top: 4px;
}
.ax-login-modal__input-wrap {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.ax-login-modal__input {
  width: 100%;
  height: 42px;
  padding: 0 14px;
  background: var(--s2);
  border: 1px solid var(--b2);
  border-radius: 9px;
  color: var(--t1);
  font-family: var(--f-b);
  font-size: 14px;
  outline: none;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.ax-login-modal__input:focus {
  border-color: var(--r-border);
  box-shadow: 0 0 0 3px var(--r-lo);
}
.ax-login-modal__input::placeholder { color: var(--t3); }
.ax-login-modal__otp-row {
  display: flex;
  gap: 8px;
}
.ax-login-modal__otp-box {
  flex: 1;
  height: 48px;
  background: var(--s2);
  border: 1px solid var(--b2);
  border-radius: 9px;
  color: var(--t1);
  font-family: var(--f-h);
  font-size: 20px;
  font-weight: 700;
  text-align: center;
  outline: none;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.ax-login-modal__otp-box:focus {
  border-color: var(--r-border);
  box-shadow: 0 0 0 3px var(--r-lo);
}
.ax-login-modal__error {
  font-size: 12px;
  color: #f87171;
  font-weight: 500;
}
.ax-login-modal__submit {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  height: 42px;
  background: var(--r);
  border: none;
  border-radius: 9px;
  font-family: var(--f-h);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: #fff;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: background 0.2s, box-shadow 0.2s;
}
.ax-login-modal__submit::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.12), transparent);
  transform: translateX(-100%);
  transition: transform 0.5s ease;
}
.ax-login-modal__submit:hover::before { transform: translateX(100%); }
.ax-login-modal__submit:hover { background: var(--r-hi); box-shadow: 0 4px 20px var(--r-glow); }
.ax-login-modal__submit:disabled { opacity: 0.5; pointer-events: none; }
.ax-login-modal__submit svg { width: 16px; height: 16px; }
.ax-login-modal__divider {
  display: flex;
  align-items: center;
  gap: 12px;
}
.ax-login-modal__divider-line {
  flex: 1;
  height: 1px;
  background: var(--b1);
}
.ax-login-modal__divider-text {
  font-size: 10px;
  color: var(--t3);
  font-family: var(--f-h);
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  white-space: nowrap;
}
.ax-login-modal__security-note {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-size: 10.5px;
  color: var(--t3);
  opacity: 0.7;
}
.ax-login-modal__security-note svg { width: 12px; height: 12px; color: var(--r); }
.ax-cart-page {
  padding: 32px 0 80px;
  width: 100%;
}
.ax-cart-page__header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 28px;
}
.ax-cart-page__header-accent {
  display: block;
  width: 4px;
  height: 28px;
  background: linear-gradient(180deg, var(--r-hi), var(--r));
  border-radius: 4px;
  flex-shrink: 0;
  box-shadow: 0 0 12px var(--r-glow);
}
.ax-cart-page__title {
  font-family: var(--f-h);
  font-size: 22px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
}
.ax-cart-page__count {
  font-size: 11px;
  font-weight: 700;
  color: var(--t3);
  background: var(--s3);
  border: 1px solid var(--b1);
  border-radius: 99px;
  padding: 2px 12px;
  font-family: var(--f-h);
}
.ax-cart-page__layout {
  display: flex;
  gap: 24px;
  align-items: flex-start;
}
.ax-cart-page__items { flex: 1; }
.ax-cart-page__sidebar {
  flex: 0 0 300px;
  position: sticky;
  top: calc(var(--total-h) + 20px);
}
.ax-cart-alert {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 14px 18px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  border-radius: 10px;
  margin-bottom: 16px;
  font-size: 13px;
  color: var(--t2);
}
.ax-cart-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 120px;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  color: var(--r);
}
.ax-cart-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 56px 24px;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  text-align: center;
}
.ax-cart-empty__icon {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r);
}
.ax-cart-empty__icon svg { width: 24px; height: 24px; }
.ax-cart-empty__title {
  font-family: var(--f-h);
  font-size: 16px;
  font-weight: 700;
  color: var(--t2);
}
.ax-cart-empty__sub { font-size: 13px; color: var(--t3); }
.ax-cart-empty__cta {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 38px;
  padding: 0 20px;
  background: var(--r);
  border-radius: 8px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #fff;
  text-decoration: none;
}
.ax-cart-empty__cta:hover { background: var(--r-hi); }
.ax-cart-items { display: flex; flex-direction: column; gap: 12px; }
.ax-cart-item {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  align-items: stretch;
  transition: border-color 0.2s;
}
.ax-cart-item:hover { border-color: var(--r-border); }
.ax-cart-item__img-wrap {
  width: 110px;
  flex-shrink: 0;
  background: var(--s2);
  border-right: 1px solid var(--b1);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.ax-cart-item__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.ax-cart-item__img-placeholder {
  color: var(--r);
  opacity: 0.2;
}
.ax-cart-item__img-placeholder svg { width: 36px; height: 36px; }
.ax-cart-item__info {
  flex: 1;
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 4px;
  overflow: hidden;
}
.ax-cart-item__name {
  font-family: var(--f-h);
  font-size: 14px;
  font-weight: 700;
  color: var(--t1);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-decoration: none;
  transition: color 0.18s;
}
.ax-cart-item__name:hover { color: var(--r-hi); }
.ax-cart-item__variant {
  font-size: 12px;
  color: var(--t3);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ax-cart-item__volume-hint {
  font-size: 10.5px;
  color: var(--r);
  opacity: 0.8;
}
.ax-cart-item__addons {
  display: flex;
  gap: 4px;
  flex-wrap: wrap;
  margin-top: 2px;
}
.ax-cart-item__addon-tag {
  display: inline-flex;
  padding: 1px 7px;
  background: var(--s2);
  border: 1px solid var(--b1);
  border-radius: 5px;
  font-size: 10px;
  color: var(--t3);
}
.ax-cart-item__actions {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 0 16px 0 0;
  flex-shrink: 0;
}
.ax-qty {
  display: flex;
  align-items: stretch;
  border: 1px solid var(--b2);
  border-radius: 8px;
  overflow: hidden;
  background: var(--s2);
}
.ax-qty__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  background: transparent;
  border: none;
  color: var(--t3);
  cursor: pointer;
  transition: background 0.18s, color 0.18s;
}
.ax-qty__btn:hover { background: var(--r-lo); color: var(--r-hi); }
.ax-qty__btn:disabled { opacity: 0.35; pointer-events: none; }
.ax-qty__btn svg { width: 13px; height: 13px; }
.ax-qty__input {
  width: 40px;
  background: transparent;
  border: none;
  border-left: 1px solid var(--b1);
  border-right: 1px solid var(--b1);
  color: var(--t1);
  font-family: var(--f-b);
  font-size: 13px;
  text-align: center;
  outline: none;
}
.ax-cart-item__price {
  font-family: var(--f-h);
  font-size: 16px;
  font-weight: 700;
  color: var(--r-hi);
  min-width: 72px;
  text-align: right;
}
.ax-cart-item__remove {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: transparent;
  border: 1px solid var(--b1);
  border-radius: 7px;
  color: var(--t3);
  cursor: pointer;
  transition: color 0.18s, border-color 0.18s, background 0.18s;
}
.ax-cart-item__remove:hover {
  color: #f87171;
  border-color: rgba(248,113,113,0.35);
  background: rgba(248,113,113,0.08);
}
.ax-cart-item__remove svg { width: 12px; height: 12px; }
.ax-cart-summary {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  overflow: hidden;
}
.ax-cart-summary__top-line {
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--r), transparent);
  opacity: 0.5;
}
.ax-cart-summary__header {
  padding: 18px 20px 14px;
  border-bottom: 1px solid var(--b1);
  background: rgba(0,0,0,0.15);
}
.ax-cart-summary__title {
  font-family: var(--f-h);
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--t3);
}
.ax-cart-summary__body { padding: 16px 20px; display: flex; flex-direction: column; gap: 10px; }
.ax-cart-summary__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.ax-cart-summary__label { font-size: 13px; color: var(--t3); }
.ax-cart-summary__value { font-size: 13px; color: var(--t2); font-weight: 600; font-family: var(--f-h); }
.ax-cart-summary__total-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding-top: 12px;
  border-top: 1px solid var(--b1);
}
.ax-cart-summary__total-label {
  font-family: var(--f-h);
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--t2);
}
.ax-cart-summary__total-price {
  font-family: var(--f-h);
  font-size: 22px;
  font-weight: 800;
  color: var(--r-hi);
  letter-spacing: -0.02em;
}
.ax-cart-summary__error {
  margin: 0 20px;
  padding: 12px 16px;
  background: rgba(248,113,113,0.08);
  border: 1px solid rgba(248,113,113,0.3);
  border-radius: 8px;
  font-size: 13px;
  color: #f87171;
}
.ax-cart-summary__footer { padding: 0 20px 20px; }
.ax-cart-checkout-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  width: 100%;
  height: 46px;
  background: var(--r);
  border: none;
  border-radius: 10px;
  font-family: var(--f-h);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: #fff;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: background 0.2s, box-shadow 0.2s;
}
.ax-cart-checkout-btn::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.12), transparent);
  transform: translateX(-100%);
  transition: transform 0.6s ease;
}
.ax-cart-checkout-btn:not(:disabled):hover::before { transform: translateX(100%); }
.ax-cart-checkout-btn:not(:disabled):hover { background: var(--r-hi); box-shadow: 0 6px 24px var(--r-glow); }
.ax-cart-checkout-btn:disabled { opacity: 0.5; pointer-events: none; }
.ax-cart-checkout-btn svg { width: 16px; height: 16px; flex-shrink: 0; }
.ax-cart-checkout-guarantee {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin-top: 12px;
  font-size: 11px;
  color: var(--t3);
  opacity: 0.7;
}
.ax-cart-checkout-guarantee svg { width: 12px; height: 12px; color: var(--r); }
.ax-blog { padding: 40px 0 64px; width: 100%; }
.ax-blog__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 32px;
  flex-wrap: wrap;
}
.ax-blog__title-wrap { display: flex; align-items: center; gap: 14px; }
.ax-blog__title-accent {
  display: block;
  width: 4px;
  height: 28px;
  background: linear-gradient(180deg, var(--r-hi), var(--r));
  border-radius: 4px;
  flex-shrink: 0;
  box-shadow: 0 0 12px var(--r-glow);
}
.ax-blog__title {
  font-family: var(--f-h);
  font-size: 22px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
}
.ax-blog__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 18px;
}
.ax-blog-card {
  display: flex;
  flex-direction: column;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  overflow: hidden;
  text-decoration: none;
  color: var(--t1);
  transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
  height: 100%;
}
.ax-blog-card:hover {
  border-color: var(--r-border);
  box-shadow: 0 12px 40px rgba(0,0,0,0.35), 0 0 24px var(--r-lo);
  transform: translateY(-2px);
}
.ax-blog-card__img-wrap {
  position: relative;
  overflow: hidden;
  background: var(--s2);
  border-bottom: 1px solid var(--b1);
}
.ax-blog-card__img {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  display: block;
  transition: transform 0.5s cubic-bezier(0.25,0.46,0.45,0.94);
}
.ax-blog-card:hover .ax-blog-card__img { transform: scale(1.04); }
.ax-blog-card__img-empty {
  aspect-ratio: 16/9;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r);
  opacity: 0.2;
}
.ax-blog-card__img-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 40%;
  background: linear-gradient(0deg, var(--s1), transparent);
  pointer-events: none;
}
.ax-blog-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 18px 20px 20px;
}
.ax-blog-card__tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-family: var(--f-h);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--r-hi);
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  border-radius: 5px;
  padding: 2px 8px;
  width: fit-content;
}
.ax-blog-card__name {
  font-family: var(--f-h);
  font-size: 15px;
  font-weight: 700;
  color: var(--t1);
  letter-spacing: -0.01em;
  line-height: 1.3;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ax-blog-card__summary {
  font-size: 12.5px;
  color: var(--t3);
  line-height: 1.6;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  flex: 1;
}
.ax-blog-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding-top: 10px;
  border-top: 1px solid var(--b1);
  margin-top: 4px;
}
.ax-blog-card__date {
  font-size: 10.5px;
  color: var(--t3);
  font-family: var(--f-b);
  font-weight: 500;
}
.ax-blog-card__read {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--r-hi);
}
.ax-blog-card__read svg { width: 11px; height: 11px; }
.ax-blog-post { padding: 40px 0 80px; width: 100%; }
.ax-blog-post__back {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--t3);
  text-decoration: none;
  margin-bottom: 24px;
  transition: color 0.18s;
}
.ax-blog-post__back:hover { color: var(--r-hi); }
.ax-blog-post__back svg { width: 13px; height: 13px; }
.ax-blog-post__card {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 16px;
  overflow: hidden;
  max-width: 860px;
  margin: 0 auto;
}
.ax-blog-post__hero {
  width: 100%;
  aspect-ratio: 21/9;
  object-fit: cover;
  display: block;
  border-bottom: 1px solid var(--b1);
}
.ax-blog-post__meta-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px 28px;
  border-bottom: 1px solid var(--b1);
  background: rgba(0,0,0,0.15);
  flex-wrap: wrap;
}
.ax-blog-post__tag {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-family: var(--f-h);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--r-hi);
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  border-radius: 5px;
  padding: 3px 10px;
}
.ax-blog-post__date {
  font-size: 11px;
  color: var(--t3);
  font-family: var(--f-b);
}
.ax-blog-post__body { padding: 32px 36px 40px; }
.ax-blog-post__title {
  font-family: var(--f-h);
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
  line-height: 1.2;
  margin-bottom: 12px;
}
.ax-blog-post__summary {
  font-size: 15px;
  color: var(--t2);
  line-height: 1.65;
  margin-bottom: 28px;
  padding-bottom: 24px;
  border-bottom: 1px solid var(--b1);
}
.ax-blog-post__content { font-size: 14.5px; color: var(--t2); line-height: 1.8; }
.ax-dash {
  display: flex;
  gap: 28px;
  align-items: flex-start;
  padding: 36px 0 72px;
  width: 100%;
}
.ax-dash__sidebar {
  flex: 0 0 230px;
  position: sticky;
  top: calc(var(--total-h) + 20px);
}
.ax-dash__main { flex: 1; min-width: 0; }
.ax-sidebar {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  overflow: hidden;
}
.ax-sidebar__top-line {
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--r), transparent);
  opacity: 0.5;
}
.ax-sidebar__header {
  padding: 18px 20px 14px;
  border-bottom: 1px solid var(--b1);
  background: rgba(0,0,0,0.15);
}
.ax-sidebar__email {
  font-size: 12px;
  color: var(--t3);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-top: 2px;
}
.ax-sidebar__label {
  font-family: var(--f-h);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--r);
  margin-bottom: 2px;
}
.ax-sidebar__name {
  font-family: var(--f-h);
  font-size: 14px;
  font-weight: 700;
  color: var(--t1);
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ax-sidebar__nav {
  display: flex;
  flex-direction: column;
  padding: 8px;
  gap: 2px;
}
.ax-sidebar__link {
  display: flex;
  align-items: center;
  gap: 10px;
  height: 36px;
  padding: 0 12px;
  font-family: var(--f-h);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--t3);
  text-decoration: none;
  border-radius: 8px;
  border: 1px solid transparent;
  position: relative;
  overflow: hidden;
  transition: color 0.18s, border-color 0.18s;
  cursor: pointer;
  background: none;
  width: 100%;
  text-align: left;
}
.ax-sidebar__link::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--r-lo);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.2s ease;
  border-radius: inherit;
}
.ax-sidebar__link:hover::before { transform: scaleX(1); }
.ax-sidebar__link:hover { color: var(--t1); border-color: var(--b1); }
.ax-sidebar__link--active { color: var(--r-hi) !important; border-color: var(--r-border) !important; }
.ax-sidebar__link--active::before { transform: scaleX(1); }
.ax-sidebar__link svg, .ax-sidebar__link i { width: 14px; height: 14px; flex-shrink: 0; position: relative; z-index: 1; font-size: 13px; }
.ax-sidebar__link span { position: relative; z-index: 1; }
.ax-sidebar__link--danger:hover { color: #f87171 !important; }
.ax-sidebar__link--danger:hover::before { background: rgba(248,113,113,0.08) !important; }
.ax-sidebar__divider {
  height: 1px;
  background: var(--b1);
  margin: 4px 8px;
}
.ax-sidebar__badge {
  margin-left: auto;
  position: relative;
  z-index: 1;
  font-size: 10px;
  font-weight: 700;
  padding: 1px 7px;
  background: var(--s3);
  border: 1px solid var(--b2);
  border-radius: 99px;
  color: var(--t3);
  font-family: var(--f-b);
}
.ax-dash-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-bottom: 20px;
}
.ax-stat-card {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 12px;
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  position: relative;
  overflow: hidden;
  transition: border-color 0.2s;
}
.ax-stat-card:hover { border-color: var(--r-border); }
.ax-stat-card::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--r-glow), transparent);
  opacity: 0;
  transition: opacity 0.2s;
}
.ax-stat-card:hover::after { opacity: 1; }
.ax-stat-card__icon {
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r-hi);
}
.ax-stat-card__icon svg { width: 15px; height: 15px; }
.ax-stat-card__label {
  font-family: var(--f-h);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--t3);
}
.ax-stat-card__value {
  font-family: var(--f-h);
  font-size: 22px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
  line-height: 1;
}
.ax-stat-card__sub { font-size: 11px; color: var(--t3); }
.ax-dash-order {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 12px;
  padding: 18px 20px;
  margin-bottom: 20px;
}
.ax-dash-order__label {
  font-family: var(--f-h);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--t3);
  margin-bottom: 10px;
}
.ax-dash-order__name {
  font-family: var(--f-h);
  font-size: 16px;
  font-weight: 700;
  color: var(--t1);
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 6px;
}
.ax-dash-order__meta {
  font-size: 12px;
  color: var(--t3);
}
.ax-dash-order__meta a { color: var(--r-hi); text-decoration: none; }
.ax-dash-order__meta a:hover { text-decoration: underline; }
.ax-dash-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 20px;
  flex-wrap: wrap;
}
.ax-dash-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 36px;
  padding: 0 16px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  border-radius: 8px;
  cursor: pointer;
  transition: background 0.18s, border-color 0.18s, color 0.18s;
  background: transparent;
  border: 1px solid var(--b2);
  color: var(--t3);
}
.ax-dash-btn:hover { color: var(--t1); border-color: var(--r-border); background: var(--r-lo); }
.ax-dash-btn svg { width: 13px; height: 13px; flex-shrink: 0; }
.ax-dash-btn:disabled { opacity: 0.5; pointer-events: none; }
.ax-dash-btn--danger { border-color: rgba(248,113,113,0.3); color: #f87171; }
.ax-dash-btn--danger:hover { background: rgba(248,113,113,0.08); border-color: rgba(248,113,113,0.5); color: #f87171; }
.ax-orders { }
.ax-orders__header {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 20px;
}
.ax-orders__title-accent {
  display: block;
  width: 4px;
  height: 24px;
  background: linear-gradient(180deg, var(--r-hi), var(--r));
  border-radius: 4px;
  flex-shrink: 0;
  box-shadow: 0 0 10px var(--r-glow);
}
.ax-orders__title {
  font-family: var(--f-h);
  font-size: 18px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
}
.ax-orders__card {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  overflow: hidden;
}
.ax-orders-table { width: 100%; border-collapse: collapse; }
.ax-orders-table th {
  font-family: var(--f-h);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--t3);
  padding: 12px 16px;
  text-align: left;
  background: rgba(0,0,0,0.15);
  border-bottom: 1px solid var(--b1);
  white-space: nowrap;
}
.ax-orders-table td {
  padding: 14px 16px;
  font-size: 13px;
  color: var(--t2);
  border-bottom: 1px solid var(--b1);
  vertical-align: middle;
}
.ax-orders-table tr:last-child td { border-bottom: none; }
.ax-orders-table tr:hover td { background: rgba(255,255,255,0.02); }
.ax-orders-table__id {
  font-family: var(--f-h);
  font-size: 12px;
  font-weight: 700;
  color: var(--r-hi);
  text-decoration: none;
}
.ax-orders-table__id:hover { text-decoration: underline; }
.ax-orders-table__product {
  font-weight: 600;
  color: var(--t1);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 200px;
}
.ax-orders-table__date { font-size: 10.5px; color: var(--t3); margin-top: 2px; }
.ax-orders-table__price {
  font-family: var(--f-h);
  font-size: 13px;
  font-weight: 700;
  color: var(--r-hi);
  white-space: nowrap;
}
.ax-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  border-radius: 6px;
  font-family: var(--f-h);
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}
.ax-status-badge--completed { background: rgba(34,197,94,0.12); border: 1px solid rgba(34,197,94,0.25); color: #4ade80; }
.ax-status-badge--pending { background: rgba(234,179,8,0.12); border: 1px solid rgba(234,179,8,0.25); color: #facc15; }
.ax-status-badge--refunded { background: rgba(20,184,166,0.12); border: 1px solid rgba(20,184,166,0.25); color: #2dd4bf; }
.ax-status-badge--out_of_stock { background: rgba(249,115,22,0.12); border: 1px solid rgba(249,115,22,0.25); color: #fb923c; }
.ax-status-badge--confirming { background: rgba(59,130,246,0.12); border: 1px solid rgba(59,130,246,0.25); color: #60a5fa; }
.ax-status-badge--partially_completed { background: rgba(234,179,8,0.12); border: 1px solid rgba(234,179,8,0.25); color: #facc15; }
.ax-orders-table__action { white-space: nowrap; }
.ax-orders__empty {
  padding: 40px 24px;
  text-align: center;
}
.ax-orders__empty-icon {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r);
  margin: 0 auto 12px;
}
.ax-orders__empty-icon svg { width: 20px; height: 20px; }
.ax-orders__empty-text { font-size: 14px; color: var(--t3); }
.ax-downloads { }
.ax-downloads__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}
.ax-downloads__title-wrap { display: flex; align-items: center; gap: 14px; }
.ax-downloads__title-accent {
  display: block;
  width: 4px;
  height: 24px;
  background: linear-gradient(180deg, var(--r-hi), var(--r));
  border-radius: 4px;
  flex-shrink: 0;
  box-shadow: 0 0 10px var(--r-glow);
}
.ax-downloads__title {
  font-family: var(--f-h);
  font-size: 18px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
}
.ax-downloads__test-banner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 18px;
  background: rgba(234,179,8,0.08);
  border: 1px solid rgba(234,179,8,0.25);
  border-radius: 10px;
  margin-bottom: 24px;
}
.ax-downloads__test-icon {
  width: 28px;
  height: 28px;
  border-radius: 7px;
  background: rgba(234,179,8,0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #facc15;
  flex-shrink: 0;
}
.ax-downloads__test-icon svg { width: 14px; height: 14px; }
.ax-downloads__test-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ax-downloads__test-title {
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #facc15;
}
.ax-downloads__test-sub { font-size: 11.5px; color: rgba(250,204,21,0.6); }
.ax-downloads__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 16px;
}
.ax-dl-card {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.ax-dl-card:hover {
  border-color: var(--r-border);
  box-shadow: 0 8px 28px rgba(0,0,0,0.3), 0 0 16px var(--r-lo);
}
.ax-dl-card--locked {
  opacity: 0.6;
  filter: grayscale(0.3);
}
.ax-dl-card--locked:hover {
  border-color: var(--b2);
  box-shadow: none;
}
.ax-dl-card__img-wrap {
  position: relative;
  overflow: hidden;
  background: var(--s2);
  border-bottom: 1px solid var(--b1);
}
.ax-dl-card__img {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
  display: block;
}
.ax-dl-card__img-empty {
  aspect-ratio: 16/9;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r);
  opacity: 0.2;
}
.ax-dl-card__img-empty svg { width: 36px; height: 36px; }
.ax-dl-card__owned-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  background: rgba(34,197,94,0.18);
  border: 1px solid rgba(34,197,94,0.35);
  border-radius: 6px;
  font-family: var(--f-h);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #4ade80;
  backdrop-filter: blur(6px);
}
.ax-dl-card__owned-badge svg { width: 10px; height: 10px; }
.ax-dl-card__lock-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 9px;
  background: rgba(0,0,0,0.55);
  border: 1px solid var(--b2);
  border-radius: 6px;
  font-family: var(--f-h);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--t3);
  backdrop-filter: blur(6px);
}
.ax-dl-card__lock-badge svg { width: 10px; height: 10px; }
.ax-dl-card__body {
  flex: 1;
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.ax-dl-card__name {
  font-family: var(--f-h);
  font-size: 14px;
  font-weight: 700;
  color: var(--t1);
  letter-spacing: -0.01em;
  line-height: 1.3;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ax-dl-card__desc {
  font-size: 12px;
  color: var(--t3);
  line-height: 1.55;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ax-dl-card__footer {
  padding: 12px 18px;
  border-top: 1px solid var(--b1);
  display: flex;
  gap: 8px;
}
.ax-dl-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  flex: 1;
  height: 38px;
  padding: 0 14px;
  border-radius: 9px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.2s, box-shadow 0.2s, border-color 0.2s;
  position: relative;
  overflow: hidden;
}
.ax-dl-btn svg { width: 14px; height: 14px; flex-shrink: 0; }
.ax-dl-btn--primary {
  background: var(--r);
  border: 1px solid var(--r);
  color: #fff;
}
.ax-dl-btn--primary::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.12), transparent);
  transform: translateX(-100%);
  transition: transform 0.5s;
}
.ax-dl-btn--primary:hover::before { transform: translateX(100%); }
.ax-dl-btn--primary:hover { background: var(--r-hi); box-shadow: 0 4px 16px var(--r-glow); }
.ax-dl-btn--ghost {
  background: transparent;
  border: 1px solid var(--r-border);
  color: var(--r-hi);
}
.ax-dl-btn--ghost:hover { background: var(--r-lo); }
.ax-dl-btn--locked {
  background: var(--s2);
  border: 1px solid var(--b1);
  color: var(--t3);
  cursor: not-allowed;
  pointer-events: none;
}
.ax-access-denied {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding: 80px 24px;
  text-align: center;
}
.ax-access-denied__icon {
  width: 72px;
  height: 72px;
  border-radius: 18px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r-hi);
  box-shadow: 0 0 30px var(--r-glow);
}
.ax-access-denied__icon svg { width: 32px; height: 32px; }
.ax-access-denied__title { font-family: var(--f-h); font-size: 22px; font-weight: 800; color: var(--t1); letter-spacing: -0.02em; }
.ax-access-denied__sub { font-size: 14px; color: var(--t3); max-width: 360px; line-height: 1.6; }
.ax-del-modal {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 440px;
  background: var(--s1);
  border: 1px solid var(--b2);
  border-radius: 16px;
  box-shadow: 0 40px 100px rgba(0,0,0,0.7), 0 0 0 1px rgba(248,113,113,0.2);
  overflow: hidden;
}
.ax-del-modal__header { padding: 20px 24px; border-bottom: 1px solid var(--b1); display: flex; align-items: center; justify-content: space-between; }
.ax-del-modal__title { font-family: var(--f-h); font-size: 16px; font-weight: 800; color: var(--t1); }
.ax-del-modal__body { padding: 20px 24px; font-size: 13.5px; color: var(--t3); line-height: 1.65; }
.ax-del-modal__footer { padding: 0 24px 24px; display: flex; gap: 10px; }
.ax-login-modal__brand { flex-direction: row; align-items: center; gap: 14px; text-align: left; }
.ax-login-modal__brand-icon {
  flex-shrink: 0;
  width: 44px; height: 44px;
  border-radius: 11px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  display: flex; align-items: center; justify-content: center;
  color: var(--r-hi);
}
.ax-login-modal__brand-icon svg { width: 20px; height: 20px; }
.ax-login-modal__brand-text { display: flex; flex-direction: column; gap: 2px; }
.ax-login-modal__brand-title {
  font-family: var(--f-h);
  font-size: 17px; font-weight: 800;
  color: var(--t1); letter-spacing: -0.02em;
}
.ax-login-modal__brand-sub { font-size: 12px; color: var(--t3); }
.ax-login-modal__field { display: flex; flex-direction: column; gap: 5px; }
.ax-login-modal__label { font-size: 13px; font-weight: 600; color: var(--t2); }
.ax-login-modal__hint { font-size: 12px; color: var(--t3); margin: 0; }
.ax-login-modal__email-highlight { color: var(--r-hi); font-weight: 700; }
.ax-login-modal__captcha { margin-top: 4px; }
.ax-login-modal__resend { font-size: 12px; color: var(--t3); text-align: center; }
.ax-login-modal__resend-btn {
  background: none; border: none; cursor: pointer;
  color: var(--r-hi); font-size: 12px; text-decoration: underline;
  padding: 0;
}
.ax-login-modal__resend-btn:hover { color: var(--t1); }
.ax-login-modal__submit-inner {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  pointer-events: none;
}
.ax-login-modal__spinner { animation: ax-spin 0.8s linear infinite; }
.ax-login-modal__footer-note {
  display: flex; align-items: center; justify-content: center; gap: 5px;
  font-size: 11px; color: var(--t3);
  padding: 0 24px 18px;
  margin: 0;
}
.ax-login-modal__footer-note svg { width: 12px; height: 12px; color: var(--r); flex-shrink: 0; }
.ax-cart-page__messages {
  background: rgba(239,68,68,0.08); border: 1px solid rgba(239,68,68,0.25);
  color: var(--r-hi); border-radius: 10px;
  padding: 12px 16px; font-size: 13.5px;
  margin-bottom: 16px;
}
.ax-cart-page__loading {
  display: flex; align-items: center; justify-content: center; gap: 12px;
  padding: 48px; color: var(--t3); font-size: 14px;
  background: var(--s2); border: 1px solid var(--b1); border-radius: 12px;
}
.ax-cart-page__empty {
  display: flex; flex-direction: column; align-items: center; gap: 16px;
  padding: 64px 24px; text-align: center;
  background: var(--s2); border: 1px solid var(--b1); border-radius: 12px;
}
.ax-cart-page__empty svg { width: 52px; height: 52px; color: var(--t3); }
.ax-cart-page__empty p { font-size: 14.5px; color: var(--t3); margin: 0; }
.ax-cart-page__empty-link {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--r); color: #fff; font-size: 13px; font-weight: 700;
  padding: 8px 18px; border-radius: 8px; text-decoration: none;
  transition: background 0.18s;
}
.ax-cart-page__empty-link:hover { background: var(--r-hi); }
.ax-cart-page__list { display: flex; flex-direction: column; gap: 12px; }
.ax-cart-item__controls {
  display: flex; align-items: center; gap: 16px;
  padding: 10px 16px 10px 0;
  border-top: 1px solid var(--b1);
  flex-wrap: wrap;
}
.ax-cart-item__name-row {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
}
.ax-cart-item__remove--mobile { display: flex; }
.ax-cart-item__remove--desktop { display: none; }
.ax-cart-page__items-col { flex: 1; min-width: 0; }
.ax-cart-page__summary-col { width: 100%; }
.ax-cart-summary__rows { display: flex; flex-direction: column; gap: 8px; margin-bottom: 10px; }
.ax-cart-summary__row { display: flex; align-items: center; justify-content: space-between; }
.ax-cart-summary__row-label { font-size: 12.5px; color: var(--t3); }
.ax-cart-summary__row-value { font-size: 13px; color: var(--t2); font-weight: 600; }
.ax-cart-summary__row-value--muted { font-size: 11.5px; color: var(--t3); font-weight: 400; font-style: italic; }
.ax-cart-summary__divider { border: none; border-top: 1px solid var(--b1); margin: 10px 0; }
.ax-cart-summary__total-label { font-size: 14px; font-weight: 700; color: var(--t1); }
.ax-cart-summary__total-value { font-size: 18px; font-weight: 800; color: var(--r-hi); font-family: var(--f-h); }
.ax-cart-summary__captcha { margin: 10px 0; }
.ax-cart-summary__secure-note {
  display: flex; align-items: center; justify-content: center; gap: 5px;
  font-size: 11px; color: var(--t3); margin: 10px 0 0;
}
.ax-cart-checkout-btn__inner {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  pointer-events: none;
}
.ax-blog-card__top-line {
  height: 2px;
  background: linear-gradient(90deg, var(--r) 0%, transparent 100%);
  border-radius: 4px 4px 0 0;
  opacity: 0;
  transition: opacity 0.25s;
}
.ax-blog-card:hover .ax-blog-card__top-line { opacity: 1; }
.ax-blog-card__cover {
  position: relative; overflow: hidden;
  height: 180px; border-bottom: 1px solid var(--b1);
}
.ax-blog-card__img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.ax-blog-card:hover .ax-blog-card__img { transform: scale(1.04); }
.ax-blog-card__cover-placeholder {
  width: 100%; height: 100%;
  display: flex; align-items: center; justify-content: center;
  background: var(--s2); color: var(--t3);
}
.ax-blog-card__cover-placeholder svg { width: 48px; height: 48px; }
.ax-blog-card__body { padding: 18px 20px 20px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.ax-blog-card__meta { display: flex; align-items: center; gap: 8px; }
.ax-blog-card__date {
  display: flex; align-items: center; gap: 5px;
  font-size: 11px; color: var(--t3); font-family: var(--f-b);
}
.ax-blog-card__date svg { width: 12px; height: 12px; color: var(--r); flex-shrink: 0; }
.ax-blog-card__title {
  font-family: var(--f-h);
  font-size: 16px; font-weight: 800;
  color: var(--t1); line-height: 1.3;
  letter-spacing: -0.02em;
  transition: color 0.2s;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.ax-blog-card:hover .ax-blog-card__title { color: var(--r-hi); }
.ax-blog-card__summary {
  font-size: 12.5px; color: var(--t3); line-height: 1.6; margin: 0;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.ax-blog-card__read-more {
  display: inline-flex; align-items: center; gap: 5px; margin-top: auto;
  font-size: 12px; font-weight: 700; color: var(--r-hi); font-family: var(--f-h);
  letter-spacing: 0.04em; text-transform: uppercase; transition: gap 0.2s;
}
.ax-blog-card__read-more svg { width: 12px; height: 12px; transition: transform 0.2s; }
.ax-blog-card:hover .ax-blog-card__read-more { gap: 8px; }
.ax-blog-card:hover .ax-blog-card__read-more svg { transform: translateX(3px); }
.ax-blog__view-all { display: flex; justify-content: center; margin-top: 32px; }
.ax-blog__view-all-link {
  display: inline-flex; align-items: center; gap: 8px;
  background: transparent; border: 1px solid var(--r-border);
  color: var(--r-hi); font-size: 13px; font-weight: 700;
  padding: 10px 24px; border-radius: 8px; text-decoration: none;
  font-family: var(--f-h); letter-spacing: 0.03em;
  transition: background 0.2s, box-shadow 0.2s;
}
.ax-blog__view-all-link:hover { background: var(--r-lo); box-shadow: 0 0 16px var(--r-glow); }
.ax-blog__view-all-link svg { width: 14px; height: 14px; }
.ax-blog__empty { font-size: 14px; color: var(--t3); padding: 32px 0; }
.ax-blog-post__container { max-width: 780px; margin: 0 auto; padding: 40px 0 80px; }
.ax-blog-post__breadcrumb {
  display: flex; align-items: center; gap: 6px; flex-wrap: wrap;
  margin-bottom: 24px; font-size: 12px;
}
.ax-blog-post__breadcrumb svg { width: 14px; height: 14px; color: var(--t3); flex-shrink: 0; }
.ax-blog-post__bc-link { color: var(--t3); text-decoration: none; transition: color 0.18s; }
.ax-blog-post__bc-link:hover { color: var(--r-hi); }
.ax-blog-post__bc-current { color: var(--t2); font-weight: 600; }
.ax-blog-post__card {
  position: relative;
  background: var(--s2); border: 1px solid var(--b1);
  border-radius: 14px; overflow: hidden;
}
.ax-blog-post__card-top-line {
  height: 3px;
  background: linear-gradient(90deg, var(--r) 0%, var(--r-hi) 60%, transparent 100%);
}
.ax-blog-post__header { padding: 32px 36px 24px; border-bottom: 1px solid var(--b1); }
.ax-blog-post__header-meta { margin-bottom: 14px; }
.ax-blog-post__date-badge {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--r-lo); border: 1px solid var(--r-border);
  color: var(--r-hi); font-size: 11px; font-weight: 600;
  padding: 4px 10px; border-radius: 20px; letter-spacing: 0.04em;
}
.ax-blog-post__date-badge svg { width: 12px; height: 12px; }
.ax-blog-post__title {
  font-family: var(--f-h); font-size: 28px; font-weight: 900;
  color: var(--t1); line-height: 1.2; letter-spacing: -0.03em;
  margin: 0 0 10px;
}
.ax-blog-post__summary { font-size: 14.5px; color: var(--t3); line-height: 1.7; margin: 0; }
.ax-blog-post__cover { line-height: 0; }
.ax-blog-post__cover-img { width: 100%; max-height: 420px; object-fit: cover; }
.ax-blog-post__body { padding: 32px 36px 40px; }
.ax-blog-post__footer {
  display: flex; align-items: center; gap: 12px;
  padding: 16px 36px; border-top: 1px solid var(--b1);
  background: var(--s1);
}
.ax-blog-post__back-link {
  display: inline-flex; align-items: center; gap: 6px;
  color: var(--r-hi); font-size: 13px; font-weight: 700;
  text-decoration: none; font-family: var(--f-h); letter-spacing: 0.03em;
  transition: color 0.18s, gap 0.18s;
}
.ax-blog-post__back-link svg { width: 14px; height: 14px; transition: transform 0.2s; }
.ax-blog-post__back-link:hover { color: var(--t1); }
.ax-blog-post__back-link:hover svg { transform: translateX(-3px); }
.ax-blog-post__footer-sep { color: var(--t3); }
.ax-blog-post__footer-shop { font-size: 12px; color: var(--t3); }
.ax-sidebar__profile {
  display: flex; align-items: center; gap: 12px;
  padding: 18px 18px 16px;
  border-bottom: 1px solid var(--b1);
}
.ax-sidebar__avatar {
  width: 38px; height: 38px;
  background: var(--r-lo); border: 1px solid var(--r-border);
  border-radius: 10px;
  display: flex; align-items: center; justify-content: center;
  font-family: var(--f-h); font-size: 15px; font-weight: 900;
  color: var(--r-hi); flex-shrink: 0;
}
.ax-sidebar__profile-info { min-width: 0; }
.ax-sidebar__profile-label { font-size: 10px; color: var(--t3); text-transform: uppercase; letter-spacing: 0.08em; }
.ax-sidebar__profile-email {
  font-size: 12.5px; color: var(--t2); font-weight: 600;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.ax-sidebar__link-icon { width: 16px; height: 16px; flex-shrink: 0; color: var(--t3); transition: color 0.18s; }
.ax-sidebar__link--active .ax-sidebar__link-icon { color: var(--r-hi); }
.ax-sidebar__active-dot {
  margin-left: auto; width: 6px; height: 6px;
  background: var(--r); border-radius: 50%;
  box-shadow: 0 0 6px var(--r-glow);
  flex-shrink: 0;
}
.ax-sidebar__balance {
  margin-left: auto; font-size: 11.5px; font-weight: 700;
  color: var(--r-hi); font-family: var(--f-h);
  background: var(--r-lo); border: 1px solid var(--r-border);
  border-radius: 5px; padding: 1px 7px;
}
.ax-sidebar__footer { padding: 12px 14px; border-top: 1px solid var(--b1); }
.ax-sidebar__logout {
  width: 100%;
  display: flex; align-items: center; gap: 8px;
  background: none; border: 1px solid transparent;
  color: var(--t3); font-size: 12.5px; font-weight: 600;
  padding: 7px 10px; border-radius: 8px; cursor: pointer;
  transition: color 0.18s, background 0.18s, border-color 0.18s;
  text-align: left;
}
.ax-sidebar__logout:hover {
  color: #ef4444;
  background: rgba(239,68,68,0.08);
  border-color: rgba(239,68,68,0.2);
}
.ax-dash__page-header {
  display: flex; align-items: flex-start; justify-content: space-between;
  flex-wrap: wrap; gap: 12px;
  margin-bottom: 20px;
}
.ax-dash__page-title {
  font-family: var(--f-h); font-size: 24px; font-weight: 900;
  color: var(--t1); letter-spacing: -0.03em; margin: 0;
}
.ax-dash__page-sub { font-size: 13px; color: var(--t3); margin: 3px 0 0; }
.ax-dash-grid--3 { grid-template-columns: repeat(3, 1fr); }
.ax-dash-grid--latest { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.ax-stat-card--wide { grid-column: span 1; }
.ax-stat-card__value--sm { font-size: 15px; }
.ax-stat-card__value--muted { color: var(--t3); font-size: 14px; }
.ax-stat-card__meta { font-size: 11.5px; color: var(--t3); margin: 4px 0 0; }
.ax-stat-card__link { color: var(--r-hi); text-decoration: none; font-weight: 600; }
.ax-stat-card__link:hover { color: var(--t1); text-decoration: underline; }
.ax-dash__actions {
  display: flex; align-items: center; justify-content: flex-end;
  gap: 10px; margin-top: 20px; flex-wrap: wrap;
}
.ax-dash__action-btn {
  display: inline-flex; align-items: center; gap: 7px;
  font-size: 12.5px; font-weight: 700; padding: 8px 16px;
  border-radius: 8px; cursor: pointer; border: 1px solid;
  transition: background 0.18s, color 0.18s, box-shadow 0.18s;
  font-family: var(--f-b);
}
.ax-dash__action-btn:disabled { opacity: 0.5; pointer-events: none; }
.ax-dash__action-btn--ghost {
  background: transparent; border-color: var(--b1); color: var(--t2);
}
.ax-dash__action-btn--ghost:hover { background: var(--s2); color: var(--t1); }
.ax-dash__action-btn--danger {
  background: transparent; border-color: rgba(239,68,68,0.35);
  color: #ef4444;
}
.ax-dash__action-btn--danger:hover {
  background: rgba(239,68,68,0.08);
  box-shadow: 0 0 14px rgba(239,68,68,0.15);
}
.ax-orders {
  position: relative;
  background: var(--s2); border: 1px solid var(--b1);
  border-radius: 14px; overflow: hidden;
}
.ax-orders__top-line {
  height: 2px;
  background: linear-gradient(90deg, var(--r) 0%, var(--r-hi) 60%, transparent 100%);
}
.ax-orders-table-wrap { overflow-x: auto; }
.ax-orders-table__head { background: rgba(255,255,255,0.03); }
.ax-orders-table__th {
  padding: 12px 16px;
  font-size: 11px; font-weight: 700;
  color: var(--t3); text-transform: uppercase; letter-spacing: 0.08em;
  text-align: left; white-space: nowrap;
}
.ax-orders-table__row { border-bottom: 1px solid var(--b1); transition: background 0.15s; }
.ax-orders-table__row:last-child { border-bottom: none; }
.ax-orders-table__row:hover { background: rgba(255,255,255,0.02); }
.ax-orders-table__td { padding: 14px 16px; font-size: 13px; color: var(--t2); vertical-align: middle; }
.ax-orders-table__td--id { white-space: nowrap; }
.ax-orders-table__td--products { max-width: 200px; }
.ax-orders-table__td--price { white-space: nowrap; font-weight: 700; color: var(--t1); font-family: var(--f-h); }
.ax-orders-table__td--actions { white-space: nowrap; }
.ax-orders-table__invoice-link {
  color: var(--r-hi); font-weight: 700; text-decoration: none; font-family: var(--f-h);
  font-size: 13px;
}
.ax-orders-table__invoice-link:hover { color: var(--t1); text-decoration: underline; }
.ax-orders-table__date { display: block; font-size: 11px; color: var(--t3); margin-top: 3px; }
.ax-orders-table__product-name {
  display: block; max-width: 180px;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.ax-orders-table__variant { color: var(--t3); font-size: 11.5px; }
.ax-orders-table__more {
  display: inline-block; margin-top: 2px;
  font-size: 11px; color: var(--r-hi); font-weight: 600;
  background: var(--r-lo); border: 1px solid var(--r-border);
  border-radius: 4px; padding: 1px 6px;
}
.ax-orders-table__deleted { color: var(--t3); font-style: italic; }
.ax-orders-table__action-btn {
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 12px; font-weight: 700; padding: 5px 11px;
  border-radius: 7px; text-decoration: none; cursor: pointer;
  border: 1px solid; transition: background 0.18s, color 0.18s;
  font-family: var(--f-b);
  background: none;
}
.ax-orders-table__action-btn--view {
  color: var(--r-hi); border-color: var(--r-border);
}
.ax-orders-table__action-btn--view:hover { background: var(--r-lo); }
.ax-orders-table__action-btn--open {
  color: var(--t2); border-color: var(--b1);
}
.ax-orders-table__action-btn--open:hover { background: var(--s1); color: var(--t1); }
.ax-orders__empty-link {
  display: inline-flex; align-items: center; gap: 6px;
  background: var(--r); color: #fff; font-size: 13px; font-weight: 700;
  padding: 9px 20px; border-radius: 8px; text-decoration: none;
  margin-top: 4px; transition: background 0.18s;
}
.ax-orders__empty-link:hover { background: var(--r-hi); }
.ax-dl-card__top-line {
  height: 2px;
  background: linear-gradient(90deg, var(--r) 0%, var(--r-hi) 60%, transparent 100%);
  border-radius: 4px 4px 0 0;
  transition: opacity 0.2s;
}
.ax-dl-card--locked .ax-dl-card__top-line {
  background: linear-gradient(90deg, var(--b2) 0%, transparent 100%);
  opacity: 0.5;
}
.ax-dl-card__cover {
  position: relative;
  height: 160px; overflow: hidden;
  background: var(--s1); border-bottom: 1px solid var(--b1);
  display: flex; align-items: center; justify-content: center;
}
.ax-dl-card--locked .ax-dl-card__cover { filter: grayscale(0.5); }
.ax-dl-card__cover-img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s; }
.ax-dl-card:hover .ax-dl-card__cover-img { transform: scale(1.04); }
.ax-dl-card--locked:hover .ax-dl-card__cover-img { transform: none; }
.ax-dl-card__cover-icon { color: var(--t3); }
.ax-dl-card__cover-icon svg { width: 44px; height: 44px; }
.ax-dl-card__badge {
  position: absolute; top: 8px; right: 8px;
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 10px; font-weight: 700; letter-spacing: 0.06em;
  padding: 3px 8px; border-radius: 20px;
  border: 1px solid;
}
.ax-dl-card__badge--owned {
  background: rgba(16,185,129,0.12); color: #34d399; border-color: rgba(16,185,129,0.25);
}
.ax-dl-card__badge--locked {
  background: rgba(255,255,255,0.06); color: var(--t3); border-color: var(--b1);
}
.ax-dl-card__body { padding: 18px 18px 20px; display: flex; flex-direction: column; gap: 10px; }
.ax-dl-card__name {
  font-family: var(--f-h); font-size: 16px; font-weight: 800;
  color: var(--t1); letter-spacing: -0.02em; margin: 0;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.ax-dl-card__desc {
  font-size: 12.5px; color: var(--t3); line-height: 1.55; margin: 0;
}
.ax-dl-card__variants { display: flex; flex-direction: column; gap: 8px; margin-top: 4px; }
.ax-dl-card__variant-row {
  display: flex; align-items: center; justify-content: space-between; gap: 8px;
  padding: 8px 10px; background: var(--s1); border: 1px solid var(--b1);
  border-radius: 8px;
}
.ax-dl-card__variant-name { font-size: 12px; color: var(--t2); font-weight: 600; }
.ax-dl-btn { 
  display: inline-flex; align-items: center; gap: 5px;
  font-size: 11.5px; font-weight: 700; padding: 5px 12px;
  border-radius: 7px; text-decoration: none; cursor: pointer; border: 1px solid;
  transition: background 0.18s, box-shadow 0.18s, transform 0.15s;
  flex-shrink: 0; white-space: nowrap;
}
.ax-dl-btn svg { width: 12px; height: 12px; flex-shrink: 0; }
.ax-dl-btn--key {
  background: var(--s2); border-color: var(--b1); color: var(--t2);
}
.ax-dl-btn--key:hover { background: var(--s1); color: var(--t1); }
.ax-dl-card__locked-msg {
  display: flex; align-items: center; gap: 6px;
  font-size: 12px; color: var(--t3);
  padding: 8px 10px; background: var(--s1); border: 1px solid var(--b1);
  border-radius: 8px;
}
.ax-dl-card__locked-msg svg { width: 14px; height: 14px; color: var(--t3); flex-shrink: 0; }
.ax-products-page {
  padding: 48px 0 80px;
}
.ax-products-page__header {
  margin-bottom: 40px;
}
.ax-products-page__title-wrap {
  display: flex; align-items: center; gap: 14px; margin-bottom: 6px;
}
.ax-products-page__title-accent {
  display: block; width: 4px; height: 28px;
  background: var(--r); border-radius: 2px; flex-shrink: 0;
}
.ax-products-page__title {
  font-family: var(--f-h); font-size: clamp(22px, 3vw, 32px);
  font-weight: 700; color: var(--t1); margin: 0; line-height: 1.2;
}
.ax-products-page__category-sub {
  font-size: 13px; color: var(--t3); margin: 0 0 0 18px;
}
.ax-products-page__category-sub strong { color: var(--r-hi); font-weight: 700; }
.ax-products-page__mobile-bar {
  display: none; align-items: center; gap: 12px; margin-bottom: 20px;
}
.ax-products-page__mobile-filter-btn {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 10px 18px; border-radius: 10px;
  background: var(--s2); border: 1px solid var(--b1);
  color: var(--t2); font-size: 13px; font-weight: 700;
  cursor: pointer; transition: background .18s, color .18s;
  font-family: var(--f-h);
}
.ax-products-page__mobile-filter-btn:hover { background: var(--s3); color: var(--t1); }
.ax-products-page__mobile-reset {
  font-size: 12px; color: var(--r-hi); text-decoration: underline; font-weight: 700;
}
.ax-products-page__layout {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 32px;
  align-items: start;
}
.ax-products-page__sidebar {
  position: sticky; top: 24px;
}
.ax-products-page__filter-card {
  background: var(--s2);
  border: 1px solid var(--b1);
  border-radius: 14px;
  overflow: hidden;
  position: relative;
}
.ax-products-page__filter-top-line {
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, var(--r), var(--r-hi), transparent);
}
.ax-products-page__form { padding: 20px 18px 18px; display: flex; flex-direction: column; gap: 20px; }
.ax-products-page__section { display: flex; flex-direction: column; gap: 10px; }
.ax-products-page__section + .ax-products-page__section {
  padding-top: 18px; border-top: 1px solid var(--b1);
}
.ax-products-page__section-title {
  display: flex; align-items: center; gap: 7px;
  font-size: 10px; font-weight: 800; letter-spacing: .1em;
  text-transform: uppercase; color: var(--t3); margin: 0;
}
.ax-products-page__cat-list { display: flex; flex-direction: column; gap: 2px; }
.ax-products-page__cat-item {
  display: flex; align-items: center; gap: 8px;
  padding: 8px 12px; border-radius: 8px;
  font-size: 13px; font-weight: 500; color: var(--t2);
  text-decoration: none; transition: background .15s, color .15s;
  border: 1px solid transparent;
}
.ax-products-page__cat-item:hover {
  background: var(--s3); color: var(--t1);
}
.ax-products-page__cat-item--active {
  background: rgba(220,38,38,.1); color: var(--r-hi);
  border-color: var(--r-border); font-weight: 700;
}
.ax-products-page__cat-dot {
  width: 5px; height: 5px; border-radius: 50%;
  background: currentColor; flex-shrink: 0; opacity: .5;
}
.ax-products-page__cat-item--active .ax-products-page__cat-dot { opacity: 1; }
.ax-products-page__input-wrap { position: relative; }
.ax-products-page__input {
  width: 100%; padding: 9px 12px 9px 36px;
  background: var(--s1); border: 1px solid var(--b1);
  border-radius: 9px; color: var(--t1); font-size: 13px;
  outline: none; transition: border-color .18s, box-shadow .18s;
  box-sizing: border-box;
}
.ax-products-page__input:focus {
  border-color: var(--r); box-shadow: 0 0 0 3px var(--r-glow);
}
.ax-products-page__input::placeholder { color: var(--t3); }
.ax-products-page__input-icon {
  position: absolute; left: 10px; top: 50%; transform: translateY(-50%);
  width: 14px; height: 14px; color: var(--t3); pointer-events: none;
}
.ax-products-page__input--price { padding-left: 12px; padding-right: 30px; }
.ax-products-page__price-row {
  display: grid; grid-template-columns: 1fr auto 1fr; gap: 6px; align-items: center;
}
.ax-products-page__price-sep { font-size: 12px; color: var(--t3); text-align: center; }
.ax-products-page__price-field { position: relative; }
.ax-products-page__currency-symbol {
  position: absolute; right: 9px; top: 50%; transform: translateY(-50%);
  font-size: 11px; color: var(--t3); pointer-events: none;
}
.ax-products-page__filter-actions {
  display: flex; flex-direction: column; gap: 8px;
  padding-top: 18px; border-top: 1px solid var(--b1);
}
.ax-products-page__apply-btn {
  display: flex; align-items: center; justify-content: center; gap: 8px;
  padding: 10px 16px; border-radius: 9px;
  background: var(--r); border: none; color: #fff;
  font-size: 13px; font-weight: 700; font-family: var(--f-h);
  cursor: pointer; transition: background .18s, box-shadow .18s;
  letter-spacing: .04em;
}
.ax-products-page__apply-btn:hover {
  background: var(--r-hi); box-shadow: 0 4px 16px var(--r-glow);
}
.ax-products-page__reset-link {
  display: block; text-align: center; font-size: 12px;
  color: var(--t3); text-decoration: none;
  padding: 8px; border-radius: 8px;
  border: 1px solid var(--b1); transition: color .15s, background .15s;
}
.ax-products-page__reset-link:hover { color: var(--t1); background: var(--s3); }
.ax-products-page__main { min-width: 0; }
.ax-products-page__pagination { margin-top: 40px; }
.ax-products-page__empty {
  display: flex; flex-direction: column; align-items: center;
  gap: 12px; padding: 72px 24px; text-align: center;
}
.ax-products-page__empty-icon {
  width: 64px; height: 64px; border-radius: 50%;
  background: var(--s2); display: flex; align-items: center; justify-content: center;
  border: 1px solid var(--b1);
}
.ax-products-page__empty-icon svg { width: 28px; height: 28px; color: var(--t3); }
.ax-products-page__empty-title {
  font-family: var(--f-h); font-size: 20px; font-weight: 700;
  color: var(--t1); margin: 0;
}
.ax-products-page__empty-sub { font-size: 14px; color: var(--t3); margin: 0; }
.ax-products-page__empty-link {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 10px 22px; border-radius: 10px;
  background: var(--s2); border: 1px solid var(--b1);
  color: var(--t2); font-size: 13px; font-weight: 700;
  text-decoration: none; transition: background .18s, color .18s; margin-top: 4px;
}
.ax-products-page__empty-link:hover { background: var(--r); color: #fff; }
.ax-products-page__modal-wrap {
  position: fixed; inset: 0; z-index: 9000; overflow-y: auto;
  display: flex; align-items: flex-end; justify-content: center;
}
.ax-products-page__modal-backdrop {
  position: fixed; inset: 0; background: rgba(0,0,0,.7);
  backdrop-filter: blur(4px);
}
.ax-products-page__modal-panel {
  position: relative; z-index: 1; width: 100%; max-width: 440px;
  max-height: 88vh; overflow-y: auto;
  background: var(--s2); border: 1px solid var(--b1);
  border-radius: 16px 16px 0 0; padding: 0 0 24px;
  margin: 0;
}
.ax-products-page__modal-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 18px 18px 14px; border-bottom: 1px solid var(--b1);
  position: sticky; top: 0; background: var(--s2); z-index: 1;
}
.ax-products-page__modal-title {
  font-family: var(--f-h); font-size: 15px; font-weight: 700;
  color: var(--t1); margin: 0;
}
.ax-products-page__modal-close {
  width: 28px; height: 28px; border-radius: 7px;
  background: var(--s3); border: 1px solid var(--b1);
  color: var(--t2); display: flex; align-items: center; justify-content: center;
  cursor: pointer; transition: background .15s, color .15s;
}
.ax-products-page__modal-close:hover { background: var(--r); color: #fff; border-color: var(--r); }
.ax-products-page__group-modal {
  position: relative; z-index: 1; width: 100%; max-width: 1100px;
  max-height: 90vh; overflow-y: auto;
  background: var(--s2); border: 1px solid var(--b1);
  border-radius: 16px; padding: 0 0 24px; margin: 24px;
}
.ax-products-page__group-grid {
  padding: 20px; display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 20px;
}
.ax-reviews__header {
  display: flex; flex-wrap: wrap; align-items: flex-start;
  gap: 24px; margin-bottom: 32px; justify-content: space-between;
}
.ax-reviews__header-left { display: flex; flex-direction: column; gap: 20px; }
.ax-reviews__summary {
  display: flex; flex-wrap: wrap; align-items: center; gap: 24px;
}
.ax-reviews__summary-score {
  display: flex; flex-direction: column; align-items: center; gap: 6px;
  min-width: 80px;
}
.ax-reviews__summary-avg {
  font-family: var(--f-d); font-size: 48px; line-height: 1;
  color: var(--t1); letter-spacing: -.02em;
}
.ax-reviews__summary-stars {
  display: flex; gap: 3px;
}
.ax-reviews__summary-star { width: 14px; height: 14px; color: var(--b2); }
.ax-reviews__summary-star--filled { color: var(--r-hi); }
.ax-reviews__summary-star--half { color: var(--r); opacity: .7; }
.ax-reviews__summary-count { font-size: 11px; color: var(--t3); white-space: nowrap; }
.ax-reviews__summary-bars { display: flex; flex-direction: column; gap: 5px; }
.ax-reviews__bar-row { display: flex; align-items: center; gap: 7px; }
.ax-reviews__bar-label { font-size: 11px; color: var(--t3); font-weight: 600; width: 10px; text-align: right; flex-shrink: 0; }
.ax-reviews__bar-star { width: 10px; height: 10px; color: var(--r-hi); flex-shrink: 0; }
.ax-reviews__bar-track {
  width: 100px; height: 6px; background: var(--s3);
  border-radius: 3px; overflow: hidden; flex-shrink: 0;
}
.ax-reviews__bar-fill {
  height: 100%; background: linear-gradient(90deg, var(--r), var(--r-hi));
  border-radius: 3px; transition: width .6s ease;
}
.ax-reviews__bar-count { font-size: 11px; color: var(--t3); width: 16px; flex-shrink: 0; }
.ax-reviews__sort { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.ax-reviews__sort-label { font-size: 12px; color: var(--t3); font-weight: 600; white-space: nowrap; }
.ax-reviews__sort-select-wrap { position: relative; }
.ax-reviews__sort-select {
  appearance: none; padding: 8px 32px 8px 12px;
  background: var(--s2); border: 1px solid var(--b1);
  border-radius: 9px; color: var(--t1); font-size: 12.5px; font-weight: 600;
  cursor: pointer; outline: none;
  transition: border-color .18s;
}
.ax-reviews__sort-select:focus { border-color: var(--r); }
.ax-reviews__sort-chevron {
  position: absolute; right: 10px; top: 50%; transform: translateY(-50%);
  width: 13px; height: 13px; color: var(--t3); pointer-events: none;
}
.ax-reviews__empty {
  display: flex; flex-direction: column; align-items: center;
  gap: 12px; padding: 60px 24px; color: var(--t3);
}
.ax-reviews__empty svg { width: 40px; height: 40px; opacity: .4; }
.ax-reviews__empty p { font-size: 14px; margin: 0; }
.ax-review-card__meta {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
}
.ax-review-card__meta-right {
  display: flex; align-items: center; gap: 8px;
}
.ax-review-card__verified {
  display: inline-flex; align-items: center; gap: 4px;
  font-size: 10px; font-weight: 700; letter-spacing: .05em;
  color: var(--r-hi); background: rgba(220,38,38,.08);
  padding: 2px 7px; border-radius: 20px;
  border: 1px solid var(--r-border);
}
.ax-review-card__toggle {
  display: inline-flex; align-items: center; gap: 4px;
  background: none; border: none; padding: 0;
  font-size: 12px; color: var(--r-hi); font-weight: 700;
  cursor: pointer; margin-top: 6px; text-decoration: underline;
  text-underline-offset: 2px;
}
.ax-review-card__reply-header {
  display: flex; align-items: center; gap: 5px;
  font-size: 11px; font-weight: 700; color: var(--t2);
  margin-bottom: 6px;
}
.ax-review-card__reply-header strong { color: var(--r-hi); }
.ax-review-card__reply-header span { color: var(--t3); }
.ax-sp {
  min-height: 100vh;
}
.ax-sp__header {
  padding: 64px 0 48px; text-align: center; position: relative;
  border-bottom: 1px solid var(--b1);
  background: radial-gradient(ellipse 80% 60% at 50% 0%, rgba(220,38,38,.06) 0%, transparent 70%);
}
.ax-sp__header-inner {
  display: flex; flex-direction: column; align-items: center; gap: 14px;
}
.ax-sp__header-icon {
  width: 52px; height: 52px; border-radius: 14px;
  background: var(--s2); border: 1px solid var(--b1);
  display: flex; align-items: center; justify-content: center;
  box-shadow: 0 4px 16px rgba(0,0,0,.3);
}
.ax-sp__header-icon svg { width: 24px; height: 24px; color: var(--r-hi); }
.ax-sp__header-title {
  font-family: var(--f-d); font-size: clamp(28px, 5vw, 42px);
  color: var(--t1); letter-spacing: .04em; margin: 0; line-height: 1.1;
}
.ax-sp__header-sub {
  font-size: 14px; color: var(--t3); margin: 0;
  max-width: 400px;
}
.ax-sp__container {
  max-width: 860px; margin: 0 auto; padding: 48px 24px 80px;
}
.ax-sp__legend {
  display: flex; flex-wrap: wrap; gap: 16px;
  padding: 14px 20px; background: var(--s2);
  border: 1px solid var(--b1); border-radius: 12px;
  margin-bottom: 32px;
}
.ax-sp__legend-item {
  display: flex; align-items: center; gap: 6px;
  font-size: 12px; font-weight: 600; color: var(--t2);
}
.ax-sp__legend-dot {
  width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0;
}
.ax-sp__list { display: flex; flex-direction: column; gap: 28px; }
.ax-sp__group {
  background: var(--s2); border: 1px solid var(--b1);
  border-radius: 14px; overflow: hidden;
  position: relative;
}
.ax-sp__group-header {
  display: flex; align-items: center; justify-content: space-between;
  padding: 16px 20px; border-bottom: 1px solid var(--b1);
  background: var(--s3);
}
.ax-sp__group-accent {
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, var(--r), transparent);
}
.ax-sp__group-name {
  font-family: var(--f-h); font-size: 14px; font-weight: 700;
  color: var(--t1); margin: 0;
}
.ax-sp__group-count {
  font-size: 11px; font-weight: 700; color: var(--t3);
  background: var(--s2); border: 1px solid var(--b1);
  padding: 2px 9px; border-radius: 20px;
}
.ax-sp__group-cards { display: flex; flex-direction: column; gap: 0; }
.ax-sp__group-cards > * + * { border-top: 1px solid var(--b1); }
.ax-sp__empty {
  display: flex; flex-direction: column; align-items: center;
  gap: 12px; padding: 64px 24px; text-align: center;
  background: var(--s2); border: 1px solid var(--b1); border-radius: 14px;
}
.ax-sp__empty svg { width: 40px; height: 40px; color: var(--t3); opacity: .4; }
.ax-sp__empty p { font-size: 14px; color: var(--t3); margin: 0; }
.ax-sc {
  display: flex; align-items: center; justify-content: space-between;
  padding: 14px 20px; text-decoration: none;
  transition: background .15s;
  position: relative;
}
.ax-sc:hover { background: rgba(255,255,255,.025); }
.ax-sc__info {
  display: flex; align-items: center; gap: 12px; min-width: 0;
}
.ax-sc__icon {
  width: 34px; height: 34px; border-radius: 9px;
  background: var(--s3); border: 1px solid var(--b1);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
}
.ax-sc__icon svg { width: 15px; height: 15px; color: var(--t3); }
.ax-sc__name {
  font-size: 13.5px; font-weight: 600; color: var(--t1);
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.ax-sc__status {
  display: flex; align-items: center; gap: 10px; flex-shrink: 0; margin-left: 16px;
}
.ax-sc__dot-wrap { position: relative; width: 10px; height: 10px; flex-shrink: 0; }
.ax-sc__dot {
  width: 10px; height: 10px; border-radius: 50%;
  position: absolute; inset: 0;
}
.ax-sc__pulse {
  width: 10px; height: 10px; border-radius: 50%;
  position: absolute; inset: 0; opacity: .5;
  animation: ax-sc-pulse 2s ease-out infinite;
}
.ax-sc__label {
  font-size: 12px; font-weight: 700; white-space: nowrap;
}
.ax-sc__arrow {
  width: 14px; height: 14px; color: var(--t3);
  transition: transform .15s;
}
.ax-sc:hover .ax-sc__arrow { transform: translateX(3px); color: var(--t1); }
.ax-policy-page {
  min-height: 60vh;
}
.ax-policy-page__hero {
  position: relative;
  padding: 64px 24px 52px;
  text-align: center;
  border-bottom: 1px solid var(--b1);
  overflow: hidden;
}
.ax-policy-page__hero-bg {
  position: absolute; inset: 0; pointer-events: none;
  background: radial-gradient(ellipse 70% 80% at 50% -10%, rgba(217,48,37,.06) 0%, transparent 70%);
}
.ax-policy-page__hero-bg::after {
  content: '';
  position: absolute; inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.02) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: radial-gradient(ellipse 80% 100% at 50% 0%, black 30%, transparent 100%);
}
.ax-policy-page__hero-inner {
  position: relative; z-index: 1;
  max-width: 600px; margin: 0 auto;
  display: flex; flex-direction: column; align-items: center; gap: 12px;
}
.ax-policy-page__hero-icon {
  width: 56px; height: 56px; border-radius: 16px;
  background: rgba(217,48,37,.10); border: 1px solid rgba(217,48,37,.25);
  display: flex; align-items: center; justify-content: center;
  color: var(--r-hi); box-shadow: 0 4px 20px rgba(217,48,37,.12);
  margin-bottom: 4px;
}
.ax-policy-page__hero-title {
  font-family: var(--f-d);
  font-size: clamp(30px, 5vw, 46px);
  color: var(--t1); margin: 0; letter-spacing: .04em; line-height: 1.05;
}
.ax-policy-page__hero-sub {
  font-size: 14px; color: var(--t3); margin: 0; max-width: 420px; line-height: 1.6;
}
.ax-policy-page__hero-meta {
  display: flex; align-items: center; gap: 10px;
  margin-top: 4px;
}
.ax-policy-page__hero-meta-item {
  display: flex; align-items: center; gap: 5px;
  font-size: 11px; font-weight: 700; letter-spacing: .07em;
  text-transform: uppercase; color: var(--t3);
}
.ax-policy-page__hero-sep {
  width: 3px; height: 3px; border-radius: 50%;
  background: var(--t3); opacity: .4;
}
.ax-policy-page__wrap {
  max-width: 800px; margin: 0 auto;
  padding: 40px 24px 80px;
}
.ax-policy-page__card {
  background: var(--s2); border: 1px solid var(--b1);
  border-radius: 16px; padding: 40px 40px 40px;
  position: relative; overflow: hidden;
}
.ax-policy-page__card-accent {
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, var(--r), var(--r-hi), transparent);
}
.ax-policy-content {
  color: rgba(242,242,242,.65);
  font-size: 14px; line-height: 1.8;
}
.ax-policy-content h1, .ax-policy-content h2, .ax-policy-content h3, .ax-policy-content h4 {
  font-family: var(--f-h); color: var(--t1); font-weight: 700;
  margin: 28px 0 10px; line-height: 1.3;
}
.ax-policy-content h1 { font-size: 24px; }
.ax-policy-content h2 { font-size: 18px; border-bottom: 1px solid var(--b1); padding-bottom: 8px; }
.ax-policy-content h3 { font-size: 15px; color: rgba(242,242,242,.85); }
.ax-policy-content p { margin: 0 0 14px; }
.ax-policy-content ul, .ax-policy-content ol {
  margin: 0 0 14px 20px; display: flex; flex-direction: column; gap: 6px;
}
.ax-policy-content li::marker { color: var(--r-hi); }
.ax-policy-content a { color: var(--r-hi); text-decoration: underline; }
.ax-policy-content strong { color: var(--t1); font-weight: 700; }
.ax-policy-content code {
  background: var(--s3); border: 1px solid var(--b1);
  border-radius: 4px; padding: 1px 6px; font-size: 12px; color: var(--r-hi);
}
.ax-policy-page__footer {
  margin-top: 32px;
  background: var(--s2); border: 1px solid var(--b1);
  border-radius: 12px; padding: 20px 24px;
  display: flex; align-items: center; justify-content: space-between; gap: 16px;
  flex-wrap: wrap;
}
.ax-policy-page__footer p {
  font-size: 13px; color: var(--t2); font-weight: 500; margin: 0;
}
.ax-policy-page__footer-link {
  display: inline-flex; align-items: center; gap: 6px;
  padding: 9px 18px; border-radius: 9px;
  background: var(--r); color: #fff;
  font-size: 12px; font-weight: 700; font-family: var(--f-h);
  text-decoration: none; letter-spacing: .05em;
  transition: background .18s, box-shadow .18s;
}
.ax-policy-page__footer-link:hover {
  background: var(--r-hi); box-shadow: 0 4px 16px var(--r-glow);
}
.ax-faq {
  padding: 56px 0 80px;
}
.ax-faq__header {
  margin-bottom: 12px;
}
.ax-faq__header-inner {
  display: flex; align-items: center; gap: 14px; margin-bottom: 8px;
}
.ax-faq__title-accent {
  display: block; width: 4px; height: 28px;
  background: linear-gradient(180deg, var(--r), var(--r-hi));
  border-radius: 2px; flex-shrink: 0;
}
.ax-faq__title {
  font-family: var(--f-d); font-size: clamp(26px, 4vw, 38px);
  color: var(--t1); letter-spacing: .04em; margin: 0; line-height: 1.1;
}
.ax-faq__subtitle {
  font-size: 14px; color: var(--t3); margin: 0 0 24px 18px; line-height: 1.6;
}
.ax-faq__badges {
  display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 32px;
}
.ax-faq__badge {
  padding: 6px 14px; border-radius: 20px; font-size: 11.5px;
  font-weight: 700; letter-spacing: .05em;
  background: var(--s2); border: 1px solid var(--b1);
  color: var(--t3); cursor: pointer;
  transition: background .15s, color .15s, border-color .15s;
}
.ax-faq__badge--active, .ax-faq__badge:hover {
  background: rgba(217,48,37,.10); border-color: var(--r-border); color: var(--r-hi);
}
.ax-faq__list {
  display: flex; flex-direction: column; gap: 8px;
}
.ax-faq__list--page {
  max-width: 800px; margin: 0 auto;
}
.ax-faq-item {
  background: var(--s2); border: 1px solid var(--b1);
  border-radius: 12px; overflow: hidden;
  transition: border-color .18s, box-shadow .18s;
}
.ax-faq-item:hover, .ax-faq-item--open {
  border-color: rgba(217,48,37,.20);
}
.ax-faq-item--open {
  box-shadow: 0 4px 20px rgba(0,0,0,.25);
}
.ax-faq-item__trigger {
  width: 100%; display: flex; align-items: center;
  justify-content: space-between; gap: 16px;
  padding: 18px 20px; background: none; border: none;
  cursor: pointer; text-align: left;
}
.ax-faq-item__trigger-left {
  display: flex; align-items: center; gap: 14px; min-width: 0;
}
.ax-faq-item__num {
  font-family: var(--f-d); font-size: 14px; letter-spacing: .08em;
  color: var(--r-hi); opacity: .5; flex-shrink: 0;
  transition: opacity .18s;
}
.ax-faq-item--open .ax-faq-item__num { opacity: 1; }
.ax-faq-item__q {
  font-family: var(--f-h); font-size: 14.5px; font-weight: 700;
  color: var(--t1); line-height: 1.4;
}
.ax-faq-item__icon {
  width: 28px; height: 28px; border-radius: 8px;
  background: var(--s3); border: 1px solid var(--b1);
  color: var(--t2); display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; transition: background .18s, color .18s, border-color .18s;
  position: relative;
}
.ax-faq-item--open .ax-faq-item__icon {
  background: rgba(217,48,37,.12); border-color: var(--r-border); color: var(--r-hi);
}
.ax-faq-item__icon-plus { position: absolute; transition: opacity .18s, transform .18s; }
.ax-faq-item__icon-minus { position: absolute; transition: opacity .18s, transform .18s; opacity: 0; }
.ax-faq-item--open .ax-faq-item__icon-plus { opacity: 0; transform: rotate(90deg); }
.ax-faq-item--open .ax-faq-item__icon-minus { opacity: 1; }
.ax-faq-item__answer {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.32s cubic-bezier(0.4,0,0.2,1);
}
.ax-faq-item__answer-inner {
  padding: 0 20px 20px 56px;
  border-top: 1px solid var(--b1);
}
.ax-faq-item__a {
  font-size: 13.5px; color: var(--t2); line-height: 1.75; margin: 14px 0 0;
}
.ax-faq__cta {
  margin-top: 40px;
  display: flex; align-items: center; gap: 20px; flex-wrap: wrap;
  background: var(--s2); border: 1px solid var(--b1);
  border-radius: 14px; padding: 24px 28px;
  position: relative; overflow: hidden;
}
.ax-faq__cta::before {
  content: '';
  position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, var(--r), var(--r-hi), transparent);
}
.ax-faq__cta-icon {
  width: 48px; height: 48px; border-radius: 12px;
  background: rgba(217,48,37,.10); border: 1px solid var(--r-border);
  display: flex; align-items: center; justify-content: center;
  color: var(--r-hi); flex-shrink: 0;
}
.ax-faq__cta-icon svg { width: 22px; height: 22px; }
.ax-faq__cta-text { flex: 1; min-width: 0; }
.ax-faq__cta-title {
  font-family: var(--f-h); font-size: 16px; font-weight: 700; color: var(--t1); margin: 0;
}
.ax-faq__cta-sub {
  font-size: 13px; color: var(--t3); margin: 3px 0 0;
}
.ax-faq__cta-btn {
  display: inline-flex; align-items: center; gap: 7px;
  padding: 10px 22px; border-radius: 10px;
  background: var(--r); color: #fff;
  font-size: 12.5px; font-weight: 700; font-family: var(--f-h);
  text-decoration: none; letter-spacing: .06em;
  transition: background .18s, box-shadow .18s; white-space: nowrap;
}
.ax-faq__cta-btn:hover {
  background: var(--r-hi); box-shadow: 0 6px 20px var(--r-glow);
}
.ax-hero__scan-line {
  position: absolute; top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(217,48,37,.5), transparent);
  animation: ax-scan 4s ease-in-out infinite;
}
.ax-hero__logo-wrap {
  width: 72px; height: 72px; border-radius: 18px;
  background: var(--s2); border: 1px solid var(--b1);
  display: flex; align-items: center; justify-content: center;
  overflow: hidden; margin-bottom: 4px;
  box-shadow: 0 8px 32px rgba(0,0,0,.4), 0 0 0 1px rgba(217,48,37,.12);
}
.ax-hero__logo-img {
  width: 100%; height: 100%; object-fit: cover;
}
.ax-hero__logo-wrap--placeholder {
  background: rgba(217,48,37,.08); border-color: rgba(217,48,37,.20);
  color: var(--r-hi);
}
.ax-cart-page {
  padding: 40px 0 80px;
}
.ax-cart-page__header {
  display: flex; align-items: center; gap: 14px; margin-bottom: 32px;
  padding-bottom: 20px; border-bottom: 1px solid var(--b1);
}
.ax-cart-page__header-accent {
  width: 4px; height: 28px; background: var(--r); border-radius: 2px; flex-shrink: 0;
}
.ax-cart-page__title {
  font-family: var(--f-d); font-size: 28px; letter-spacing: .04em; color: var(--t1); margin: 0;
}
.ax-cart-page__count {
  font-size: 12px; font-weight: 700; letter-spacing: .08em; color: var(--t3);
  background: var(--s2); border: 1px solid var(--b1); padding: 4px 10px; border-radius: 20px;
  font-family: var(--f-h); text-transform: uppercase;
}
.ax-sidebar__profile {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 16px 14px;
  border-bottom: 1px solid var(--b1);
  background: rgba(0,0,0,0.18);
}
.ax-sidebar__avatar {
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 10px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  color: var(--r-hi);
  font-family: var(--f-h);
  font-size: 16px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: 0 0 14px rgba(217,48,37,0.12);
}
.ax-sidebar__profile-info {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}
.ax-sidebar__profile-label {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--t3);
  font-family: var(--f-h);
  line-height: 1;
}
.ax-sidebar__profile-email {
  font-size: 12px;
  font-weight: 500;
  color: var(--t2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  line-height: 1.3;
}
.ax-sidebar__link-icon {
  width: 14px;
  height: 14px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}
.ax-sidebar__active-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--r-hi);
  box-shadow: 0 0 6px var(--r-glow);
  margin-left: auto;
  position: relative;
  z-index: 1;
  flex-shrink: 0;
}
.ax-sidebar__balance {
  margin-left: auto;
  position: relative;
  z-index: 1;
  font-size: 11px;
  font-weight: 700;
  color: var(--r-hi);
  font-family: var(--f-h);
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  padding: 2px 8px;
  border-radius: 99px;
  white-space: nowrap;
}
.ax-sidebar__footer {
  padding: 8px;
  border-top: 1px solid var(--b1);
  margin-top: 4px;
}
.ax-sidebar__logout {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  height: 36px;
  padding: 0 12px;
  font-family: var(--f-h);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--t3);
  background: none;
  border: 1px solid transparent;
  border-radius: 8px;
  cursor: pointer;
  transition: color 0.18s, border-color 0.18s, background 0.18s;
  text-align: left;
  position: relative;
  overflow: hidden;
}
.ax-sidebar__logout::before {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(248,113,113,0.07);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.2s ease;
  border-radius: inherit;
}
.ax-sidebar__logout:hover::before { transform: scaleX(1); }
.ax-sidebar__logout:hover {
  color: #f87171;
  border-color: rgba(248,113,113,0.25);
}
.ax-db__welcome {
  position: relative;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 14px;
  padding: 28px 28px 24px;
  margin-bottom: 20px;
  overflow: hidden;
}
.ax-db__welcome-glow {
  position: absolute;
  top: -60px;
  right: -60px;
  width: 280px;
  height: 280px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(0,136,255,0.12) 0%, transparent 70%);
  pointer-events: none;
}
.ax-db__welcome-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(var(--b1) 1px, transparent 1px),
    linear-gradient(90deg, var(--b1) 1px, transparent 1px);
  background-size: 40px 40px;
  mask-image: radial-gradient(ellipse 100% 100% at 100% 0%, black 0%, transparent 70%);
  -webkit-mask-image: radial-gradient(ellipse 100% 100% at 100% 0%, black 0%, transparent 70%);
  opacity: 0.4;
  pointer-events: none;
}
.ax-db__welcome-content {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  flex-wrap: wrap;
}
.ax-db__welcome-left {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
}
.ax-db__welcome-eyebrow {
  display: flex;
  align-items: center;
  gap: 7px;
  font-family: var(--f-h);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--r-hi);
  margin: 0;
}
.ax-db__welcome-eyebrow-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--r);
  box-shadow: 0 0 6px var(--r-glow);
  animation: ax-pulse 2s ease-in-out infinite;
  flex-shrink: 0;
}
.ax-db__welcome-title {
  font-family: var(--f-h);
  font-size: clamp(16px, 2.5vw, 22px);
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.02em;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ax-db__welcome-sub {
  font-size: 12px;
  color: var(--t3);
  margin: 0;
  line-height: 1.4;
}
.ax-db__welcome-badge {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  background: rgba(34,197,94,0.08);
  border: 1px solid rgba(34,197,94,0.22);
  border-radius: 99px;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #4ade80;
  flex-shrink: 0;
}
.ax-db__stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 14px;
  margin-bottom: 20px;
}
.ax-db__stat-card {
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 12px;
  overflow: hidden;
  transition: border-color 0.2s, box-shadow 0.2s, transform 0.15s;
}
.ax-db__stat-card:hover {
  border-color: var(--r-border);
  box-shadow: 0 8px 24px rgba(0,0,0,0.25), 0 0 16px var(--r-lo);
  transform: translateY(-1px);
}
.ax-db__stat-topbar {
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--r-glow), transparent);
  opacity: 0;
  transition: opacity 0.2s;
}
.ax-db__stat-card:hover .ax-db__stat-topbar { opacity: 1; }
.ax-db__stat-row {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 20px;
}
.ax-db__stat-icon {
  width: 38px;
  height: 38px;
  min-width: 38px;
  border-radius: 10px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r-hi);
  flex-shrink: 0;
  transition: background 0.2s, box-shadow 0.2s;
}
.ax-db__stat-card:hover .ax-db__stat-icon {
  background: var(--r-mid);
  box-shadow: 0 0 16px var(--r-glow);
}
.ax-db__stat-icon svg { width: 16px; height: 16px; }
.ax-db__stat-body {
  display: flex;
  flex-direction: column;
  gap: 3px;
  min-width: 0;
}
.ax-db__stat-label {
  font-family: var(--f-h);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--t3);
  white-space: nowrap;
}
.ax-db__stat-val {
  font-family: var(--f-h);
  font-size: 24px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.03em;
  line-height: 1;
}
.ax-db__stat-val--sm {
  font-size: 14px;
  font-weight: 700;
  letter-spacing: -0.01em;
}
.ax-db__section {
  margin-bottom: 20px;
}
.ax-db__section--danger { margin-bottom: 0; }
.ax-db__section-head {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 12px;
}
.ax-db__section-pip {
  display: block;
  width: 3px;
  height: 18px;
  background: linear-gradient(180deg, var(--r-hi), var(--r));
  border-radius: 3px;
  flex-shrink: 0;
  box-shadow: 0 0 8px var(--r-glow);
}
.ax-db__section-pip--danger {
  background: linear-gradient(180deg, #f87171, #ef4444);
  box-shadow: 0 0 8px rgba(239,68,68,0.4);
}
.ax-db__section-title {
  font-family: var(--f-h);
  font-size: 13px;
  font-weight: 800;
  color: var(--t1);
  letter-spacing: -0.01em;
  margin: 0;
}
.ax-db__section-link {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  margin-left: auto;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--r-hi);
  text-decoration: none;
  transition: gap 0.2s;
}
.ax-db__section-link:hover { gap: 7px; }
.ax-db__order-card {
  display: flex;
  align-items: center;
  gap: 14px;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 12px;
  padding: 16px 18px;
  transition: border-color 0.2s;
}
.ax-db__order-card:hover { border-color: var(--r-border); }
.ax-db__order-icon-wrap {
  width: 40px;
  height: 40px;
  min-width: 40px;
  border-radius: 10px;
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r-hi);
  flex-shrink: 0;
}
.ax-db__order-icon-wrap svg { width: 16px; height: 16px; }
.ax-db__order-info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ax-db__order-name {
  font-family: var(--f-h);
  font-size: 14px;
  font-weight: 700;
  color: var(--t1);
  letter-spacing: -0.01em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0;
}
.ax-db__order-variant {
  font-weight: 400;
  color: var(--t3);
  font-size: 12px;
}
.ax-db__order-more {
  display: inline-block;
  font-size: 10px;
  font-weight: 700;
  color: var(--r-hi);
  background: var(--r-lo);
  border: 1px solid var(--r-border);
  border-radius: 99px;
  padding: 1px 7px;
  vertical-align: middle;
  margin-left: 4px;
}
.ax-db__order-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 11.5px;
  color: var(--t3);
  margin: 0;
  flex-wrap: wrap;
}
.ax-db__order-id {
  color: var(--r-hi);
  text-decoration: none;
  font-weight: 600;
}
.ax-db__order-id:hover { text-decoration: underline; }
.ax-db__order-dot {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: var(--t3);
  flex-shrink: 0;
}
.ax-db__order-view {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 32px;
  padding: 0 14px;
  background: var(--s3);
  border: 1px solid var(--b2);
  border-radius: 8px;
  font-family: var(--f-h);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: var(--t2);
  text-decoration: none;
  flex-shrink: 0;
  transition: color 0.18s, border-color 0.18s, background 0.18s;
}
.ax-db__order-view:hover {
  color: var(--t1);
  border-color: var(--r-border);
  background: var(--r-lo);
}
.ax-db__empty {
  display: flex;
  align-items: center;
  gap: 14px;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 12px;
  padding: 20px 24px;
  font-size: 13.5px;
  color: var(--t3);
}
.ax-db__empty-link {
  color: var(--r-hi);
  text-decoration: none;
  font-weight: 600;
}
.ax-db__empty-link:hover { text-decoration: underline; }
.ax-db__quick-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 12px;
}
.ax-db__quick-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 12px;
  text-decoration: none;
  color: var(--t2);
  position: relative;
  overflow: hidden;
  transition: color 0.18s, border-color 0.18s;
}
.ax-db__quick-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--r-lo);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.22s ease;
}
.ax-db__quick-card:hover::before { transform: scaleX(1); }
.ax-db__quick-card:hover { color: var(--t1); border-color: var(--r-border); }
.ax-db__quick-icon {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border-radius: 9px;
  background: var(--s3);
  border: 1px solid var(--b2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r-hi);
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  transition: background 0.2s, border-color 0.2s, box-shadow 0.2s;
}
.ax-db__quick-card:hover .ax-db__quick-icon {
  background: var(--r-mid);
  border-color: var(--r-border);
  box-shadow: 0 0 12px var(--r-glow);
}
.ax-db__quick-icon svg { width: 15px; height: 15px; }
.ax-db__quick-body {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 0;
  position: relative;
  z-index: 1;
}
.ax-db__quick-title {
  font-family: var(--f-h);
  font-size: 12px;
  font-weight: 700;
  color: var(--t1);
  letter-spacing: 0.02em;
}
.ax-db__quick-sub {
  font-size: 11px;
  color: var(--t3);
}
.ax-db__quick-arrow {
  width: 13px;
  height: 13px;
  flex-shrink: 0;
  color: var(--t3);
  position: relative;
  z-index: 1;
  transition: color 0.18s, transform 0.2s;
}
.ax-db__quick-card:hover .ax-db__quick-arrow {
  color: var(--r-hi);
  transform: translateX(3px);
}
.ax-db__action-row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  padding: 14px 18px;
  background: var(--s1);
  border: 1px solid var(--b1);
  border-radius: 12px;
}
.ax-db__action-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  height: 34px;
  padding: 0 16px;
  font-family: var(--f-h);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  background: transparent;
  border: 1px solid var(--b2);
  border-radius: 8px;
  color: var(--t3);
  cursor: pointer;
  transition: color 0.18s, border-color 0.18s, background 0.18s;
}
.ax-db__action-btn:hover {
  color: var(--t1);
  border-color: var(--r-border);
  background: var(--r-lo);
}
.ax-db__action-btn:disabled { opacity: 0.5; pointer-events: none; }
.ax-db__action-btn--danger {
  border-color: rgba(248,113,113,0.25);
  color: #f87171;
}
.ax-db__action-btn--danger:hover {
  background: rgba(248,113,113,0.08);
  border-color: rgba(248,113,113,0.45);
  color: #f87171;
}
.ax-dm {
  position: fixed;
  inset: 0;
  z-index: 9998;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  box-sizing: border-box;
}
.ax-dm__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.88);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  cursor: pointer;
}
.ax-dm__panel {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 420px;
  background: #111116;
  border: 1px solid rgba(239,68,68,0.25);
  border-radius: 16px;
  box-shadow: 0 0 0 1px rgba(255,255,255,0.04), 0 32px 80px rgba(0,0,0,0.8), 0 0 50px rgba(239,68,68,0.08);
  overflow: hidden;
  box-sizing: border-box;
}
.ax-dm__bar {
  height: 3px;
  background: linear-gradient(90deg, transparent, #ef4444, #f87171, #ef4444, transparent);
}
.ax-dm__close {
  position: absolute;
  top: 14px;
  right: 14px;
  width: 30px;
  height: 30px;
  background: #1e1e28;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 8px;
  color: rgba(242,242,242,0.40);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
  padding: 0;
}
.ax-dm__close:hover {
  background: rgba(239,68,68,0.15);
  color: #f87171;
  border-color: rgba(239,68,68,0.30);
}
.ax-dm__header {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 22px 24px 16px;
}
.ax-dm__icon {
  width: 46px;
  height: 46px;
  min-width: 46px;
  border-radius: 12px;
  background: rgba(239,68,68,0.10);
  border: 1px solid rgba(239,68,68,0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #f87171;
  flex-shrink: 0;
}
.ax-dm__title {
  font-family: var(--f-h);
  font-size: 17px;
  font-weight: 800;
  color: #f2f2f2;
  letter-spacing: -0.02em;
  margin: 0;
  line-height: 1.2;
}
.ax-dm__subtitle {
  font-size: 12px;
  color: rgba(242,242,242,0.35);
  margin: 3px 0 0;
  line-height: 1.3;
}
.ax-dm__body {
  padding: 0 24px 24px;
}
.ax-dm__desc {
  font-size: 13px;
  color: rgba(242,242,242,0.45);
  line-height: 1.65;
  margin: 0 0 20px;
}
.ax-dm__btns {
  display: flex;
  gap: 10px;
}
.ax-dm__btn {
  flex: 1;
  height: 42px;
  border-radius: 10px;
  font-family: var(--f-h);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  transition: background 0.2s, border-color 0.2s, box-shadow 0.2s;
  border: 1px solid transparent;
}
.ax-dm__btn:disabled { opacity: 0.5; pointer-events: none; }
.ax-dm__btn--cancel {
  background: transparent;
  border-color: rgba(255,255,255,0.10);
  color: rgba(242,242,242,0.50);
}
.ax-dm__btn--cancel:hover {
  background: rgba(255,255,255,0.05);
  color: rgba(242,242,242,0.75);
}
.ax-dm__btn--delete {
  background: #ef4444;
  border-color: #ef4444;
  color: #fff;
}
.ax-dm__btn--delete:hover {
  background: #dc2626;
  box-shadow: 0 4px 16px rgba(239,68,68,0.35);
}
.ax-sp {
  max-width: 860px;
  margin: 0 auto;
  padding: 40px 20px 60px;
}
.ax-sp__header {
  margin-bottom: 36px;
}
.ax-sp__header-inner {
  display: flex;
  align-items: center;
  gap: 16px;
}
.ax-sp__header-icon {
  width: 48px;
  height: 48px;
  min-width: 48px;
  border-radius: 14px;
  background: rgba(var(--r-lo, 180,30,30), 0.12);
  border: 1px solid rgba(var(--r-lo, 180,30,30), 0.22);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r);
}
.ax-sp__header-icon svg { width: 22px; height: 22px; }
.ax-sp__header-title {
  font-family: var(--f-h);
  font-size: clamp(22px, 3vw, 28px);
  font-weight: 900;
  color: #f2f2f2;
  letter-spacing: -0.025em;
  margin: 0;
}
.ax-sp__header-sub {
  font-size: 13px;
  color: rgba(242,242,242,0.40);
  margin: 4px 0 0;
}
.ax-sp__container {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.ax-sp__list {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.ax-sp__group {
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  overflow: hidden;
}
.ax-sp__group-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 18px;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  background: rgba(255,255,255,0.02);
}
.ax-sp__group-accent {
  width: 3px;
  height: 16px;
  border-radius: 2px;
  background: var(--r);
  flex-shrink: 0;
}
.ax-sp__group-name {
  flex: 1;
  font-family: var(--f-h);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.55);
  margin: 0;
}
.ax-sp__group-count {
  font-size: 10px;
  color: rgba(242,242,242,0.25);
  font-family: var(--f-h);
  letter-spacing: 0.08em;
}
.ax-sp__group-cards {
  display: flex;
  flex-direction: column;
}
.ax-sc {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 14px 18px;
  border-bottom: 1px solid rgba(255,255,255,0.04);
  text-decoration: none;
  transition: background 0.15s;
}
.ax-sc:last-child { border-bottom: none; }
.ax-sc:hover { background: rgba(255,255,255,0.03); }
.ax-sp__list > .ax-sc {
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 12px;
}
.ax-sp__list > .ax-sc:hover { background: rgba(255,255,255,0.04); }
.ax-sc__info {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  min-width: 0;
}
.ax-sc__icon {
  width: 34px;
  height: 34px;
  min-width: 34px;
  border-radius: 9px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(242,242,242,0.30);
  flex-shrink: 0;
}
.ax-sc__icon svg { width: 15px; height: 15px; }
.ax-sc__name {
  font-size: 13px;
  font-weight: 500;
  color: rgba(242,242,242,0.80);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ax-sc__status {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.ax-sc__dot-wrap {
  position: relative;
  width: 10px;
  height: 10px;
  flex-shrink: 0;
}
.ax-sc__dot {
  position: absolute;
  inset: 0;
  border-radius: 50%;
}
.ax-sc__pulse {
  position: absolute;
  inset: -3px;
  border-radius: 50%;
  opacity: 0.25;
  animation: ax-sc-pulse 2.4s ease-out infinite;
}
.ax-sc__label {
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
}
.ax-sc__arrow {
  width: 14px;
  height: 14px;
  color: rgba(242,242,242,0.20);
  transition: color 0.15s, transform 0.15s;
}
.ax-sc:hover .ax-sc__arrow {
  color: rgba(242,242,242,0.50);
  transform: translateX(2px);
}
.ax-sp__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 60px 20px;
  color: rgba(242,242,242,0.25);
  text-align: center;
}
.ax-sp__empty svg { width: 40px; height: 40px; }
.ax-sp__legend {
  display: flex;
  flex-wrap: wrap;
  gap: 16px 24px;
  padding: 16px 0 0;
  border-top: 1px solid rgba(255,255,255,0.05);
}
.ax-sp__legend-item {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  color: rgba(242,242,242,0.35);
  font-family: var(--f-h);
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
.ax-sp__legend-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}
.ax-tks-notice {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 10px;
  padding: 12px 16px;
  margin-bottom: 20px;
  font-size: 12px;
  color: rgba(242,242,242,0.45);
  line-height: 1.55;
}
.ax-tks-notice__icon {
  width: 16px;
  height: 16px;
  min-width: 16px;
  margin-top: 1px;
  color: rgba(242,242,242,0.30);
  flex-shrink: 0;
}
.ax-tks-notice__link {
  color: var(--r);
  text-decoration: none;
}
.ax-tks-notice__link:hover { text-decoration: underline; }
.ax-tks {
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  overflow: hidden;
  position: relative;
}
.ax-tks__top-line {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--r), transparent 70%);
}
.ax-tks-table-wrap {
  overflow-x: auto;
}
.ax-tks-table {
  width: 100%;
  border-collapse: collapse;
}
.ax-tks-table__head { background: rgba(255,255,255,0.03); }
.ax-tks-table__th {
  padding: 12px 18px;
  text-align: left;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.30);
  white-space: nowrap;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
.ax-tks-table__th--status { width: 180px; }
.ax-tks-table__th--date { width: 160px; }
.ax-tks-table__th--action { width: 80px;  }
.ax-tks-table__row {
  border-bottom: 1px solid rgba(255,255,255,0.04);
  transition: background 0.12s;
}
.ax-tks-table__row:last-child { border-bottom: none; }
.ax-tks-table__row:hover { background: rgba(255,255,255,0.03); }
.ax-tks-table__td {
  padding: 14px 18px;
  font-size: 12px;
  color: rgba(242,242,242,0.60);
  vertical-align: middle;
}
.ax-tks-table__td--date { white-space: nowrap; font-size: 11px; }
.ax-tks-table__subject-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
}
.ax-tks-table__subject-icon {
  width: 30px;
  height: 30px;
  min-width: 30px;
  border-radius: 8px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(242,242,242,0.25);
  flex-shrink: 0;
}
.ax-tks-table__subject-icon svg { width: 13px; height: 13px; }
.ax-tks-table__subject-link {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: #f2f2f2;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 340px;
}
.ax-tks-table__subject-link:hover { color: var(--r); }
.ax-tks-table__ticket-id {
  display: block;
  font-size: 10px;
  color: rgba(242,242,242,0.25);
  margin-top: 2px;
  font-family: var(--f-h);
}
.ax-tks-badge {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 3px 10px;
  border-radius: 20px;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
  background: rgba(255,255,255,0.05);
  color: rgba(242,242,242,0.45);
  border: 1px solid rgba(255,255,255,0.08);
}
.ax-tks-badge--pending {
  background: rgba(250,204,21,0.10);
  color: #facc15;
  border-color: rgba(250,204,21,0.20);
}
.ax-tks-badge--open {
  background: rgba(96,165,250,0.10);
  color: #60a5fa;
  border-color: rgba(96,165,250,0.20);
}
.ax-tks-badge--closed {
  background: rgba(74,222,128,0.10);
  color: #4ade80;
  border-color: rgba(74,222,128,0.20);
}
.ax-tks-table__action-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 5px 12px;
  border-radius: 7px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  color: rgba(242,242,242,0.50);
  font-size: 11px;
  font-family: var(--f-h);
  font-weight: 600;
  text-decoration: none;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
  white-space: nowrap;
}
.ax-tks-table__action-btn:hover {
  background: rgba(255,255,255,0.08);
  color: #f2f2f2;
  border-color: rgba(255,255,255,0.14);
}
.ax-tks__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 60px 20px;
  text-align: center;
  color: rgba(242,242,242,0.25);
}
.ax-tks__empty svg { width: 40px; height: 40px; }
.ax-tks__empty p { font-size: 14px; font-weight: 500; }
.ax-tks__empty-sub { font-size: 12px; color: rgba(242,242,242,0.20); }
.ax-tc-back {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  font-family: var(--f-h);
  font-weight: 600;
  letter-spacing: 0.07em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.35);
  text-decoration: none;
  margin-bottom: 6px;
  transition: color 0.15s;
}
.ax-tc-back:hover { color: rgba(242,242,242,0.70); }
.ax-tc-back svg { width: 13px; height: 13px; }
.ax-tc-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 18px;
}
.ax-tc-meta__pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 20px;
  font-size: 11px;
  color: rgba(242,242,242,0.40);
  font-family: var(--f-h);
  text-decoration: none;
  white-space: nowrap;
}
.ax-tc-meta__pill svg { width: 12px; height: 12px; flex-shrink: 0; }
.ax-tc-meta__pill--link:hover {
  background: rgba(255,255,255,0.07);
  color: rgba(242,242,242,0.65);
}
.ax-tc-status {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}
.ax-tc-status__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  flex-shrink: 0;
}
.ax-tc-status--pending { color: #facc15; background: rgba(250,204,21,0.10); border-color: rgba(250,204,21,0.20); }
.ax-tc-status--open { color: #60a5fa; background: rgba(96,165,250,0.10); border-color: rgba(96,165,250,0.20); }
.ax-tc-status--closed { color: #4ade80; background: rgba(74,222,128,0.10); border-color: rgba(74,222,128,0.20); }
.ax-tc-chat {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  position: relative;
}
.ax-tc-chat__messages {
  height: calc(100vh - 420px);
  min-height: 320px;
  overflow-y: auto;
  padding: 24px 20px 24px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  scrollbar-width: thin;
  scrollbar-color: rgba(255,255,255,0.08) transparent;
}
.ax-tc-chat__messages::-webkit-scrollbar { width: 4px; }
.ax-tc-chat__messages::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.08); border-radius: 4px; }
.ax-tc-msg {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
.ax-tc-msg--mine {
  flex-direction: row-reverse;
}
.ax-tc-msg__avatar {
  flex-shrink: 0;
}
.ax-tc-msg__avatar-img {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  object-fit: cover;
  background: rgba(255,255,255,0.05);
}
.ax-tc-msg__avatar-icon {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(242,242,242,0.30);
}
.ax-tc-msg__avatar-icon--me {
  background: rgba(var(--r-lo, 180,30,30), 0.12);
  border-color: rgba(var(--r-lo, 180,30,30), 0.20);
  color: var(--r);
}
.ax-tc-msg__avatar-icon svg { width: 16px; height: 16px; }
.ax-tc-msg__body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-width: 72%;
}
.ax-tc-msg--mine .ax-tc-msg__body {
  align-items: flex-end;
}
.ax-tc-msg__meta {
  display: flex;
  align-items: center;
  gap: 8px;
}
.ax-tc-msg--mine .ax-tc-msg__meta {
  flex-direction: row-reverse;
}
.ax-tc-msg__sender {
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  color: rgba(242,242,242,0.50);
  letter-spacing: 0.04em;
}
.ax-tc-msg__sender--me { color: var(--r); }
.ax-tc-msg__time {
  font-size: 10px;
  color: rgba(242,242,242,0.25);
  font-family: var(--f-h);
}
.ax-tc-msg__bubble {
  padding: 10px 14px;
  border-radius: 12px;
  font-size: 13px;
  line-height: 1.60;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.ax-tc-msg__bubble--theirs {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.06);
  color: rgba(242,242,242,0.75);
  border-top-left-radius: 4px;
}
.ax-tc-msg__bubble--mine {
  background: var(--r);
  border: 1px solid rgba(255,255,255,0.10);
  color: rgba(255,255,255,0.92);
  border-top-right-radius: 4px;
}
.ax-tc-chat__footer {
  border-top: 1px solid rgba(255,255,255,0.05);
  background: rgba(255,255,255,0.02);
  padding: 14px 16px;
}
.ax-tc-chat__closed {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 12px;
  color: rgba(242,242,242,0.30);
  font-family: var(--f-h);
  letter-spacing: 0.05em;
  padding: 4px 0;
}
.ax-tc-chat__closed svg { width: 15px; height: 15px; flex-shrink: 0; }
.ax-tc-reply {
  display: flex;
  align-items: flex-end;
  gap: 10px;
  position: relative;
}
.ax-tc-reply__input {
  flex: 1;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 10px;
  color: #f2f2f2;
  font-size: 13px;
  font-family: var(--f-b);
  padding: 10px 14px;
  resize: none;
  max-height: 120px;
  overflow-y: auto;
  outline: none;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.ax-tc-reply__input:focus {
  border-color: rgba(var(--r-lo, 180,30,30), 0.50);
  box-shadow: 0 0 0 3px rgba(var(--r-lo, 180,30,30), 0.10);
}
.ax-tc-reply__input::placeholder { color: rgba(242,242,242,0.20); }
.ax-tc-reply__input:disabled { opacity: 0.45; }
.ax-tc-reply__send {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 10px 16px;
  height: 42px;
  background: var(--r);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 10px;
  color: #fff;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.07em;
  cursor: pointer;
  white-space: nowrap;
  transition: background 0.15s, box-shadow 0.15s;
  flex-shrink: 0;
}
.ax-tc-reply__send:hover {
  background: var(--r-hi, var(--r));
  box-shadow: 0 4px 14px rgba(var(--r-lo,180,30,30),0.35);
}
.ax-tc-reply__send:disabled { opacity: 0.5; pointer-events: none; }
.ax-tc-reply__send svg { width: 15px; height: 15px; flex-shrink: 0; }
.ax-tc-reply__error {
  position: absolute;
  bottom: calc(100% + 6px);
  left: 0;
  font-size: 11px;
  color: #f87171;
}
.ax-bal-top {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-bottom: 20px;
}
.ax-bal-card {
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  padding: 22px 22px 20px;
  position: relative;
  overflow: hidden;
}
.ax-bal-card__top-line {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, rgba(255,255,255,0.10), transparent 70%);
}
.ax-bal-card__top-line--accent {
  background: linear-gradient(90deg, var(--r), transparent 70%);
}
.ax-bal-card__label {
  display: flex;
  align-items: center;
  gap: 7px;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.30);
  margin-bottom: 14px;
}
.ax-bal-card__label svg { width: 14px; height: 14px; flex-shrink: 0; }
.ax-bal-card__amount {
  font-family: var(--f-h);
  font-size: 32px;
  font-weight: 900;
  color: #f2f2f2;
  letter-spacing: -0.03em;
  line-height: 1;
  margin-bottom: 8px;
}
.ax-bal-card__hint {
  font-size: 11px;
  color: rgba(242,242,242,0.25);
  line-height: 1.4;
}
.ax-bal-topup { margin-top: 0; }
.ax-bal-topup__hint {
  font-size: 11px;
  color: rgba(242,242,242,0.30);
  margin-bottom: 12px;
}
.ax-bal-topup__altcha { margin-bottom: 10px; }
.ax-bal-topup__grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.ax-bal-topup__btn {
  position: relative;
  padding: 8px 16px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 8px;
  color: rgba(242,242,242,0.70);
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  cursor: pointer;
  transition: background 0.15s, border-color 0.15s, color 0.15s;
}
.ax-bal-topup__btn:hover:not(:disabled) {
  background: rgba(255,255,255,0.09);
  border-color: rgba(255,255,255,0.16);
  color: #f2f2f2;
}
.ax-bal-topup__btn--loading {
  border-color: rgba(var(--r-lo,180,30,30),0.30);
  background: rgba(var(--r-lo,180,30,30),0.08);
}
.ax-bal-topup__spin-wrap {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--r);
}
.ax-bal-history {
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  overflow: hidden;
  position: relative;
}
.ax-bal-history__top-line {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, rgba(255,255,255,0.08), transparent 70%);
}
.ax-bal-history__header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 18px 20px 14px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.35);
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
.ax-bal-history__header svg { width: 14px; height: 14px; flex-shrink: 0; }
.ax-bal-table-wrap { overflow-x: auto; }
.ax-bal-table {
  width: 100%;
  border-collapse: collapse;
}
.ax-bal-table__head { background: rgba(255,255,255,0.02); }
.ax-bal-table__th {
  padding: 11px 18px;
  text-align: left;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.25);
  white-space: nowrap;
  border-bottom: 1px solid rgba(255,255,255,0.04);
}
.ax-bal-table__th--num { text-align: right; }
.ax-bal-table__th--date { width: 160px; }
.ax-bal-table__row {
  border-bottom: 1px solid rgba(255,255,255,0.03);
  transition: background 0.12s;
}
.ax-bal-table__row:last-child { border-bottom: none; }
.ax-bal-table__row:hover { background: rgba(255,255,255,0.025); }
.ax-bal-table__td {
  padding: 12px 18px;
  font-size: 12px;
  color: rgba(242,242,242,0.55);
  vertical-align: middle;
}
.ax-bal-table__td--id { font-family: var(--f-h); font-size: 10px; color: rgba(242,242,242,0.25); }
.ax-bal-table__td--num { text-align: right; font-family: var(--f-h); font-weight: 600; color: rgba(242,242,242,0.70); }
.ax-bal-table__td--date { white-space: nowrap; font-size: 11px; }
.ax-bal-table__link { color: var(--r); text-decoration: none; }
.ax-bal-table__link:hover { text-decoration: underline; }
.ax-bal-type {
  display: inline-block;
  padding: 2px 8px;
  border-radius: 4px;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: capitalize;
  background: rgba(255,255,255,0.05);
  color: rgba(242,242,242,0.40);
  border: 1px solid rgba(255,255,255,0.07);
}
.ax-bal-history__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 50px 20px;
  color: rgba(242,242,242,0.20);
  text-align: center;
  font-size: 13px;
}
.ax-bal-history__empty svg { width: 36px; height: 36px; }
.ax-aff-top {
  display: grid;
  grid-template-columns: 1fr 220px;
  gap: 16px;
  margin-bottom: 20px;
}
.ax-aff-link-card {
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  padding: 22px;
  position: relative;
  overflow: hidden;
  grid-column: 1 / -1;
}
.ax-aff-link-card__top-line {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--r), transparent 70%);
}
.ax-aff-link-card__label {
  display: flex;
  align-items: center;
  gap: 7px;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.30);
  margin-bottom: 14px;
}
.ax-aff-link-card__label svg { width: 13px; height: 13px; flex-shrink: 0; }
.ax-aff-link-card__row {
  display: flex;
  align-items: center;
  gap: 12px;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 10px;
  padding: 10px 14px;
  margin-bottom: 10px;
}
.ax-aff-link-card__url {
  flex: 1;
  font-size: 12px;
  font-family: var(--f-h);
  color: rgba(242,242,242,0.55);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ax-aff-link-card__actions {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}
.ax-aff-link-card__btn {
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 7px;
  color: rgba(242,242,242,0.35);
  cursor: pointer;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.ax-aff-link-card__btn:hover {
  background: rgba(255,255,255,0.07);
  color: #f2f2f2;
  border-color: rgba(255,255,255,0.15);
}
.ax-aff-link-card__btn svg { width: 14px; height: 14px; }
.ax-aff-link-card__hint {
  font-size: 11px;
  color: rgba(242,242,242,0.25);
}
.ax-aff-stat-card {
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  padding: 22px;
  position: relative;
  overflow: hidden;
}
.ax-aff-stat-card__top-line {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, rgba(74,222,128,0.60), transparent 70%);
}
.ax-aff-stat-card__label {
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.30);
  margin-bottom: 14px;
}
.ax-aff-stat-card__value {
  font-family: var(--f-h);
  font-size: 40px;
  font-weight: 900;
  color: #4ade80;
  letter-spacing: -0.03em;
  line-height: 1;
  margin-bottom: 8px;
}
.ax-aff-stat-card__unit {
  font-size: 22px;
  vertical-align: top;
  margin-left: 2px;
}
.ax-aff-stat-card__hint {
  font-size: 11px;
  color: rgba(242,242,242,0.25);
}
.ax-aff-quick {
  grid-column: 1 / -1;
}
.ax-aff-quick__item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 12px;
  text-decoration: none;
  transition: background 0.15s, border-color 0.15s;
  height: 100%;
}
.ax-aff-quick__item:hover {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.10);
}
.ax-aff-quick__icon {
  width: 36px;
  height: 36px;
  min-width: 36px;
  border-radius: 9px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.07);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(242,242,242,0.30);
  flex-shrink: 0;
}
.ax-aff-quick__icon svg { width: 15px; height: 15px; }
.ax-aff-quick__text {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ax-aff-quick__name {
  font-size: 13px;
  font-weight: 500;
  color: rgba(242,242,242,0.70);
}
.ax-aff-quick__sub {
  font-size: 11px;
  color: rgba(242,242,242,0.25);
}
.ax-aff-quick__arrow {
  width: 14px;
  height: 14px;
  color: rgba(242,242,242,0.20);
  flex-shrink: 0;
  transition: transform 0.15s, color 0.15s;
}
.ax-aff-quick__item:hover .ax-aff-quick__arrow {
  color: rgba(242,242,242,0.45);
  transform: translateX(2px);
}
.ax-aff-referred {
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  overflow: hidden;
  position: relative;
}
.ax-aff-referred__top-line {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, rgba(255,255,255,0.08), transparent 70%);
}
.ax-aff-referred__header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 18px 20px 14px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.30);
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
.ax-aff-referred__header svg { width: 14px; height: 14px; flex-shrink: 0; }
.ax-aff-table-wrap { overflow-x: auto; }
.ax-aff-table {
  width: 100%;
  border-collapse: collapse;
}
.ax-aff-table__head { background: rgba(255,255,255,0.02); }
.ax-aff-table__th {
  padding: 11px 18px;
  text-align: left;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.25);
  white-space: nowrap;
  border-bottom: 1px solid rgba(255,255,255,0.04);
}
.ax-aff-table__th--num { text-align: right; }
.ax-aff-table__th--date { width: 160px; }
.ax-aff-table__row {
  border-bottom: 1px solid rgba(255,255,255,0.03);
  transition: background 0.12s;
}
.ax-aff-table__row:last-child { border-bottom: none; }
.ax-aff-table__row:hover { background: rgba(255,255,255,0.025); }
.ax-aff-table__td {
  padding: 12px 18px;
  font-size: 12px;
  color: rgba(242,242,242,0.55);
  vertical-align: middle;
}
.ax-aff-table__td--num { text-align: right; font-family: var(--f-h); font-weight: 600; color: #4ade80; }
.ax-aff-table__td--date { white-space: nowrap; font-size: 11px; }
.ax-aff-referred__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 50px 20px;
  color: rgba(242,242,242,0.20);
  text-align: center;
  font-size: 13px;
}
.ax-aff-referred__empty svg { width: 36px; height: 36px; }
.ax-aff-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 64px 24px;
  text-align: center;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.05);
  border-radius: 14px;
}
.ax-aff-empty__icon {
  width: 60px;
  height: 60px;
  border-radius: 18px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.07);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(242,242,242,0.20);
  margin-bottom: 4px;
}
.ax-aff-empty__icon svg { width: 26px; height: 26px; }
.ax-aff-empty__title {
  font-family: var(--f-h);
  font-size: 18px;
  font-weight: 800;
  color: rgba(242,242,242,0.65);
  margin: 0;
}
.ax-aff-empty__sub {
  font-size: 13px;
  color: rgba(242,242,242,0.30);
  max-width: 380px;
  line-height: 1.55;
  margin: 0;
}
.ax-aff-empty__cta {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 9px 20px;
  margin-top: 8px;
  background: var(--r);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 9px;
  color: #fff;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background 0.15s, box-shadow 0.15s;
}
.ax-aff-empty__cta:hover {
  box-shadow: 0 4px 16px rgba(var(--r-lo,180,30,30),0.35);
}
.ax-hero__bg,
.ax-hero__grid,
.ax-hero__glow-left,
.ax-hero__glow-right,
.ax-hero__scan-line { display: none !important; }
.ax-hero {
  position: relative;
  width: 100%;
  padding: 88px 24px 100px;
  overflow: hidden;
  background: transparent;
}
.ax-hero__sep {
  position: absolute;
  bottom: 0;
  left: 5%;
  right: 5%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.07) 30%, rgba(255,255,255,0.07) 70%, transparent);
}
.ax-hero__inner {
  position: relative;
  z-index: 1;
  max-width: 760px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 22px;
  text-align: center;
}
.ax-hero__logo {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 72px;
  border-radius: 20px;
  background: rgba(255,255,255,0.035);
  border: 1px solid rgba(255,255,255,0.08);
  margin-bottom: 4px;
  flex-shrink: 0;
}
.ax-hero__logo-ring {
  position: absolute;
  inset: -5px;
  border-radius: 25px;
  border: 1px dashed rgba(255,255,255,0.07);
  pointer-events: none;
}
.ax-hero__logo-img {
  width: 44px;
  height: 44px;
  object-fit: contain;
  border-radius: 10px;
}
.ax-hero__logo--text {
  color: var(--r);
}
.ax-hero__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.40);
}
.ax-hero__eyebrow-text { color: rgba(242,242,242,0.50); }
.ax-hero__eyebrow-bar {
  display: inline-block;
  width: 24px;
  height: 1px;
  background: rgba(255,255,255,0.15);
  flex-shrink: 0;
}
.ax-hero__headline {
  font-family: var(--f-h);
  font-size: clamp(32px, 5.5vw, 58px);
  font-weight: 900;
  line-height: 1.06;
  letter-spacing: -0.03em;
  color: #f2f2f2;
  margin: 0;
  max-width: 700px;
}
.ax-hero__headline mark,
.ax-hero__headline .ax-hl {
  color: var(--r);
  background: none;
  font-style: normal;
}
.ax-hero__sub {
  font-size: clamp(14px, 1.8vw, 16px);
  color: rgba(242,242,242,0.40);
  line-height: 1.70;
  max-width: 560px;
  margin: 0;
}
.ax-hero__ctas {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 4px;
}
.ax-hero__cta {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0 28px;
  height: 48px;
  border-radius: 12px;
  font-family: var(--f-h);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  overflow: hidden;
  transition: transform 0.15s, box-shadow 0.20s;
  white-space: nowrap;
}
.ax-hero__cta:hover { transform: translateY(-2px); }
.ax-hero__cta svg { width: 15px; height: 15px; flex-shrink: 0; }
.ax-hero__cta-shimmer {
  position: absolute;
  top: 0; left: -100%;
  width: 60%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.18), transparent);
  transform: skewX(-20deg);
  transition: left 0.55s ease;
  pointer-events: none;
}
.ax-hero__cta--primary:hover .ax-hero__cta-shimmer { left: 160%; }
.ax-hero__cta--primary {
  background: var(--r);
  border: 1px solid rgba(255,255,255,0.10);
  color: #fff;
  box-shadow: 0 4px 20px rgba(var(--r-lo,180,30,30),0.30);
}
.ax-hero__cta--primary:hover {
  box-shadow: 0 8px 36px rgba(var(--r-lo,180,30,30),0.45);
}
.ax-hero__cta--secondary {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.09);
  color: rgba(242,242,242,0.65);
}
.ax-hero__cta--secondary:hover {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.15);
  color: #f2f2f2;
  box-shadow: 0 4px 16px rgba(0,0,0,0.20);
}
.ax-hero__trust {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 4px;
}
.ax-hero__trust-item {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 11px;
  color: rgba(242,242,242,0.35);
  font-family: var(--f-h);
  font-weight: 600;
  letter-spacing: 0.05em;
}
.ax-hero__trust-item svg { width: 13px; height: 13px; color: var(--r); flex-shrink: 0; }
.ax-hero__trust-dot {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: rgba(255,255,255,0.15);
  flex-shrink: 0;
}
.ax-hero__stats {
  display: flex;
  align-items: center;
  gap: 0;
  margin-top: 8px;
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  overflow: hidden;
}
.ax-hero__stat {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 18px 36px;
  flex: 1;
}
.ax-hero__stat-num {
  font-family: var(--f-h);
  font-size: 26px;
  font-weight: 900;
  color: #f2f2f2;
  letter-spacing: -0.03em;
  line-height: 1;
}
.ax-hero__stat-unit {
  font-size: 14px;
  color: rgba(242,242,242,0.35);
  font-weight: 500;
}
.ax-hero__stat-lbl {
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.30);
}
.ax-hero__stat-div {
  width: 1px;
  height: 40px;
  background: rgba(255,255,255,0.06);
  flex-shrink: 0;
}
.ax-sp__banner {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 20px;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.06);
  background: rgba(255,255,255,0.025);
  margin-bottom: 28px;
}
.ax-sp__banner--ok { border-color: rgba(74,222,128,0.20); background: rgba(74,222,128,0.06); }
.ax-sp__banner--warn { border-color: rgba(250,204,21,0.20); background: rgba(250,204,21,0.05); }
.ax-sp__banner-dot {
  position: relative;
  width: 12px;
  height: 12px;
  min-width: 12px;
  border-radius: 50%;
  flex-shrink: 0;
}
.ax-sp__banner-dot--ok { background: #4ade80; }
.ax-sp__banner-dot--warn { background: #facc15; }
.ax-sp__banner-pulse {
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  animation: ax-sp-pulse 2.4s ease-out infinite;
}
.ax-sp__banner-dot--ok   .ax-sp__banner-pulse { background: rgba(74,222,128,0.30); }
.ax-sp__banner-dot--warn .ax-sp__banner-pulse { background: rgba(250,204,21,0.25); }
.ax-sp__banner-text {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.ax-sp__banner-text strong {
  font-family: var(--f-h);
  font-size: 13px;
  font-weight: 700;
  color: #f2f2f2;
}
.ax-sp__banner-text span {
  font-size: 12px;
  color: rgba(242,242,242,0.40);
}
.ax-sp__header {
  margin-bottom: 24px;
}
.ax-sp__header-title {
  font-family: var(--f-h);
  font-size: clamp(20px, 3vw, 26px);
  font-weight: 900;
  color: #f2f2f2;
  letter-spacing: -0.025em;
  margin: 0 0 4px;
}
.ax-sp__header-sub {
  font-size: 13px;
  color: rgba(242,242,242,0.35);
  margin: 0;
}
.ax-sp__body {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-bottom: 28px;
}
.ax-sp__group {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  overflow: hidden;
}
.ax-sp__group-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 18px;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  background: rgba(255,255,255,0.02);
}
.ax-sp__group-left {
  display: flex;
  align-items: center;
  gap: 10px;
}
.ax-sp__group-bar {
  width: 3px;
  height: 14px;
  border-radius: 2px;
  background: var(--r);
  flex-shrink: 0;
}
.ax-sp__group-name {
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.50);
  margin: 0;
}
.ax-sp__group-count {
  font-size: 10px;
  color: rgba(242,242,242,0.20);
  font-family: var(--f-h);
  letter-spacing: 0.07em;
}
.ax-sp__group-cards { display: flex; flex-direction: column; }
.ax-sc {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 13px 18px;
  border-bottom: 1px solid rgba(255,255,255,0.04);
  text-decoration: none;
  transition: background 0.12s;
}
.ax-sc:last-child { border-bottom: none; }
.ax-sc:hover { background: rgba(255,255,255,0.03); }
.ax-sp__body > .ax-sc {
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 12px;
}
.ax-sp__body > .ax-sc:hover { background: rgba(255,255,255,0.04); }
.ax-sc__left {
  display: flex;
  align-items: center;
  gap: 12px;
  flex: 1;
  min-width: 0;
}
.ax-sc__icon {
  width: 32px;
  height: 32px;
  min-width: 32px;
  border-radius: 8px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(242,242,242,0.25);
  flex-shrink: 0;
}
.ax-sc__icon svg { width: 14px; height: 14px; }
.ax-sc__name {
  font-size: 13px;
  font-weight: 500;
  color: rgba(242,242,242,0.75);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.ax-sc__right {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.ax-sc__indicator {
  position: relative;
  width: 10px;
  height: 10px;
  flex-shrink: 0;
}
.ax-sc__dot {
  position: absolute;
  inset: 0;
  border-radius: 50%;
}
.ax-sc__pulse {
  position: absolute;
  inset: -3px;
  border-radius: 50%;
  opacity: 0.25;
  animation: ax-sc-pulse 2.4s ease-out infinite;
}
.ax-sc__label {
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
}
.ax-sc__chevron {
  width: 13px;
  height: 13px;
  color: rgba(242,242,242,0.18);
  transition: color 0.12s, transform 0.12s;
}
.ax-sc:hover .ax-sc__chevron {
  color: rgba(242,242,242,0.45);
  transform: translateX(2px);
}
.ax-sp__empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 60px 20px;
  color: rgba(242,242,242,0.22);
  text-align: center;
  font-size: 13px;
}
.ax-sp__empty svg { width: 40px; height: 40px; }
.ax-sp__legend {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 20px;
  padding: 16px 0 0;
  border-top: 1px solid rgba(255,255,255,0.05);
}
.ax-sp__legend-item {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 11px;
  color: rgba(242,242,242,0.30);
  font-family: var(--f-h);
  letter-spacing: 0.07em;
  text-transform: uppercase;
}
.ax-sp__legend-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  flex-shrink: 0;
}
.ax-cart-page {
  max-width: 1100px;
  margin: 0 auto;
  padding: 36px 20px 60px;
}
.ax-cart-alert {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 12px 16px;
  margin-bottom: 20px;
  background: rgba(var(--r-lo,180,30,30),0.10);
  border: 1px solid rgba(var(--r-lo,180,30,30),0.25);
  border-radius: 10px;
  font-size: 13px;
  color: rgba(242,242,242,0.70);
  line-height: 1.5;
}
.ax-cart-alert__icon { width: 15px; height: 15px; flex-shrink: 0; margin-top: 1px; color: var(--r); }
.ax-cart-alert__line { margin: 0; }
.ax-cart-layout {
  display: grid;
  grid-template-columns: 1fr 360px;
  gap: 24px;
  align-items: start;
}
.ax-cart-heading {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
}
.ax-cart-heading__title {
  display: flex;
  align-items: center;
  gap: 9px;
  font-family: var(--f-h);
  font-size: 20px;
  font-weight: 900;
  color: #f2f2f2;
  letter-spacing: -0.02em;
  margin: 0;
}
.ax-cart-heading__title svg { width: 20px; height: 20px; color: rgba(242,242,242,0.35); flex-shrink: 0; }
.ax-cart-heading__count {
  font-family: var(--f-h);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.10em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.25);
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 20px;
  padding: 3px 9px;
}
.ax-cart-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 60px 0;
  color: rgba(242,242,242,0.25);
}
.ax-cart-loading__spin { width: 28px; height: 28px; }
.ax-cart-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 64px 24px;
  text-align: center;
  background: rgba(255,255,255,0.02);
  border: 1px solid rgba(255,255,255,0.05);
  border-radius: 16px;
}
.ax-cart-empty__icon {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.07);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(242,242,242,0.20);
}
.ax-cart-empty__icon svg { width: 24px; height: 24px; }
.ax-cart-empty__title {
  font-family: var(--f-h);
  font-size: 16px;
  font-weight: 800;
  color: rgba(242,242,242,0.65);
  margin: 0;
}
.ax-cart-empty__sub {
  font-size: 13px;
  color: rgba(242,242,242,0.25);
  margin: 0;
}
.ax-cart-empty__cta {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 8px;
  padding: 9px 20px;
  background: var(--r);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 9px;
  color: #fff;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  text-decoration: none;
  transition: box-shadow 0.15s;
}
.ax-cart-empty__cta:hover { box-shadow: 0 4px 18px rgba(var(--r-lo,180,30,30),0.40); }
.ax-cart-items {
  display: flex;
  flex-direction: column;
  gap: 0;
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.06);
  border-radius: 14px;
  overflow: hidden;
}
.ax-cart-item {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  transition: background 0.12s;
}
.ax-cart-item:last-child { border-bottom: none; }
.ax-cart-item:hover { background: rgba(255,255,255,0.02); }
.ax-cart-item__thumb {
  width: 60px;
  height: 60px;
  min-width: 60px;
  border-radius: 10px;
  overflow: hidden;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.07);
  flex-shrink: 0;
}
.ax-cart-item__thumb-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.ax-cart-item__thumb-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(242,242,242,0.18);
}
.ax-cart-item__thumb-placeholder svg { width: 22px; height: 22px; }
.ax-cart-item__info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3px;
}
.ax-cart-item__name {
  font-size: 13px;
  font-weight: 500;
  color: #f2f2f2;
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  transition: color 0.12s;
}
.ax-cart-item__name:hover { color: var(--r); }
.ax-cart-item__variant {
  font-size: 11px;
  color: rgba(242,242,242,0.30);
  font-family: var(--f-h);
  margin: 0;
}
.ax-cart-item__volume-hint {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 10px;
  color: #4ade80;
  font-family: var(--f-h);
  font-weight: 600;
  letter-spacing: 0.05em;
}
.ax-cart-item__addons { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 3px; }
.ax-cart-item__addon-tag {
  display: inline-block;
  padding: 1px 7px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 4px;
  font-size: 10px;
  color: rgba(242,242,242,0.35);
  font-family: var(--f-h);
}
.ax-cart-item__controls {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-shrink: 0;
}
.ax-qty {
  display: flex;
  align-items: center;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 8px;
  overflow: hidden;
}
.ax-qty__btn {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  color: rgba(242,242,242,0.45);
  cursor: pointer;
  transition: background 0.12s, color 0.12s;
  flex-shrink: 0;
}
.ax-qty__btn:hover:not(:disabled) { background: rgba(255,255,255,0.07); color: #f2f2f2; }
.ax-qty__btn:disabled { opacity: 0.30; cursor: default; }
.ax-qty__input {
  width: 34px;
  height: 28px;
  text-align: center;
  background: transparent;
  border: none;
  border-left: 1px solid rgba(255,255,255,0.06);
  border-right: 1px solid rgba(255,255,255,0.06);
  color: #f2f2f2;
  font-family: var(--f-h);
  font-size: 12px;
  font-weight: 600;
  outline: none;
  -moz-appearance: textfield;
}
.ax-qty__input::-webkit-outer-spin-button,
.ax-qty__input::-webkit-inner-spin-button { -webkit-appearance: none; }
.ax-cart-item__price {
  font-family: var(--f-h);
  font-size: 14px;
  font-weight: 700;
  color: #f2f2f2;
  white-space: nowrap;
  min-width: 60px;
  text-align: right;
}
.ax-cart-item__remove {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 7px;
  color: rgba(242,242,242,0.25);
  cursor: pointer;
  transition: background 0.12s, color 0.12s, border-color 0.12s;
  flex-shrink: 0;
}
.ax-cart-item__remove:hover {
  background: rgba(239,68,68,0.12);
  color: #f87171;
  border-color: rgba(239,68,68,0.25);
}
.ax-cart-col-summary { position: sticky; top: 20px; }
.ax-cart-summary {
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 16px;
  overflow: hidden;
  position: relative;
}
.ax-cart-summary__top-line {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--r), transparent 70%);
}
.ax-cart-summary__head {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 18px 20px 14px;
  font-family: var(--f-h);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.35);
  border-bottom: 1px solid rgba(255,255,255,0.05);
}
.ax-cart-summary__head svg { width: 14px; height: 14px; flex-shrink: 0; }
.ax-cart-summary__form { padding: 18px 20px 20px; }
.ax-cart-summary__lines {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 16px;
}
.ax-cart-summary__line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.ax-cart-summary__line-label {
  font-size: 12px;
  color: rgba(242,242,242,0.40);
}
.ax-cart-summary__line-value {
  font-size: 13px;
  font-family: var(--f-h);
  font-weight: 600;
  color: rgba(242,242,242,0.70);
}
.ax-cart-summary__line-value--dim {
  font-size: 11px;
  font-weight: 400;
  color: rgba(242,242,242,0.25);
  font-family: var(--f-b);
}
.ax-cart-summary__divider {
  height: 1px;
  background: rgba(255,255,255,0.06);
  margin: 4px 0;
}
.ax-cart-summary__total {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.ax-cart-summary__total-label {
  font-family: var(--f-h);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(242,242,242,0.55);
}
.ax-cart-summary__total-price {
  font-family: var(--f-h);
  font-size: 22px;
  font-weight: 900;
  color: #f2f2f2;
  letter-spacing: -0.02em;
}
.ax-cart-summary__altcha { margin-bottom: 14px; }
.ax-cart-summary__error {
  display: flex;
  align-items: flex-start;
  gap: 6px;
  padding: 9px 12px;
  margin-bottom: 12px;
  background: rgba(239,68,68,0.08);
  border: 1px solid rgba(239,68,68,0.20);
  border-radius: 8px;
  font-size: 12px;
  color: #f87171;
  line-height: 1.5;
}
.ax-cart-checkout-btn {
  width: 100%;
  height: 50px;
  margin-bottom: 14px;
  background: var(--r);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 12px;
  color: #fff;
  font-family: var(--f-h);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: box-shadow 0.18s, background 0.15s;
}
.ax-cart-checkout-btn:hover:not(:disabled) {
  box-shadow: 0 6px 28px rgba(var(--r-lo,180,30,30),0.45);
}
.ax-cart-checkout-btn:disabled { opacity: 0.40; cursor: not-allowed; }
.ax-cart-trust {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}
.ax-cart-trust__item {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 10px;
  color: rgba(242,242,242,0.25);
  font-family: var(--f-h);
  font-weight: 600;
  letter-spacing: 0.05em;
}
.ax-cart-trust__item svg { width: 11px; height: 11px; color: rgba(242,242,242,0.20); flex-shrink: 0; }
.ax-cart-trust__sep {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: rgba(255,255,255,0.12);
  flex-shrink: 0;
}
.ax-review-card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #111318;
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 14px;
  overflow: hidden;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}
.ax-review-card:hover {
  border-color: rgba(0, 136, 255, 0.25);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.45);
}
.ax-review-card__top-line {
  height: 2px;
  width: 100%;
  background: linear-gradient(90deg, #0088FF 0%, #00A3FF 60%, transparent 100%);
  flex-shrink: 0;
}
.ax-review-card__body {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 16px 18px 14px;
  gap: 10px;
}
.ax-review-card__meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}
.ax-review-card__stars {
  display: flex;
  align-items: center;
  gap: 2px;
}
.ax-review-card__star-filled {
  width: 13px;
  height: 13px;
  color: var(--r-hi);
  flex-shrink: 0;
}
.ax-review-card__star-empty {
  width: 13px;
  height: 13px;
  color: rgba(255, 255, 255, 0.15);
  flex-shrink: 0;
}
.ax-review-card__meta-right {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}
.ax-review-card__verified {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: rgba(0, 136, 255, 0.12);
  border: 1px solid rgba(0, 136, 255, 0.3);
  color: #0088FF;
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  padding: 3px 7px;
  border-radius: 100px;
  line-height: 1;
}
.ax-review-card__verified svg {
  
  flex-shrink: 0;
}
.ax-review-card__date {
  font-size: 0.72rem;
  color: rgba(255, 255, 255, 0.3);
  white-space: nowrap;
}
.ax-review-card__message {
  font-size: 0.875rem;
  color: rgba(255, 255, 255, 0.75);
  line-height: 1.6;
  margin: 0;
  word-break: break-word;
}
.ax-review-card__message--truncated {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.ax-review-card__toggle {
  
  appearance: none;
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  font-family: inherit;

  
  display: inline-flex;
  align-items: center;
  gap: 4px;
  align-self: flex-start;

  
  font-size: 0.78rem;
  font-weight: 600;
  color: #0088FF;
  line-height: 1;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: rgba(0, 136, 255, 0.4);

  transition: color 0.2s, text-decoration-color 0.2s;
}
.ax-review-card__toggle:hover {
  color: #33DDFF;
  text-decoration-color: rgba(51, 221, 255, 0.6);
}
.ax-review-card__toggle svg {
  
  width: 12px !important;
  height: 12px !important;
  flex-shrink: 0;
}
.ax-review-card__reply {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-left: 2px solid rgba(0, 136, 255, 0.5);
  border-radius: 8px;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.ax-review-card__reply-header {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 0.72rem;
  color: rgba(255, 255, 255, 0.4);
  flex-wrap: wrap;
}
.ax-review-card__reply-header svg {
  flex-shrink: 0;
  color: rgba(255, 255, 255, 0.3);
}
.ax-review-card__reply-header strong {
  color: rgba(255, 255, 255, 0.7);
  font-weight: 600;
}
.ax-review-card__reply-text {
  font-size: 0.825rem;
  color: rgba(255, 255, 255, 0.6);
  line-height: 1.6;
  margin: 0;
}
.ax-review-card__footer {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 10px 18px 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  flex-shrink: 0;
}
.ax-review-card__product-icon {
  width: 11px;
  height: 11px;
  color: rgba(255, 255, 255, 0.25);
  flex-shrink: 0;
}
.ax-review-card__product {
  font-size: 0.72rem;
  color: rgba(255, 255, 255, 0.3);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  letter-spacing: 0.01em;
}
@keyframes ax-ticker {
  0%   { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
@keyframes ax-pop {
  from { transform: scale(0); }
  to   { transform: scale(1); }
}
@keyframes ax-pulse {
  0%, 100% { opacity: 1; box-shadow: 0 0 6px var(--r-glow); }
  50%       { opacity: 0.5; box-shadow: 0 0 12px var(--r-glow); }
}
@keyframes ax-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }
@keyframes ax-sc-pulse {
  0%   { transform: scale(1); opacity: .5; }
  70%  { transform: scale(2.2); opacity: 0; }
  100% { transform: scale(2.2); opacity: 0; }
}
@keyframes ax-scan {
  0%  { top: 0; opacity: 0; }
  5%  { opacity: 1; }
  95% { opacity: 1; }
  100%{ top: 100%; opacity: 0; }
}
@keyframes ax-sc-pulse {
  0%   { transform: scale(1);   opacity: 0.25; }
  70%  { transform: scale(2.0); opacity: 0; }
  100% { transform: scale(2.0); opacity: 0; }
}
@keyframes ax-sp-pulse {
  0%   { transform: scale(1);   opacity: 1; }
  70%  { transform: scale(2.2); opacity: 0; }
  100% { transform: scale(2.2); opacity: 0; }
}
@keyframes ax-sc-pulse {
  0%   { transform: scale(1);   opacity: 0.25; }
  70%  { transform: scale(2.0); opacity: 0; }
  100% { transform: scale(2.0); opacity: 0; }
}
@media (max-width: 960px) {
.ax-nav, .ax-ribbon__inner { padding: 0 20px; }
.ax-brand { margin-right: 20px; padding-right: 20px; }
.ax-actions { padding-left: 16px; }
}
@media (max-width: 680px) {
.ax-brand__text { display: none; }
.ax-brand { margin-right: 12px; padding-right: 12px; }
.ax-actions { padding-left: 10px; gap: 6px; }
.ax-ribbon__desc { display: none; }
}
@media (max-width: 480px) {
.ax-links { display: none; }
.ax-actions { border-left: none; }
}
@media (max-width: 900px) {
.ax-footer__main {
    flex-direction: column;
    padding: 40px 24px 36px;
    gap: 36px;
  }
.ax-footer__brand { flex: none; width: 100%; padding-right: 0; }
.ax-footer__vdiv {
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--b2) 20%, var(--b2) 80%, transparent);
    margin: 0;
    align-self: auto;
  }
.ax-footer__nav { width: 100%; }
.ax-footer__bottom-inner { padding: 0 24px; }
}
@media (max-width: 560px) {
.ax-footer__nav { grid-template-columns: repeat(2, 1fr); gap: 28px 16px; }
.ax-footer__bottom-inner { flex-direction: column; height: auto; padding: 12px 24px; gap: 6px; }
.ax-footer__made { display: none; }
}
@media (max-width: 768px) {
.ax-products__header { flex-direction: column; align-items: flex-start; }
.ax-products__search { min-width: 100%; }
.ax-products__search-wrap { width: 100%; }
.ax-products__grid { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); gap: 14px; }
.ax-modal { max-height: 92vh; }
.ax-modal__grid { grid-template-columns: 1fr 1fr; gap: 12px; padding: 16px; }
}
@media (max-width: 480px) {
.ax-products__grid { grid-template-columns: 1fr; }
.ax-modal__grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
.ax-hero { padding: 72px 0 88px; }
.ax-hero__inner { padding: 0 20px; gap: 20px; }
.ax-hero__trust { flex-direction: column; gap: 8px; }
.ax-hero__trust-sep { display: none; }
.ax-hero__stats { flex-direction: column; gap: 20px; }
.ax-hero__stat-div { display: none; }
.ax-hero__stat { padding: 0; }
.ax-hero__ctas { flex-direction: column; width: 100%; }
.ax-hero__cta { width: 100%; justify-content: center; }
}
@media (max-width: 900px) {
.ax-features__grid--4 { grid-template-columns: repeat(2, 1fr); }
.ax-features__grid--3 { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 560px) {
.ax-features__grid--4,
  .ax-features__grid--3,
  .ax-features__grid--2 { grid-template-columns: 1fr; }
}
@media (max-width: 900px) {
.ax-product-page__layout { flex-direction: column; }
.ax-product-page__left,
  .ax-product-page__right { flex: none; width: 100%; }
.ax-product-page__buy-card { position: static; }
}
@media (max-width: 800px) {
.ax-cart-page__layout { flex-direction: column; }
.ax-cart-page__sidebar { flex: none; width: 100%; position: static; }
.ax-cart-item__img-wrap { width: 80px; }
.ax-cart-item__actions { gap: 10px; }
}
@media (max-width: 640px) {
.ax-blog-post__body { padding: 20px 20px 28px; }
.ax-blog-post__meta-bar { padding: 12px 20px; }
.ax-blog__grid { grid-template-columns: 1fr; }
}
@media (max-width: 800px) {
.ax-dash { flex-direction: column; }
.ax-dash__sidebar { flex: none; width: 100%; position: static; }
.ax-sidebar__nav { flex-direction: row; flex-wrap: wrap; gap: 4px; }
.ax-sidebar__link { height: 32px; }
}
@media (max-width: 640px) {
.ax-dash-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 400px) {
.ax-dash-grid { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
.ax-orders-table th:nth-child(4),
  .ax-orders-table td:nth-child(4) { display: none; }
}
@media (min-width: 640px) {
.ax-cart-item__controls { border-top: none; padding: 0 24px 0 0; }
}
@media (min-width: 640px) {
.ax-cart-item__remove--mobile { display: none; }
.ax-cart-item__remove--desktop { display: flex; }
}
@media (min-width: 1024px) {
.ax-cart-page__summary-col { width: 300px; flex-shrink: 0; }
}
@media (max-width: 768px) {
.ax-blog-post__header { padding: 20px 20px 18px; }
.ax-blog-post__body { padding: 20px 20px 28px; }
.ax-blog-post__footer { padding: 14px 20px; }
.ax-blog-post__title { font-size: 22px; }
}
@media (max-width: 768px) {
.ax-dash-grid--3 { grid-template-columns: 1fr; }
.ax-dash-grid--latest { grid-template-columns: 1fr; }
}
@media (max-width: 1023px) {
.ax-products-page__mobile-bar { display: flex; }
}
@media (max-width: 1023px) {
.ax-products-page__layout { grid-template-columns: 1fr; }
.ax-products-page__sidebar { display: none; }
}
@media (min-width: 640px) {
.ax-products-page__modal-wrap { align-items: center; }
}
@media (min-width: 640px) {
.ax-products-page__modal-panel {
    border-radius: 16px; margin: 24px;
  }
}
@media (max-width: 640px) {
.ax-policy-page__card { padding: 24px 20px; }
}
@media (max-width: 640px) {
.ax-faq-item__answer-inner { padding: 0 16px 16px 16px; }
}
@media (max-width: 700px) {
.ax-db__stats { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 400px) {
.ax-db__stats { grid-template-columns: 1fr; }
.ax-db__welcome { padding: 20px 18px; }
.ax-db__welcome-badge { display: none; }
}
@media (max-width: 640px) {
.ax-bal-top { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
.ax-aff-top { grid-template-columns: 1fr; }
}
@media (min-width: 769px) {
.ax-aff-link-card { grid-column: 1; }
}
@media (min-width: 769px) {
.ax-aff-quick { grid-column: auto; }
}
@media (max-width: 640px) {
.ax-hero { padding: 60px 20px 72px; }
.ax-hero__inner { gap: 18px; }
.ax-hero__trust { flex-direction: column; gap: 8px; }
.ax-hero__trust-dot { display: none; }
.ax-hero__stats { flex-direction: column; width: 100%; border-radius: 12px; }
.ax-hero__stat-div { width: 80%; height: 1px; }
.ax-hero__stat { padding: 14px 20px; width: 100%; }
.ax-hero__ctas { flex-direction: column; width: 100%; }
.ax-hero__cta { width: 100%; justify-content: center; }
}
@media (max-width: 860px) {
.ax-cart-layout { grid-template-columns: 1fr; }
}
@media (max-width: 768px) {
.ax-modal__grid,
  .ax-modal .ax-products__grid,
  .ax-modal .ax-grid {
    display: block !important;
  }
.ax-modal__grid .ax-card,
  .ax-modal .ax-products__item,
  .ax-modal .ax-card__inner {
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 16px !important;
  }
.ax-modal .ax-card {
    display: block !important;
    width: 100% !important;
  }
.ax-modal__grid {
    padding: 8px !important;
  }
}

.ax-dash, .ax-dm {
  --b1: rgba(255,255,255,0.06);
  --b2: rgba(255,255,255,0.10);
  --f-b: 'DM Sans', sans-serif;
  --f-d: 'Bebas Neue', sans-serif;
  --f-h: 'Syne', sans-serif;
  --nav-h: 60px;
  --r: #ffffff;
  --r-border: rgba(255,255,255,0.30);
  --r-glow: rgba(255,255,255,0.28);
  --r-hi: #ffffff;
  --r-lo: rgba(255,255,255,0.10);
  --r-mid: rgba(255,255,255,0.18);
  --rad: 8px;
  --ribbon-h: 34px;
  --s0: #0c0c10;
  --s1: #111116;
  --s2: #17171d;
  --s3: #1e1e28;
  --t1: #f2f2f2;
  --t2: rgba(242,242,242,0.50);
  --t3: rgba(242,242,242,0.22);
  --topbar-h: 30px;
  --total-h: 124px;
}

[x-cloak] { display: none !important; }

/* ==== AEXOR v2 dashboard layout fixes (header offset / page width / text polish) ==== */
.ax-dash {
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 24px;
  padding-right: 24px;
  padding-top: calc(var(--total-h, 124px) - 40px);
}
.ax-db__welcome-title,
.ax-db__stat-val,
.ax-db__section-title,
.ax-db__quick-title,
.ax-db__order-name {
  text-shadow: none !important;
  animation: none !important;
}
.ax-sidebar {
  background: var(--s1, #111);
  border: 1px solid var(--b1, rgba(255,255,255,0.08));
  border-radius: 14px;
  overflow: hidden;
}
.ax-sidebar__profile {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 18px 20px 14px;
  border-bottom: 1px solid var(--b1, rgba(255,255,255,0.08));
  background: rgba(0,0,0,0.15);
}
.ax-sidebar__avatar {
  width: 40px;
  height: 40px;
  min-width: 40px;
  border-radius: 10px;
  background: var(--r-lo, rgba(0,136,255,0.1));
  border: 1px solid var(--r-border, rgba(0,136,255,0.25));
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--f-h, 'Poppins');
  font-size: 15px;
  font-weight: 800;
  color: var(--r-hi, #4da6ff);
}
.ax-sidebar__profile-info { min-width: 0; }
.ax-sidebar__profile-label {
  font-family: var(--f-h, 'Poppins');
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--r-hi, #4da6ff);
  margin: 0 0 2px;
}
.ax-sidebar__profile-email {
  font-size: 12px;
  color: var(--t3, #888);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin: 0;
}
.ax-sidebar__link-icon { width: 14px; height: 14px; flex-shrink: 0; position: relative; z-index: 1; }
.ax-sidebar__active-dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--r-hi, #4da6ff);
  box-shadow: 0 0 6px var(--r-glow, rgba(0,136,255,0.5));
  margin-left: auto;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}
.ax-sidebar__balance {
  margin-left: auto;
  font-size: 10px;
  font-weight: 700;
  color: var(--t2, #aaa);
  position: relative;
  z-index: 1;
}
.ax-sidebar__footer {
  padding: 10px;
  border-top: 1px solid var(--b1, rgba(255,255,255,0.08));
}
.ax-sidebar__logout {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  height: 36px;
  font-family: var(--f-h, 'Poppins');
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: #f87171;
  background: rgba(248,113,113,0.06);
  border: 1px solid rgba(248,113,113,0.18);
  border-radius: 8px;
  cursor: pointer;
  transition: background 0.2s;
}
.ax-sidebar__logout:hover { background: rgba(248,113,113,0.12); }
@media (max-width: 900px) {
  .ax-dash { flex-direction: column; padding-top: calc(var(--total-h, 124px) - 20px); }
  .ax-dash__sidebar { position: static; flex: none; width: 100%; }
}

/* ===== AEXOR v2 - DASHBOARD POLISH (status chip, pay CTA, cursor fix) ===== */
.external-page:has(.ax-db__welcome) .external-page:has(.ax-db__welcome) * { cursor: auto !important; }
.external-page:has(.ax-db__welcome) a,
.external-page:has(.ax-db__welcome) button,
.external-page:has(.ax-db__welcome) .ax-db__quick-card,
.external-page:has(.ax-db__welcome) .ax-db__order-card { cursor: pointer !important; }
.ax-db__order-actions { display: flex; align-items: center; gap: 12px; margin-left: auto; flex-shrink: 0; }
.ax-db__status { display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: 999px; font-size: 11px; font-weight: 700; letter-spacing: 1.2px; text-transform: uppercase; border: 1px solid transparent; white-space: nowrap; }
.ax-db__status::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: currentColor; }
.ax-db__status--pending { color: #ffb444; background: rgba(255,180,68,.08); border-color: rgba(255,180,68,.28); }
.ax-db__status--completed { color: #00ff88; background: rgba(0,255,136,.08); border-color: rgba(0,255,136,.28); }
.ax-db__pay-btn { display: inline-flex; align-items: center; gap: 7px; padding: 9px 18px; border-radius: 10px; font-size: 12.5px; font-weight: 700; letter-spacing: .4px; color: #000; background: linear-gradient(135deg, #00ff88, #00c46a); box-shadow: 0 4px 18px rgba(0,255,136,.25); text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, filter .18s ease; white-space: nowrap; }
.ax-db__pay-btn:hover { transform: translateY(-1px); box-shadow: 0 7px 24px rgba(0,255,136,.4); filter: brightness(1.06); }
.ax-db__pay-btn:active { transform: translateY(0); }
.ax-db__pay-btn svg { width: 12px; height: 12px; }
.ax-db__stat-val { font-variant-numeric: tabular-nums; }
.ax-db__quick-card { transition: transform .18s ease, border-color .18s ease, background .18s ease; }
.ax-db__quick-card:hover { transform: translateY(-2px); }
/* ===== END DASHBOARD POLISH ===== */

/* ===== AEXOR v2 - CUSTOMER PAGE SWEEP (cursor fix on all customer pages) ===== */
.external-page:has(.ax-dash) .external-page:has(.ax-dash) *,
.external-page:has(.ax-orders) *,
.external-page:has(.ax-ppay) * { cursor: auto !important; }
.external-page:has(.ax-dash) a,
.external-page:has(.ax-dash) button,
.external-page:has(.ax-dash) .ax-db__quick-card,
.external-page:has(.ax-dash) .ax-db__order-card,
.external-page:has(.ax-orders) a,
.external-page:has(.ax-orders) button { cursor: pointer !important; }
/* ===== END CUSTOMER PAGE SWEEP ===== */

/* ===== AEXOR v2 - PENDING PAYMENTS (dashboard section + orders buttons) ===== */
.ax-db__section-pip--warn { background: #ffb444; box-shadow: 0 0 12px rgba(255,180,68,.45); }
.ax-ppay__count { display: inline-flex; align-items: center; padding: 3px 10px; border-radius: 999px; background: rgba(255,180,68,.1); border: 1px solid rgba(255,180,68,.28); color: #ffb444; font-size: 11px; font-weight: 700; letter-spacing: .8px; text-transform: uppercase; margin-left: auto; }
.ax-ppay__hint { margin: -2px 0 14px; font-size: 12.5px; color: var(--t3, #888); }
.ax-ppay__loading { display: flex; align-items: center; gap: 10px; padding: 18px 20px; border: 1px dashed rgba(255,255,255,.14); border-radius: 14px; color: var(--t3, #888); font-size: 13px; background: rgba(255,255,255,.02); }
.ax-ppay__spinner { width: 16px; height: 16px; border-radius: 50%; border: 2px solid rgba(255,255,255,.15); border-top-color: #ffb444; animation: ax-ppay-spin .7s linear infinite; }
@keyframes ax-ppay-spin { to { transform: rotate(360deg); } }
.ax-ppay__card { display: flex; align-items: center; gap: 16px; padding: 16px 20px; background: linear-gradient(135deg, rgba(255,180,68,.05), rgba(255,255,255,.02)); border: 1px solid rgba(255,180,68,.18); border-radius: 16px; margin-bottom: 12px; transition: border-color .18s ease, transform .18s ease; }
.ax-ppay__card:hover { border-color: rgba(255,180,68,.38); transform: translateY(-1px); }
.ax-ppay__icon { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 12px; background: rgba(255,180,68,.1); color: #ffb444; flex-shrink: 0; }
.ax-ppay__icon svg { width: 20px; height: 20px; }
.ax-ppay__info { min-width: 0; flex: 1; }
.ax-ppay__product { margin: 0; font-size: 14.5px; font-weight: 700; color: var(--text, #f0f0f0); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ax-ppay__meta { display: flex; align-items: center; gap: 8px; margin: 4px 0 0; font-size: 12.5px; color: var(--t3, #888); }
.ax-ppay__id { color: var(--t3, #888); text-decoration: none; transition: color .18s; }
.ax-ppay__id:hover { color: var(--text, #f0f0f0); }
.ax-ppay__actions { display: flex; align-items: center; gap: 12px; flex-shrink: 0; }
@media (max-width: 720px) {
  .ax-ppay__card { flex-wrap: wrap; }
  .ax-ppay__actions { width: 100%; justify-content: flex-end; }
}
/* orders page: pay button + pending row */
.ax-orders-table__pay-btn { display: inline-flex; align-items: center; gap: 6px; margin-left: 8px; padding: 6px 14px; border-radius: 8px; font-size: 11.5px; font-weight: 700; letter-spacing: .4px; color: #000; background: linear-gradient(135deg, #00ff88, #00c46a); box-shadow: 0 3px 14px rgba(0,255,136,.22); text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, filter .18s ease; white-space: nowrap; vertical-align: middle; }
.ax-orders-table__pay-btn:hover { transform: translateY(-1px); box-shadow: 0 6px 20px rgba(0,255,136,.36); filter: brightness(1.06); color: #000; }
.ax-orders-table__row--pending { background: rgba(255,180,68,.035); }
.ax-orders-table__row--pending:hover { background: rgba(255,180,68,.06); }
/* align pay-btn with existing action buttons cell */
.ax-orders-table__td--actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
/* ===== END PENDING PAYMENTS ===== */

/* ===== AEXOR v2 - CUSTOMER NAV POLISH (crisp nav/logo on customer pages) ===== */
.external-page:has(.ax-dash) .nav-link,
.external-page:has(.ax-orders) .nav-link {
  animation: none !important;
  text-shadow: none !important;
  background-image: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: var(--text, #f0f0f0) !important;
  color: var(--text, #f0f0f0) !important;
}
.external-page:has(.ax-dash) .nav-link:hover,
.external-page:has(.ax-orders) .nav-link:hover { color: #ffffff !important; }
.external-page:has(.ax-dash) .header-logo,
.external-page:has(.ax-orders) .header-logo {
  animation: none !important;
  text-shadow: none !important;
  background-image: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: #ffffff !important;
  color: #ffffff !important;
}
/* keep the loading row visually stable */
.ax-ppay__loading { min-height: 56px; opacity: .85; }
/* ===== END CUSTOMER NAV POLISH ===== */

/* ===== AEXOR v2 - PPAY COUNTDOWN ===== */
.ax-ppay__ttl, .ax-orders-table__ttl { display: inline-flex; align-items: center; gap: 5px; padding: 4px 10px; border-radius: 999px; font-size: 11px; font-weight: 700; letter-spacing: .3px; white-space: nowrap; color: #ffb444; background: rgba(255,180,68,.08); border: 1px solid rgba(255,180,68,.22); font-variant-numeric: tabular-nums; }
.ax-orders-table__ttl { margin-left: 8px; }
/* ===== END PPAY COUNTDOWN ===== */

/* ===== AEXOR v2 - MOBILE PASS (customer pages) ===== */
@media (max-width: 640px) {
  /* Orders table: convert rows to stacked cards, keep essential columns */
  .ax-orders-table thead { display: none; }
  .ax-orders-table__row { display: flex; flex-wrap: wrap; gap: 8px 12px; padding: 14px 16px; border-bottom: 1px solid rgba(255,255,255,.06); }
  .ax-orders-table__row--pending { border: 1px solid rgba(255,180,68,.25); border-radius: 12px; margin: 8px 0; }
  .ax-orders-table__td { display: block; flex: 1 1 auto; padding: 0 !important; border: none !important; }
  .ax-orders-table__td--id { flex: 1 1 100%; }
  .ax-orders-table__td--products { flex: 1 1 100%; }
  .ax-orders-table__td--price { flex: 0 0 auto; font-weight: 700; }
  .ax-orders-table__td--actions { flex: 1 1 100%; display: flex; gap: 8px; flex-wrap: wrap; }
  /* hide Products column label-less duplicates: keep table simple on tiny screens */
  .ax-orders-table { display: block; border: none !important; }
  /* ppay cards stack cleanly */
  .ax-ppay__card { flex-direction: column; align-items: flex-start; }
  .ax-ppay__actions { width: 100%; justify-content: space-between; }
  .ax-ppay__count { margin-left: auto; }
  /* welcome banner text sizes */
  .ax-db__welcome-title { font-size: 22px !important; }
  .ax-db__welcome-sub { font-size: 13px !important; }
  /* stat cards already collapse via --3; ensure horizontal scroll never appears */
  .ax-dash__main { min-width: 0; overflow-x: hidden; }
  .ax-orders-table-wrap { overflow-x: hidden; }
}
@media (max-width: 400px) {
  .ax-db__pay-btn { padding: 8px 14px; font-size: 11.5px; }
  .ax-ppay__actions { flex-wrap: wrap; gap: 8px; }
}
/* ===== END MOBILE PASS ===== */

/* ===== AEXOR v2 - PPAY PAY-ALL BUTTON ===== */
.ax-ppay__head-actions { display: flex; align-items: center; margin-left: auto; }
.ax-ppay__head-actions + .ax-ppay__count { margin-left: 10px; }
.ax-ppay__payall { display: inline-flex; align-items: center; gap: 7px; padding: 8px 16px; border: none; border-radius: 10px; font-size: 12.5px; font-weight: 700; letter-spacing: .4px; font-family: inherit; color: #000; background: linear-gradient(135deg, #00ff88, #00c46a); box-shadow: 0 4px 18px rgba(0,255,136,.25); cursor: pointer; transition: transform .18s ease, box-shadow .18s ease, filter .18s ease; white-space: nowrap; }
.ax-ppay__payall:hover { transform: translateY(-1px); box-shadow: 0 7px 24px rgba(0,255,136,.4); filter: brightness(1.06); }
.ax-ppay__payall:disabled { opacity: .65; cursor: wait; transform: none; }
.ax-ppay__payall svg { width: 12px; height: 12px; flex-shrink: 0; }
@media (max-width: 640px) {
  .ax-db__section-head { flex-wrap: wrap; gap: 8px; }
  .ax-ppay__head-actions { width: 100%; justify-content: flex-end; }
  .ax-ppay__head-actions + .ax-ppay__count { margin-left: auto; }
}
/* ===== END PPAY PAY-ALL BUTTON ===== */

/* ===== AEXOR v2 - PPAY CLEAR BUTTON ===== */
.ax-ppay__clear { margin-left: 10px; padding: 8px 14px; border: 1px solid rgba(255,255,255,.16); border-radius: 10px; background: transparent; color: var(--t3, #888); font-size: 12px; font-weight: 600; font-family: inherit; cursor: pointer; transition: color .18s, border-color .18s, background .18s; white-space: nowrap; }
.ax-ppay__clear:hover { color: #ff6b6b; border-color: rgba(255,107,107,.4); background: rgba(255,107,107,.06); }
@media (max-width: 640px) { .ax-ppay__clear { margin-left: auto; } }
/* ===== END PPAY CLEAR BUTTON ===== */

/* ===== AEXOR v3 - HOME HERO POLISH ===== */
/* ambient depth: faint grid + soft top orb (kills the dead-black void) */
.hero::before {
  content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 0;
  background-image:
    linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
  background-size: 56px 56px;
  -webkit-mask-image: radial-gradient(ellipse 70% 60% at 50% 45%, #000 30%, transparent 75%);
  mask-image: radial-gradient(ellipse 70% 60% at 50% 45%, #000 30%, transparent 75%);
}
.hero::after {
  content: ''; position: absolute; top: -12%; left: 50%; transform: translateX(-50%);
  width: min(720px, 92vw); height: min(720px, 92vw); border-radius: 50%;
  background: radial-gradient(circle, rgba(255,255,255,.07) 0%, rgba(255,255,255,.02) 42%, transparent 70%);
  filter: blur(12px); pointer-events: none; z-index: 0;
}
.hero-content { z-index: 2; }

/* badge: pulse dot */
.hero-badge { position: relative; }
.hero-badge::before {
  content: ''; position: absolute; left: 15px; top: 50%; transform: translateY(-50%);
  width: 6px; height: 6px; border-radius: 50%; background: #fff;
  animation: axpulse 2.2s infinite;
}
@keyframes axpulse {
  0%   { box-shadow: 0 0 0 0 rgba(255,255,255,.45); }
  70%  { box-shadow: 0 0 0 9px rgba(255,255,255,0); }
  100% { box-shadow: 0 0 0 0 rgba(255,255,255,0); }
}

/* title: sharp, tight, metallic gradient (no blur/glow) */
.hero-title {
  font-size: clamp(44px, 8.5vw, 92px) !important;
  letter-spacing: 2px !important;
  line-height: .95 !important;
  background: linear-gradient(180deg, #ffffff 25%, #9a9aae 100%) !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: none !important; text-shadow: none !important;
}
.hero-title .brand-text, .hero-title .accent {
  background: inherit !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* subtitle: brighter */
.hero-subtitle {
  opacity: 1 !important;
  color: rgba(255,255,255,.85) !important;
  font-size: 15px !important;
  letter-spacing: 6px !important;
}

/* stats: solid white numbers (fixes black-gradient-on-black) */
.hero-stats .stat-number {
  background: none !important;
  -webkit-text-fill-color: #fff !important;
  color: #fff !important;
  font-size: 34px;
  font-variant-numeric: tabular-nums;
  text-shadow: 0 0 26px rgba(255,255,255,.28);
}
.hero-stats .stat-label { color: rgba(255,255,255,.55) !important; }
.hero-stats .stat-divider { background: rgba(255,255,255,.14) !important; }

/* steps: connectors visible (were stroke #000 on black) */
.step-connector svg { stroke: rgba(255,255,255,.4) !important; }

/* secondary CTA: crisper */
.hero-buttons .btn-secondary {
  border-color: rgba(255,255,255,.24) !important;
  color: rgba(255,255,255,.88) !important;
}
.hero-buttons .btn-secondary:hover { background: rgba(255,255,255,.07) !important; }

/* scroll hint brighter */
.hero-scroll { color: rgba(255,255,255,.5) !important; }

/* light-mode safety */
.light-mode .hero::before {
  background-image:
    linear-gradient(rgba(0,0,0,.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,0,0,.05) 1px, transparent 1px);
}
.light-mode .hero::after {
  background: radial-gradient(circle, rgba(0,0,0,.05) 0%, rgba(0,0,0,.015) 42%, transparent 70%);
}
.light-mode .hero-title {
  background: linear-gradient(180deg, #101014 25%, #5a5a68 100%) !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
.light-mode .hero-title .brand-text, .light-mode .hero-title .accent {
  background: inherit !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
.light-mode .hero-stats .stat-number {
  -webkit-text-fill-color: #101014 !important; color: #101014 !important;
  text-shadow: none !important;
}
.light-mode .hero-stats .stat-label { color: #55556a !important; }
.light-mode .hero-stats .stat-divider { background: rgba(0,0,0,.12) !important; }
.light-mode .step-connector svg { stroke: rgba(0,0,0,.35) !important; }
.light-mode .hero-scroll { color: #77778a !important; }

@media (max-width: 640px) {
  .hero-badge { padding-left: 28px; }
  .hero-stats { gap: 20px; }
}
/* ===== END HOME HERO POLISH ===== */


/* ============================================================
   ATLAS.EXE — Pages polish pass (products / product / cart / faq)
   ============================================================ */

/* ---------- PRODUCTS PAGE: hero ---------- */
.products-hero {
  text-align: center;
  margin-bottom: 2.2rem;
}
.products-hero .section-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 16px;
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  color: rgba(255,255,255,0.85);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.products-hero .section-badge::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #fff;
  animation: axPulse 2s ease-in-out infinite;
}
.products-hero-title {
  margin: 14px 0 8px;
  font-size: clamp(30px, 4.4vw, 52px);
  font-weight: 800;
  letter-spacing: 0.5px;
  line-height: 1.12;
  background: linear-gradient(180deg, #ffffff 20%, rgba(255,255,255,0.72) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.products-hero-desc {
  max-width: 560px;
  margin: 0 auto;
  color: rgba(255,255,255,0.55);
  font-size: 15px;
  line-height: 1.55;
}

/* ---------- PRODUCTS PAGE: category chips ---------- */
.ax-cats {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0 auto 1.4rem;
  max-width: 860px;
}
.ax-cat-chip {
  display: inline-flex;
  align-items: center;
  padding: 8px 18px;
  border-radius: 999px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.09);
  color: rgba(255,255,255,0.72);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.2s ease;
}
.ax-cat-chip:hover {
  color: #fff;
  border-color: rgba(255,255,255,0.35);
  background: rgba(255,255,255,0.07);
  transform: translateY(-1px);
}
.ax-cat-chip.active {
  background: #fff;
  border-color: #fff;
  color: #000;
}

/* ---------- PRODUCTS PAGE: search ---------- */
.ax-search {
  position: relative;
  max-width: 460px;
  margin: 0 auto 2rem;
}
.ax-search-input {
  width: 100%;
  padding: 13px 44px 13px 42px;
  border-radius: 999px;
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.1);
  color: #fff;
  font-size: 14px;
  transition: border-color 0.2s ease, background 0.2s ease;
}
.ax-search-input:focus {
  outline: none;
  border-color: rgba(255,255,255,0.4);
  background: rgba(255,255,255,0.06);
}
.ax-search-input::placeholder { color: rgba(255,255,255,0.35); }
.ax-search-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(255,255,255,0.4);
  pointer-events: none;
}
.ax-search-count {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 12px;
  font-weight: 600;
  color: rgba(255,255,255,0.55);
  background: rgba(255,255,255,0.08);
  border-radius: 999px;
  padding: 4px 10px;
}
.ax-search-empty {
  display: none;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 48px 0;
  color: rgba(255,255,255,0.5);
}

/* ---------- PRODUCTS GRID ---------- */
.ax-prod-grid { align-items: stretch; }

/* ---------- PRODUCT CARD refinements ---------- */
.product-card {
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.02));
  border: 1px solid rgba(255,255,255,0.08);
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease;
}
.product-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255,255,255,0.22);
  box-shadow: 0 18px 40px -18px rgba(0,0,0,0.8);
}
.product-card__image {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #0c0c0e;
}
.product-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
}
.product-card:hover .product-card__image img { transform: scale(1.045); }
.product-card__placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,0.16);
  background:
    linear-gradient(rgba(255,255,255,0.028) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.028) 1px, transparent 1px);
  background-size: 22px 22px;
}
.product-card__badge {
  position: absolute;
  top: 12px;
  left: 12px;
  padding: 5px 11px;
  border-radius: 999px;
  background: rgba(0,0,0,0.66);
  border: 1px solid rgba(255,255,255,0.16);
  color: #fff;
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
  backdrop-filter: blur(6px);
}
.product-card__body {
  padding: 18px 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1;
}
.product-card__title {
  font-size: 16.5px;
  font-weight: 700;
  line-height: 1.32;
  color: #fff;
}
.product-card__price-value {
  font-size: 21px;
  font-weight: 800;
  letter-spacing: 0.2px;
}
.product-card__action {
  margin-top: auto;
  border-radius: 12px;
  padding: 13px 18px;
  background: #fff;
  color: #000;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.4px;
  justify-content: space-between;
}

/* ---------- PRODUCT PAGE: breadcrumbs ---------- */
.atlas-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  margin-bottom: 1.6rem;
  font-size: 13px;
}
.atlas-breadcrumbs a {
  color: rgba(255,255,255,0.5);
  text-decoration: none;
  transition: color 0.15s ease;
}
.atlas-breadcrumbs a:hover { color: #fff; }
.atlas-bc-current { color: rgba(255,255,255,0.9); font-weight: 600; }
.atlas-bc-sep { color: rgba(255,255,255,0.28); }

/* ---------- PRODUCT PAGE: title + status ---------- */
.product-wrapper .display-6 {
  font-size: clamp(26px, 3.4vw, 42px);
  font-weight: 800;
  letter-spacing: 0.3px;
  line-height: 1.15;
  margin-bottom: 0.6rem;
  background: linear-gradient(180deg, #ffffff 30%, rgba(255,255,255,0.78));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}
.product-wrapper .status .indicator {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  position: relative;
}
.product-wrapper .status .pulsating {
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  opacity: 0.5;
  animation: axPulse 1.8s ease-out infinite;
}

/* ---------- PRODUCT PAGE: stock chips ---------- */
.stock-indicator {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  padding: 9px 16px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.4px;
}
.stock-indicator svg { width: 16px; height: 16px; }
.btn-outline-primary.stock-indicator { border-width: 1px; }
.btn-outline-danger.stock-indicator { border-width: 1px; }
.stock-count { font-weight: 800; }

/* ---------- PRODUCT PAGE: tabs ---------- */
.product-tabs { gap: 8px; }
.product-tabs .btn {
  border-radius: 999px;
  padding: 9px 20px;
  font-size: 13.5px;
  font-weight: 600;
  transition: all 0.2s ease;
}

/* ---------- PRODUCT PAGE: gallery ---------- */
.aspect-product-page-image {
  border-radius: 18px;
  border: 1px solid rgba(255,255,255,0.09);
  background: #0c0c0e;
}
.thumbnails img {
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,0.1);
  opacity: 0.65;
  transition: all 0.2s ease;
  cursor: pointer;
}
.thumbnails img:hover,
.thumbnails img.active { opacity: 1; border-color: rgba(255,255,255,0.4); }

/* ---------- PRODUCT PAGE: live stats ---------- */
.live-stats {
  font-size: 13.5px;
  color: rgba(255,255,255,0.6);
}
.live-stats svg { width: 15px; height: 15px; opacity: 0.6; }

/* ---------- FAQ accordion ---------- */
.faq .accordion-item {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 14px;
  overflow: hidden;
  margin-bottom: 10px;
}
.faq .accordion-button {
  background: transparent;
  color: #fff;
  font-weight: 600;
  font-size: 15.5px;
  padding: 18px 22px;
  box-shadow: none;
}
.faq .accordion-button:not(.collapsed) {
  background: rgba(255,255,255,0.05);
  color: #fff;
  box-shadow: none;
}
.faq .accordion-button:focus { box-shadow: none; }
.faq .accordion-button::after {
  filter: invert(1);
  opacity: 0.7;
}
.faq .accordion-body {
  color: rgba(255,255,255,0.62);
  font-size: 14.5px;
  line-height: 1.65;
  padding: 4px 22px 20px;
}

/* ---------- CART page ---------- */
.cart-page .card,
.cart-summary {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 18px;
}

/* ---------- keyframes ---------- */
@keyframes axPulse {
  0% { opacity: 0.5; transform: scale(1); }
  50% { opacity: 1; transform: scale(1.12); }
  100% { opacity: 0.5; transform: scale(1); }
}

/* ---------- responsive ---------- */
@media (max-width: 768px) {
  .products-hero-title { font-size: clamp(26px, 7.5vw, 34px); }
  .ax-cats { gap: 6px; }
  .ax-cat-chip { padding: 7px 14px; font-size: 12px; }
  .product-card__title { font-size: 15.5px; }
  .product-wrapper .display-6 { font-size: 26px; }
}

@media (max-width: 400px) {
  .ax-cat-chip { padding: 6px 12px; font-size: 11.5px; }
  .product-card__action { padding: 12px 14px; font-size: 12px; }
}

/* ---------- LIGHT MODE ---------- */
.light-mode .products-hero .section-badge {
  background: rgba(0,0,0,0.04);
  border-color: rgba(0,0,0,0.1);
  color: rgba(0,0,0,0.7);
}
.light-mode .products-hero-title {
  background: linear-gradient(180deg, #111 30%, rgba(0,0,0,0.72));
  -webkit-background-clip: text;
  background-clip: text;
}
.light-mode .products-hero-desc { color: rgba(0,0,0,0.55); }
.light-mode .ax-cat-chip {
  background: rgba(0,0,0,0.035);
  border-color: rgba(0,0,0,0.1);
  color: rgba(0,0,0,0.65);
}
.light-mode .ax-cat-chip:hover {
  color: #000;
  border-color: rgba(0,0,0,0.3);
  background: rgba(0,0,0,0.06);
}
.light-mode .ax-cat-chip.active { background: #000; border-color: #000; color: #fff; }
.light-mode .ax-search-input {
  background: rgba(0,0,0,0.035);
  border-color: rgba(0,0,0,0.12);
  color: #111;
}
.light-mode .ax-search-input:focus { border-color: rgba(0,0,0,0.35); }
.light-mode .ax-search-input::placeholder { color: rgba(0,0,0,0.35); }
.light-mode .ax-search-icon { color: rgba(0,0,0,0.4); }
.light-mode .ax-search-count { color: rgba(0,0,0,0.6); background: rgba(0,0,0,0.06); }
.light-mode .product-card {
  background: #fff;
  border-color: rgba(0,0,0,0.09);
}
.light-mode .product-card:hover {
  border-color: rgba(0,0,0,0.25);
  box-shadow: 0 18px 40px -20px rgba(0,0,0,0.25);
}
.light-mode .product-card__title { color: #111; }
.light-mode .product-card__price-value { color: #111; }
.light-mode .product-card__placeholder { color: rgba(0,0,0,0.15); }
.light-mode .atlas-breadcrumbs a { color: rgba(0,0,0,0.5); }
.light-mode .atlas-breadcrumbs a:hover { color: #000; }
.light-mode .atlas-bc-current { color: #111; }
.light-mode .product-wrapper .display-6 {
  background: linear-gradient(180deg, #111 30%, rgba(0,0,0,0.75));
  -webkit-background-clip: text;
  background-clip: text;
}
.light-mode .faq .accordion-item {
  background: #fff;
  border-color: rgba(0,0,0,0.09);
}
.light-mode .faq .accordion-button { color: #111; }
.light-mode .faq .accordion-button:not(.collapsed) { background: rgba(0,0,0,0.035); color: #111; }
.light-mode .faq .accordion-body { color: rgba(0,0,0,0.6); }


/* ============================================================
   ATLAS.EXE — Buy-box + related products + steps animation
   ============================================================ */

/* ---------- PRODUCT PAGE: two-column buy-box layout ---------- */
.pp-gallery-col {
  position: sticky;
  top: 90px;
  align-self: flex-start;
}
.pp-buybox {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  padding: 28px;
}
.pp-buybox .display-6 {
  font-size: clamp(24px, 2.8vw, 36px);
  margin-bottom: 0.8rem;
}
.pp-buybox .fs-5 span {
  font-size: 30px !important;
  font-weight: 800;
  letter-spacing: 0.3px;
}

/* trust badges under buy button */
.pp-trust {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  margin-top: 22px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,0.07);
}
.pp-trust-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: rgba(255,255,255,0.65);
}
.pp-trust-item svg {
  color: rgba(255,255,255,0.45);
  flex-shrink: 0;
}
.pp-trust-item a {
  color: inherit;
  text-decoration: none;
}
.pp-trust-item a:hover { color: #fff; }

/* related products */
.pp-related { margin-top: 3.2rem; }
.pp-related-title h2 {
  font-size: 24px;
  font-weight: 800;
  letter-spacing: 0.4px;
  margin-bottom: 1.4rem;
  color: #fff;
}

/* ---------- HOME: How It Works — animated connectors + icons ---------- */
.how-section .steps-grid {
  position: relative;
}
.step-card {
  position: relative;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 18px;
  padding: 28px 24px;
  text-align: center;
  transition: transform 0.25s ease, border-color 0.25s ease;
}
.step-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255,255,255,0.22);
}
.step-icon {
  width: 64px;
  height: 64px;
  margin: 0 auto 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.1);
  color: #fff;
  transition: all 0.3s ease;
}
.step-card:hover .step-icon {
  background: #fff;
  color: #000;
  transform: scale(1.06);
}
.step-number {
  position: absolute;
  top: -14px;
  left: 50%;
  transform: translateX(-50%);
  padding: 4px 14px;
  border-radius: 999px;
  background: #fff;
  color: #000;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1px;
}
.step-connector {
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(255,255,255,0.35);
}
.step-connector svg {
  animation: axArrowFlow 1.8s ease-in-out infinite;
}
@keyframes axArrowFlow {
  0%, 100% { transform: translateX(0); opacity: 0.35; }
  50% { transform: translateX(6px); opacity: 1; }
}

/* light mode */
.light-mode .pp-buybox {
  background: #fff;
  border-color: rgba(0,0,0,0.09);
}
.light-mode .pp-trust { border-top-color: rgba(0,0,0,0.08); }
.light-mode .pp-trust-item { color: rgba(0,0,0,0.6); }
.light-mode .pp-related-title h2 { color: #111; }
.light-mode .step-card {
  background: #fff;
  border-color: rgba(0,0,0,0.09);
}
.light-mode .step-icon {
  background: rgba(0,0,0,0.04);
  border-color: rgba(0,0,0,0.1);
  color: #111;
}
.light-mode .step-card:hover .step-icon {
  background: #000;
  color: #fff;
}
.light-mode .step-connector { color: rgba(0,0,0,0.3); }

/* responsive */
@media (max-width: 991px) {
  .pp-gallery-col { position: static; }
}
@media (max-width: 640px) {
  .pp-buybox { padding: 20px 16px; border-radius: 16px; }
  .pp-buybox .fs-5 span { font-size: 26px !important; }
  .pp-trust { grid-template-columns: 1fr 1fr; gap: 8px; }
  .pp-trust-item { font-size: 12px; }
  .step-connector svg { width: 28px; height: 28px; }
}
@media (max-width: 575px) {
  .step-connector { transform: rotate(90deg); margin: 8px 0; }
}



/* ============================================================
   ATLAS.EXE — 3D DESIGN LAYER
   ============================================================ */

/* reveal-on-scroll base */
.ax3d-reveal {
  opacity: 0;
  transform: perspective(1000px) translate3d(0, 26px, -40px) rotateX(6deg);
  transition: opacity 0.7s cubic-bezier(0.22, 1, 0.36, 1), transform 0.7s cubic-bezier(0.22, 1, 0.36, 1);
}
.ax3d-revealed {
  opacity: 1;
  transform: perspective(1000px) translate3d(0, 0, 0) rotateX(0);
}

/* glare overlay for tilt cards */
.product-card, .step-card, .pp-buybox, .faq-item, .accordion-item { position: relative; overflow: visible; }
.product-card { overflow: hidden; }
.ax3d-glare {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 2;
  mix-blend-mode: soft-light;
}

/* floating hero orbs */
.ax3d-hero { position: relative; overflow: hidden; }
.ax3d-orb {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(2px);
  will-change: transform;
  z-index: 0;
}
.ax3d-orb-1 { width: 420px; height: 420px; top: -80px; left: -120px; }
.ax3d-orb-2 { width: 300px; height: 300px; bottom: -60px; right: -80px; }
.ax3d-orb-3 { width: 180px; height: 180px; top: 40%; left: 65%; }

.hero-content, .hero > *:not(.ax3d-orb) { position: relative; z-index: 1; }
.hero-title { will-change: transform; transform-style: preserve-3d; }

/* deep 3D card base shadows */
.product-card, .step-card, .pp-buybox {
  box-shadow:
    0 1px 2px rgba(0,0,0,0.3),
    0 8px 24px -12px rgba(0,0,0,0.5),
    0 24px 60px -30px rgba(0,0,0,0.6);
  transform-style: preserve-3d;
}
.step-card .step-icon,
.pp-buybox .display-6 { transform: translateZ(30px); }
.product-card__body > * { transform: translateZ(18px); }
.step-card h3, .step-card p { transform: translateZ(20px); }

/* 3D buttons: pop toward viewer */
.btn-primary, .faq-cta-btn, .product-card__action {
  transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.25s ease;
  transform-style: preserve-3d;
  will-change: transform;
}
.btn-primary:hover, .faq-cta-btn:hover {
  box-shadow: 0 14px 34px -10px rgba(255,255,255,0.25), 0 6px 16px -6px rgba(0,0,0,0.5);
}
.product-card__action { overflow: visible; }

/* light mode depth */
.light-mode .ax3d-glare { mix-blend-mode: multiply; }
.light-mode .product-card, .light-mode .step-card, .light-mode .pp-buybox {
  box-shadow:
    0 1px 2px rgba(0,0,0,0.06),
    0 8px 24px -12px rgba(0,0,0,0.12),
    0 24px 60px -30px rgba(0,0,0,0.16);
}
.light-mode .ax3d-orb-1 { background: radial-gradient(circle, rgba(0,0,0,0.04), transparent 70%) !important; }
.light-mode .ax3d-orb-2 { background: radial-gradient(circle, rgba(60,80,255,0.05), transparent 70%) !important; }
.light-mode .ax3d-orb-3 { background: radial-gradient(circle, rgba(255,100,180,0.04), transparent 70%) !important; }

/* mobile: disable heavy effects */
@media (max-width: 768px), (hover: none) {
  .ax3d-orb { display: none; }
  .ax3d-reveal { transform: none; opacity: 1; }
  .ax3d-revealed { transform: none; }
  .product-card, .step-card, .pp-buybox { box-shadow: 0 8px 24px -12px rgba(0,0,0,0.4); }
}

/* reduced motion: everything visible, no animation */
@media (prefers-reduced-motion: reduce) {
  .ax3d-reveal, .ax3d-revealed { transition: none; transform: none; opacity: 1; }
  .ax3d-orb { display: none; }
  .step-connector svg { animation: none !important; }
}


/* ============================================================
   AX3D v2 — inner image depth + spinning hero logo
   ============================================================ */

/* product image floats and rotates inside the tilted card */
.product-card__image {
  transform-style: preserve-3d;
  will-change: transform;
  transform: translateZ(0);
}
.product-card__image img {
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
}
.product-card { perspective: 900px; }

/* spinning 3D logo badge — hero top */
.ax-logo3d {
  position: relative;
  width: 92px;
  height: 92px;
  margin: 0 auto 18px;
  perspective: 600px;
}
.ax-logo3d-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid rgba(255,255,255,0.14);
  border-top-color: rgba(255,255,255,0.75);
  animation: axSpin3d 7s linear infinite;
}
.ax-logo3d-ring::after {
  content: '';
  position: absolute;
  inset: 8px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.1);
  border-bottom-color: rgba(255,255,255,0.45);
  animation: axSpin3d 4.5s linear infinite reverse;
}
.ax-logo3d-core {
  position: absolute;
  inset: 14px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(145deg, rgba(255,255,255,0.1), rgba(255,255,255,0.03));
  border: 1px solid rgba(255,255,255,0.16);
  box-shadow:
    0 10px 30px -8px rgba(0,0,0,0.7),
    inset 0 1px 0 rgba(255,255,255,0.14);
  animation: axSpinY 9s ease-in-out infinite;
  transform-style: preserve-3d;
}
.ax-logo3d-core span {
  font-weight: 800;
  font-size: 15px;
  letter-spacing: 1px;
  background: linear-gradient(180deg, #fff, rgba(255,255,255,0.72));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  backface-visibility: hidden;
}
@keyframes axSpin3d {
  from { transform: rotateZ(0deg); }
  to { transform: rotateZ(360deg); }
}
@keyframes axSpinY {
  0%, 100% { transform: rotateY(-16deg) rotateX(8deg); }
  50% { transform: rotateY(16deg) rotateX(-8deg); }
}

/* light mode */
.light-mode .ax-logo3d-ring { border-color: rgba(0,0,0,0.12); border-top-color: rgba(0,0,0,0.6); }
.light-mode .ax-logo3d-ring::after { border-color: rgba(0,0,0,0.08); border-bottom-color: rgba(0,0,0,0.4); }
.light-mode .ax-logo3d-core {
  background: linear-gradient(145deg, #fff, rgba(0,0,0,0.03));
  border-color: rgba(0,0,0,0.1);
  box-shadow: 0 10px 30px -10px rgba(0,0,0,0.25);
}
.light-mode .ax-logo3d-core span {
  background: linear-gradient(180deg, #111, rgba(0,0,0,0.7));
  -webkit-background-clip: text;
  background-clip: text;
}

/* mobile: hide logo badge animation cost, keep static */
@media (max-width: 640px), (prefers-reduced-motion: reduce) {
  .ax-logo3d-ring, .ax-logo3d-ring::after { animation: none; }
  .ax-logo3d-core { animation: none; transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .product-card__image, .product-card__image img { transition: none; transform: none !important; }
}


/* ---- AX3D v2.1: logo badge uses real brand image, compact ---- */
.ax-logo3d { width: 72px; height: 72px; margin: 0 auto 14px; }
.ax-logo3d-core { inset: 6px; }
.ax-logo3d-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  transform: translateZ(18px);
  filter: drop-shadow(0 4px 12px rgba(0,0,0,0.5));
}
.ax-logo3d-core span { display: none; }


/* ---- FIX: hero/section badge dot spacing (dot at left, text after it) ---- */
.hero-badge, .section-badge {
  padding-left: 30px !important;
  padding-right: 20px !important;
}
.hero-badge::before, .section-badge::before {
  left: 14px !important;
}

/* ==== BADGE DOT v2: flex layout - dot inline before text, never overlapping ==== */
.hero-badge, .section-badge, .products-hero .section-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 8px 22px 8px 16px !important;
}
.hero-badge::before, .section-badge::before, .products-hero .section-badge::before {
  position: static !important;
  transform: none !important;
  left: auto !important;
  top: auto !important;
  margin: 0 !important;
  flex: 0 0 auto !important;
}
@media (max-width: 480px) {
  .hero-badge, .section-badge { max-width: 92%; letter-spacing: 2px; }
}

/* ==== GALLERY 3D v1: metallic icons, floating tiles, depth floors ==== */
.gallery-item {
  --cat-accent: #aab6c8;
  --mx: 50%;
  --my: 50%;
}
.gallery-item .ax-cat3d__tile {
  width: 86px;
  height: 86px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 22px;
  background:
    radial-gradient(120% 120% at 30% 20%, rgba(255,255,255,0.16), rgba(255,255,255,0.02) 55%),
    linear-gradient(160deg, rgba(255,255,255,0.10), rgba(255,255,255,0.02) 60%);
  border: 1px solid rgba(255,255,255,0.16);
  border-bottom-color: rgba(255,255,255,0.28);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.18) inset,
    0 -12px 24px -18px var(--cat-accent) inset,
    0 14px 26px -14px rgba(0,0,0,0.75),
    0 3px 0 rgba(0,0,0,0.35);
  transform: translateZ(38px);
  transition: transform 0.35s cubic-bezier(0.2, 0.9, 0.25, 1.35), box-shadow 0.35s;
  position: relative;
}
.gallery-item .ax-cat3d__tile::after {
  content: '';
  position: absolute;
  left: 14%;
  right: 14%;
  bottom: -14px;
  height: 12px;
  border-radius: 50%;
  background: radial-gradient(50% 50% at 50% 50%, rgba(0,0,0,0.55), transparent 70%);
  filter: blur(2px);
  z-index: -1;
}
.gallery-item:hover .ax-cat3d__tile {
  transform: translateZ(56px) translateY(-4px);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.22) inset,
    0 -14px 30px -16px var(--cat-accent) inset,
    0 22px 38px -16px rgba(0,0,0,0.85),
    0 3px 0 rgba(0,0,0,0.35),
    0 0 26px -6px var(--cat-accent);
}
.gallery-item .ax-cat3d__icon {
  width: 52px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  filter: drop-shadow(0 6px 10px rgba(0,0,0,0.55));
  transition: transform 0.35s cubic-bezier(0.2, 0.9, 0.25, 1.35);
}
.gallery-item:hover .ax-cat3d__icon {
  transform: translateY(-2px) scale(1.06);
}
.gallery-item .gallery-text-icon { font-size: 0; line-height: 0; }
.gallery-item .gallery-text-icon:empty { display: none; }

/* hover light + accent edge on the card */
.gallery-item.ax-cat3d::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(420px circle at var(--mx) var(--my), rgba(255,255,255,0.07), transparent 42%);
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: none;
  z-index: 1;
}
.gallery-item.ax-cat3d:hover::before { opacity: 1; }

/* explore chip */
.gallery-item .ax-cat3d__chip {
  position: absolute;
  left: 50%;
  bottom: 14px;
  transform: translate(-50%, 8px);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #fff;
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.22);
  padding: 5px 12px;
  border-radius: 99px;
  opacity: 0;
  transition: opacity 0.3s, transform 0.3s cubic-bezier(0.2, 0.9, 0.25, 1.35);
  backdrop-filter: blur(6px);
  pointer-events: none;
  white-space: nowrap;
  z-index: 2;
}
.gallery-item:hover .ax-cat3d__chip {
  opacity: 1;
  transform: translate(-50%, 0);
}

/* per-card accent: label + border tint */
.gallery-item .gallery-text-label {
  position: relative;
  z-index: 1;
  text-shadow: 0 2px 12px rgba(0,0,0,0.65);
}
.gallery-item.ax-cat3d:hover {
  border-color: color-mix(in srgb, var(--cat-accent) 45%, transparent);
  box-shadow:
    0 18px 44px -18px rgba(0,0,0,0.9),
    0 0 34px -12px var(--cat-accent);
}

/* metallic section titles (fixes ghost-blur) */
.section-title {
  background: linear-gradient(180deg, #ffffff 0%, #d4d9e2 45%, #8b93a3 75%, #c9cfdb 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.55)) !important;
  animation: none !important;
}
.light-mode .section-title {
  background: linear-gradient(180deg, #16181d 0%, #3a3f4a 55%, #12141a 100%);
  -webkit-background-clip: text;
  background-clip: text;
  filter: drop-shadow(0 1px 2px rgba(0,0,0,0.12)) !important;
}

@media (max-width: 640px) {
  .gallery-item .ax-cat3d__tile { width: 72px; height: 72px; border-radius: 18px; }
  .gallery-item .ax-cat3d__icon { width: 44px; height: 44px; }
  .gallery-item .ax-cat3d__chip { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .gallery-item, .gallery-item .ax-cat3d__tile, .gallery-item .ax-cat3d__icon { transition: none !important; transform: none !important; }
}

/* ==== TRUST + PAYMENT 3D TILES v1 ==== */
/* trust + policy icons float on glass tiles like the categories */
.trust-card .trust-icon, .policy-card .policy-icon {
  width: 74px;
  height: 74px;
  margin: 0 auto 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  background:
    radial-gradient(120% 120% at 30% 20%, rgba(255,255,255,0.16), rgba(255,255,255,0.02) 55%),
    linear-gradient(160deg, rgba(255,255,255,0.10), rgba(255,255,255,0.02) 60%);
  border: 1px solid rgba(255,255,255,0.16);
  border-bottom-color: rgba(255,255,255,0.28);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.18) inset,
    0 14px 26px -14px rgba(0,0,0,0.75),
    0 3px 0 rgba(0,0,0,0.35);
  transform: translateZ(34px);
  transition: transform 0.35s cubic-bezier(0.2, 0.9, 0.25, 1.35), box-shadow 0.35s;
  position: relative;
}
.trust-card .trust-icon::after, .policy-card .policy-icon::after {
  content: '';
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: -12px;
  height: 10px;
  border-radius: 50%;
  background: radial-gradient(50% 50% at 50% 50%, rgba(0,0,0,0.5), transparent 70%);
  filter: blur(2px);
  z-index: -1;
}
.trust-card .trust-icon svg, .policy-card .policy-icon svg {
  width: 34px;
  height: 34px;
  filter: drop-shadow(0 5px 9px rgba(0,0,0,0.55));
}
.trust-card:hover .trust-icon, .policy-card:hover .policy-icon {
  transform: translateZ(50px) translateY(-4px);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.22) inset,
    0 20px 36px -16px rgba(0,0,0,0.85),
    0 3px 0 rgba(0,0,0,0.35),
    0 0 24px -8px rgba(255,255,255,0.35);
}
/* accents: shield=green, zap=blue, users=purple, star=gold, stripe lock=white */
.trust-card:nth-child(1) .trust-icon { --tacc: #7dffb2; }
.trust-card:nth-child(2) .trust-icon { --tacc: #7db4ff; }
.trust-card:nth-child(3) .trust-icon { --tacc: #c39bff; }
.trust-card:nth-child(4) .trust-icon { --tacc: #ffd76f; }
.policy-card .policy-icon { --tacc: #6fd6ff; }
.trust-card .trust-icon svg, .policy-card .policy-icon svg { color: var(--tacc, #fff); }
.trust-card:hover, .policy-card:hover {
  box-shadow: 0 18px 44px -18px rgba(0,0,0,0.9), 0 0 30px -12px var(--tacc, rgba(255,255,255,0.4));
}
/* card text floats a step above surface */
.trust-card h3, .policy-card h3 { transform: translateZ(18px); }
.trust-card p, .policy-card .policy-price { transform: translateZ(10px); }

/* perspective on grids so translateZ reads as depth */
.trust-grid, .policy-cards { perspective: 1100px; }
.trust-card, .policy-card { transform-style: preserve-3d; }

/* ==== GALLERY MOBILE GRID FIX ==== */
@media (max-width: 1024px) {
  .gallery-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
}
@media (max-width: 640px) {
  .gallery-grid { grid-template-columns: 1fr; gap: 12px; }
  .gallery-item { aspect-ratio: auto; min-height: 150px; }
  .gallery-placeholder { padding: 22px 14px; gap: 10px; }
  .gallery-text-desc { font-size: 12.5px; }
}

/* ==== STEPS 3D TILES v1: floating accent-glow tiles for How It Works ==== */
.steps-grid { perspective: 1100px; }
.step-card { transform-style: preserve-3d; --sacc: #7db4ff; }
.steps-grid .step-card:nth-child(1) { --sacc: #7db4ff; }
.steps-grid .step-card:nth-child(3) { --sacc: #7dffb2; }
.steps-grid .step-card:nth-child(5) { --sacc: #ffd76f; }
.step-card .step-icon, .step-card:hover .step-icon {
  width: 74px;
  height: 74px;
  margin: 0 auto 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  background:
    radial-gradient(120% 120% at 30% 20%, rgba(255,255,255,0.16), rgba(255,255,255,0.02) 55%),
    linear-gradient(160deg, rgba(255,255,255,0.10), rgba(255,255,255,0.02) 60%) !important;
  border: 1px solid rgba(255,255,255,0.16);
  border-bottom-color: rgba(255,255,255,0.28);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.18) inset,
    0 -12px 24px -18px var(--sacc) inset,
    0 14px 26px -14px rgba(0,0,0,0.75),
    0 3px 0 rgba(0,0,0,0.35);
  transform: translateZ(34px);
  transition: transform 0.35s cubic-bezier(0.2, 0.9, 0.25, 1.35), box-shadow 0.35s;
  position: relative;
}
.step-card .step-icon::after {
  content: '';
  position: absolute;
  left: 15%;
  right: 15%;
  bottom: -12px;
  height: 10px;
  border-radius: 50%;
  background: radial-gradient(50% 50% at 50% 50%, rgba(0,0,0,0.5), transparent 70%);
  filter: blur(2px);
  z-index: -1;
}
.step-card .step-icon svg, .step-card:hover .step-icon svg {
  color: var(--sacc) !important;
  stroke: var(--sacc);
  width: 34px;
  height: 34px;
  filter: drop-shadow(0 5px 9px rgba(0,0,0,0.55));
}
.step-card:hover .step-icon {
  transform: translateZ(50px) translateY(-4px);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.22) inset,
    0 -14px 30px -16px var(--sacc) inset,
    0 22px 38px -16px rgba(0,0,0,0.85),
    0 3px 0 rgba(0,0,0,0.35),
    0 0 26px -6px var(--sacc);
}
.step-card .step-number { color: var(--sacc); }
.step-card:hover {
  box-shadow: 0 18px 44px -18px rgba(0,0,0,0.9), 0 0 30px -12px var(--sacc);
}
.step-card h3 { transform: translateZ(18px); position: relative; z-index: 1; }
.step-card p { transform: translateZ(10px); position: relative; z-index: 1; }
.light-mode .step-card .step-icon, .light-mode .step-card:hover .step-icon {
  background: linear-gradient(160deg, rgba(20,24,32,0.07), rgba(20,24,32,0.02)) !important;
  border-color: rgba(20,24,32,0.14);
  box-shadow: 0 10px 22px -12px rgba(20,24,32,0.35), 0 2px 0 rgba(20,24,32,0.06);
}
.light-mode .step-card .step-icon svg, .light-mode .step-card:hover .step-icon svg {
  filter: drop-shadow(0 3px 6px rgba(20,24,32,0.25));
}
@media (max-width: 640px) {
  .step-card .step-icon, .step-card:hover .step-icon { width: 64px; height: 64px; border-radius: 17px; }
  .step-card .step-icon svg, .step-card:hover .step-icon svg { width: 30px; height: 30px; }
}
@media (prefers-reduced-motion: reduce) {
  .step-card .step-icon, .step-card:hover .step-icon { transition: none !important; transform: none !important; }
}

/* ==== PRODUCTS GRID MID-VIEWPORT FIX v1: 2 columns 560-767px (matches gallery treatment) ==== */
@media (min-width: 560px) and (max-width: 767px) {
  .ax-prod-grid > [class*="col-"] { flex: 0 0 50%; max-width: 50%; }
  .ax-prod-grid .product-card__title { font-size: 14px; }
  .ax-prod-grid .product-card__image { height: 140px; }
  .ax-prod-grid .product-card__image img { height: 100%; width: 100%; object-fit: cover; }
}

/* ==== MOBILE HEADER + HERO GLOW FIX v1 ==== */
@media (max-width: 768px) {
  /* keep brand visible, compress actions so cart stays on screen */
  .header .navbar > .container,
  .sticky-top .navbar > .container {
    flex-wrap: nowrap;
    gap: 8px;
  }
  .navbar-brand {
    flex-shrink: 0;
    margin-right: 0;
    max-width: 46vw;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .header-actions {
    flex-shrink: 1;
    margin-left: auto;
    gap: 6px;
    min-width: 0;
  }
  .header-actions .lang-select,
  .header-actions button.btn-login {
    padding: 7px 9px;
    font-size: 11px;
    letter-spacing: 0.02em;
    min-width: 0;
    max-width: 104px;
    width: auto;
    flex-shrink: 1;
  }
  .header-actions .btn-cart {
    padding: 7px 9px;
    flex-shrink: 0;
  }
  /* keep the glow inside the hero: no bleed under the fixed header */
  .hero { overflow: hidden; }
  .hero::after {
    width: 240px;
    height: 240px;
    top: 90px;
    left: 50%;
    margin-left: -120px;
    opacity: 0.55;
  }
}
@media (max-width: 480px) {
  /* login becomes icon-only to guarantee everything fits on small phones */
  .header-actions button.btn-login span { display: none; }
  .header-actions button.btn-login { padding: 7px 8px; }
  .header-actions .lang-select { max-width: 92px; }
}

/* ==== MOBILE BADGE + CTA POLISH v1 ==== */
@media (max-width: 640px) {
  /* badges: one line, dot centered with text */
  .hero-badge, .section-badge {
    font-size: 9.5px;
    letter-spacing: 0.14em;
    white-space: nowrap;
    max-width: calc(100vw - 40px);
    gap: 8px;
  }
  /* hero CTAs never wrap */
  .hero [data-i18n="join_discord"], .hero [data-i18n="view_products"] {
    white-space: nowrap;
  }
}

/* ==== MOBILE SUPPORT WIDGET FIX v1 ==== */
@media (max-width: 640px) {
  /* compact the floating support button so it stops covering the hero CTA */
  .support-button {
    width: 46px;
    height: 46px;
    bottom: 14px;
    right: 14px;
    font-size: 19px;
  }
  .support-button .support-ring,
  .support-button::after,
  .support-button::before {
    width: 46px;
    height: 46px;
  }
  .support-button .support-ring { animation: none; }
  .support-button::after, .support-button::before { animation: none; }
  .support-button .support-tooltip { display: none; }
  .support-button:hover { transform: scale(1.06); }
  /* hero CTA clears the fixed widget zone */
  .hero { padding-bottom: 132px; }
  .hero-scroll { bottom: 84px; }
}

/* ==== MOBILE SUPPORT WIDGET FIX v2: clear the sticky CTA bar ==== */
@media (max-width: 640px) {
  /* raise the support button above the full-width sticky Join-Discord bar */
  .support-button { bottom: 86px; right: 14px; }
  .support-popup { bottom: 150px; }
}

/* ==== MOBILE SUPPORT WIDGET FIX v3: hide decorative ring/pulse ==== */
@media (max-width: 640px) {
  .support-button .support-ring { display: none !important; }
  .support-button::after, .support-button::before { display: none !important; }
  .support-button { overflow: visible; }
}

/* ==== CATEGORY ICONS + 3D TILE v2: colored gradient icons, float + shine ==== */
.gallery-item .ax-cat3d__tile {
  width: 88px;
  height: 88px;
  border-radius: 24px;
  background:
    radial-gradient(130% 130% at 30% 15%, rgba(255,255,255,0.22), rgba(255,255,255,0.03) 52%),
    linear-gradient(160deg, rgba(255,255,255,0.14), rgba(255,255,255,0.03) 62%);
  border: 1px solid rgba(255,255,255,0.20);
  border-bottom-color: rgba(255,255,255,0.32);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.22) inset,
    0 -14px 28px -16px var(--cat-accent) inset,
    0 16px 30px -14px rgba(0,0,0,0.8),
    0 3px 0 rgba(0,0,0,0.4);
  transform: translateZ(38px);
  transition: transform 0.4s cubic-bezier(0.2, 0.9, 0.25, 1.35), box-shadow 0.4s;
  position: relative;
  animation: axTileFloat 4s ease-in-out infinite;
}
@keyframes axTileFloat {
  0%, 100% { transform: translateZ(38px) translateY(0); }
  50% { transform: translateZ(38px) translateY(-5px); }
}
.gallery-item .ax-cat3d__tile::after {
  content: '';
  position: absolute;
  left: 12%;
  right: 12%;
  bottom: -15px;
  height: 12px;
  border-radius: 50%;
  background: radial-gradient(50% 50% at 50% 50%, rgba(0,0,0,0.6), transparent 70%);
  filter: blur(2px);
  z-index: -1;
}
.gallery-item .ax-cat3d__tile::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(115deg, transparent 30%, rgba(255,255,255,0.28) 48%, rgba(255,255,255,0.05) 58%, transparent 70%);
  transform: translateX(-120%);
  transition: transform 0.6s ease;
  pointer-events: none;
  z-index: 1;
}
.gallery-item:hover .ax-cat3d__tile::before { transform: translateX(120%); }
.gallery-item .ax-cat3d__icon {
  width: 54px;
  height: 54px;
  filter: drop-shadow(0 7px 12px rgba(0,0,0,0.6));
  transition: transform 0.4s cubic-bezier(0.2, 0.9, 0.25, 1.35);
}
.gallery-item:hover .ax-cat3d__icon { transform: translateY(-3px) scale(1.08); }
.gallery-item:hover .ax-cat3d__tile {
  transform: translateZ(58px) translateY(-5px);
  animation-play-state: paused;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.26) inset,
    0 -16px 34px -16px var(--cat-accent) inset,
    0 24px 44px -16px rgba(0,0,0,0.9),
    0 3px 0 rgba(0,0,0,0.4),
    0 0 30px -6px var(--cat-accent);
}
@media (max-width: 640px) {
  .gallery-item .ax-cat3d__tile { width: 74px; height: 74px; border-radius: 20px; animation: none; }
  .gallery-item .ax-cat3d__icon { width: 46px; height: 46px; }
}
@media (prefers-reduced-motion: reduce) {
  .gallery-item .ax-cat3d__tile { animation: none !important; transform: none !important; }
  .gallery-item .ax-cat3d__tile::before { transition: none; }
}

/* ==== HERO TITLE 3D EXTRUDED v1 ==== */
/* 3D depth extrusion + metallic sheen + shine sweep on ATLAS .EXE */
.hero-title {
  perspective: 900px;
}
.hero-title .brand-text,
.hero-title .accent,
.light-mode .hero-title .brand-text,
.light-mode .hero-title .accent {
  background-image:
    linear-gradient(120deg, transparent 0%, transparent 38%, rgba(255,255,255,0.9) 50%, transparent 62%, transparent 100%),
    linear-gradient(180deg, #f2f3f8 0%, #c7cad6 40%, #8b8fa2 78%, #d6dae4 100%);
  background-size: 250% 100%, 100% 100%;
  background-position: -140% 0, 0 0;
  background-repeat: no-repeat;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: axShine 4.2s ease-in-out infinite;
  /* extruded 3D side (stacked depth shadows going down-right) */
  text-shadow:
    1px 1px 0 rgba(0,0,0,0.9),
    2px 2px 0 rgba(0,0,0,0.86),
    3px 3px 0 rgba(0,0,0,0.82),
    4px 4px 0 rgba(0,0,0,0.76),
    5px 5px 0 rgba(0,0,0,0.7),
    6px 6px 0 rgba(0,0,0,0.62),
    7px 7px 0 rgba(0,0,0,0.54),
    8px 8px 0 rgba(0,0,0,0.44),
    9px 9px 0 rgba(0,0,0,0.34),
    10px 10px 0 rgba(0,0,0,0.24),
    11px 11px 0 rgba(0,0,0,0.16),
    0 0 26px rgba(255,255,255,0.22);
}
@keyframes axShine {
  0%, 55% { background-position: -140% 0, 0 0; }
  100% { background-position: 220% 0, 0 0; }
}
/* gentle 3D float on the whole title */
@keyframes axTitleFloat {
  0%, 100% { transform: perspective(900px) rotateX(2deg) rotateY(-2deg) translateY(0); }
  50% { transform: perspective(900px) rotateX(-2deg) rotateY(2deg) translateY(-6px); }
}
.hero-title {
  transform-style: preserve-3d;
  animation: axTitleFloat 6s ease-in-out infinite;
}
.light-mode .hero-title .brand-text,
.light-mode .hero-title .accent {
  background-image:
    linear-gradient(120deg, transparent 0%, transparent 38%, rgba(255,255,255,0.95) 50%, transparent 62%, transparent 100%),
    linear-gradient(180deg, #2a2d36 0%, #555a68 48%, #9aa0b0 100%);
  background-size: 250% 100%, 100% 100%;
  text-shadow:
    1px 1px 0 rgba(0,0,0,0.35),
    2px 2px 0 rgba(0,0,0,0.3),
    3px 3px 0 rgba(0,0,0,0.25),
    4px 4px 0 rgba(0,0,0,0.2),
    0 0 14px rgba(0,0,0,0.25);
}
@media (max-width: 640px) {
  .hero-title .brand-text,
  .hero-title .accent {
    text-shadow:
      1px 1px 0 rgba(0,0,0,0.9),
      2px 2px 0 rgba(0,0,0,0.82),
      3px 3px 0 rgba(0,0,0,0.7),
      4px 4px 0 rgba(0,0,0,0.55),
      5px 5px 0 rgba(0,0,0,0.4),
      0 0 18px rgba(255,255,255,0.2);
  }
  .hero-title { animation: none; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-title { animation: none !important; transform: none !important; }
  .hero-title .brand-text, .hero-title .accent { animation: none !important; }
}

/* ==== HEADINGS 3D EXTRUDED v1 (subtitle + section/step/FAQ/card titles) ==== */
/* lighter 3D depth + subtle shine so secondary headings match the hero title */
.hero-subtitle,
.section-title,
.step-card h3,
.faq-item h3,
.cta-title,
.card-title {
  text-shadow:
    1px 1px 0 rgba(0,0,0,0.85),
    2px 2px 0 rgba(0,0,0,0.72),
    3px 3px 0 rgba(0,0,0,0.56),
    4px 4px 0 rgba(0,0,0,0.38),
    5px 5px 0 rgba(0,0,0,0.22),
    0 0 20px rgba(255,255,255,0.16);
}
.hero-subtitle {
  background-image:
    linear-gradient(120deg, transparent 0%, transparent 40%, rgba(255,255,255,0.85) 50%, transparent 60%, transparent 100%),
    linear-gradient(180deg, #ffffff 0%, #c8ccd8 55%, #8f94a6 100%);
  background-size: 250% 100%, 100% 100%;
  background-position: -140% 0, 0 0;
  background-repeat: no-repeat;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: axShine2 4.5s ease-in-out infinite;
}
@keyframes axShine2 {
  0%, 60% { background-position: -140% 0, 0 0; }
  100% { background-position: 220% 0, 0 0; }
}
.section-title,
.step-card h3,
.faq-item h3,
.cta-title,
.card-title {
  background-image:
    linear-gradient(120deg, transparent 0%, transparent 40%, rgba(255,255,255,0.8) 50%, transparent 60%, transparent 100%),
    linear-gradient(180deg, #ffffff 0%, #d4d9e2 45%, #8b93a3 78%, #c9cfdb 100%);
  background-size: 250% 100%, 100% 100%;
  background-position: -140% 0, 0 0;
  background-repeat: no-repeat;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  animation: axShine2 4.5s ease-in-out infinite;
}
.light-mode .hero-subtitle,
.light-mode .section-title,
.light-mode .step-card h3,
.light-mode .faq-item h3,
.light-mode .cta-title,
.light-mode .card-title {
  background-image:
    linear-gradient(120deg, transparent 0%, transparent 40%, rgba(255,255,255,0.9) 50%, transparent 60%, transparent 100%),
    linear-gradient(180deg, #2a2d36 0%, #555a68 55%, #9aa0b0 100%);
  background-size: 250% 100%, 100% 100%;
  text-shadow:
    1px 1px 0 rgba(0,0,0,0.3),
    2px 2px 0 rgba(0,0,0,0.22),
    3px 3px 0 rgba(0,0,0,0.14),
    0 0 12px rgba(0,0,0,0.2);
}
@media (prefers-reduced-motion: reduce) {
  .hero-subtitle, .section-title, .step-card h3, .faq-item h3, .cta-title, .card-title {
    animation: none !important;
  }
}

/* ==== HERO TITLE 3D v2: fix dark inherited background ==== */
/* The brand-text/accent spans inherit .hero-title's near-black gradient via
   background:inherit !important. Override with !important so the bright
   metallic gradient + shine actually show. */
.hero-title .brand-text,
.hero-title .accent,
.light-mode .hero-title .brand-text,
.light-mode .hero-title .accent {
  background-image:
    linear-gradient(120deg, transparent 0%, transparent 38%, rgba(255,255,255,0.95) 50%, transparent 62%, transparent 100%),
    linear-gradient(180deg, #ffffff 0%, #dfe3ec 38%, #a9aec0 72%, #e8ebf2 100%) !important;
  background-size: 250% 100%, 100% 100% !important;
  background-position: -140% 0, 0 0 !important;
  background-repeat: no-repeat !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
  animation: axShine 4.2s ease-in-out infinite !important;
}
.light-mode .hero-title .brand-text,
.light-mode .hero-title .accent {
  background-image:
    linear-gradient(120deg, transparent 0%, transparent 38%, rgba(255,255,255,0.95) 50%, transparent 62%, transparent 100%),
    linear-gradient(180deg, #2a2d36 0%, #6b7180 55%, #b9bfcd 100%) !important;
  background-size: 250% 100%, 100% 100% !important;
}

/* ==== HERO TITLE BALANCED v3: bright even silver face, light extrusion ==== */
.hero-title .brand-text,
.hero-title .accent,
.hero-title .brand-text.accent {
  background: linear-gradient(180deg, #ffffff 0%, #eef0f5 42%, #c9cdd8 68%, #f2f3f7 100%) !important;
  background-size: 100% 100% !important;
  background-repeat: no-repeat !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
  filter: drop-shadow(0 1px 1px rgba(0,0,0,0.2)) !important;
  text-shadow:
    0 0 16px rgba(255,255,255,0.4),
    1px 1px 0 rgba(90,96,110,0.6),
    2px 2px 0 rgba(70,76,90,0.42),
    3px 3px 0 rgba(50,55,68,0.28),
    4px 4px 0 rgba(30,33,42,0.16) !important;
  background-image: none !important;
}
.light-mode .hero-title .brand-text,
.light-mode .hero-title .accent,
.light-mode .hero-title .brand-text.accent {
  background: linear-gradient(180deg, #3a3f4a 0%, #6b7180 45%, #a9afbd 100%) !important;
  background-size: 100% 100% !important;
  text-shadow:
    0 0 12px rgba(0,0,0,0.25),
    1px 1px 0 rgba(0,0,0,0.28),
    2px 2px 0 rgba(0,0,0,0.2),
    3px 3px 0 rgba(0,0,0,0.12) !important;
}
@media (prefers-reduced-motion: reduce) {
  .hero-title .brand-text, .hero-title .accent { animation: none !important; }
}

/* ==== HERO TITLE BALANCED v3b: bright even silver face, no dark edges ==== */
.hero-title .brand-text,
.hero-title .accent,
.hero-title .brand-text.accent {
  background-image: linear-gradient(180deg, #ffffff 0%, #eef0f5 42%, #cbd0dc 68%, #f2f3f7 100%) !important;
  background-size: 100% 100% !important;
  background-position: 0 0 !important;
  background-repeat: no-repeat !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
  text-shadow:
    1px 1px 0 rgba(90,96,110,0.55),
    2px 2px 0 rgba(70,76,90,0.38),
    3px 3px 0 rgba(50,55,68,0.24),
    0 0 14px rgba(255,255,255,0.32) !important;
}
.light-mode .hero-title .brand-text,
.light-mode .hero-title .accent,
.light-mode .hero-title .brand-text.accent {
  background-image: linear-gradient(180deg, #3a3f4a 0%, #6b7180 45%, #a9afbd 100%) !important;
  background-size: 100% 100% !important;
  text-shadow:
    1px 1px 0 rgba(0,0,0,0.28),
    2px 2px 0 rgba(0,0,0,0.2),
    3px 3px 0 rgba(0,0,0,0.12) !important;
}

/* ==== HERO TITLE PURE WHITE v4: solid white, soft glow, no gradient ==== */
.hero-title .brand-text,
.hero-title .accent,
.hero-title .brand-text.accent,
.light-mode .hero-title .brand-text,
.light-mode .hero-title .accent,
.light-mode .hero-title .brand-text.accent {
  background: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: #ffffff !important;
  color: #ffffff !important;
  text-shadow:
    0 0 18px rgba(255,255,255,0.45),
    0 0 32px rgba(255,255,255,0.22),
    0 2px 3px rgba(0,0,0,0.5) !important;
  filter: none !important;
}

/* ==== HEADINGS PURE WHITE v2: all headings/numbers/prices solid white ==== */
.hero-subtitle,
.section-title,
.section-title h1,
.section-title h2,
.step-card h3,
.faq-item h3,
.cta-title,
.cta-title h1,
.cta-title h2,
.card-title,
.stat-number,
.card-price,
.policy-price,
.text-cyan,
.text-pink,
.gallery-text-label,
.review-name {
  background: none !important;
  background-image: none !important;
  -webkit-background-clip: initial !important;
  background-clip: initial !important;
  -webkit-text-fill-color: #ffffff !important;
  color: #ffffff !important;
  text-shadow: 0 0 14px rgba(255,255,255,0.32), 0 2px 3px rgba(0,0,0,0.55) !important;
  filter: none !important;
}
.light-mode .hero-subtitle,
.light-mode .section-title,
.light-mode .step-card h3,
.light-mode .faq-item h3,
.light-mode .cta-title,
.light-mode .card-title,
.light-mode .stat-number,
.light-mode .card-price,
.light-mode .policy-price,
.light-mode .text-cyan,
.light-mode .text-pink,
.light-mode .gallery-text-label,
.light-mode .review-name {
  -webkit-text-fill-color: #16181d !important;
  color: #16181d !important;
  text-shadow: 0 1px 2px rgba(255,255,255,0.6) !important;
}
@media (prefers-reduced-motion: reduce) {
  .hero-subtitle, .section-title, .step-card h3, .faq-item h3, .cta-title, .card-title, .stat-number, .card-price, .policy-price { animation: none !important; }
}

/* ==== 3D FLOW + GLOW v3: headings glow, cart/checkout/faq glass cards ==== */
/* --- soft raised white glow on every heading (pure white fill kept, zero gray) --- */
.hero-subtitle, .section-title, .section-title h1, .section-title h2,
.step-card h3, .faq-item h3, .cta-title, .products-hero-title, .faq-hero-title,
.product-card__title, .stat-number, .card-title, .card-price, .policy-price,
.modal-title, .vapor-footer-title, .cart .section-title h1, .review-name,
.gallery-text-label, .review-stat-number, .compare-table th {
  text-shadow:
    0 0 10px rgba(255,255,255,0.28),
    0 0 26px rgba(160,190,255,0.20),
    0 1px 0 rgba(255,255,255,0.30),
    0 3px 6px rgba(0,0,0,0.55) !important;
}
.light-mode .hero-subtitle, .light-mode .section-title, .light-mode .step-card h3,
.light-mode .faq-item h3, .light-mode .cta-title, .light-mode .products-hero-title,
.light-mode .faq-hero-title, .light-mode .product-card__title, .light-mode .stat-number,
.light-mode .card-title, .light-mode .card-price, .light-mode .modal-title,
.light-mode .vapor-footer-title, .light-mode .cart .section-title h1 {
  text-shadow:
    0 0 10px rgba(120,150,255,0.25),
    0 1px 0 rgba(255,255,255,0.9),
    0 3px 6px rgba(30,40,80,0.18) !important;
}
/* --- cart + checkout + faq glass 3D cards --- */
.cart-item-bg,
.cart .p-4.border.rounded,
.faq-item,
.cart .alert {
  position: relative;
  background:
    radial-gradient(130% 140% at 25% 10%, rgba(255,255,255,0.10), rgba(255,255,255,0.02) 55%),
    linear-gradient(165deg, rgba(255,255,255,0.075), rgba(255,255,255,0.028) 60%, rgba(255,255,255,0.045));
  border: 1px solid rgba(255,255,255,0.14) !important;
  border-bottom-color: rgba(255,255,255,0.24) !important;
  border-radius: 16px !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.18) inset,
    0 -18px 34px -22px rgba(80,120,255,0.35) inset,
    0 18px 34px -20px rgba(0,0,0,0.85),
    0 4px 0 rgba(0,0,0,0.35) !important;
  transform-style: preserve-3d;
  transition: transform .35s cubic-bezier(.2,.9,.25,1.25), box-shadow .35s, border-color .35s;
}
.cart-item-bg:hover,
.cart .p-4.border.rounded:hover,
.faq-item:hover {
  transform: translateY(-3px);
  border-color: rgba(140,170,255,0.4) !important;
  box-shadow:
    0 1px 0 rgba(255,255,255,0.22) inset,
    0 -18px 34px -20px rgba(80,120,255,0.5) inset,
    0 26px 44px -20px rgba(0,0,0,0.9),
    0 4px 0 rgba(0,0,0,0.35),
    0 0 30px -6px rgba(100,140,255,0.25) !important;
}
/* product/summary card image pops in 3D inside cart rows */
.cart-item-bg img { transform: translateZ(24px); transition: transform .35s; }
.cart-item-bg:hover img { transform: translateZ(34px) scale(1.04); }
/* quantity + remove buttons: glass pill */
.cart-qty-btn, .cart-remove-mobile, .cart-remove-desktop {
  background: linear-gradient(160deg, rgba(255,255,255,0.14), rgba(255,255,255,0.05)) !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.5), 0 1px 0 rgba(255,255,255,0.15) inset !important;
  transition: transform .25s, box-shadow .25s, border-color .25s;
}
.cart-qty-btn:hover, .cart-remove-mobile:hover, .cart-remove-desktop:hover {
  transform: translateY(-2px);
  border-color: rgba(140,170,255,0.5) !important;
  box-shadow: 0 6px 14px rgba(0,0,0,0.55), 0 0 16px -4px rgba(100,140,255,0.4) !important;
}
/* cart totals + checkout CTA glow */
.cart .btn-primary, .btn.checkout-btn {
  background: linear-gradient(160deg, #3f8bff, #1a4fd6) !important;
  border: 1px solid rgba(160,190,255,0.5) !important;
  box-shadow: 0 10px 24px -8px rgba(40,90,255,0.65), 0 1px 0 rgba(255,255,255,0.3) inset !important;
  transition: transform .25s, box-shadow .25s;
}
.cart .btn-primary:hover, .btn.checkout-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 32px -8px rgba(40,90,255,0.8), 0 1px 0 rgba(255,255,255,0.35) inset !important;
}
/* faq answer area keeps contrast inside glass card */
.faq-item .faq-answer, .faq-item p { text-shadow: 0 1px 2px rgba(0,0,0,0.6); }
/* summary sticky column stays readable */
.cart .col-lg-4 .p-4 { backdrop-filter: blur(8px); }
.light-mode .cart-item-bg, .light-mode .cart .p-4.border.rounded, .light-mode .faq-item,
.light-mode .cart .alert {
  background: linear-gradient(165deg, rgba(255,255,255,0.95), rgba(244,246,252,0.92)) !important;
  border: 1px solid rgba(30,50,110,0.14) !important;
  box-shadow: 0 14px 28px -18px rgba(30,50,110,0.35), 0 3px 0 rgba(30,50,110,0.06) !important;
}
@media (prefers-reduced-motion: reduce) {
  .cart-item-bg, .cart .p-4.border.rounded, .faq-item, .cart-qty-btn { transition: none !important; transform: none !important; }
}
/* ==== REAL-3D ANIMATED LETTERS (hero + section titles) ==== */
.ax3d-wrap { display: inline-block; position: relative; }
.ax3d-l {
  display: inline-block;
  transform-style: preserve-3d;
  will-change: transform;
  animation: ax3dWave 3.6s ease-in-out infinite;
  animation-delay: calc(var(--i) * 90ms);
}
@keyframes ax3dWave {
  0%, 100% { transform: translateZ(0) rotateX(0) rotateY(0) translateY(0); }
  30% { transform: translateZ(16px) rotateX(12deg) rotateY(-7deg) translateY(-4px); }
  60% { transform: translateZ(6px) rotateX(-6deg) rotateY(5deg) translateY(1px); }
}
.ax3d-wrap { transform-style: preserve-3d; perspective: 560px; }
.hero-title .ax3d-wrap {
  text-shadow:
    0 1px 0 rgba(255,255,255,0.35),
    0 0 22px rgba(255,255,255,0.30),
    0 0 48px rgba(140,170,255,0.25) !important;
}
/* themed floating product chips around the hero */
.ax-orbit {
  position: absolute;
  z-index: 1;
  pointer-events: none;
  width: 52px; height: 52px;
  border-radius: 16px;
  display: flex; align-items: center; justify-content: center;
  background:
    radial-gradient(130% 130% at 30% 15%, rgba(255,255,255,0.25), rgba(255,255,255,0.04) 55%),
    linear-gradient(160deg, rgba(255,255,255,0.14), rgba(255,255,255,0.04));
  border: 1px solid rgba(255,255,255,0.22);
  box-shadow:
    0 1px 0 rgba(255,255,255,0.25) inset,
    0 14px 26px -12px rgba(0,0,0,0.8),
    0 0 24px -6px var(--oc, rgba(100,140,255,0.55));
  animation: axOrbitFloat var(--od, 6s) ease-in-out infinite;
  animation-delay: var(--odel, 0s);
  opacity: 0.9;
}
.ax-orbit svg { width: 30px; height: 30px; }
@keyframes axOrbitFloat {
  0%, 100% { transform: translateY(0) rotate(var(--or, 0deg)); }
  50% { transform: translateY(-12px) rotate(calc(var(--or, 0deg) + 6deg)); }
}
@media (max-width: 768px) {
  .ax-orbit { width: 38px; height: 38px; border-radius: 12px; opacity: 0.55; }
  .ax-orbit svg { width: 22px; height: 22px; }
  .ax3d-l { animation-duration: 4.4s; }
}
@media (prefers-reduced-motion: reduce) {
  .ax3d-l, .ax-orbit { animation: none !important; }
}

/* ==== HERO FIX v4: chips anchor to hero, symmetric spread, bright nav ==== */
.hero { position: relative !important; }
.ax-orbit {
  width: var(--os, 52px);
  height: var(--os, 52px);
  margin-left: calc(var(--os, 52px) / -2);
  margin-top: calc(var(--os, 52px) / -2);
}
@media (max-width: 768px) { .ax-orbit { --os: 38px; } }
.header-nav .nav-link {
  color: rgba(255,255,255,0.92) !important;
  text-shadow: 0 0 12px rgba(255,255,255,0.22);
  transition: color .25s, text-shadow .25s;
}
.header-nav .nav-link:hover {
  color: #ffffff !important;
  text-shadow: 0 0 16px rgba(255,255,255,0.5), 0 0 34px rgba(140,170,255,0.35);
}
.header-logo span {
  color: #ffffff !important;
  font-weight: 800 !important;
  text-shadow: 0 0 14px rgba(255,255,255,0.35), 0 0 32px rgba(140,170,255,0.3);
}
.light-mode .header-nav .nav-link { color: #2a2f3a !important; text-shadow: none; }
.light-mode .header-nav .nav-link:hover { color: #0c0e12 !important; }
.light-mode .header-logo span { color: #16181d !important; text-shadow: none; }

/* ==== WAVE KILL v5: logo + nav solid white, no gradient text-fill ==== */
.header-logo span, .header-logo, .header-nav .nav-link, .header-nav .nav-link:visited {
  background: none !important;
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: currentColor !important;
  color: #ffffff !important;
  text-shadow: 0 0 12px rgba(255,255,255,0.25) !important;
}
.header-nav .nav-link:hover {
  color: #ffffff !important;
  text-shadow: 0 0 16px rgba(255,255,255,0.5), 0 0 34px rgba(140,170,255,0.35) !important;
}
.light-mode .header-logo span, .light-mode .header-logo, .light-mode .header-nav .nav-link {
  color: #16181d !important;
  text-shadow: none !important;
}

/* ==== ORBIT CHIPS v6: circular drift + clickable + tooltip ==== */
.ax-orbit {
  cursor: pointer;
  transition: transform .25s ease, box-shadow .25s ease, filter .25s ease;
  will-change: transform;
  animation: axDrift var(--od, 6.4s) ease-in-out var(--odel, 0s) infinite alternate !important;
}
.ax-orbit:hover {
  transform: scale(1.22) translateZ(30px) !important;
  animation-play-state: paused;
  box-shadow: 0 0 0 3px rgba(255,255,255,0.35), 0 0 28px var(--oc, rgba(140,170,255,0.5)) !important;
  filter: brightness(1.15);
  z-index: 20;
}
.ax-orbit:focus-visible {
  outline: 2px solid rgba(255,255,255,0.7);
  outline-offset: 3px;
}
.ax-orbit .ax-tip {
  position: absolute;
  top: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%) translateY(4px);
  background: rgba(12,14,20,0.92);
  border: 1px solid rgba(255,255,255,0.16);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.06em;
  padding: 5px 10px;
  border-radius: 999px;
  white-space: nowrap;
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease, transform .2s ease;
  z-index: 30;
}
.ax-orbit:hover .ax-tip, .ax-orbit:focus-visible .ax-tip {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}
@keyframes axDrift {
  0%   { translate: 0 0; rotate: var(--or, 0deg); }
  25%  { translate: calc(var(--orb-r, 14px) * 0.7) calc(var(--orb-r, 14px) * -1); }
  50%  { translate: var(--orb-r, 14px) 0; }
  75%  { translate: calc(var(--orb-r, 14px) * 0.7) var(--orb-r, 14px); }
  100% { translate: 0 0; rotate: var(--or, 0deg); }
}
@media (prefers-reduced-motion: reduce) {
  .ax-orbit { animation: none !important; }
}
/* light mode tooltip */
.light-mode .ax-orbit .ax-tip {
  background: rgba(255,255,255,0.95);
  color: #16181d;
  border-color: rgba(0,0,0,0.12);
}

/* ==== ORBIT ANCHOR v7: chips truly absolute inside hero ==== */
.ax-orbit {
  position: absolute !important;
  z-index: 5;
  pointer-events: auto;
}

/* ==== STARFIELD + TILE DRIFT + MENU 3D v8 ==== */
.ax-starfield {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
}
.ax-tile-drift {
  animation: axTileBob var(--tbd, 5s) ease-in-out var(--tbdel, 0s) infinite alternate !important;
  will-change: translate;
}
@keyframes axTileBob {
  0%   { translate: 0 0; rotate: 0deg; }
  100% { translate: 0 -7px; rotate: -1.1deg; }
}
@media (max-width: 640px) {
  @keyframes axTileBob {
    0%   { translate: 0 0; rotate: 0deg; }
    100% { translate: 0 -4px; rotate: -0.6deg; }
  }
}
@media (prefers-reduced-motion: reduce) {
  .ax-tile-drift { animation: none !important; }
}
/* --- menu 3D polish --- */
.header-inner {
  background: linear-gradient(180deg, rgba(10,12,18,0.82) 0%, rgba(10,12,18,0.55) 100%) !important;
  backdrop-filter: blur(14px) saturate(1.3);
  -webkit-backdrop-filter: blur(14px) saturate(1.3);
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.45);
}
.header-nav .nav-link {
  position: relative;
  transition: transform .25s ease, text-shadow .25s ease !important;
}
.header-nav .nav-link::after {
  content: '';
  position: absolute;
  left: 10%;
  right: 10%;
  bottom: -5px;
  height: 2px;
  border-radius: 2px;
  background: linear-gradient(90deg, transparent, #ffffff, transparent);
  box-shadow: 0 0 10px rgba(255,255,255,0.6);
  transform: scaleX(0);
  transform-origin: center;
  transition: transform .28s ease;
}
.header-nav .nav-link:hover {
  transform: translateY(-2px);
  text-shadow: 0 0 18px rgba(255,255,255,0.55), 0 3px 14px rgba(140,170,255,0.35) !important;
}
.header-nav .nav-link:hover::after { transform: scaleX(1); }
.header-logo span {
  transition: transform .25s ease, text-shadow .25s ease;
  display: inline-block;
}
.header-logo:hover span {
  transform: translateY(-1px) scale(1.03);
  text-shadow: 0 0 20px rgba(255,255,255,0.6), 0 0 40px rgba(140,170,255,0.4) !important;
}
.nav-dropdown-panel {
  background: rgba(12,14,20,0.96) !important;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 14px !important;
  box-shadow: 0 18px 48px rgba(0,0,0,0.6), 0 0 0 1px rgba(255,255,255,0.04) inset !important;
  overflow: hidden;
}
.nav-dropdown-panel .dd-item {
  transition: background .2s ease, padding-left .2s ease, color .2s ease;
}
.nav-dropdown-panel .dd-item:hover {
  background: rgba(255,255,255,0.07);
  padding-left: 18px;
  color: #ffffff !important;
}
.light-mode .header-inner {
  background: linear-gradient(180deg, rgba(255,255,255,0.88) 0%, rgba(255,255,255,0.7) 100%) !important;
  border-bottom: 1px solid rgba(0,0,0,0.08) !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.08);
}
.light-mode .nav-dropdown-panel {
  background: rgba(255,255,255,0.97) !important;
  border-color: rgba(0,0,0,0.08) !important;
}
.light-mode .nav-dropdown-panel .dd-item:hover { background: rgba(0,0,0,0.05); }

/* ==== HERO LAYOUT FIX v9: starfield beats .hero > *:not(.ax3d-orb), buttons nowrap ==== */
.hero > .ax-starfield {
  position: absolute !important;
  z-index: 0 !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  flex: 0 0 auto !important;
}
.hero .btn-primary, .hero .btn-secondary { white-space: nowrap; }
@media (max-width: 480px) {
  .hero .btn-primary, .hero .btn-secondary { white-space: normal; }
}

/* ==== FULL-PAGE STARFIELD v10 (fixed canvas, subtle, perf-guarded) ==== */
.ax-universe {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  z-index: 0;
  opacity: 1;
  transition: opacity .6s ease;
}
/* hero canvas becomes redundant when universe is active — hide it */
body.ax-universe-on .hero .ax-starfield { display: none !important; }
/* content sections stay above the universe */
main, section, footer, .flex-wrapper { position: relative; z-index: 1; }
.hero { z-index: 1; }
@media (prefers-reduced-motion: reduce) {
  .ax-universe { display: none; }
  body.ax-universe-on .hero .ax-starfield { display: block !important; }
}

/* ==== UNIVERSE v12: light-mode specks + meteors (canvas-driven) ==== */
.ax-universe { opacity: 1; }

/* ==== MOBILE HEADER LAYOUT v14: logo left, actions right, burger far right ==== */
@media (max-width: 768px) {
  .header-inner {
    display: flex !important;
    align-items: center;
    justify-content: flex-start !important;
    gap: 0 !important;
  }
  .header-logo {
    order: 1;
    margin-right: auto !important;
    flex: 0 1 auto;
    min-width: 0;
  }
  .header-logo span {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 46vw;
  }
  .header-actions {
    order: 2;
    display: flex !important;
    align-items: center;
    gap: 8px !important;
    margin-left: auto !important;
    flex: 0 0 auto;
  }
  .hamburger {
    order: 3 !important;
    margin-left: 12px !important;
    flex: 0 0 auto;
  }
  /* keep header one row tall, no wrap */
  .header-inner { flex-wrap: nowrap !important; }
}
@media (max-width: 430px) {
  /* tight screens: drop the language select (accessible in menu context) and shrink gaps */
  .header-actions .lang-select { display: none !important; }
  .header-actions { gap: 6px !important; }
  .hamburger { margin-left: 10px !important; }
}

/* ==== OVERFLOW GUARD v15b: decorative orbs must not create horizontal scroll ==== */
html, body { overflow-x: hidden !important; }

/* ==== MOBILE UX + CROSS-DEVICE v16 ==== */
/* 1) cross-device normalization: same layout on every phone */
:root { height: auto; }
html, body {
  -webkit-text-size-adjust: 100% !important;
  text-size-adjust: 100% !important;
}
body {
  min-height: 100svh;
  padding-left: env(safe-area-inset-left, 0px);
  padding-right: env(safe-area-inset-right, 0px);
}
.header-inner {
  padding-left: calc(16px + env(safe-area-inset-left, 0px)) !important;
  padding-right: calc(16px + env(safe-area-inset-right, 0px)) !important;
}
.mobile-sticky-cta {
  bottom: calc(0px + env(safe-area-inset-bottom, 0px)) !important;
}
.support-button {
  bottom: calc(86px + env(safe-area-inset-bottom, 0px)) !important;
}

/* 2) hamburger dropdown panel on phones: anchored card under header */
@media (max-width: 768px) {
  .header-nav {
    position: fixed !important;
    top: 64px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    flex-direction: column !important;
    align-items: stretch !important;
    background: rgba(10, 12, 18, 0.97) !important;
    backdrop-filter: blur(20px) saturate(1.3);
    -webkit-backdrop-filter: blur(20px) saturate(1.3);
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    border-radius: 16px !important;
    padding: 10px !important;
    gap: 2px !important;
    box-shadow: 0 24px 64px rgba(0, 0, 0, 0.65), 0 0 0 1px rgba(255,255,255,0.04) inset !important;
    max-height: calc(100svh - 84px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transform-origin: top right;
    transition: opacity .22s ease, transform .22s ease !important;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-8px) scale(0.98);
  }
  .header-nav.ax-open {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
  }
  .header-nav .nav-link, .header-nav .dd-item {
    display: block !important;
    width: 100% !important;
    text-align: left !important;
    padding: 13px 14px !important;
    border-radius: 10px !important;
    font-size: 15px !important;
    white-space: normal !important;
  }
  .header-nav .nav-link::after { display: none !important; }
  .nav-dropdown-panel {
    position: static !important;
    display: block !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 0 0 10px !important;
    max-height: none !important;
  }
  .header-nav .nav-dropdown { display: block !important; }
  .light-mode .header-nav {
    background: rgba(255, 255, 255, 0.97) !important;
    border-color: rgba(0, 0, 0, 0.1) !important;
  }
}

/* 3) products page: filters/search polish on phones */
@media (max-width: 640px) {
  .products-filters, .filters-bar, .shop-filters {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    padding: 10px 12px !important;
  }
  .products-filters select, .filters-bar select,
  .products-filters input, .filters-bar input {
    flex: 1 1 140px !important;
    min-width: 0 !important;
    height: 42px !important;
    font-size: 16px !important; /* >=16px prevents iOS auto-zoom */
    border-radius: 10px !important;
    background: rgba(255, 255, 255, 0.06) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    color: #fff !important;
  }
  .products-grid, .product-grid {
    grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)) !important;
    gap: 12px !important;
  }
}

/* 4) category cards: accent glow borders echoing nebula tints */
.gallery-item { position: relative; }
.gallery-item::before {
  content: '';
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(140deg, var(--ax-glow, rgba(96,120,255,0.55)), transparent 55%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0.75;
  transition: opacity .3s ease;
  pointer-events: none;
  z-index: 1;
}
.gallery-item:hover::before { opacity: 1; }
.gallery-item.c1, .gallery-item[data-cat="streaming"] { --ax-glow: rgba(255,77,94,0.5); }
.gallery-item.c2, .gallery-item[data-cat="musica"] { --ax-glow: rgba(47,217,138,0.5); }
.gallery-item.c3, .gallery-item[data-cat="ia"] { --ax-glow: rgba(155,77,255,0.5); }
.gallery-item.c4, .gallery-item[data-cat="vpn"] { --ax-glow: rgba(34,195,214,0.5); }
.gallery-item.c5, .gallery-item[data-cat="gaming"] { --ax-glow: rgba(255,106,43,0.5); }
.gallery-item.c6, .gallery-item[data-cat="deportes"] { --ax-glow: rgba(255,201,61,0.5); }

/* ==== MOBILE MENU FLOW FIX v16b: links must stack INSIDE the panel ==== */
@media (max-width: 768px) {
  .header-nav .nav-link,
  .header-nav .dd-item,
  .header-nav .nav-dropdown,
  .header-nav .nav-dropdown-panel,
  .header-nav a,
  .header-nav div {
    position: static !important;
    display: block !important;
    width: 100% !important;
    transform: none !important;
  }
  .header-nav .nav-dropdown-panel {
    padding: 0 0 0 10px !important;
  }
}

/* ==== MOBILE MENU TRANSFORM FIX v16c: own the transform, beat theme centering ==== */
@media (max-width: 768px) {
  .header-nav {
    transform: translateY(-8px) scale(0.98) !important;
    left: 12px !important;
    right: 12px !important;
    margin: 0 !important;
  }
  .header-nav.ax-open {
    transform: translateY(0) scale(1) !important;
  }
}

/* ==== MOBILE MENU SIZE FIX v16d: panel height auto, content top-aligned ==== */
@media (max-width: 768px) {
  .header-nav {
    height: auto !important;
    min-height: 0 !important;
    max-height: calc(100svh - 84px) !important;
    justify-content: flex-start !important;
    align-items: stretch !important;
    line-height: 1.4 !important;
  }
}

/* ==== MOBILE MENU CONTAINING-BLOCK FIX v16e ====
   backdrop-filter on .header-inner makes it the containing block for the
   fixed-positioned mobile menu, collapsing it to the 35px header height.
   On phones: solid header bg (no blur) so the menu resolves against viewport. */
@media (max-width: 768px) {
  .header-inner {
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    background: rgba(8, 10, 15, 0.97) !important;
  }
  .light-mode .header-inner {
    background: rgba(255, 255, 255, 0.98) !important;
  }
}

/* ==== VERSION BADGE v17 ==== */
.ax-version {
  text-align: center;
  font-size: 11px;
  letter-spacing: 0.12em;
  opacity: 0.45;
  padding: 10px 0 18px;
  font-family: 'Poppins', sans-serif;
  user-select: none;
}

/* ==== DIAGNOSTICS PANEL v18 ==== */
.ax-diag {
  position: fixed;
  inset: 0;
  background: rgba(5, 6, 10, 0.88);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  cursor: pointer;
}
.ax-diag pre {
  background: rgba(12, 14, 20, 0.95);
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 14px;
  padding: 18px 20px;
  color: #cfe0ff;
  font-family: 'SF Mono', 'Cascadia Code', Consolas, monospace;
  font-size: 12.5px;
  line-height: 1.55;
  max-width: 420px;
  width: 100%;
  overflow-x: auto;
  box-shadow: 0 24px 80px rgba(0, 0, 0, 0.7);
}
.light-mode .ax-diag pre {
  background: rgba(255, 255, 255, 0.97);
  color: #1d3a7a;
  border-color: rgba(0, 0, 0, 0.15);
}

/* ==== DIAGNOSTICS BUTTONS v19 ==== */
.ax-diag .ax-diag-btns {
  display: flex;
  gap: 10px;
  margin-top: 14px;
}
.ax-diag button {
  flex: 1;
  padding: 11px 8px;
  border: none;
  border-radius: 10px;
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease;
}
.ax-diag button:active { transform: scale(0.97); }
.ax-diag .ax-btn-refresh {
  background: linear-gradient(135deg, #2fd98a, #0c9a5a);
  color: #04160c;
  box-shadow: 0 6px 20px rgba(47, 217, 138, 0.35);
}
.ax-diag .ax-btn-copy {
  background: rgba(255, 255, 255, 0.12);
  color: #dfe8ff;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
}
.light-mode .ax-diag .ax-btn-copy { color: #1d3a7a; border-color: rgba(0, 0, 0, 0.2) !important; }
.ax-diag .ax-copied { color: #2fd98a !important; }

/* ===================== v23 product-page mobile polish ===================== */
@media (max-width: 768px) {
  /* breadcrumbs: fixed 110px desktop-header clearance is double-tall on phones
     (section.py-5-nav adds its own 100px on top). 68px clears the 56px bar. */
  .atlas-breadcrumbs { margin: 68px 12px 6px; }
  .product-wrapper .py-5-nav { padding-top: 8px !important; }
  .product-wrapper .display-6 { font-size: 26px; }
  .product-wrapper .thumbnails button { width: 56px; height: 56px; }
}
@media (max-width: 480px) {
  .atlas-breadcrumbs { gap: 6px; }
  .product-wrapper .display-6 { font-size: 23px; }
}
/* =================== end v23 product-page mobile polish =================== */

/* ===================== v24 product-page mobile buy-box reorder ===================== */
/* On phones the description column (~2200px tall) rendered BEFORE the buy box, pushing
   the price + buy button to y~2900 (far below the fold). Flattens the two Bootstrap
   columns with display:contents and reorders: gallery -> buy box -> description tabs. */
@media (max-width: 767.98px) {
  .product-wrapper .py-5-nav .row.gx-4:not(.mt-5) { display: flex; flex-direction: column; }
  .product-wrapper .py-5-nav .row.gx-4:not(.mt-5) > .col-lg-6 { display: contents; }
  .product-wrapper .py-5-nav .row.gx-4:not(.mt-5) #productImageCarousel,
  .product-wrapper .py-5-nav .row.gx-4:not(.mt-5) .product-img-placeholder { order: 1; }
  .product-wrapper .py-5-nav .row.gx-4:not(.mt-5) [x-data="productForm"] { order: 2; margin-top: 14px; }
  .product-wrapper .py-5-nav .row.gx-4:not(.mt-5) [x-data*="activeTab"] { order: 3; margin-top: 18px; }
}
/* =================== end v24 product-page mobile buy-box reorder =================== */

/* ===================== v25 product-page mobile order fix ===================== */
/* v24 flattened the columns (display:contents) but the earlier buybox redesign left
   .pp-buybox at order:-1, so the gallery landed BELOW related products on phones.
   Explicit order for the four real flex items: gallery -> buy box -> related -> tabs. */
@media (max-width: 767.98px) {
  .product-wrapper .py-5-nav .row.gx-4 #productImageCarousel { order: -2 !important; }
  .product-wrapper .py-5-nav .row.gx-4 .pp-buybox { order: -1 !important; }
  .product-wrapper .py-5-nav .row.gx-4 #ppRelated { order: 0 !important; }
  .product-wrapper .py-5-nav .row.gx-4 div[x-data*="activeTab"] { order: 1 !important; }
}
/* =================== end v25 product-page mobile order fix =================== */

/* ===================== v26 cart fix + sticky buy bar ===================== */
/* Cart item: image box was w-100 inside a flex row and the title anchor could not
   shrink (min-width:auto) -> 149px sideways overflow on phones. Small square thumb,
   info column shrinks, title ellipsizes, remove button stays on-screen. */
@media (max-width: 767.98px) {
  .cart .cart-item-bg .aspect-product-card-image { width: 84px !important; min-width: 84px; max-width: 84px; flex: 0 0 84px; }
  .cart .cart-item-bg .flex-grow-1.text-start { min-width: 0; flex: 1 1 auto; }
  .cart .cart-item-bg a.cart-product-link { min-width: 0; max-width: 100%; display: block; }
  .cart .cart-item-bg a.cart-product-link span {
    display: inline-block; max-width: 100%; overflow: hidden;
    text-overflow: ellipsis; white-space: nowrap; vertical-align: bottom;
  }
  .cart .cart-item-bg .d-flex.justify-content-between { min-width: 0; }
}
/* Sticky mobile buy bar: price + Add to Cart, appears after the buy-box CTA scrolls
   out of view. JS adds .ax-show; button delegates the click to the real form button. */
.ax-buybar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 95000;
  display: flex; gap: 10px; align-items: center; justify-content: space-between;
  padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
  background: rgba(10, 12, 20, 0.92); backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  transform: translateY(110%); transition: transform .35s cubic-bezier(.22,1,.36,1);
}
.ax-buybar.ax-show { transform: translateY(0); }
.ax-buybar__price { font-family: 'Fredoka One', cursive; font-size: 20px; color: #ffffff; text-shadow: 0 1px 3px rgba(0,0,0,.4); }
.ax-buybar__btn {
  border: 0; border-radius: 999px; padding: 12px 22px; cursor: pointer;
  background: #ffffff; color: #000000; font-family: 'Poppins', sans-serif;
  font-weight: 700; font-size: 14px; letter-spacing: .5px; transition: transform .15s;
}
.ax-buybar__btn:active { transform: scale(.97); }
.light-mode .ax-buybar { background: rgba(255, 255, 255, 0.95); border-top-color: rgba(0, 0, 0, 0.08); }
.light-mode .ax-buybar__price { color: #000000; text-shadow: none; }
@media (min-width: 768px) { .ax-buybar { display: none !important; } }
/* =================== end v26 cart fix + sticky buy bar =================== */

/* ===================== v28 desktop sticky top bar ===================== */
/* Desktop product pages: compact bar under the header with name + price + ADD TO CART,
   slides in when the buy-box CTA scrolls above the viewport (same trigger as mobile bar). */
.ax-topbar {
  position: fixed; left: 0; right: 0; top: 0; z-index: 94000;
  display: flex; gap: 16px; align-items: center; justify-content: center;
  padding: 10px 20px calc(10px + env(safe-area-inset-top));
  background: rgba(10, 12, 20, 0.92); backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  transform: translateY(-110%); transition: transform .35s cubic-bezier(.22,1,.36,1);
}
.ax-topbar.ax-show { transform: translateY(0); }
.ax-topbar__name { max-width: 420px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: 'Poppins', sans-serif; font-size: 14px; font-weight: 600; color: #ffffff; }
.ax-topbar__price { font-family: 'Fredoka One', cursive; font-size: 18px; color: #ffffff; }
.ax-topbar__btn {
  border: 0; border-radius: 999px; padding: 10px 22px; cursor: pointer;
  background: #ffffff; color: #000000; font-family: 'Poppins', sans-serif;
  font-weight: 700; font-size: 13px; letter-spacing: .5px; transition: transform .15s;
}
.ax-topbar__btn:active { transform: scale(.97); }
.light-mode .ax-topbar { background: rgba(255, 255, 255, 0.95); border-bottom-color: rgba(0, 0, 0, 0.08); }
.light-mode .ax-topbar__name, .light-mode .ax-topbar__price { color: #000000; }
@media (max-width: 767.98px) { .ax-topbar { display: none !important; } }
/* =================== end v28 desktop sticky top bar =================== */

/* ================= v29 related carousel + category accents ================= */
/* A. Related products: snap-scroll carousel with arrows (was a static grid) */
#ppRelated .row.products { display:flex; flex-wrap:nowrap; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:8px; scrollbar-width:none; -ms-overflow-style:none; }
#ppRelated .row.products::-webkit-scrollbar { display:none; }
#ppRelated .row.products > [class*="col-"] { flex:0 0 auto; width:272px; scroll-snap-align:start; }
#ppRelated .row.products.ax-dragging { scroll-snap-type:none; cursor:grabbing; }
@media (min-width: 768px) { #ppRelated .row.products { cursor:grab; } }
.pp-rel-nav { display:flex; gap:8px; margin-top:10px; }
.pp-rel-btn { width:42px; height:42px; border-radius:50%; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.05); color:#fff; font-size:22px; line-height:1; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:all .25s; backdrop-filter:blur(6px); }
.pp-rel-btn:hover { background:rgba(255,255,255,.14); transform:translateY(-2px); box-shadow:0 6px 18px rgba(0,0,0,.35); }
.light-mode .pp-rel-btn { border-color:rgba(0,0,0,.14); background:rgba(0,0,0,.05); color:#000; }
.light-mode .pp-rel-btn:hover { background:rgba(0,0,0,.12); }
/* B. Category accent: glow line on top edge + hover glow tinted by --cat-accent (set by JS) */
.product-card { position:relative; overflow:hidden; }
.product-card::before { content:''; position:absolute; top:0; left:12%; right:12%; height:3px; border-radius:3px; background:linear-gradient(90deg, transparent, var(--cat-accent,#aab6c8), transparent); opacity:.75; z-index:3; pointer-events:none; transition:opacity .3s; }
.product-card:hover::before { opacity:1; }
.product-card:hover { box-shadow: 0 14px 42px -12px var(--cat-accent,#aab6c8), 0 12px 32px rgba(0,0,0,.45); }
/* C. 3D card polish: image zoom + diagonal sheen sweep on hover */
.product-card .product-card__image { overflow:hidden; }
.product-card .product-card__image img { transition:transform .55s cubic-bezier(.22,1,.36,1); }
.product-card:hover .product-card__image img { transform:scale(1.07) rotate(-1deg); }
/* v212: legacy v47 shine-sweep removed — its 50%x100% ::after box was colliding with the v74 quick-view pill (the "giant blob" bug) */

/* ================= end v29 related carousel + category accents ================= */

/* ================= v30 aurora + listing carousels + quick-view ================= */
/* A. Aurora wash (rayze-style soft color depth) behind the starfield */
.ax-aurora { position:fixed; inset:0; z-index:0; pointer-events:none;
  background:
    radial-gradient(600px 420px at 12% 8%, rgba(124,92,255,0.10), transparent 70%),
    radial-gradient(700px 500px at 88% 20%, rgba(64,140,255,0.09), transparent 70%),
    radial-gradient(640px 480px at 78% 88%, rgba(255,80,160,0.06), transparent 70%),
    radial-gradient(560px 420px at 18% 78%, rgba(64,255,190,0.05), transparent 70%);
  animation: axAurora 26s ease-in-out infinite alternate; }
@keyframes axAurora { from { transform:translate3d(0,0,0) scale(1); } to { transform:translate3d(0,-2.5%,0) scale(1.06); } }
.light-mode .ax-aurora { opacity:.5; }
@media (prefers-reduced-motion: reduce) { .ax-aurora { animation:none; } }
/* B. Listing rows become carousels (same mechanics as #ppRelated) */
.ax-caro { display:flex; flex-wrap:nowrap; overflow-x:auto; scroll-snap-type:x mandatory; padding-bottom:8px; scrollbar-width:none; -ms-overflow-style:none; }
.ax-caro::-webkit-scrollbar { display:none; }
.ax-caro > [class*="col-"] { flex:0 0 auto; width:272px; scroll-snap-align:start; }
@media (max-width:430px) { .ax-caro > [class*="col-"] { width:236px; } }
.ax-caro { cursor:grab; }
.ax-caro.ax-dragging { scroll-snap-type:none; cursor:grabbing; }
/* C. Page-wide accent: buy box + gallery carry the category accent */
.pp-buybox, #productImageCarousel, .product-wrapper .py-5-nav { --cat-accent:#aab6c8; --cat-accent-soft:rgba(170,182,200,0.15); }
.pp-buybox { position:relative; border:1px solid var(--cat-accent-soft); box-shadow:0 0 34px -12px var(--cat-accent-soft), 0 14px 40px rgba(0,0,0,.35); }
.pp-buybox::before { content:''; position:absolute; top:-1px; left:10%; right:10%; height:3px; border-radius:3px;
  background:linear-gradient(90deg, transparent, var(--cat-accent), transparent); opacity:.9; pointer-events:none; }
#productImageCarousel .carousel-item img, #productImageCarousel .product-image-main { border-radius:14px; }
#productImageCarousel { position:relative; }
#productImageCarousel::before { content:''; position:absolute; top:0; left:8%; right:8%; height:3px; border-radius:3px; z-index:5;
  background:linear-gradient(90deg, transparent, var(--cat-accent), transparent); opacity:.85; pointer-events:none; }
#productImageCarousel::after { content:''; position:absolute; inset:0; border-radius:14px; pointer-events:none; z-index:4;
  box-shadow:inset 0 0 42px -18px var(--cat-accent-soft), inset 0 0 0 1px var(--cat-accent-soft); }
.product-wrapper .py-5-nav .carousel-indicators [data-bs-target] { background-color:var(--cat-accent); }
/* D. Card borders (nivex-style crisp edge, accent on hover) */
a.product-card { border:1px solid rgba(255,255,255,0.09); }
a.product-card:hover { border-color:var(--cat-accent,#aab6c8); }
.light-mode a.product-card { border-color:rgba(0,0,0,0.10); }
/* E. Quick-view modal */
.ax-qv-ov { position:fixed; inset:0; z-index:100000; background:rgba(3,5,12,0.72); backdrop-filter:blur(8px);
  display:flex; align-items:center; justify-content:center; opacity:0; pointer-events:none; transition:opacity .25s; padding:18px; }
.ax-qv-ov.ax-open { opacity:1; pointer-events:auto; }
.ax-qv { width:min(560px, 94vw); max-height:86vh; overflow:auto; border-radius:20px; position:relative;
  background:linear-gradient(160deg, rgba(22,26,40,0.97), rgba(12,15,26,0.97));
  border:1px solid rgba(255,255,255,0.12); box-shadow:0 30px 90px rgba(0,0,0,.6), 0 0 60px -20px var(--cat-accent,rgba(170,182,200,.4));
  transform:translateY(14px) scale(.97); transition:transform .28s cubic-bezier(.22,1,.36,1); }
.ax-qv-ov.ax-open .ax-qv { transform:translateY(0) scale(1); }
.light-mode .ax-qv { background:linear-gradient(160deg, #ffffff, #f2f4f9); border-color:rgba(0,0,0,0.12); }
.ax-qv-img { width:100%; height:210px; object-fit:cover; display:block; border-radius:20px 20px 0 0; background:rgba(255,255,255,0.03); }
.ax-qv-body { padding:18px 22px 22px; }
.ax-qv-title { font-size:19px; font-weight:700; color:#fff; margin:0 0 6px; line-height:1.3; }
.light-mode .ax-qv-title { color:#000; }
.ax-qv-price { font-size:22px; font-weight:800; color:var(--cat-accent,#aab6c8); margin:2px 0 4px; }
.ax-qv-stock { display:inline-block; font-size:12px; font-weight:700; letter-spacing:.5px; text-transform:uppercase;
  padding:4px 10px; border-radius:20px; margin-bottom:10px; }
.ax-qv-stock.in { background:rgba(60,220,130,0.14); color:#4ade80; }
.ax-qv-stock.out { background:rgba(255,90,90,0.14); color:#f87171; }
.ax-qv-desc { font-size:13px; color:rgba(255,255,255,0.66); line-height:1.55; margin:6px 0 14px;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
.light-mode .ax-qv-desc { color:rgba(0,0,0,0.6); }
.ax-qv-buy { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; border:none; cursor:pointer;
  font-weight:700; font-size:14px; letter-spacing:1px; text-transform:uppercase; color:#04121f;
  padding:13px 20px; border-radius:40px; text-decoration:none;
  background:linear-gradient(135deg, #ffffff, #cfe4ff); box-shadow:0 8px 26px -8px var(--cat-accent,rgba(170,182,200,.5)); transition:transform .2s, box-shadow .2s; }
.ax-qv-buy:hover { transform:translateY(-2px); box-shadow:0 12px 34px -8px var(--cat-accent,rgba(170,182,200,.6)); color:#04121f; text-decoration:none; }
.ax-qv-x { position:absolute; top:10px; right:10px; width:34px; height:34px; border-radius:50%; border:1px solid rgba(255,255,255,0.18);
  background:rgba(10,12,20,0.65); color:#fff; font-size:17px; cursor:pointer; z-index:2; line-height:1; backdrop-filter:blur(4px); }
.ax-qv-x:hover { background:rgba(255,255,255,0.16); }
.light-mode .ax-qv-x { background:rgba(0,0,0,0.5); }
/* F. Quick-view trigger on cards */
.ax-qv-btn { position:absolute; top:10px; right:10px; width:36px; height:36px; border-radius:50%; z-index:6;
  border:1px solid rgba(255,255,255,0.2); background:rgba(8,10,18,0.62); color:#fff; font-size:16px; line-height:1;
  cursor:pointer; opacity:0; transition:opacity .25s, transform .2s; backdrop-filter:blur(4px); display:flex; align-items:center; justify-content:center; }
.ax-qv-btn:hover { transform:scale(1.1); background:rgba(255,255,255,0.18); }
a.product-card:hover .ax-qv-btn { opacity:1; }
@media (hover: none) { .ax-qv-btn { opacity:1; width:34px; height:34px; } }
/* ================= end v30 ================= */

/* ================= v34 home accent cards + category chips ================= */
/* A. Accent treatment for homepage cards (--card-accent set by JS) */
.step-card, .trust-card, .review-card { position:relative; overflow:hidden; border:1px solid var(--card-accent-soft, rgba(170,182,200,0.14)) !important; }
.step-card::before, .trust-card::before, .review-card::before { content:''; position:absolute; top:0; left:14%; right:14%; height:3px; border-radius:3px;
  background:linear-gradient(90deg, transparent, var(--card-accent, #aab6c8), transparent); opacity:.75; pointer-events:none; transition:opacity .3s; z-index:2; }
.step-card:hover::before, .trust-card:hover::before, .review-card:hover::before { opacity:1; }
.step-card:hover, .trust-card:hover, .review-card:hover { border-color:var(--card-accent-soft2, rgba(170,182,200,0.35)) !important;
  box-shadow:0 12px 36px -14px var(--card-accent-soft2, rgba(170,182,200,0.45)) !important; }
.light-mode .step-card, .light-mode .trust-card, .light-mode .review-card { border-color:rgba(0,0,0,0.08) !important; }
/* B. Compare plans table: per-column accent (Netflix/Spotify/AI/VPN order) */
.compare-table thead th:nth-child(2) { border-bottom:2px solid #7db4ff; }
.compare-table thead th:nth-child(3) { border-bottom:2px solid #7dffb2; }
.compare-table thead th:nth-child(4) { border-bottom:2px solid #c39bff; }
.compare-table thead th:nth-child(5) { border-bottom:2px solid #6fd6ff; }
.compare-table tbody td:first-child { color:rgba(255,255,255,0.55); }
/* C. Category filter chips (products page) */
.ax-chips { display:flex; gap:8px; flex-wrap:wrap; align-items:center; margin:2px 0 18px; }
.ax-chip { padding:9px 18px; border-radius:40px; border:1px solid rgba(255,255,255,0.12); background:rgba(255,255,255,0.04);
  color:rgba(255,255,255,0.82); font-size:13px; font-weight:600; letter-spacing:.4px; cursor:pointer; transition:all .25s;
  display:inline-flex; align-items:center; gap:7px; backdrop-filter:blur(6px); font-family:inherit; }
.ax-chip .ax-chip-dot { width:8px; height:8px; border-radius:50%; background:var(--chip-accent, #aab6c8); box-shadow:0 0 8px var(--chip-accent, #aab6c8); flex:none; }
.ax-chip .ax-chip-n { opacity:.55; font-weight:500; }
.ax-chip:hover { background:rgba(255,255,255,0.1); transform:translateY(-1px); }
.ax-chip.ax-active { background:linear-gradient(135deg, rgba(255,255,255,0.16), rgba(255,255,255,0.06)); border-color:var(--chip-accent, #aab6c8); color:#fff;
  box-shadow:0 0 18px -6px var(--chip-accent, #aab6c8); }
.light-mode .ax-chip { border-color:rgba(0,0,0,0.12); background:rgba(0,0,0,0.03); color:rgba(0,0,0,0.72); }
.light-mode .ax-chip.ax-active { background:rgba(0,0,0,0.08); color:#000; }
.ax-card-flash { animation:axFlash 1.5s ease; }
@keyframes axFlash { 0%,55% { box-shadow:0 0 0 2px var(--cat-accent, #aab6c8), 0 0 34px -6px var(--cat-accent, #aab6c8) !important; } 100% { box-shadow:none; } }
/* ================= end v34 ================= */

/* v35: native category chips enhanced */
.ax-cat-chip { display:inline-flex; align-items:center; gap:7px; }
/* end v35 */

/* ================= v36 menu chips + pulses + cart accents ================= */
/* A. Mobile menu category chips */
.ax-mchips { display:flex; gap:8px; overflow-x:auto; padding:10px 4px 14px; scrollbar-width:none; -ms-overflow-style:none; }
.ax-mchips::-webkit-scrollbar { display:none; }
.ax-mchip { flex:0 0 auto; display:inline-flex; align-items:center; gap:7px; padding:9px 16px; border-radius:40px;
  border:1px solid rgba(255,255,255,0.12); background:rgba(255,255,255,0.04); color:rgba(255,255,255,0.85);
  font-size:13px; font-weight:600; text-decoration:none; backdrop-filter:blur(6px); transition:all .25s; }
.ax-mchip .ax-chip-dot { width:8px; height:8px; border-radius:50%; background:var(--chip-accent,#aab6c8); box-shadow:0 0 8px var(--chip-accent,#aab6c8); flex:none; }
.ax-mchip:hover { background:rgba(255,255,255,0.1); }
.ax-mchip.ax-cur { border-color:var(--chip-accent,#aab6c8); color:#fff; box-shadow:0 0 16px -6px var(--chip-accent,#aab6c8); }
.light-mode .ax-mchip { border-color:rgba(0,0,0,0.12); background:rgba(0,0,0,0.03); color:rgba(0,0,0,0.75); }
/* B. Scroll-triggered glow pulse */
.ax-pulse { animation:axPulse 1.6s ease; }
@keyframes axPulse { 0% { box-shadow:0 0 0 0 transparent; } 45% { box-shadow:0 12px 38px -10px var(--card-accent-soft2, var(--cat-accent, rgba(170,182,200,0.45))) !important; } 100% { box-shadow:0 0 0 0 transparent; } }
@media (prefers-reduced-motion: reduce) { .ax-pulse { animation:none !important; } }
/* C. Cart page accents */
.cart-item-bg { border-left:3px solid var(--cat-accent, transparent) !important; transition:border-color .3s, box-shadow .3s; }
.cart-item-bg:hover { box-shadow:0 6px 22px -10px var(--cat-accent, rgba(170,182,200,0.5)) !important; }
.ax-cart-summary { position:relative; border-color:rgba(255,255,255,0.14) !important; overflow:hidden; }
.ax-cart-summary::before { content:''; position:absolute; top:0; left:10%; right:10%; height:3px; border-radius:3px;
  background:linear-gradient(90deg, transparent, #7dffb2, transparent); opacity:.9; pointer-events:none; }
.ax-cart-summary .btn-outline-primary { background:linear-gradient(135deg, #ffffff, #d3ffe8) !important; color:#04180d !important;
  border:none !important; font-weight:700 !important; text-transform:uppercase; letter-spacing:1px; border-radius:40px !important;
  padding:13px 20px !important; box-shadow:0 8px 26px -8px rgba(125,255,178,0.5); transition:transform .2s, box-shadow .2s; }
.ax-cart-summary .btn-outline-primary:hover { transform:translateY(-2px); box-shadow:0 12px 34px -8px rgba(125,255,178,0.65); }
.light-mode .ax-cart-summary::before { background:linear-gradient(90deg, transparent, #0c9a58, transparent); }
/* D. Checkout page panels (JS-tagged) */
.ax-co-accent { border-color:rgba(255,255,255,0.14) !important; }
.ax-co-accent::before { content:''; display:block; height:3px; margin:-1px -1px 12px; border-radius:3px;
  background:linear-gradient(90deg, transparent, var(--cat-accent, #7db4ff), transparent); opacity:.85; }
.ax-co-pay { background:linear-gradient(135deg, #ffffff, #d6e6ff) !important; color:#04121f !important; border:none !important;
  font-weight:700 !important; border-radius:40px !important; box-shadow:0 8px 26px -8px rgba(125,180,255,0.5) !important; transition:transform .2s; }
.ax-co-pay:hover { transform:translateY(-2px); }
/* ================= end v36 ================= */

/* v38: menu chips horizontal row (beats theme stacked-link rules) */
.ax-mchips { display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important; max-width:100%; }
.ax-mchips .ax-mchip { display:inline-flex !important; width:auto !important; max-width:none !important; flex:0 0 auto !important; text-align:center; }
/* end v38 */

/* v39: ID-prefixed menu chip rules (win the specificity war) */
#headerNav .ax-mchips { display:flex !important; flex-direction:row !important; flex-wrap:nowrap !important; overflow-x:auto !important; gap:8px !important; }
#headerNav .ax-mchips .ax-mchip { display:inline-flex !important; width:auto !important; max-width:none !important; flex:0 0 auto !important; }
/* end v39 */

/* v40: category chips single scroll row (no wrap) */
.ax-cats { display:flex !important; flex-wrap:nowrap !important; overflow-x:auto !important; scrollbar-width:none; -ms-overflow-style:none; }
.ax-cats::-webkit-scrollbar { display:none; }
.ax-cats .ax-cat-chip { flex:0 0 auto !important; }
/* end v40 */

/* ================= v41 checkout entry modal accents ================= */
/* The /checkout route itself serves no theme assets (SellAuth app + Stripe iframe);
   this styles the checkout ENTRY modal on the cart page - the last themeable step. */
.modal-content { position:relative; overflow:hidden; border-radius:20px !important;
  background:linear-gradient(165deg, rgba(24,28,42,0.98), rgba(13,16,28,0.98)) !important;
  border:1px solid rgba(255,255,255,0.12) !important; box-shadow:0 30px 90px rgba(0,0,0,.6), 0 0 60px -22px rgba(125,255,178,0.45) !important; }
.modal-content::before { content:''; position:absolute; top:0; left:10%; right:10%; height:3px; border-radius:3px;
  background:linear-gradient(90deg, transparent, #7dffb2, transparent); opacity:.9; pointer-events:none; }
.modal-backdrop.show { opacity:.75; backdrop-filter:blur(6px); }
.modal-content .modal-title, .modal-content h5, .modal-content h4 { color:#fff !important; font-weight:700 !important; }
.modal-content p, .modal-content label, .modal-content .form-text { color:rgba(255,255,255,0.72) !important; }
.modal-content .form-control, .modal-content input { background:rgba(255,255,255,0.05) !important; color:#fff !important;
  border:1px solid rgba(255,255,255,0.14) !important; border-radius:12px !important; padding:12px 14px !important; font-size:15px !important; transition:border-color .25s, box-shadow .25s; }
.modal-content .form-control:focus, .modal-content input:focus { border-color:#7dffb2 !important; box-shadow:0 0 0 3px rgba(125,255,178,0.15) !important; outline:none !important; background:rgba(255,255,255,0.07) !important; }
.modal-content .form-control::placeholder { color:rgba(255,255,255,0.35) !important; }
.modal-content .btn-primary, .modal-content button[type="submit"] { background:linear-gradient(135deg, #ffffff, #d3ffe8) !important; color:#04180d !important;
  border:none !important; font-weight:700 !important; letter-spacing:.5px; border-radius:40px !important; padding:12px 22px !important;
  box-shadow:0 8px 26px -8px rgba(125,255,178,0.55) !important; transition:transform .2s, box-shadow .2s !important; }
.modal-content .btn-primary:hover, .modal-content button[type="submit"]:hover { transform:translateY(-2px) !important; box-shadow:0 12px 34px -8px rgba(125,255,178,0.7) !important; }
.modal-content .btn-close { filter:invert(1); }
/* trust badge row (injected by JS) */
.ax-paytrust { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-top:14px; padding-top:12px; border-top:1px solid rgba(255,255,255,0.08); }
.ax-paytrust span { display:inline-flex; align-items:center; gap:5px; font-size:12px; font-weight:600; color:rgba(255,255,255,0.55); letter-spacing:.3px; }
.ax-paytrust span::before { content:''; width:6px; height:6px; border-radius:50%; background:var(--tw, #7dffb2); box-shadow:0 0 6px var(--tw, #7dffb2); }
.light-mode .modal-content { background:linear-gradient(165deg, #ffffff, #f1f4f9) !important; border-color:rgba(0,0,0,0.12) !important; }
.light-mode .modal-content .modal-title, .light-mode .modal-content h5, .light-mode .modal-content h4 { color:#000 !important; }
.light-mode .modal-content p, .light-mode .modal-content label { color:rgba(0,0,0,0.65) !important; }
.light-mode .modal-content .form-control, .light-mode .modal-content input { background:rgba(0,0,0,0.03) !important; color:#000 !important; border-color:rgba(0,0,0,0.16) !important; }
.light-mode .modal-content .form-control::placeholder { color:rgba(0,0,0,0.35) !important; }
.light-mode .modal-content .btn-primary, .light-mode .modal-content button[type="submit"] { background:linear-gradient(135deg, #0c9a58, #0a7a46) !important; color:#fff !important; }
.light-mode .ax-paytrust span { color:rgba(0,0,0,0.5); }
.light-mode .ax-paytrust { border-top-color:rgba(0,0,0,0.08); }
/* ================= end v41 ================= */

/* ================= v42 edge fades + swipe hints ================= */
/* Scrollability affordance: gradient fade on left/right edges of horizontal
   scroll containers, shown only when there is content in that direction. */
.ax-efade { position: relative; }
.ax-efade::before, .ax-efade::after { content:''; position:absolute; top:0; bottom:0; width:26px;
  pointer-events:none; z-index:6; opacity:0; transition:opacity .35s ease; border-radius:inherit; }
.ax-efade::before { left:0; background:linear-gradient(90deg, rgba(8,10,16,0.92) 20%, rgba(8,10,16,0)); }
.ax-efade::after  { right:0; background:linear-gradient(270deg, rgba(8,10,16,0.92) 20%, rgba(8,10,16,0)); }
.ax-efade.ax-fade-l::before { opacity:1; }
.ax-efade.ax-fade-r::after  { opacity:1; }
.light-mode .ax-efade::before { background:linear-gradient(90deg, rgba(255,255,255,0.95) 20%, rgba(255,255,255,0)); }
.light-mode .ax-efade::after  { background:linear-gradient(270deg, rgba(255,255,255,0.95) 20%, rgba(255,255,255,0)); }
/* keep the fade above card content but under nothing else; chips keep their own stacking */
.ax-efade { --ax-fade-w: 26px; }
@media (max-width: 575.98px) { .ax-efade::before, .ax-efade::after { width:20px; } }
/* ================= end v42 ================= */

/* ================= v43 real light-mode fix ================= */
/* Root cause: .light-mode is toggled on BODY, but the dark background lives on
   the descendant wrapper .atlas-page. The old compound selector
   .light-mode.atlas-page could never match. Descendant selectors fix it. */
body.light-mode .atlas-page,
.light-mode .atlas-page { background: #f4f6fb !important; }
body.light-mode .atlas-page,
.light-mode .atlas-page { color: #16181d; }
/* any other dark full-bleed wrappers/sections */
body.light-mode main, .light-mode main { background: transparent; }
/* product/gallery glass surfaces stay readable on white */
body.light-mode .pp-gallery, .light-mode .pp-gallery { background: rgba(255,255,255,0.9); }
/* ================= end v43 ================= */

/* ==== v43 FA subset: inline the single used FA glyph, block the 153KB font ==== */
@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url(data:font/woff2;base64,d09GMgABAAAAAAHsAAoAAAAABCQAAAGjAwUFAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAANMqBIAE2AiQDCMsGBCAFgxgHIBtzAyCuCngytIshdCKUT50wJl5KRRrhjNmPh6+5fH83uRIrHg8oWTHpzhldcqhkhT1XMq7Ck8vQOk8lfYI8KBRVCI0tD6KdfmGmnmTSF/MlLPNk1QhgoMCqdj4Ne8EHb2oiF694iuk5l5pwfe8TRVAaZoGFmHqTGEFezfaeLihSzvdKYjvqgLX5rR/Vj6QlA9ANAFg9O9rx+t/+346vCvFlCxAQq/GKMQAJGf2wQD9iDFAoBP/bVYXHAgFKquNIsx4UTgHEwFZjs3Tk05bBQ0PnBB6A6Jtm2LIecgHWOReLjIl3ub6GG9fXYDAliZY0WSHFP7SJK6sVtBL/PYJclhbOO+h3LTzaEvjmzfFktZIe4gvNEgg+S0/XBuiOEO+nuCYagH0QKV4MAAiEAABNLmFRtGAeoEyY5TNJqzqTLTn0CxtTuvL/bzXj0evq9g6eTpbmFi5osjEFrWVv54JWdTd1trc1lUJamEicTE2P2vY2liak7fS/agiZAiZXz9TJ2dLeDi0S8ZhsjkTA43AFaHKx4e2idYouoiipZVDD57GN8VgAAAAA) format('woff2');
}
.fa, .fas, .fa-solid { font-weight: 900 !important; }
/* neutralize the FA CSS's own font fetch: point all its sources at our data URI (cached) */
@font-face {
  font-family: 'Font Awesome 6 Brands';
  font-style: normal; font-weight: 400; font-display: block;
  src: url(data:font/woff2;base64,) format('woff2');
}
/* ==== end v43 FA subset ==== */

/* ================= v46: Lusive-style restyle ================= */
:root {
  --ax-lu-bg: #0B1320;
  --ax-lu-card: #0C1430;
  --ax-lu-card2: #101A3C;
  --ax-lu-border: rgba(130,160,255,0.12);
  --ax-lu-blue: #3B82F6;
}
/* deep navy canvas (dark mode only) */
html:not(.light-mode) body, html:not(.light-mode) .atlas-page { background: #0B1320 !important; }
html:not(.light-mode) body { color: #E8ECF8; }
/* flat navy cards, 12px radius, subtle blue border - no glass, no gradients */
html:not(.light-mode) .card, html:not(.light-mode) .step-card, html:not(.light-mode) .trust-card,
html:not(.light-mode) .review-card, html:not(.light-mode) .faq-item, html:not(.light-mode) .policy-card,
html:not(.light-mode) .cart-item-bg, html:not(.light-mode) .product-card,
html:not(.light-mode) .component .card {
  background: #0C1430 !important;
  border: 1px solid rgba(130,160,255,0.12) !important;
  border-radius: 12px !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html:not(.light-mode) .card:hover, html:not(.light-mode) .step-card:hover, html:not(.light-mode) .review-card:hover,
html:not(.light-mode) .trust-card:hover, html:not(.light-mode) .product-card:hover {
  border-color: rgba(59,130,246,0.45) !important;
  box-shadow: 0 6px 24px rgba(0,60,160,0.18) !important;
}
/* clean white titles - kill the gray wave gradient everywhere (dark mode) */
html:not(.light-mode) .header-logo span, html:not(.light-mode) .section-title,
html:not(.light-mode) .step-card h3, html:not(.light-mode) .faq-item h3, html:not(.light-mode) .cta-title,
html:not(.light-mode) .card-title, html:not(.light-mode) .hero-title, html:not(.light-mode) .text-cyan,
html:not(.light-mode) .text-pink, html:not(.light-mode) .stat-number, html:not(.light-mode) .policy-price,
html:not(.light-mode) .products-hero-title, html:not(.light-mode) .card-price {
  background: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  -webkit-text-fill-color: #FFFFFF !important;
  color: #FFFFFF !important;
  animation: none !important;
  text-shadow: none !important;
}
html:not(.light-mode) .hero-subtitle { background: none !important; -webkit-text-fill-color: #8FA3C8 !important; color: #8FA3C8 !important; text-shadow: none !important; }
/* Lusive blue prices */
html:not(.light-mode) .card-price, html:not(.light-mode) .policy-price { color: #3B82F6 !important; -webkit-text-fill-color: #3B82F6 !important; }
/* blue CTA buttons */
html:not(.light-mode) .btn-primary, html:not(.light-mode) .component .btn-primary {
  background: #3B82F6 !important; border-color: #3B82F6 !important; color: #FFFFFF !important;
  border-radius: 10px !important; box-shadow: none !important;
  background-image: none !important;
}
html:not(.light-mode) .btn-primary:hover, html:not(.light-mode) .component .btn-primary:hover { background: #1E96FF !important; border-color: #1E96FF !important; }
html:not(.light-mode) .btn-outline-primary { color: #3B82F6 !important; border-color: rgba(59,130,246,0.6) !important; border-radius: 10px !important; background: transparent !important; }
/* hero: kill the gray floating box */
.ax3d-hero { background: transparent !important; border: none !important; box-shadow: none !important; backdrop-filter: none !important; }
.bg-gradient-gray { display: none !important; }
/* products chips: single scrollable row that can never clip at the left edge */
.ax-cats { flex-wrap: nowrap !important; justify-content: safe center !important; overflow-x: auto !important; scrollbar-width: none; -ms-overflow-style: none; }
.ax-cats::-webkit-scrollbar { display: none; }
.ax-cat-chip { background: #0C1430; border-color: rgba(130,160,255,0.16); color: #C7D2F0; }
.ax-cat-chip:hover { border-color: rgba(59,130,246,0.55); color: #FFFFFF; }
.ax-cat-chip.active { background: #3B82F6; border-color: #3B82F6; color: #FFFFFF; }
/* desktop header: hide the chip row (nav links only, Lusive-clean) */
@media (min-width: 992px) { .ax-mchips { display: none !important; } }
/* header: navy glassless bar */
html:not(.light-mode) .header-nav { background: rgba(7,13,34,0.88) !important; border-bottom: 1px solid rgba(130,160,255,0.10) !important; backdrop-filter: none !important; }
html:not(.light-mode) .nav-link { color: #C7D2F0 !important; -webkit-text-fill-color: #C7D2F0 !important; background: none !important; }
html:not(.light-mode) .nav-link:hover, html:not(.light-mode) .nav-link.active { color: #FFFFFF !important; -webkit-text-fill-color: #FFFFFF !important; }
/* ================= end v46 ================= */

/* ================= v47: Lusive products page ================= */
/* --- hero: centered, eyebrow in blue like Lusive --- */
.products-hero { background: transparent !important; text-align: center; }
html:not(.light-mode) .products-hero .section-badge {
  background: none !important; border: none !important; box-shadow: none !important;
  color: #3B82F6 !important; -webkit-text-fill-color: #3B82F6 !important;
  font-size: 15px !important; letter-spacing: 0; padding: 0 !important;
}
html:not(.light-mode) .products-hero-desc { color: #8FA3C8 !important; -webkit-text-fill-color: #8FA3C8 !important; }
/* --- category pills: Lusive style (round, 5% white, no dots, no counts) --- */
.ax-cats { flex-wrap: wrap !important; justify-content: center !important; gap: 10px !important; overflow: visible !important; }
.ax-cat-chip { padding: 6px 24px !important; border-radius: 9999px !important; font-size: 16px !important; font-weight: 400 !important; letter-spacing: 0 !important; }
.ax-cat-chip .ax-chip-dot, .ax-cat-chip .ax-chip-n { display: none !important; }
html:not(.light-mode) .ax-cat-chip { background: rgba(255,255,255,0.05) !important; border: none !important; color: #F4F4F5 !important; }
html:not(.light-mode) .ax-cat-chip:hover { background: rgba(255,255,255,0.10) !important; color: #FFFFFF !important; }
html:not(.light-mode) .ax-cat-chip.active { background: #3B82F6 !important; color: #FFFFFF !important; }
/* --- search: Lusive style --- */
html:not(.light-mode) .ax-search { background: rgba(255,255,255,0.05) !important; border: 1px solid rgba(255,255,255,0.1) !important; border-radius: 8px !important; }
html:not(.light-mode) .ax-search-input { color: #FFFFFF !important; }
/* --- products grid: static Lusive grid, no carousel on desktop --- */
@media (min-width: 992px) {
  .ax-prod-grid.ax-caro { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 28px !important; overflow: visible !important; scroll-snap-type: none !important; cursor: default !important; }
  .ax-prod-grid.ax-caro > .col-12 { width: auto !important; flex: none !important; max-width: none !important; }
  /* hide carousel arrows + edge fades on the static grid */
  .ax-prod-grid .pp-rel-btn { display: none !important; }
  .ax-prod-grid.ax-efade::before, .ax-prod-grid.ax-efade::after { display: none !important; }
}
@media (max-width: 991.98px) {
  .ax-prod-grid.ax-caro { display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 16px !important; overflow: visible !important; scroll-snap-type: none !important; }
  .ax-prod-grid.ax-caro > .col-12 { width: auto !important; flex: none !important; max-width: none !important; }
  .ax-prod-grid .pp-rel-btn { display: none !important; }
  .ax-prod-grid.ax-efade::before, .ax-prod-grid.ax-efade::after { display: none !important; }
}
@media (max-width: 575.98px) {
  .ax-prod-grid.ax-caro { grid-template-columns: 1fr !important; }
}
/* --- cards: Lusive flat navy, image-forward, NO button --- */
html:not(.light-mode) .ax-prod-grid .product-card {
  background: #0C1430 !important; border: 1px solid rgba(130,160,255,0.12) !important;
  border-radius: 14px !important; box-shadow: none !important; backdrop-filter: none !important;
  transition: border-color .2s ease, box-shadow .2s ease !important;
}
html:not(.light-mode) .ax-prod-grid .product-card:hover {
  border-color: rgba(59,130,246,0.5) !important; box-shadow: 0 8px 28px rgba(0,60,160,0.20) !important;
  background: #0C1430 !important;
}
/* kill tilt/glare layers inside cards */
.ax-prod-grid .product-card .tilt-glow { display: none !important; }
/* image area taller + cover like Lusive */
.ax-prod-grid .product-card .product-card__image { aspect-ratio: 16 / 11 !important; }
.ax-prod-grid .product-card .product-card__image img { transform: none !important; transition: none !important; }
.ax-prod-grid .product-card:hover .product-card__image img { transform: none !important; }
/* body spacing + white title (Lusive) */
html:not(.light-mode) .ax-prod-grid .product-card .product-card__body { padding: 20px 22px 22px !important; gap: 8px !important; }
html:not(.light-mode) .ax-prod-grid .product-card .product-card__title { color: #FFFFFF !important; -webkit-text-fill-color: #FFFFFF !important; background: none !important; font-size: 17px !important; font-weight: 700 !important; }
/* blue price (Lusive), no gradient */
html:not(.light-mode) .ax-prod-grid .product-card .product-card__price-value {
  color: #3B82F6 !important; -webkit-text-fill-color: #3B82F6 !important; background: none !important;
  font-size: 20px !important; font-weight: 800 !important;
}
/* hide the Buy-Now action row entirely (Lusive cards have no buttons) */
.ax-prod-grid .product-card .product-card__action { display: none !important; }
/* hide quick-view eye (no buttons at all on Lusive cards) */
.ax-prod-grid .ax-qv-btn { display: none !important; }
/* ================= end v47 ================= */

/* v47b: hero + pills centering polish */
.products-hero .ax-logo3d, .products-hero .section-badge, .products-hero .section-title,
.products-hero .products-hero-title, .products-hero .products-hero-desc {
  margin-left: auto !important; margin-right: auto !important; text-align: center !important;
}
.products-hero { align-items: center !important; }
.ax-cats { max-width: 900px; margin-left: auto; margin-right: auto; }
.ax-search { max-width: 900px; margin-left: auto; margin-right: auto; }

/* ================= v48: Lusive home hero + old-theme purge ================= */
/* --- HOME HERO: Lusive style - left aligned, blue accent line, small subtitle --- */
html:not(.light-mode) .hero { text-align: left !important; }
html:not(.light-mode) .hero .hero-content { max-width: 640px !important; margin: 0 !important; }
html:not(.light-mode) .hero .hero-badge {
  background: none !important; border: none !important; padding: 0 !important;
  color: #3B82F6 !important; -webkit-text-fill-color: #3B82F6 !important;
  font-size: 15px !important; letter-spacing: 0.5px !important; text-transform: none !important;
  font-weight: 500 !important; margin-bottom: 14px !important;
}
html:not(.light-mode) .hero .hero-badge::before { content: none !important; }
html:not(.light-mode) .hero .hero-title {
  font-size: 64px !important; letter-spacing: 1px !important; line-height: 1.08 !important;
  text-align: left !important;
}
html:not(.light-mode) .hero .hero-title .brand-text,
html:not(.light-mode) .hero .hero-title .brand-text.accent {
  color: #FFFFFF !important; -webkit-text-fill-color: #FFFFFF !important;
  -webkit-text-stroke: 0 !important; background: none !important;
}
html:not(.light-mode) .hero .hero-title .brand-text.accent { color: #3B82F6 !important; -webkit-text-fill-color: #3B82F6 !important; }
html:not(.light-mode) .hero .hero-subtitle {
  color: #8FA3C8 !important; -webkit-text-fill-color: #8FA3C8 !important;
  font-size: 16px !important; letter-spacing: 0.5px !important; text-transform: none !important;
  font-weight: 400 !important; opacity: 1 !important; margin-bottom: 30px !important;
}
/* stats row: keep but style subtle */
html:not(.light-mode) .hero .hero-stats { justify-content: flex-start !important; gap: 34px !important; margin-bottom: 34px !important; }
html:not(.light-mode) .hero .stat-number { color: #FFFFFF !important; -webkit-text-fill-color: #FFFFFF !important; background: none !important; font-size: 26px !important; }
html:not(.light-mode) .hero .stat-label { color: rgba(255,255,255,0.55) !important; }
html:not(.light-mode) .hero .stat-divider { background: rgba(255,255,255,0.12) !important; }
/* buttons: Lusive pill pair */
html:not(.light-mode) .hero .hero-buttons { justify-content: flex-start !important; gap: 14px !important; }
html:not(.light-mode) .hero .hero-buttons .btn-primary {
  background: #3B82F6 !important; color: #FFFFFF !important; border: none !important;
  border-radius: 9999px !important; padding: 12px 28px !important; font-size: 15px !important;
  font-family: inherit !important; letter-spacing: 0 !important; box-shadow: none !important;
}
html:not(.light-mode) .hero .hero-buttons .btn-primary:hover { background: #1E96FF !important; transform: none !important; }
html:not(.light-mode) .hero .hero-buttons .btn-primary .btn-arrow { display: none !important; }
html:not(.light-mode) .hero .hero-buttons .btn-secondary {
  background: rgba(59,130,246,0.12) !important; color: #93c5fd !important;
  border: 1px solid rgba(59,130,246,0.45) !important; border-radius: 9999px !important;
  padding: 12px 28px !important; font-size: 15px !important; font-family: inherit !important;
  letter-spacing: 0 !important; box-shadow: none !important;
}
html:not(.light-mode) .hero .hero-buttons .btn-secondary:hover { background: rgba(59,130,246,0.2) !important; transform: none !important; }
/* --- OLD-THEME PURGE --- */
/* policy pricing badge: green -> blue */
html:not(.light-mode) .policy-badge { background: #3B82F6 !important; color: #FFFFFF !important; }
html:not(.light-mode) .policy-card.recommended:hover { border-color: rgba(59,130,246,0.5) !important; }
/* payments panel: flat navy, no glass */
html:not(.light-mode) #es-payments-section .payments-panel {
  background: #0C1430 !important; border: 1px solid rgba(130,160,255,0.12) !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
  box-shadow: none !important; border-radius: 14px !important;
}
/* mobile sticky CTA: flat navy */
html:not(.light-mode) .mobile-sticky-cta { background: rgba(7,13,34,0.97) !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; border-top: 1px solid rgba(130,160,255,0.12) !important; }
html:not(.light-mode) .ax-buybar { background: rgba(7,13,34,0.97) !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; border-top: 1px solid rgba(130,160,255,0.12) !important; }
/* header: flat, no glass */
html:not(.light-mode) .header-inner { backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
/* cookie banner: flat navy */
html:not(.light-mode) .cookie-banner { background: rgba(7,13,34,0.97) !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; border: 1px solid rgba(130,160,255,0.15) !important; }
/* ================= end v48 ================= */

/* v48b: pin hero content to container left edge (hero is flex-centered) */
html:not(.light-mode) #hero.hero { justify-content: flex-start !important; }
html:not(.light-mode) #hero.hero .hero-content { margin-left: clamp(24px, 8vw, 120px) !important; }

/* ================= v49: Lusive toolbar + home sections ================= */
/* --- toolbar: count + sort row above the grid --- */
.ax-toolbar {
  display: flex; align-items: center; justify-content: space-between; gap: 14px;
  max-width: 1280px; margin: 0 auto 18px; padding: 0 4px;
}
.ax-toolbar-count { color: #8FA3C8; font-size: 14px; }
.ax-toolbar-count b { color: #FFFFFF; font-weight: 600; }
.ax-toolbar-sort { display: flex; align-items: center; gap: 10px; }
.ax-toolbar-sort label { color: #8FA3C8; font-size: 13px; }
.ax-sort-select {
  appearance: none; -webkit-appearance: none;
  background: rgba(255,255,255,0.05); color: #F4F4F5;
  border: 1px solid rgba(255,255,255,0.1); border-radius: 8px;
  padding: 8px 34px 8px 14px; font-size: 14px; cursor: pointer; outline: none;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%238FA3C8' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 12px center;
}
.ax-sort-select:hover { border-color: rgba(59,130,246,0.45); }
.ax-sort-select:focus { border-color: #3B82F6; }
.ax-sort-select option { background: #0C1430; color: #F4F4F5; }
.light-mode .ax-toolbar-count, .light-mode .ax-toolbar-sort label { color: #556; }
.light-mode .ax-sort-select { background-color: rgba(0,0,0,0.04); color: #111; border-color: rgba(0,0,0,0.12); }
.light-mode .ax-sort-select option { background: #fff; color: #111; }
@media (max-width: 575.98px) { .ax-toolbar { flex-wrap: wrap; } }
/* --- home sections: Lusive flat navy (dark mode only) --- */
html:not(.light-mode) .step-card, html:not(.light-mode) .review-card, html:not(.light-mode) .trust-card,
html:not(.light-mode) .faq-item, html:not(.light-mode) .policy-card, html:not(.light-mode) .cart-item-bg {
  background: #0C1430 !important;
  border: 1px solid rgba(130,160,255,0.12) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
  overflow: hidden;
}
html:not(.light-mode) .step-card:hover, html:not(.light-mode) .review-card:hover,
html:not(.light-mode) .trust-card:hover {
  border-color: rgba(59,130,246,0.45) !important;
  box-shadow: 0 6px 24px rgba(0,60,160,0.16) !important;
  transform: none !important;
}
html:not(.light-mode) .step-card h3, html:not(.light-mode) .faq-item h3,
html:not(.light-mode) .policy-card h3 {
  color: #FFFFFF !important; -webkit-text-fill-color: #FFFFFF !important; background: none !important;
}
/* section badges -> plain blue text like Lusive eyebrow */
html:not(.light-mode) .section-badge {
  background: none !important; border: none !important; box-shadow: none !important; padding: 0 !important;
  color: #3B82F6 !important; -webkit-text-fill-color: #3B82F6 !important;
  font-size: 15px !important; letter-spacing: 0 !important; text-transform: none !important; font-weight: 500 !important;
}
/* ================= end v49 ================= */

/* v50: navbar fix + light-mode toolbar */
@media (min-width: 992px) {
  #headerNav .ax-mchips, .header-nav .ax-mchips, nav .ax-mchips { display: none !important; visibility: hidden !important; }
}
/* never let chips overlap the nav links: cap width, allow internal scroll */
.ax-mchips { max-width: min(46vw, 640px); overflow-x: auto; scrollbar-width: none; }
.ax-mchips::-webkit-scrollbar { display: none; }
.light-mode .ax-toolbar-count, .light-mode .ax-toolbar-sort label { color: #556 !important; }
.light-mode .ax-sort-select { background-color: rgba(0,0,0,0.04) !important; color: #111 !important; border-color: rgba(0,0,0,0.12) !important; }

/* ================= v51: Nivex hero card + category static grid ================= */
/* --- floating browser-window card at the right of the hero (dark mode) --- */
html:not(.light-mode) .hero { position: relative; }
html:not(.light-mode) .ax-hero-card {
  position: absolute; right: clamp(16px, 5vw, 90px); top: 50%; transform: translateY(-50%);
  width: 330px; border-radius: 18px; padding: 26px 24px 20px; z-index: 3;
  background: linear-gradient(180deg, #0E1734 0%, #0A1128 100%);
  border: 1px solid rgba(130,160,255,0.18);
  box-shadow: 0 30px 80px rgba(0,10,40,0.55), inset 0 1px 0 rgba(255,255,255,0.05);
  text-align: center;
}
.ax-hero-card .axhc-dots { position: absolute; top: 14px; left: 16px; display: flex; gap: 6px; }
.ax-hero-card .axhc-dots i { width: 9px; height: 9px; border-radius: 50%; display: block; }
.ax-hero-card .axhc-dots i:nth-child(1) { background: #FF5F57; }
.ax-hero-card .axhc-dots i:nth-child(2) { background: #FEBC2E; }
.ax-hero-card .axhc-dots i:nth-child(3) { background: #28C840; }
.ax-hero-card .axhc-brand { position: absolute; top: 12px; right: 16px; font-size: 10px; letter-spacing: 2px; color: rgba(255,255,255,0.45); font-weight: 700; }
.ax-hero-card .axhc-logo { width: 74px; height: 74px; margin: 6px auto 10px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: radial-gradient(circle at 50% 40%, rgba(59,130,246,0.25), rgba(59,130,246,0.05) 70%); border: 1px solid rgba(59,130,246,0.3); }
.ax-hero-card .axhc-logo img { width: 52px; height: auto; display: block; }
.ax-hero-card .axhc-title { color: #FFFFFF; font-weight: 700; font-size: 22px; line-height: 1.25; margin: 2px 0 16px; }
.ax-hero-card .axhc-stats { display: flex; justify-content: center; gap: 22px; margin-bottom: 18px; }
.ax-hero-card .axhc-stat b { display: block; color: #FFFFFF; font-size: 19px; font-weight: 800; }
.ax-hero-card .axhc-stat span { display: block; color: rgba(255,255,255,0.5); font-size: 9.5px; letter-spacing: 1.2px; text-transform: uppercase; margin-top: 3px; }
.ax-hero-card .axhc-btns { display: flex; gap: 10px; justify-content: center; margin-bottom: 14px; }
.ax-hero-card .axhc-btns a { flex: 1; text-align: center; padding: 10px 0; border-radius: 9999px; font-size: 13.5px; font-weight: 600; text-decoration: none; }
.ax-hero-card .axhc-btn1 { background: #3B82F6; color: #fff !important; }
.ax-hero-card .axhc-btn1:hover { background: #1E96FF; }
.ax-hero-card .axhc-btn2 { background: rgba(255,255,255,0.06); color: #E8ECF8 !important; border: 1px solid rgba(255,255,255,0.14); }
.ax-hero-card .axhc-btn2:hover { background: rgba(255,255,255,0.12); }
.ax-hero-card .axhc-verify { display: flex; gap: 8px; justify-content: center; }
.ax-hero-card .axhc-verify span { font-size: 10.5px; color: rgba(255,255,255,0.65); background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.08); border-radius: 9999px; padding: 5px 12px; white-space: nowrap; }
.ax-hero-card .axhc-verify .ok { color: #35C75A; }
/* keep hero text above the card on mobile: card becomes static under content */
@media (max-width: 1100px) {
  html:not(.light-mode) .ax-hero-card { position: static; transform: none; margin: 34px auto 0; width: min(330px, 88vw); }
  html:not(.light-mode) .hero { text-align: center !important; }
  html:not(.light-mode) .hero .hero-content { margin-left: auto !important; margin-right: auto !important; }
  html:not(.light-mode) .hero .hero-stats, html:not(.light-mode) .hero .hero-buttons { justify-content: center !important; }
  html:not(.light-mode) .hero .hero-title { font-size: 46px !important; }
}
/* --- hero buttons: products = solid blue primary, discord = outline (Nivex order) --- */
html:not(.light-mode) .hero .hero-buttons .btn-secondary { background: #3B82F6 !important; color: #FFFFFF !important; border: none !important; }
html:not(.light-mode) .hero .hero-buttons .btn-secondary:hover { background: #1E96FF !important; }
html:not(.light-mode) .hero .hero-buttons .btn-primary { background: rgba(255,255,255,0.06) !important; color: #E8ECF8 !important; border: 1px solid rgba(255,255,255,0.14) !important; }
html:not(.light-mode) .hero .hero-buttons .btn-primary:hover { background: rgba(255,255,255,0.12) !important; }
/* --- category pages: same static grid + toolbar treatment --- */
body.category-page .ax-prod-grid.ax-caro { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 28px !important; overflow: visible !important; scroll-snap-type: none !important; }
@media (max-width: 991.98px) { body.category-page .ax-prod-grid.ax-caro { grid-template-columns: repeat(2, 1fr) !important; gap: 16px !important; } }
@media (max-width: 575.98px) { body.category-page .ax-prod-grid.ax-caro { grid-template-columns: 1fr !important; } }
body.category-page .ax-prod-grid .pp-rel-btn, body.category-page .ax-prod-grid .ax-qv-btn { display: none !important; }
body.category-page .ax-prod-grid.ax-efade::before, body.category-page .ax-prod-grid.ax-efade::after { display: none !important; }
body.category-page .ax-prod-grid .product-card .product-card__action { display: none !important; }
/* ================= end v51 ================= */

/* v52: product card image = real photo ratio (2752x1566), object-fit cover trims almost nothing */
.ax-prod-grid .product-card .product-card__image,
body.category-page .ax-prod-grid .product-card .product-card__image,
#ppRelatedGrid .product-card .product-card__image { aspect-ratio: 2752 / 1566 !important; }
.ax-prod-grid .product-card .product-card__image img,
body.category-page .ax-prod-grid .product-card .product-card__image img,
#ppRelatedGrid .product-card .product-card__image img { width: 100%; height: 100%; object-fit: cover; }

/* ===== v53: exact ratios, hover zoom, Lusive support + navbar ===== */
/* 1. natural photo ratio everywhere - img-driven so padding can never skew it */
.product-card .product-card__image { aspect-ratio: auto !important; height: auto !important; }
.product-card .product-card__image img { width: 100% !important; height: auto !important; aspect-ratio: 2752 / 1566 !important; object-fit: cover !important; display: block !important; }
.pp-gallery-col .carousel-inner .carousel-item img { aspect-ratio: 2752 / 1566 !important; height: auto !important; width: 100% !important; object-fit: cover !important; }
/* 2. subtle hover zoom on card images */
.product-card .product-card__image { overflow: hidden; }
.product-card .product-card__image img { transition: transform .55s cubic-bezier(.22,1,.36,1); }
.product-card:hover .product-card__image img { transform: scale(1.06); }
/* 3. Lusive floating support button (flat blue, kill b/w gradient orb) */
.support-button { background: #3B82F6 !important; box-shadow: 0 10px 30px rgba(59,130,246,.38) !important; }
.support-button::after, .support-button::before { display: none !important; }
.support-button .support-ring { border: 0 !important; width: 60px !important; height: 60px !important; animation: axSupPing 2.6s ease-out infinite !important; }
@keyframes axSupPing { 0% { transform: translate(-50%,-50%) scale(1); opacity: .7; box-shadow: 0 0 0 0 rgba(59,130,246,.45); } 100% { transform: translate(-50%,-50%) scale(1.5); opacity: 0; box-shadow: 0 0 0 14px rgba(59,130,246,0); } }
.support-button:hover { background: #2b9bff !important; box-shadow: 0 12px 36px rgba(59,130,246,.5) !important; }
.support-button .support-tooltip { background: #0C1430 !important; border: 1px solid rgba(59,130,246,.35) !important; backdrop-filter: none !important; }
.support-button .support-tooltip::after { border-left-color: #0C1430 !important; }
.light-mode .support-button { background: #3B82F6 !important; }
/* 4. Lusive pill navbar */
.header { padding-top: 14px; }
.header .header-inner { background: rgba(12,20,48,.85) !important; border: 1px solid rgba(255,255,255,.08) !important; border-radius: 999px !important; padding: 9px 26px !important; box-shadow: 0 14px 38px rgba(0,0,0,.4); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
.header .header-nav a:hover { color: #93c5fd !important; }
@media (max-width: 768px) { .header .header-inner { border-radius: 18px !important; padding: 8px 14px !important; } }
.light-mode .header .header-inner { background: rgba(255,255,255,.92) !important; border-color: rgba(0,0,0,.08) !important; }
/* 5. payments method card flat navy (was 6% white) */
.payment-card { background: #0C1430 !important; border: 1px solid rgba(255,255,255,.07) !important; }

/* ===== v53b: navbar pill on header TAG + robust hover zoom ===== */
header .header-inner { background: rgba(12,20,48,.85) !important; border: 1px solid rgba(255,255,255,.08) !important; border-radius: 999px !important; padding: 9px 26px !important; box-shadow: 0 14px 38px rgba(0,0,0,.4); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }
header .header-nav a:hover { color: #93c5fd !important; }
@media (max-width: 768px) { header .header-inner { border-radius: 18px !important; padding: 8px 14px !important; } }
.light-mode header .header-inner { background: rgba(255,255,255,.92) !important; border-color: rgba(0,0,0,.08) !important; }
.product-card .product-card__image img { transition: transform .55s cubic-bezier(.22,1,.36,1) !important; will-change: transform; }
.product-card:hover .product-card__image img { transform: scale(1.06) !important; }

/* ===== v54: staggered section headers + mouse-wheel scroll indicator ===== */
/* stagger: badge -> title -> desc, triggered when header gets .ax-anim-in */
.section-header .section-badge, .section-header .section-title, .section-header .section-desc {
  opacity: 0; transform: translateY(16px);
  transition: opacity .55s cubic-bezier(.22,1,.36,1), transform .55s cubic-bezier(.22,1,.36,1);
}
.section-header.ax-anim-in .section-badge { opacity: 1; transform: none; transition-delay: 0s; }
.section-header.ax-anim-in .section-title { opacity: 1; transform: none; transition-delay: .12s; }
.section-header.ax-anim-in .section-desc { opacity: 1; transform: none; transition-delay: .24s; }
@media (prefers-reduced-motion: reduce) {
  .section-header .section-badge, .section-header .section-title, .section-header .section-desc { opacity: 1 !important; transform: none !important; }
}
.light-mode .section-header .section-badge, .light-mode .section-header .section-title, .light-mode .section-header .section-desc { /* inherits */ }
/* mouse-wheel scroll indicator replaces SCROLL text */
.hero-scroll { color: transparent !important; font-size: 0 !important; letter-spacing: 0 !important; gap: 0 !important; }
.hero-scroll > span { display: none !important; }
.hero-scroll .scroll-line { display: none !important; }
.hero-scroll::before {
  content: ""; display: block; width: 26px; height: 42px;
  border: 2px solid rgba(255,255,255,.35); border-radius: 16px;
  position: relative; background: rgba(255,255,255,.03);
}
.hero-scroll::after {
  content: ""; display: block; width: 4px; height: 8px; border-radius: 2px;
  background: #93c5fd; position: absolute;
  left: 50%; transform: translateX(-50%);
  bottom: calc(30px + 9px);
  animation: axWheel 1.8s ease-in-out infinite;
}
@keyframes axWheel {
  0% { opacity: 0; bottom: calc(30px + 26px); }
  25% { opacity: 1; }
  70% { opacity: 1; }
  100% { opacity: 0; bottom: calc(30px + 9px); }
}
.light-mode .hero-scroll::before { border-color: rgba(0,0,0,.35); background: rgba(0,0,0,.04); }
.light-mode .hero-scroll::after { background: #3B82F6; }

/* ===== v54b: clean fixed mouse-wheel scroll indicator (bottom-center, all viewports) ===== */
.hero-scroll { display: none !important; }
.ax-wheel {
  position: fixed; left: 50%; bottom: 22px; transform: translateX(-50%);
  width: 26px; height: 42px; border: 2px solid rgba(255,255,255,.4); border-radius: 16px;
  background: rgba(255,255,255,.04); z-index: 900; pointer-events: none;
  transition: opacity .45s ease; opacity: 1;
  box-shadow: 0 4px 18px rgba(0,0,0,.35);
}
.ax-wheel.ax-wheel-hide { opacity: 0 !important; }
.ax-wheel-dot {
  position: absolute; left: 50%; top: 7px; width: 4px; height: 8px; border-radius: 2px;
  background: #93c5fd; transform: translateX(-50%);
  animation: axWheelDot 1.8s ease-in-out infinite;
}
@keyframes axWheelDot {
  0% { top: 7px; opacity: 0; }
  22% { opacity: 1; }
  72% { opacity: 1; }
  100% { top: 27px; opacity: 0; }
}
.light-mode .ax-wheel { border-color: rgba(0,0,0,.4); background: rgba(0,0,0,.04); box-shadow: 0 4px 18px rgba(0,0,0,.12); }
@media (max-width: 768px) { .ax-wheel { bottom: 16px; } }
@media (prefers-reduced-motion: reduce) { .ax-wheel-dot { animation: none; top: 14px; opacity: .8; } }

/* ===== v55: mobile hero-card fix + row-by-row grid stagger ===== */
/* mobile: hero card was 330px wide anchored right (x=272 on 390 = half off-screen) */
@media (max-width: 1100px) {
  .ax-hero-card { position: static !important; top: auto !important; right: auto !important; left: auto !important; transform: none !important; width: min(330px, calc(100vw - 32px)) !important; margin: 26px auto 0 !important; }
}
/* row-by-row grid entrance: rows assigned --axrd delay by JS */
.ax-stagger-grid > * { opacity: 0; transform: translateY(18px); transition: opacity .5s cubic-bezier(.22,1,.36,1), transform .5s cubic-bezier(.22,1,.36,1); transition-delay: var(--axrd, 0s); }
.ax-stagger-grid.ax-stagger-in > * { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .ax-stagger-grid > * { opacity: 1 !important; transform: none !important; transition: none !important; } }

/* ===== v55b: hero stacks COLUMN on <=1100px (card was a row flex item poking off-screen) ===== */
@media (max-width: 1100px) {
  .hero { flex-direction: column !important; align-items: center !important; }
  .hero .hero-content { width: 100%; max-width: 100%; }
  .ax-hero-card { flex-shrink: 0 !important; display: block !important; }
}

/* ===== v56: compact mobile hero (stats in ONE row, buttons side-by-side) ===== */
@media (max-width: 1100px) {
  .hero { min-height: auto !important; padding: 130px 20px 56px !important; }
  .hero .hero-stats { flex-direction: row !important; gap: 26px !important; margin-bottom: 20px !important; }
  .hero .stat-number { font-size: 22px !important; }
  .hero .stat-label { font-size: 9px !important; letter-spacing: 2px !important; }
  .hero .stat-divider { display: none !important; }
  .hero .hero-buttons { flex-direction: row !important; flex-wrap: wrap !important; gap: 10px !important; }
  .hero .hero-buttons a { flex: 1 1 auto; min-width: 138px; font-size: 12.5px !important; padding: 11px 14px !important; text-align: center; }
  .hero .hero-subtitle { font-size: 13px !important; margin-bottom: 20px !important; }
}
@media (max-width: 480px) {
  .hero .hero-stats { gap: 16px !important; }
  .hero .hero-title { font-size: 42px !important; letter-spacing: 2px !important; }
}

/* ===== v56b: buttons forced on ONE line at <=480px ===== */
@media (max-width: 480px) {
  .hero .hero-buttons { flex-wrap: nowrap !important; }
  .hero .hero-buttons a { flex: 1 1 0 !important; min-width: 0 !important; padding: 11px 8px !important; font-size: 12px !important; }
}

/* ===== v57: premium cascade (slower + blur-in), touch tilt, no hero grid on phones ===== */
/* cascade: 0.16s per row, soft blur-in */
.ax-stagger-grid > * { transition-duration: .75s, .75s !important; transition-property: opacity, transform, filter; filter: blur(6px); }
.ax-stagger-grid.ax-stagger-in > * { filter: blur(0); }
@media (prefers-reduced-motion: reduce) { .ax-stagger-grid > * { filter: none !important; transition: none !important; } }
/* phones: hide hero grid background + glows behind the card, keep hero compact */
@media (max-width: 1100px) {
  .ax-hero__grid, .ax-hero__glow-left, .ax-hero__glow-right, .ax-hero__scan-line { display: none !important; }
  .hero { background: radial-gradient(ellipse 90% 60% at 50% 0%, rgba(59,130,246,0.07), transparent 65%) !important; }
  .hero { padding: 118px 20px 44px !important; }
  .ax-hero-card { margin-top: 18px !important; }
}
/* touch tilt state class (JS applies transform inline) */
.ax-hero-card { touch-action: pan-y; }

/* ===== v58: kill horizontal scroll (tilt overflow) + smaller support FAB on phones ===== */
html, body { overflow-x: hidden; overflow-x: clip !important; }
/* tilt stays subtle so it never reads as broken */
.ax-hero-card { transform-origin: center center; }
@media (max-width: 480px) {
  .support-button { width: 54px !important; height: 54px !important; bottom: 18px !important; right: 16px !important; }
  .support-button .support-ring { width: 54px !important; height: 54px !important; }
}

/* ===== v59: gold stars + full-bleed testimonial marquee ===== */
/* the template hardcodes polygon#star as fill/stroke #000 - override so every star renders gold */
polygon#star, svg symbol#star polygon { fill: #F5C518 !important; stroke: #F5C518 !important; }
.review-stars svg, .review-stat-stars svg { color: #F5C518; }
/* marquee spans the full viewport instead of the 1200px container: no more chopped cards mid-page */
.reviews-scroll-wrap { width: 100vw; margin-left: calc(50% - 50vw); }
/* smoother, wider edge fades so cards dissolve instead of cutting */
.reviews-scroll-wrap {
  -webkit-mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.6) 4%, #000 12%, #000 88%, rgba(0,0,0,.6) 96%, transparent 100%);
  mask-image: linear-gradient(to right, transparent 0%, rgba(0,0,0,.6) 4%, #000 12%, #000 88%, rgba(0,0,0,.6) 96%, transparent 100%);
}
.light-mode .reviews-scroll-wrap { background: transparent; }

/* ===== v60: phone UX - no overlap, no zoom-pan stranding ===== */
/* support FAB always sits ABOVE the sticky JOIN DISCORD bar on phones */
@media (max-width: 768px) {
  .support-button { bottom: 92px !important; right: 14px !important; }
  /* wheel indicator lives where the sticky bar is - hide it on phones */
  .ax-wheel { display: none !important; }
}
/* hero title can never force sideways space */
@media (max-width: 480px) {
  .hero .hero-title { font-size: 38px !important; letter-spacing: 1px !important; overflow-wrap: anywhere; max-width: 100%; }
  .hero .hero-content { max-width: 100% !important; }
  /* sticky CTA keeps clear of iOS home indicator */
  .mobile-sticky-cta, [class*="sticky-cta"] { padding-bottom: max(10px, env(safe-area-inset-bottom)) !important; }
}
html, body { max-width: 100vw; }

/* ===== v60b: center ALL hero text + buttons on phones (0-768px) ===== */
@media (max-width: 768px) {
  .hero { text-align: center !important; }
  .hero .hero-content { margin-left: auto !important; margin-right: auto !important; width: 100%; }
  .hero .hero-title { font-size: 40px !important; letter-spacing: 2px !important; margin: 0 auto !important; }
  .hero .hero-subtitle { margin-left: auto !important; margin-right: auto !important; }
  .hero .hero-badge { margin-left: auto !important; margin-right: auto !important; }
  .hero .hero-stats { justify-content: center !important; }
  .hero .hero-buttons { justify-content: center !important; }
  .ax-hero-card { margin-left: auto !important; margin-right: auto !important; }
}

/* ===== v60c: FINAL hero title rule (wins the cascade on phones) ===== */
@media (max-width: 768px) {
  html body .hero .hero-title {
    font-size: 38px !important;
    letter-spacing: 2px !important;
    width: fit-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
  }
}

/* ===== v60d: ROOT FIX - hero-content had margin-left:31.2px on mobile ===== */
@media (max-width: 768px) {
  html body .hero .hero-content {
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }
}

/* ===== v60e: ID-suffixed rule beats html:not(.light-mode) #hero margin-left clamp ===== */
@media (max-width: 768px) {
  html:not(.light-mode) #hero.hero .hero-content,
  html:not(.light-mode) .hero .hero-content,
  #hero .hero-content,
  .hero .hero-content {
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }
  /* title: 46px wins over 38/40/42 rules? - force with ID too */
  html:not(.light-mode) #hero.hero .hero-title {
    font-size: 38px !important;
    letter-spacing: 2px !important;
  }
}

/* ===== v61: clickable review cards - hover affordance ===== */
.review-card { cursor: pointer; }
.review-card:hover { border-color: rgba(59,130,246,.45) !important; box-shadow: 0 10px 34px rgba(59,130,246,.16) !important; transform: translateY(-3px); }
.review-card { transition: transform .35s cubic-bezier(.22,1,.36,1), border-color .35s, box-shadow .35s; }
.review-card:focus-visible { outline: 2px solid #3B82F6; outline-offset: 3px; border-radius: 14px; }
@media (hover: none) { .review-card:active { transform: scale(.985); transition-duration: .12s; } }

/* ===== v62: wide-screen hero rebalance + Nivex nav pill ===== */
@media (min-width: 1600px) {
  .hero { justify-content: center; gap: clamp(60px, 8vw, 200px); }
  .hero .hero-content { margin-left: clamp(24px, 6vw, 140px) !important; }
  .ax-hero-card { position: static !important; margin-right: clamp(24px, 6vw, 140px) !important; transform: none !important; width: 400px !important; }
  .hero { display: flex; align-items: center; }
}
@media (min-width: 2000px) {
  .ax-hero-card { width: 440px !important; }
}
/* Nivex-style active nav pill */
header .header-nav a { padding: 8px 14px; border-radius: 999px; transition: background .25s, color .25s; }
header .header-nav a:hover { background: rgba(255,255,255,.07); }

/* ===== v63: Lusive preloader (navy, not black) ===== */
.loader-screen {
  background: radial-gradient(ellipse 80% 60% at 50% 40%, #0C1430 0%, #0B1320 70%) !important;
}
.loader-logo {
  width: 92px !important; height: 92px !important;
  background: radial-gradient(circle at 50% 40%, rgba(59,130,246,.22), rgba(59,130,246,.04) 70%) !important;
  border: 1px solid rgba(59,130,246,.35) !important;
  box-shadow: 0 0 40px rgba(59,130,246,.25);
  border-radius: 50% !important;
  padding: 6px;
  animation: axLoaderSpin 2.6s cubic-bezier(.45,.05,.55,.95) infinite !important;
  will-change: transform;
}
@keyframes axLoaderSpin {
  0% { transform: rotateY(0deg) scale(1); }
  50% { transform: rotateY(180deg) scale(1.05); }
  100% { transform: rotateY(360deg) scale(1); }
}
.loader-brand {
  background-image: none !important;
  -webkit-background-clip: border-box !important;
  background-clip: border-box !important;
  color: #FFFFFF !important;
  animation: axBrandPulse 2.2s ease-in-out infinite;
  text-shadow: 0 0 24px rgba(59,130,246,.35);
}
@keyframes axBrandPulse { 0%,100% { opacity: .85; } 50% { opacity: 1; } }
.loader-bar {
  width: 220px !important; height: 6px !important;
  background: rgba(255,255,255,.08) !important;
  border-radius: 999px !important;
  overflow: hidden;
}
.loader-fill {
  background: linear-gradient(90deg, #3B82F6, #93c5fd) !important;
  border-radius: 999px !important;
  box-shadow: 0 0 12px rgba(59,130,246,.6);
  animation: axLoad 1.4s ease-in-out infinite !important;
}
@keyframes axLoad { 0% { transform: translateX(-110%); } 100% { transform: translateX(420%); } }
.light-mode .loader-screen { background: radial-gradient(ellipse 80% 60% at 50% 40%, #eef3fb 0%, #ffffff 70%) !important; }
.light-mode .loader-brand { color: #0A1128 !important; text-shadow: none; }

/* ===== v63c: bright preloader (clearly royal-navy, never reads black) ===== */
.loader-screen {
  background: radial-gradient(ellipse 85% 65% at 50% 42%, #20336E 0%, #131F4C 48%, #0B1233 100%) !important;
}
.loader-screen::after {
  content: '';
  position: absolute; left: 50%; top: 42%;
  width: 620px; height: 620px; transform: translate(-50%,-50%);
  background: radial-gradient(circle, rgba(59,130,246,.18) 0%, rgba(59,130,246,0) 62%);
  pointer-events: none;
}
.loader-content { position: relative; z-index: 1; }
.light-mode .loader-screen { background: radial-gradient(ellipse 85% 65% at 50% 42%, #DFE9FF 0%, #F6F9FF 100%) !important; }
.light-mode .loader-screen::after { background: radial-gradient(circle, rgba(59,130,246,.10) 0%, rgba(59,130,246,0) 62%); }

/* ===== v64: payment methods row (Stripe / Apple Pay / Google Pay / Cards) ===== */
#es-payments-section .payments-grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 18px;
}
#es-payments-section .payment-card {
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.09);
  border-radius: 16px;
  padding: 18px 26px;
  min-width: 128px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  transition: transform .35s cubic-bezier(.22,1,.36,1), border-color .35s, box-shadow .35s, background .35s;
}
#es-payments-section .payment-card img { height: 34px; width: auto; max-width: 84px; object-fit: contain; filter: brightness(0) invert(1); opacity: .92; }
#es-payments-section .payment-card .pay-name { color: rgba(255,255,255,.82); font-size: 13px; font-weight: 600; letter-spacing: .2px; }
#es-payments-section .payment-card:hover {
  transform: translateY(-4px);
  border-color: rgba(59,130,246,.5);
  background: rgba(59,130,246,.08);
  box-shadow: 0 12px 28px rgba(59,130,246,.16);
}
#es-payments-section .payment-card:hover img { opacity: 1; }
.light-mode #es-payments-section .payment-card { background: rgba(10,17,40,.03); border-color: rgba(10,17,40,.1); }
.light-mode #es-payments-section .payment-card img { filter: none; }
.light-mode #es-payments-section .payment-card .pay-name { color: rgba(10,17,40,.75); }
@media (max-width: 640px) {
  #es-payments-section .payments-grid { gap: 12px; }
  #es-payments-section .payment-card { padding: 14px 18px; min-width: 104px; border-radius: 13px; }
  #es-payments-section .payment-card img { height: 26px; max-width: 66px; }
  #es-payments-section .payment-card .pay-name { font-size: 11.5px; }
}

/* ===== v65: iPhone safe-area (home indicator) clearance ===== */
/* Sticky mobile CTA bar lifts its content above the home indicator */
@supports (padding: max(0px)) {
  .mobile-sticky-cta, #mobileStickyCta {
    padding-bottom: max(10px, env(safe-area-inset-bottom, 0px)) !important;
  }
  /* elements anchored to the very bottom get extra bottom offset instead */
  #backToTop.back-to-top { bottom: max(14px, env(safe-area-inset-bottom, 0px)) !important; }
  #supportButton.support-button { bottom: max(92px, calc(74px + env(safe-area-inset-bottom, 0px))) !important; }
  .cookie-banner { bottom: max(80px, calc(74px + env(safe-area-inset-bottom, 0px))) !important; }
  /* toast slides in above the bar too */
  .toast-notification { bottom: max(100px, calc(80px + env(safe-area-inset-bottom, 0px))) !important; }
}
/* viewport already uses viewport-fit=cover (v60) so env() values are live */
@media only screen and (device-width: 375px) and (device-height: 812px),
       only screen and (device-width: 390px) and (device-height: 844px),
       only screen and (device-width: 393px) and (device-height: 852px),
       only screen and (device-width: 430px) and (device-height: 932px) {
  #mobileStickyCta.mobile-sticky-cta, .mobile-sticky-cta { padding-bottom: 22px !important; }
  #backToTop.back-to-top { bottom: 26px !important; }
}

/* ===== v66: premium 3D icon tiles for hero chips (mobile) ===== */
@media (max-width: 768px) {
  .ax-orbit {
    width: 52px !important;
    height: 52px !important;
    border-radius: 16px !important;
    opacity: 1 !important;
    /* deep glass base so the tile reads as a solid object, not a ghost */
    background:
      radial-gradient(130% 130% at 30% 15%, rgba(255,255,255,.16) 0%, rgba(255,255,255,.05) 38%, rgba(8,14,34,.92) 100%) !important;
    border: 1px solid color-mix(in srgb, var(--oc, #3B82F6) 55%, transparent) !important;
    box-shadow:
      inset 0 1px 0 rgba(255,255,255,.28),
      0 10px 24px rgba(0,0,0,.45),
      0 4px 12px color-mix(in srgb, var(--oc, #3B82F6) 26%, transparent) !important;
  }
  .ax-orbit svg { width: 26px !important; height: 26px !important; filter: drop-shadow(0 2px 4px rgba(0,0,0,.5)); }
  /* keep tiles clear of the centered text column */
  .ax-orbit:nth-child(odd)  { margin-left: -6px; }
  .ax-orbit:nth-child(even) { margin-left: 6px; }
}

/* ===== v66b: keep hero tiles fully on-screen on phones ===== */
@media (max-width: 768px) {
  /* tiles whose engine offset pushes them past the right edge get clamped */
  .ax-orbit {
    max-width: calc(100vw - 24px);
  }
  /* right-side tiles: shift their anchor left via transform when near the edge */
  .ax-orbit[style*="left: 88%"], .ax-orbit[style*="left: 89%"], .ax-orbit[style*="left: 90%"],
  .ax-orbit[style*="left: 91%"], .ax-orbit[style*="left: 92%"], .ax-orbit[style*="left: 93%"],
  .ax-orbit[style*="left: 94%"], .ax-orbit[style*="left: 95%"] {
    left: auto !important;
    right: 10px !important;
  }
  .ax-orbit[style*="left: 85%"], .ax-orbit[style*="left: 86%"], .ax-orbit[style*="left: 87%"] {
    left: auto !important;
    right: 14px !important;
  }
}

/* ===== v67: "click to read more" hover hint on review cards ===== */
.reviews-scroll-inner .review-card::after,
.reviews-section .review-card::after {
  content: "Click to read more →";
  position: absolute;
  left: 50%;
  bottom: 18px;
  transform: translate(-50%, 6px);
  padding: 6px 14px;
  border-radius: 999px;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .3px;
  white-space: nowrap;
  color: #93c5fd;
  background: rgba(59, 130, 246, .1);
  border: 1px solid rgba(59, 130, 246, .35);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease, transform .25s cubic-bezier(.22,1,.36,1);
}
.reviews-scroll-inner .review-card:hover::after,
.reviews-section .review-card:hover::after,
.reviews-scroll-inner .review-card:focus-visible::after,
.reviews-section .review-card:focus-visible::after {
  opacity: 1;
  transform: translate(-50%, 0);
}
.light-mode .review-card::after {
  color: #0066cc;
  background: rgba(0, 102, 204, .07);
  border-color: rgba(0, 102, 204, .35);
}
/* keep the hint from overlapping reviewer names: cards get a touch more bottom padding on hover-capable devices only */
@media (hover: hover) {
  .reviews-scroll-inner .review-card,
  .reviews-section .review-card { padding-bottom: 54px; }
}

/* ===== v67: "click to read more" hover hint on review cards ===== */
.reviews-scroll-inner .review-card::after,
.reviews-section .review-card::after {
  content: "Click to read more →";
  position: absolute;
  left: 50%;
  bottom: 18px;
  transform: translate(-50%, 6px);
  padding: 6px 14px;
  border-radius: 999px;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .3px;
  white-space: nowrap;
  color: #93c5fd;
  background: rgba(59, 130, 246, .1);
  border: 1px solid rgba(59, 130, 246, .35);
  opacity: 0;
  pointer-events: none;
  transition: opacity .25s ease, transform .25s cubic-bezier(.22,1,.36,1);
}
.reviews-scroll-inner .review-card:hover::after,
.reviews-section .review-card:hover::after,
.reviews-scroll-inner .review-card:focus-visible::after,
.reviews-section .review-card:focus-visible::after {
  opacity: 1;
  transform: translate(-50%, 0);
}
.light-mode .review-card::after {
  color: #0066cc;
  background: rgba(0, 102, 204, .07);
  border-color: rgba(0, 102, 204, .35);
}
/* keep the hint from overlapping reviewer names: cards get a touch more bottom padding on hover-capable devices only */
@media (hover: hover) {
  .reviews-scroll-inner .review-card,
  .reviews-section .review-card { padding-bottom: 54px; }
}

/* ===== v68: true hero centering on wide screens ===== */
/* The old v62 rule centered via gap alone; flex-start + fixed margins still left the
   group hugging the left on 2K+ displays. Force a centered pair: */
@media (min-width: 1100px) {
  .hero {
    justify-content: center !important;
  }
  .hero .hero-content {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .hero .ax-hero-card {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  /* balanced gap between the two, and keep some breathing room from center */
  .hero { gap: clamp(70px, 9vw, 230px) !important; }
}
/* the very wide screens: cap how far apart they drift */
@media (min-width: 2000px) {
  .hero { gap: 230px !important; }
  .hero .ax-hero-card { width: 460px !important; }
}

/* ===== v68b: hero centering that beats the html:not(.light-mode) prefix rule ===== */
@media (min-width: 1100px) {
  /* same selector shape as the legacy flex-start rule (v60 lesson) + !important so it wins */
  html:not(.light-mode) #hero.hero { justify-content: center !important; }
  html:not(.light-mode) .hero .hero-content { margin-left: 0 !important; margin-right: 0 !important; }
  html:not(.light-mode) .hero .ax-hero-card { margin-right: 0 !important; margin-left: 0 !important; }
  html:not(.light-mode) #hero.hero { gap: clamp(70px, 9vw, 230px) !important; }
  .light-mode #hero.hero { justify-content: center !important; gap: clamp(70px, 9vw, 230px) !important; }
  .light-mode .hero .hero-content { margin-left: 0 !important; margin-right: 0 !important; }
  .light-mode .hero .ax-hero-card { margin-right: 0 !important; margin-left: 0 !important; }
}
@media (min-width: 2000px) {
  html:not(.light-mode) #hero.hero,
  .light-mode #hero.hero { gap: 230px !important; }
  html:not(.light-mode) .hero .ax-hero-card,
  .light-mode .hero .ax-hero-card { width: 460px !important; }
}

/* ===== v68c: hero centered — beats the #hero.hero 8vw margin rule (id specificity) ===== */
@media (min-width: 1100px) {
  html:not(.light-mode) #hero.hero .hero-content,
  html:not(.light-mode) #hero.hero .ax-hero-card,
  .light-mode #hero.hero .hero-content,
  .light-mode #hero.hero .ax-hero-card { margin-left: 0 !important; margin-right: 0 !important; }
  html:not(.light-mode) #hero.hero,
  .light-mode #hero.hero { justify-content: center !important; gap: clamp(70px, 9vw, 230px) !important; }
}
@media (min-width: 2000px) {
  html:not(.light-mode) #hero.hero,
  .light-mode #hero.hero { gap: 230px !important; }
}

/* ===== v68d: hero card stays in flex flow at 1100-1600px so the group truly centers ===== */
@media (min-width: 1100px) and (max-width: 1600px) {
  html:not(.light-mode) #hero.hero .ax-hero-card,
  .light-mode #hero.hero .ax-hero-card { position: relative !important; left: auto !important; right: auto !important; top: auto !important; bottom: auto !important; }
}

/* ===== v69: compact Nivex-style navbar (desktop >=1100px, mobile untouched) ===== */
@media (min-width: 1100px) {
  header { padding: 10px 0 !important; }
  header .header-inner { padding: 6px 10px 6px 20px !important; height: 52px !important; min-height: 0 !important; align-items: center !important; }
  header .header-logo { font-size: 17px !important; gap: 8px !important; }
  header .header-logo img { max-height: 24px !important; width: auto !important; }
  header #headerNav { gap: 2px !important; }
  header #headerNav .nav-link { font-size: 13px !important; padding: 7px 13px !important; border-radius: 999px !important; line-height: 1.2 !important; }
  header #headerNav .nav-link::after { display: none !important; }
  header #headerNav .nav-link:hover { opacity: 1 !important; background: rgba(59,130,246,.12) !important; }
  html:not(.light-mode) header #headerNav .nav-link.active,
  .light-mode header #headerNav .nav-link.active,
  header #headerNav .nav-link.active { background: #3B82F6 !important; color: #ffffff !important; font-weight: 600 !important; box-shadow: 0 2px 10px rgba(59,130,246,.35) !important; }
  header .header-actions { gap: 6px !important; }
  header .header-actions .btn-login { font-size: 12.5px !important; padding: 6px 12px !important; }
  header .header-actions select#langSelect { font-size: 12px !important; padding: 5px 8px !important; height: 30px !important; }
  header .header-actions .btn-cart { padding: 6px !important; }
}

/* ===== v69c: nav active pill for .ax-nav-active (pairs with v69b JS) ===== */
@media (min-width: 1100px) {
  html:not(.light-mode) header #headerNav .nav-link.ax-nav-active,
  .light-mode header #headerNav .nav-link.ax-nav-active,
  header #headerNav .nav-link.ax-nav-active { background: #3B82F6 !important; color: #ffffff !important; font-weight: 600 !important; box-shadow: 0 2px 10px rgba(59,130,246,.35) !important; opacity: 1 !important; }
}

/* ===== v70: products page — Nivex exact card design ===== */
body.ax-products-page .product-card {
  background: #0a101f !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  transform: none !important;
  box-shadow: none !important;
  transition: all .25s ease-in-out !important;
}
body.ax-products-page .product-card:hover {
  border-color: #0084ff !important;
  transform: none !important;
  box-shadow: 0 0 20px rgba(0,132,255,.35) !important;
}
body.ax-products-page .product-card .tilt-glow { display: none !important; }
body.ax-products-page .product-card .product-card__image { padding: 0 !important; background: transparent !important; }
body.ax-products-page .product-card .product-card__image img { width: 100% !important; height: auto !important; object-fit: contain !important; display: block !important; border-radius: 0 !important; }
body.ax-products-page .product-card .product-card__body { padding: 18px 22px 25px !important; display: flex !important; flex-direction: column !important; }
body.ax-products-page .product-card .product-card__title { color: #ffffff !important; font-weight: 500 !important; font-size: 1.4rem !important; margin-bottom: 15px !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
body.ax-products-page .product-card .product-card__action { display: none !important; }
body.ax-products-page .product-card .product-card__price { display: flex !important; justify-content: space-between !important; align-items: center !important; margin-top: auto !important; }
body.ax-products-page .product-card .product-card__price-value { color: #0084ff !important; font-weight: 600 !important; font-size: 1.15rem !important; }
#axProdSearch { max-width: 800px; margin: 26px auto 8px; padding: 0 16px; }
#axProdSearch input { width: 100%; height: 58px; background: #0a101f; border: 1px solid rgba(255,255,255,.1); border-radius: 12px; color: #ffffff; font-size: 17.6px; padding: 0 20px; outline: none; transition: all .25s ease-in-out; }
#axProdSearch input:focus { border-color: #0084ff; box-shadow: 0 0 20px rgba(0,132,255,.25); }
#axProdSearch input::placeholder { color: rgba(255,255,255,.45); }
#axProdCount { text-align: center; color: rgba(255,255,255,.55); font-size: 14px; min-height: 20px; margin-bottom: 10px; }

/* ===== v70b: Nivex card rules with id-grade specificity (beats old theme) ===== */
html:not(.light-mode) body.ax-products-page .product-card,
.light-mode body.ax-products-page .product-card {
  background: #0a101f !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 14px !important;
  transform: none !important;
}
html:not(.light-mode) body.ax-products-page .product-card:hover,
.light-mode body.ax-products-page .product-card:hover {
  border-color: #0084ff !important;
  box-shadow: 0 0 20px rgba(0,132,255,.35) !important;
  transform: none !important;
}
html:not(.light-mode) body.ax-products-page .product-card .product-card__image,
.light-mode body.ax-products-page .product-card .product-card__image { padding: 0 !important; background: transparent !important; }
html:not(.light-mode) body.ax-products-page .product-card .product-card__image img,
.light-mode body.ax-products-page .product-card .product-card__image img { width: 100% !important; height: auto !important; object-fit: contain !important; display: block !important; }
html:not(.light-mode) body.ax-products-page .product-card .product-card__title,
.light-mode body.ax-products-page .product-card .product-card__title { color: #ffffff !important; font-weight: 500 !important; font-size: 1.4rem !important; margin-bottom: 15px !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
html:not(.light-mode) body.ax-products-page .product-card .product-card__action,
.light-mode body.ax-products-page .product-card .product-card__action { display: none !important; }
html:not(.light-mode) body.ax-products-page .product-card .product-card__price-value,
.light-mode body.ax-products-page .product-card .product-card__price-value { color: #0084ff !important; font-weight: 600 !important; font-size: 1.15rem !important; }

/* ===== v70c: kill card padding so the image is full-bleed Nivex-style ===== */
html:not(.light-mode) body.ax-products-page .product-card,
.light-mode body.ax-products-page .product-card { padding: 0 !important; }

/* ===== v72: footer payment badge icons (Apple Pay / Google Pay) ===== */
.pay-badge.pay-apay img, .pay-badge.pay-gpay img { height: 13px; width: auto; display: block; }
.pay-badge.pay-apay, .pay-badge.pay-gpay { display: flex; align-items: center; justify-content: center; }

/* ===== v73: checkout page — Lusive navy restyle (scoped via body:has(.sa-co-form)) ===== */
body:has(.sa-co-form) {
  background: radial-gradient(ellipse 90% 55% at 50% 0%, #0e1838 0%, #0B1320 60%) !important;
}
body:has(.sa-co-form) input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
body:has(.sa-co-form) select,
body:has(.sa-co-form) textarea,
body:has(.sa-co-form) .rounded-card,
body:has(.sa-co-form) .altcha,
body:has(.sa-co-form) .sa-co-summary-toggle,
body:has(.sa-co-form) .sa-co-payment-method {
  background: #0a101f !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 14px !important;
  color: #ffffff !important;
  transition: border-color .25s ease, box-shadow .25s ease;
}
body:has(.sa-co-form) input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]):focus,
body:has(.sa-co-form) select:focus,
body:has(.sa-co-form) textarea:focus {
  border-color: #3B82F6 !important;
  box-shadow: 0 0 0 3px rgba(59,130,246,.18) !important;
  outline: none !important;
}
body:has(.sa-co-form) input::placeholder { color: rgba(255,255,255,.4) !important; }
body:has(.sa-co-form) .sa-co-payment-method:hover { border-color: rgba(59,130,246,.5) !important; }
body:has(.sa-co-form) .sa-co-payment-method.selected,
body:has(.sa-co-form) .sa-co-payment-method.active,
body:has(.sa-co-form) .sa-co-payment-method[data-selected="true"] {
  border-color: #3B82F6 !important;
  box-shadow: 0 0 18px rgba(59,130,246,.28) !important;
}
body:has(.sa-co-form) h1, body:has(.sa-co-form) h2, body:has(.sa-co-form) h3 { color: #ffffff !important; }
body:has(.sa-co-form) .sa-co-trust,
body:has(.sa-co-form) .sa-co-code-toggle,
body:has(.sa-co-form) .text-co-body { color: rgba(255,255,255,.6) !important; }
body:has(.sa-co-form) .sa-co-label { color: #dfe7ff !important; }
/* ghost buttons (Apply, Pay on mobile, Change) */
body:has(.sa-co-form) button:not([type="submit"]) {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  color: #dfe7ff !important;
  border-radius: 10px !important;
}
body:has(.sa-co-form) button:not([type="submit"]):hover { background: rgba(59,130,246,.14) !important; border-color: rgba(59,130,246,.4) !important; color: #fff !important; }
/* primary continue/pay button */
body:has(.sa-co-form) button[type="submit"] {
  background: linear-gradient(90deg, #3B82F6, #93c5fd) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 20px rgba(59,130,246,.4) !important;
  transition: filter .2s ease;
}
body:has(.sa-co-form) button[type="submit"]:hover { filter: brightness(1.12); }
/* checkboxes accent */
body:has(.sa-co-form) input[type="checkbox"], body:has(.sa-co-form) input[type="radio"] { accent-color: #3B82F6; }
/* selection color */
body:has(.sa-co-form) ::selection { background: rgba(59,130,246,.35); }

/* ===== v74: localized hints + product-card quick-view hint ===== */
body.ax-lang-es .review-card::after { content: "Haz clic para leer más \2192" !important; }
body.ax-lang-pt .review-card::after { content: "Clique para ler mais \2192" !important; }
@media (hover: hover) {
  .product-card { position: relative !important; }
  .product-card::after {
    content: "Quick view \2192";
    position: absolute;
    width: auto !important; height: auto !important; top: auto !important; right: auto !important; /* v212 guards */
    left: 50%;
    bottom: 8px;
    transform: translateX(-50%) translateY(6px);
    background: rgba(59,130,246,.16);
    border: 1px solid rgba(59,130,246,.4);
    color: #cfe4ff;
    font-size: 11.5px;
    font-weight: 600;
    padding: 4px 11px;
    border-radius: 999px;
    opacity: 0;
    pointer-events: none;
    transition: opacity .22s ease, transform .22s ease;
    z-index: 6;
    white-space: nowrap;
  }
  .product-card:hover::after,
  .product-card:focus-visible::after { opacity: 1; transform: translateX(-50%) translateY(0); }
  body.ax-lang-es .product-card::after { content: "Vista rápida \2192" !important; }
  body.ax-lang-pt .product-card::after { content: "Vista rápida \2192" !important; }
}

/* ===== v75: hero card — slim Nivex-style header + tighter internals (desktop) ===== */
@media (min-width: 1100px) {
  .ax-hero-card { padding: 14px 18px 14px !important; }
  .axhc-dots { gap: 5px !important; }
  .axhc-dots i { width: 7px !important; height: 7px !important; }
  .axhc-brand { font-size: 9px !important; letter-spacing: 1.6px !important; }
  .axhc-logo { width: 54px !important; height: 54px !important; }
  .axhc-logo img { max-width: 34px !important; max-height: 34px !important; }
  .axhc-title { font-size: 20px !important; line-height: 1.12 !important; margin-top: 10px !important; }
  .axhc-stats { gap: 18px !important; margin-top: 12px !important; }
  .axhc-stat b { font-size: 15px !important; }
  .axhc-stat span { font-size: 9.5px !important; letter-spacing: .5px !important; }
  .axhc-btns { gap: 8px !important; margin-top: 12px !important; }
  .axhc-btn1, .axhc-btn2 { padding: 8px 14px !important; font-size: 12.5px !important; }
  .axhc-verify { gap: 6px !important; margin-top: 10px !important; font-size: 10.5px !important; }
}

/* ===== v75b: even section rhythm — normalize short bottom paddings ===== */
@media (min-width: 1100px) {
  section[class*='reviews'], section[class*='compare'] { padding-bottom: 100px !important; }
}

/* ===== v76: purchase toast kill-switch (owner: never show sales popups) ===== */
.ax-toast { display: none !important; visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }

/* ===== v77: cart page flat Nivex cards (item, summary, empty state, checkout btn) ===== */
html:not(.light-mode) [data-component-id="cart-page"] .cart-item-bg {
  background: #0a101f !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 14px !important;
  box-shadow: none !important;
}
html:not(.light-mode) [data-component-id="cart-page"] .cart-item-bg:hover {
  border-color: rgba(59,130,246,.5) !important;
  box-shadow: 0 0 20px rgba(59,130,246,.22) !important;
}
html:not(.light-mode) [data-component-id="cart-page"] div.form.p-4,
html:not(.light-mode) [data-component-id="cart-page"] .p-4.border.rounded.text-center {
  background: #0a101f !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 14px !important;
}
html:not(.light-mode) [data-component-id="cart-page"] .btn-outline-primary {
  background: #3B82F6 !important;
  border: none !important;
  border-radius: 12px !important;
  color: #fff !important;
  font-weight: 600 !important;
  box-shadow: 0 6px 22px rgba(59,130,246,.32) !important;
  transition: background .18s ease, transform .18s ease !important;
}
html:not(.light-mode) [data-component-id="cart-page"] .btn-outline-primary:hover {
  background: #0074e8 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 8px 26px rgba(59,130,246,.42) !important;
}
html:not(.light-mode) [data-component-id="cart-page"] .cart-qty-btn,
html:not(.light-mode) [data-component-id="cart-page"] .cart-remove-mobile,
html:not(.light-mode) [data-component-id="cart-page"] .cart-remove-desktop {
  background: rgba(255,255,255,.05) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 8px !important;
}
html:not(.light-mode) [data-component-id="cart-page"] .cart-qty-btn:hover,
html:not(.light-mode) [data-component-id="cart-page"] .cart-remove-mobile:hover,
html:not(.light-mode) [data-component-id="cart-page"] .cart-remove-desktop:hover {
  background: rgba(255,255,255,.12) !important;
}
html:not(.light-mode) [data-component-id="cart-page"] .alert-warning {
  background: rgba(255,176,32,.09) !important;
  border: 1px solid rgba(255,176,32,.28) !important;
  border-radius: 14px !important;
  color: #ffd9a0 !important;
}
html:not(.light-mode) [data-component-id="cart-page"] .alert-danger {
  background: rgba(255,72,72,.09) !important;
  border: 1px solid rgba(255,72,72,.3) !important;
  border-radius: 14px !important;
  color: #ffb3b3 !important;
}
html:not(.light-mode) [data-component-id="cart-page"] .cart-item-bg .object-product-image {
  border-radius: 10px !important;
}

/* ===== v78: buy-box pay badges + a11y + built-in purchase popup kill ===== */
[data-component-id="product-page"] .pp-payrow { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 12px; }
[data-component-id="product-page"] .pp-payrow .pp-pay { display: inline-flex; align-items: center; justify-content: center; min-width: 54px; height: 30px; padding: 0 10px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); border-radius: 8px; }
[data-component-id="product-page"] .pp-payrow .pp-pay img { display: block; }
[data-component-id="product-page"] .pp-payrow .pp-paypill { font-size: 10.5px; font-weight: 700; letter-spacing: .5px; color: #c9d4ea; text-transform: uppercase; }
.light-mode [data-component-id="product-page"] .pp-payrow .pp-pay { background: rgba(0,0,0,.04); border-color: rgba(0,0,0,.12); }
.light-mode [data-component-id="product-page"] .pp-payrow .pp-pay img { filter: invert(1); }
.light-mode [data-component-id="product-page"] .pp-payrow .pp-paypill { color: #3a4a6b; }
.notification-container, .notification-popup { display: none !important; visibility: hidden !important; opacity: 0 !important; pointer-events: none !important; }

/* ===== v79: cart trust banner + product page flat Lusive + pre-checkout polish ===== */
[data-component-id="cart-page"] .ax-paytrust { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin-top: 16px; padding-top: 14px; border-top: 1px solid rgba(255,255,255,.08); }
[data-component-id="cart-page"] .ax-paytrust .ax-paytrust-label { font-size: 11px; font-weight: 600; letter-spacing: .6px; text-transform: uppercase; color: #8fa3c8; margin-right: 4px; }
[data-component-id="cart-page"] .ax-paytrust .ax-pt-badge { display: inline-flex; align-items: center; justify-content: center; min-width: 50px; height: 28px; padding: 0 10px; background: rgba(255,255,255,.05); border: 1px solid rgba(255,255,255,.1); border-radius: 8px; }
[data-component-id="cart-page"] .ax-paytrust .ax-pt-badge img { display: block; }
[data-component-id="cart-page"] .ax-paytrust .ax-pt-txt { font-size: 10px; font-weight: 700; letter-spacing: .5px; text-transform: uppercase; color: #c9d4ea; }
.light-mode [data-component-id="cart-page"] .ax-paytrust { border-top-color: rgba(0,0,0,.08); }
.light-mode [data-component-id="cart-page"] .ax-paytrust .ax-paytrust-label { color: #5a6b8f; }
.light-mode [data-component-id="cart-page"] .ax-paytrust .ax-pt-badge { background: rgba(0,0,0,.04); border-color: rgba(0,0,0,.12); }
.light-mode [data-component-id="cart-page"] .ax-paytrust .ax-pt-badge img { filter: invert(1); }
.light-mode [data-component-id="cart-page"] .ax-paytrust .ax-pt-txt { color: #3a4a6b; }
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; box-shadow: none !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .ax3d-glare { display: none !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox h1 { color: #fff !important; -webkit-text-fill-color: #fff !important; background: none !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .badges a { background: rgba(255,255,255,.06) !important; border: 1px solid rgba(255,255,255,.1) !important; color: #c9d4ea !important; border-radius: 999px !important; }
html:not(.light-mode) [data-component-id="product-page"] .stock-indicator.btn-outline-primary { background: rgba(59,130,246,.14) !important; border: none !important; color: #6cb2ff !important; border-radius: 999px !important; }
html:not(.light-mode) [data-component-id="product-page"] .stock-indicator.btn-outline-danger { background: rgba(255,68,68,.12) !important; border: none !important; color: #ff8585 !important; border-radius: 999px !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .input-group-btn { background: rgba(255,255,255,.05) !important; border: 1px solid rgba(255,255,255,.12) !important; color: #e8ecf5 !important; border-radius: 8px !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .form-control { background: rgba(255,255,255,.04) !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 10px !important; color: #f0f0f0 !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .btn-primary { background: #3B82F6 !important; border: none !important; border-radius: 12px !important; color: #fff !important; font-weight: 600 !important; box-shadow: 0 6px 22px rgba(59,130,246,.32) !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .btn-primary:hover { background: #0074e8 !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .btn-outline-primary:not(.stock-indicator):not(.input-group-btn) { background: rgba(59,130,246,.12) !important; border: 1px solid rgba(59,130,246,.45) !important; color: #7cbcff !important; border-radius: 12px !important; font-weight: 600 !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .btn-outline-primary:not(.stock-indicator):not(.input-group-btn):hover { background: rgba(59,130,246,.2) !important; border-color: rgba(59,130,246,.7) !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-trust { border: 1px solid rgba(255,255,255,.08) !important; border-radius: 12px !important; background: rgba(255,255,255,.03) !important; padding: 12px 16px !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-gallery-col .carousel { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; overflow: hidden !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-gallery-col .carousel img { background: transparent !important; border: none !important; border-radius: 0 !important; }
html:not(.light-mode) [data-component-id="product-page"] .product-tabs .content { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; padding: 20px 22px !important; }
html:not(.light-mode) [data-component-id="product-page"] .product-tabs .editor,
html:not(.light-mode) [data-component-id="product-page"] .product-tabs .editor p,
html:not(.light-mode) [data-component-id="product-page"] .product-tabs .editor li { color: #9fb0d0 !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-related .product-card { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; transform: none !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-related .product-card:hover { border-color: #0084ff !important; box-shadow: 0 0 20px rgba(0,132,255,.35) !important; transform: none !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-related .product-card .product-card__title { color: #fff !important; font-weight: 500 !important; font-size: 1.4rem !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-related .product-card .product-card__action { display: none !important; }
html:not(.light-mode) [data-component-id="product-page"] .pp-related .product-card .product-card__price-value { color: #0084ff !important; font-weight: 600 !important; font-size: 1.15rem !important; }

/* ===== v80: quick-view modal flat Nivex ===== */
html:not(.light-mode) .ax-qv { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; box-shadow: 0 24px 70px rgba(0,0,0,.55) !important; overflow: hidden !important; }
html:not(.light-mode) .ax-qv .ax-qv-img { background: rgba(255,255,255,.02) !important; border-bottom: 1px solid rgba(255,255,255,.06) !important; border-radius: 0 !important; }
html:not(.light-mode) .ax-qv .ax-qv-title { color: #fff !important; font-weight: 500 !important; }
html:not(.light-mode) .ax-qv .ax-qv-price { color: #0084ff !important; font-weight: 600 !important; }
html:not(.light-mode) .ax-qv .ax-qv-stock.in { background: rgba(0,255,136,.12) !important; border: none !important; color: #7dffcf !important; border-radius: 999px !important; }
html:not(.light-mode) .ax-qv .ax-qv-stock.out { background: rgba(255,68,68,.12) !important; border: none !important; color: #ff8585 !important; border-radius: 999px !important; }
html:not(.light-mode) .ax-qv .ax-qv-desc { color: #9fb0d0 !important; }
html:not(.light-mode) .ax-qv .ax-qv-buy { background: #3B82F6 !important; border: none !important; border-radius: 12px !important; color: #fff !important; font-weight: 600 !important; box-shadow: 0 6px 22px rgba(59,130,246,.32) !important; text-align: center !important; }
html:not(.light-mode) .ax-qv .ax-qv-buy:hover { background: #0074e8 !important; }
html:not(.light-mode) .ax-qv .ax-qv-x { background: rgba(255,255,255,.06) !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 8px !important; color: #e8ecf5 !important; }
.light-mode .ax-qv { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; border-radius: 14px !important; box-shadow: 0 24px 70px rgba(15,23,42,.25) !important; overflow: hidden !important; }
.light-mode .ax-qv .ax-qv-title { color: #0f172a !important; }
.light-mode .ax-qv .ax-qv-price { color: #0074e8 !important; }
.light-mode .ax-qv .ax-qv-desc { color: #475569 !important; }
.light-mode .ax-qv .ax-qv-stock.in { background: rgba(0,180,100,.12) !important; color: #067a4b !important; border-radius: 999px !important; }
.light-mode .ax-qv .ax-qv-stock.out { background: rgba(220,38,38,.1) !important; color: #b91c1c !important; border-radius: 999px !important; }
.light-mode .ax-qv .ax-qv-buy { background: #3B82F6 !important; color: #fff !important; border-radius: 12px !important; text-align: center !important; }
.light-mode .ax-qv .ax-qv-x { background: rgba(0,0,0,.05) !important; border: 1px solid rgba(0,0,0,.1) !important; border-radius: 8px !important; color: #0f172a !important; }

/* ===== v81: navy base lock (no black background ever) ===== */
html, html:not(.light-mode), .light-mode html { background: #0B1320 !important; }
html:not(.light-mode) body, html:not(.light-mode) .atlas-page, html:not(.light-mode) .flex-wrapper { background: #0B1320 !important; }
html:not(.light-mode) canvas.ax-universe { background: #0B1320; }
.light-mode body { background: #f4f6fb !important; }

/* ===== v82: uniform navbar pill - kill dark strip behind nav links (desktop only; mobile menu keeps its glass) ===== */
@media (min-width: 1100px) {
  html:not(.light-mode) .header-nav { background: transparent !important; box-shadow: none !important; }
  .light-mode .header-nav { background: transparent !important; box-shadow: none !important; }
}

/* ===== v83: How It Works premium accent steps ===== */
html:not(.light-mode) .how-section .step-card { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; position: relative !important; overflow: hidden !important; }
html:not(.light-mode) .how-section .step-card .ax3d-glare { display: none !important; }
html:not(.light-mode) .steps-grid .step-card:nth-child(1) { --ax-acc: #7db4ff; }
html:not(.light-mode) .steps-grid .step-card:nth-child(3) { --ax-acc: #7dffb2; }
html:not(.light-mode) .steps-grid .step-card:nth-child(5) { --ax-acc: #ffd76f; }
html:not(.light-mode) .how-section .step-card::before { content: '' !important; position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; height: 3px !important; background: linear-gradient(90deg, var(--ax-acc, #3B82F6), transparent 85%) !important; opacity: .9 !important; border-radius: 0 !important; }
html:not(.light-mode) .how-section .step-card:hover { border-color: var(--ax-acc, #3B82F6) !important; box-shadow: 0 0 0 1px var(--ax-acc, #3B82F6), 0 14px 38px rgba(0,0,0,.45) !important; }
html:not(.light-mode) .how-section .step-number { background: rgba(255,255,255,.05) !important; border: 1px solid var(--ax-acc, #3B82F6) !important; color: var(--ax-acc, #3B82F6) !important; font-weight: 700 !important; }
html:not(.light-mode) .how-section .step-icon { border-color: var(--ax-acc, #3B82F6) !important; box-shadow: 0 10px 30px -10px var(--ax-acc, #3B82F6), inset 0 1px 0 rgba(255,255,255,.08) !important; }
html:not(.light-mode) .how-section .step-card h3 { color: #fff !important; }
html:not(.light-mode) .how-section .step-card p { color: #9fb0d0 !important; }
html:not(.light-mode) .steps-grid .step-connector:nth-child(2) svg path,
html:not(.light-mode) .steps-grid .step-connector:nth-child(2) svg { stroke: #7db4ff !important; }
html:not(.light-mode) .steps-grid .step-connector:nth-child(4) svg path,
html:not(.light-mode) .steps-grid .step-connector:nth-child(4) svg { stroke: #7dffb2 !important; }
@keyframes axStepPulse { 0%, 100% { opacity: .5; transform: translateX(0); } 50% { opacity: 1; transform: translateX(4px); } }
html:not(.light-mode) .how-section .step-connector svg { animation: axStepPulse 2.6s ease-in-out infinite; }
@media (prefers-reduced-motion: reduce) { html:not(.light-mode) .how-section .step-connector svg { animation: none !important; } }
.light-mode .how-section .step-card { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; border-radius: 14px !important; position: relative !important; overflow: hidden !important; }
.light-mode .how-section .step-card .ax3d-glare { display: none !important; }
.light-mode .steps-grid .step-card:nth-child(1) { --ax-acc: #0066cc; }
.light-mode .steps-grid .step-card:nth-child(3) { --ax-acc: #0a9e57; }
.light-mode .steps-grid .step-card:nth-child(5) { --ax-acc: #b8860b; }
.light-mode .how-section .step-card::before { content: '' !important; position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; height: 3px !important; background: linear-gradient(90deg, var(--ax-acc, #0066cc), transparent 85%) !important; opacity: .9 !important; border-radius: 0 !important; }
.light-mode .how-section .step-card:hover { border-color: var(--ax-acc, #0066cc) !important; box-shadow: 0 12px 34px rgba(15,23,42,.14) !important; }
.light-mode .how-section .step-number { background: rgba(0,0,0,.04) !important; border: 1px solid var(--ax-acc, #0066cc) !important; color: var(--ax-acc, #0066cc) !important; font-weight: 700 !important; }
.light-mode .how-section .step-icon { border-color: var(--ax-acc, #0066cc) !important; box-shadow: 0 10px 30px -12px var(--ax-acc, #0066cc) !important; }
.light-mode .how-section .step-card p { color: #5a6b8f !important; }

/* ===== v84: Categories premium flat accents (streaming..deportes) ===== */
html:not(.light-mode) .gallery-section .gallery-item { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; }
html:not(.light-mode) .gallery-section .gallery-item .gallery-placeholder { background: transparent !important; }
html:not(.light-mode) .gallery-section .gallery-item.c1 { --ax-acc: #7db4ff; }
html:not(.light-mode) .gallery-section .gallery-item.c2 { --ax-acc: #7dffb2; }
html:not(.light-mode) .gallery-section .gallery-item.c3 { --ax-acc: #c39bff; }
html:not(.light-mode) .gallery-section .gallery-item.c4 { --ax-acc: #6fd6ff; }
html:not(.light-mode) .gallery-section .gallery-item.c5 { --ax-acc: #ff8f6f; }
html:not(.light-mode) .gallery-section .gallery-item.c6 { --ax-acc: #ffd76f; }
html:not(.light-mode) .gallery-section .gallery-item::before { content: '' !important; position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; height: 3px !important; background: linear-gradient(90deg, var(--ax-acc, #3B82F6), transparent 85%) !important; opacity: .9 !important; }
html:not(.light-mode) .gallery-section .gallery-item:hover { border-color: var(--ax-acc, #3B82F6) !important; box-shadow: 0 0 0 1px var(--ax-acc, #3B82F6), 0 14px 38px rgba(0,0,0,.45) !important; }
html:not(.light-mode) .gallery-section .gallery-placeholder { display: flex !important; flex-direction: column !important; align-items: center !important; padding: 22px 18px 18px !important; }
html:not(.light-mode) .gallery-section .ax-cat3d__tile { width: 84px !important; height: 84px !important; flex: 0 0 auto !important; border-color: var(--ax-acc, #3B82F6) !important; box-shadow: 0 10px 30px -10px var(--ax-acc, #3B82F6) !important; background: rgba(255,255,255,.03) !important; }
html:not(.light-mode) .gallery-section .gallery-text-label { margin-top: 12px !important; }
html:not(.light-mode) .gallery-section .gallery-text-desc { color: #9fb0d0 !important; margin-top: 8px !important; text-align: center !important; }
html:not(.light-mode) .gallery-section .ax-cat3d__chip { background: rgba(255,255,255,.05) !important; border: 1px solid var(--ax-acc, #3B82F6) !important; color: var(--ax-acc, #3B82F6) !important; }
.light-mode .gallery-section .gallery-item { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; border-radius: 14px !important; }
.light-mode .gallery-section .gallery-item .gallery-placeholder { background: transparent !important; }
.light-mode .gallery-section .gallery-item.c1 { --ax-acc: #0066cc; }
.light-mode .gallery-section .gallery-item.c2 { --ax-acc: #0a9e57; }
.light-mode .gallery-section .gallery-item.c3 { --ax-acc: #7c3aed; }
.light-mode .gallery-section .gallery-item.c4 { --ax-acc: #0284c7; }
.light-mode .gallery-section .gallery-item.c5 { --ax-acc: #ea580c; }
.light-mode .gallery-section .gallery-item.c6 { --ax-acc: #b8860b; }
.light-mode .gallery-section .gallery-item::before { content: '' !important; position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; height: 3px !important; background: linear-gradient(90deg, var(--ax-acc, #0066cc), transparent 85%) !important; opacity: .9 !important; }
.light-mode .gallery-section .gallery-item:hover { border-color: var(--ax-acc, #0066cc) !important; box-shadow: 0 12px 34px rgba(15,23,42,.14) !important; }
.light-mode .gallery-section .gallery-placeholder { display: flex !important; flex-direction: column !important; align-items: center !important; padding: 22px 18px 18px !important; }
.light-mode .gallery-section .ax-cat3d__tile { width: 84px !important; height: 84px !important; flex: 0 0 auto !important; border-color: var(--ax-acc, #0066cc) !important; box-shadow: 0 10px 30px -12px var(--ax-acc, #0066cc) !important; }
.light-mode .gallery-section .gallery-text-desc { color: #5a6b8f !important; margin-top: 8px !important; text-align: center !important; }
.light-mode .gallery-section .ax-cat3d__chip { background: rgba(0,0,0,.04) !important; border: 1px solid var(--ax-acc, #0066cc) !important; color: var(--ax-acc, #0066cc) !important; }

/* ===== v85: Secure Payment premium card ===== */
html:not(.light-mode) .payment-section .policy-card { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; }
html:not(.light-mode) .payment-section .policy-badge { top: 0 !important; left: 50% !important; transform: translate(-50%, -50%) !important; background: #3B82F6 !important; border: 4px solid #0B1320 !important; padding: 5px 16px !important; border-radius: 999px !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .8px !important; text-transform: uppercase !important; }
html:not(.light-mode) .payment-section .policy-icon { border-color: rgba(111,214,255,.5) !important; box-shadow: 0 10px 30px -10px rgba(111,214,255,.55) !important; background: rgba(255,255,255,.03) !important; }
html:not(.light-mode) .payment-section .policy-card h3 { color: #fff !important; }
html:not(.light-mode) .payment-section .policy-list { max-width: 430px !important; margin-left: auto !important; margin-right: auto !important; }
html:not(.light-mode) .payment-section .policy-list li span { color: #c9d4ea !important; }
html:not(.light-mode) .payment-section .policy-list li svg { stroke: #7dffb2 !important; color: #7dffb2 !important; }
html:not(.light-mode) .payment-section .ax-paybadges { display: flex !important; flex-wrap: wrap !important; justify-content: center !important; gap: 8px !important; margin-top: 20px !important; }
html:not(.light-mode) .payment-section .ax-pb { display: inline-flex !important; align-items: center !important; justify-content: center !important; min-width: 52px !important; height: 30px !important; padding: 0 10px !important; background: rgba(255,255,255,.05) !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 8px !important; }
html:not(.light-mode) .payment-section .ax-pb img { display: block !important; }
html:not(.light-mode) .payment-section .ax-pb-txt { font-size: 10.5px !important; font-weight: 700 !important; letter-spacing: .5px !important; text-transform: uppercase !important; color: #c9d4ea !important; }
html:not(.light-mode) .payment-section .policy-cards { max-width: 640px !important; margin-left: auto !important; margin-right: auto !important; }
.light-mode .payment-section .policy-card { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; }
.light-mode .payment-section .policy-badge { top: 0 !important; left: 50% !important; transform: translate(-50%, -50%) !important; background: #3B82F6 !important; border: 4px solid #f4f6fb !important; padding: 5px 16px !important; border-radius: 999px !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: .8px !important; text-transform: uppercase !important; color: #fff !important; }
.light-mode .payment-section .policy-icon { border-color: rgba(2,132,199,.4) !important; box-shadow: 0 10px 30px -12px rgba(2,132,199,.4) !important; }
.light-mode .payment-section .policy-list li span { color: #3a4a6b !important; }
.light-mode .payment-section .policy-list li svg { stroke: #0a9e57 !important; color: #0a9e57 !important; }
.light-mode .payment-section .ax-paybadges { display: flex !important; flex-wrap: wrap !important; justify-content: center !important; gap: 8px !important; margin-top: 20px !important; }
.light-mode .payment-section .ax-pb { display: inline-flex !important; align-items: center !important; justify-content: center !important; min-width: 52px !important; height: 30px !important; padding: 0 10px !important; background: rgba(0,0,0,.04) !important; border: 1px solid rgba(0,0,0,.1) !important; border-radius: 8px !important; }
.light-mode .payment-section .ax-pb img { display: block !important; filter: invert(1) !important; }
.light-mode .payment-section .ax-pb-txt { font-size: 10.5px !important; font-weight: 700 !important; letter-spacing: .5px !important; text-transform: uppercase !important; color: #3a4a6b !important; }
.light-mode .payment-section .policy-cards { max-width: 640px !important; margin-left: auto !important; margin-right: auto !important; }

/* ===== v85b: unclip SECURE badge on payment card ===== */
.payment-section .policy-card { overflow: visible !important; }
.payment-section .policy-list { width: fit-content !important; margin-left: auto !important; margin-right: auto !important; }

/* ===== v86: FAQ premium flat accents ===== */
html:not(.light-mode) .faq-item { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; }
html:not(.light-mode) .faq-item .ax3d-glare { display: none !important; }
html:not(.light-mode) .faq-item:hover { background: #0a101f !important; border-color: rgba(125,180,255,.55) !important; box-shadow: 0 0 0 1px rgba(125,180,255,.25), 0 10px 34px -14px rgba(125,180,255,.4) !important; }
html:not(.light-mode) .faq-item.active { border-color: rgba(125,180,255,.7) !important; box-shadow: 0 0 0 1px rgba(125,180,255,.35), 0 14px 40px -14px rgba(125,180,255,.5) !important; }
html:not(.light-mode) .faq-icon { width: 40px !important; height: 40px !important; flex: 0 0 40px !important; display: flex !important; align-items: center !important; justify-content: center !important; margin-bottom: 0 !important; opacity: 1 !important; background: rgba(125,180,255,.08) !important; border: 1px solid rgba(125,180,255,.35) !important; border-radius: 10px !important; color: #7db4ff !important; }
html:not(.light-mode) .faq-icon svg { width: 20px !important; height: 20px !important; }
html:not(.light-mode) .faq-item.active .faq-icon { background: rgba(125,180,255,.14) !important; border-color: rgba(125,180,255,.6) !important; box-shadow: 0 0 18px -4px rgba(125,180,255,.5) !important; }
html:not(.light-mode) .faq-header h3 { color: #fff !important; }
html:not(.light-mode) .faq-arrow { color: #7db4ff !important; opacity: .85 !important; }
html:not(.light-mode) .faq-body p { color: #9fb0d0 !important; opacity: 1 !important; }
html:not(.light-mode) .faq-body p strong { color: #fff !important; }
.light-mode .faq-item { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; border-radius: 14px !important; }
.light-mode .faq-item:hover { background: #ffffff !important; border-color: rgba(2,132,199,.55) !important; box-shadow: 0 10px 30px -14px rgba(2,132,199,.35) !important; }
.light-mode .faq-item.active { border-color: rgba(2,132,199,.7) !important; box-shadow: 0 0 0 1px rgba(2,132,199,.3), 0 14px 36px -14px rgba(2,132,199,.45) !important; }
.light-mode .faq-icon { width: 40px !important; height: 40px !important; flex: 0 0 40px !important; display: flex !important; align-items: center !important; justify-content: center !important; margin-bottom: 0 !important; opacity: 1 !important; background: rgba(2,132,199,.08) !important; border: 1px solid rgba(2,132,199,.35) !important; border-radius: 10px !important; color: #0369a1 !important; }
.light-mode .faq-header h3 { color: #0b1020 !important; }
.light-mode .faq-arrow { color: #0369a1 !important; opacity: .85 !important; }
.light-mode .faq-body p { color: #3a4a6b !important; opacity: 1 !important; }
.light-mode .faq-body p strong { color: #0b1020 !important; }

/* ===== v87: Popular Products grid (replaces compare table) ===== */
.pop-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; max-width: 1200px; margin: 0 auto; }
.pop-card { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; padding: 30px 22px 24px; background: #0a101f; border: 1px solid rgba(255,255,255,.1); border-radius: 14px; text-decoration: none; transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; --pop-acc: #7db4ff; }
.pop-card:nth-child(2) { --pop-acc: #7dffb2; }
.pop-card:nth-child(3) { --pop-acc: #c39bff; }
.pop-card:nth-child(4) { --pop-acc: #6fd6ff; }
.pop-card:hover { transform: translateY(-4px); border-color: var(--pop-acc); box-shadow: 0 0 0 1px color-mix(in srgb, var(--pop-acc) 30%, transparent), 0 18px 44px -16px color-mix(in srgb, var(--pop-acc) 45%, transparent); }
.pop-card.is-popular { border-color: rgba(125,180,255,.55); box-shadow: 0 0 0 1px rgba(125,180,255,.25), 0 14px 40px -18px rgba(125,180,255,.45); }
.pop-ribbon { position: absolute; top: 0; left: 50%; transform: translate(-50%, -50%); background: #3B82F6; color: #fff; font-size: 10px; font-weight: 700; letter-spacing: .8px; text-transform: uppercase; padding: 4px 14px; border-radius: 999px; border: 3px solid #0B1320; white-space: nowrap; }
.pop-icon { width: 56px; height: 56px; display: flex; align-items: center; justify-content: center; background: color-mix(in srgb, var(--pop-acc) 10%, transparent); border: 1px solid color-mix(in srgb, var(--pop-acc) 35%, transparent); border-radius: 14px; margin-bottom: 16px; }
.pop-card h3 { color: #fff; font-size: 17px; font-weight: 600; margin: 0 0 6px; }
.pop-tag { color: #9fb0d0; font-size: 12.5px; margin: 0 0 16px; }
.pop-price { color: #fff; font-size: 26px; font-weight: 700; line-height: 1; margin-bottom: 18px; }
.pop-price span { display: block; font-size: 10.5px; font-weight: 600; letter-spacing: .8px; text-transform: uppercase; color: var(--pop-acc); margin-top: 6px; }
.pop-feats { list-style: none; padding: 0; margin: 0 0 22px; display: flex; flex-direction: column; gap: 8px; width: 100%; }
.pop-feats li { position: relative; padding-left: 18px; color: #9fb0d0; font-size: 12.5px; text-align: left; }
.pop-feats li::before { content: ''; position: absolute; left: 0; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: color-mix(in srgb, var(--pop-acc) 18%, transparent); border: 1px solid var(--pop-acc); }
.pop-buy { display: inline-flex; align-items: center; justify-content: center; width: 100%; padding: 11px 0; background: #3B82F6; color: #fff; font-size: 13px; font-weight: 700; border-radius: 12px; transition: background .25s ease, transform .25s ease; margin-top: auto; }
.pop-card:hover .pop-buy { background: #0074e8; transform: translateY(-1px); }
.light-mode .pop-card { background: #ffffff; border-color: rgba(0,0,0,.1); }
.light-mode .pop-card:nth-child(1), .light-mode .pop-card.is-popular { --pop-acc: #0066cc; border-color: rgba(0,102,204,.5); box-shadow: 0 10px 30px -16px rgba(0,102,204,.35); }
.light-mode .pop-card:nth-child(2) { --pop-acc: #0a9e57; }
.light-mode .pop-card:nth-child(3) { --pop-acc: #8b2fc9; }
.light-mode .pop-card:nth-child(4) { --pop-acc: #0891b2; }
.light-mode .pop-card:hover { border-color: var(--pop-acc); box-shadow: 0 0 0 1px color-mix(in srgb, var(--pop-acc) 25%, transparent), 0 18px 40px -18px color-mix(in srgb, var(--pop-acc) 35%, transparent); }
.light-mode .pop-ribbon { border-color: #f4f6fb; }
.light-mode .pop-icon { background: color-mix(in srgb, var(--pop-acc) 8%, transparent); }
.light-mode .pop-icon img { filter: invert(1); }
.light-mode .pop-card h3 { color: #0b1020; }
.light-mode .pop-tag, .light-mode .pop-feats li { color: #3a4a6b; }
.light-mode .pop-price { color: #0b1020; }
@media (max-width: 1100px) { .pop-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .pop-grid { grid-template-columns: 1fr; } }

/* ===== v88: products page cleanup ===== */
/* 1. kill the duplicate native search — the theme's .ax-search is the one search */
section.py-5-nav input[placeholder="Search for products..."] { display: none !important; }
section.py-5-nav input[placeholder="Search for products..."] + * { display: none !important; }
/* 2. category chips: one row on desktop */
@media (min-width: 1100px) {
  .ax-cats { gap: 8px !important; }
  .ax-cat-chip { padding: 7px 15px !important; font-size: 13px !important; white-space: nowrap !important; }
}

/* ===== v89: vertical rhythm + slim headers ===== */
/* 1. shorter hero (desktop + mobile) */
.hero { padding-top: 76px !important; padding-bottom: 60px !important; }
.hero-logo3d { margin-bottom: 10px !important; }
.hero-badge { margin-bottom: 10px !important; }
.hero-title { margin-bottom: 14px !important; }
.hero-subtitle { margin-bottom: 20px !important; }
.hero-stats { margin-bottom: 22px !important; }
/* 2. mobile: slim the payments band (was 64px top+bottom = dead air after the payment card) */
@media (max-width: 768px) {
  .payments-loaded { padding: 28px 0 !important; }
}
/* 3. quick-view modal slim header */
.ax-qv { padding: 18px 20px 20px !important; }
.ax-qv-title { font-size: 17px !important; margin: 0 0 4px !important; }
/* 4. product page buy box slim header */
[data-component-id=product-page] .pp-buybox h1, [data-component-id=product-page] .pp-buybox h2 { font-size: 26px !important; line-height: 1.18 !important; margin-bottom: 10px !important; }
/* 5. products page: homepage 100px rhythm */
section.py-5-nav { padding-bottom: 100px !important; }

/* v89b: hero min-height was pinning it at 1000px — let content size it */
.hero { min-height: 0 !important; height: auto !important; }

/* v89c: mobile hero fits the fold */
@media (max-width: 768px) {
  .hero { padding-top: 56px !important; padding-bottom: 44px !important; }
}

/* ===== v90: cart page premium ===== */
/* item card: flat + accent hover (echoes the product's own category accent) */
html:not(.light-mode) .cart-item-bg { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; overflow: hidden; }
.cart-item-bg { transition: border-color .25s ease, box-shadow .25s ease !important; }
.cart-item-bg:hover { border-color: color-mix(in srgb, var(--cat-accent, #7db4ff) 55%, transparent) !important; box-shadow: 0 0 0 1px color-mix(in srgb, var(--cat-accent, #7db4ff) 25%, transparent), 0 12px 34px -16px color-mix(in srgb, var(--cat-accent, #7db4ff) 40%, transparent) !important; }
/* compact image */
.cart-item-bg .aspect-product-card-image { width: 132px !important; max-width: 132px !important; flex: 0 0 132px !important; padding: 10px !important; }
.cart-item-bg .aspect-product-card-image img.object-product-image { width: 100% !important; height: 100% !important; object-fit: cover !important; border-radius: 10px !important; }
@media (max-width: 576px) { .cart-item-bg .aspect-product-card-image { width: 104px !important; flex-basis: 104px !important; padding: 8px !important; } }
/* info column: let titles wrap to 2 lines (no more single-char truncation) */
.cart-item-bg .flex-grow-1.text-start { overflow: visible !important; }
.cart-item-bg .cart-product-link { display: -webkit-box !important; -webkit-line-clamp: 2 !important; -webkit-box-orient: vertical !important; overflow: hidden !important; white-space: normal !important; font-size: 15px !important; line-height: 1.35 !important; }
.cart-item-bg .cart-variant-text { display: inline-block !important; padding: 3px 11px !important; margin-top: 8px !important; background: rgba(255,255,255,.05) !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 999px !important; font-size: 11px !important; color: #9fb0d0 !important; }
html:not(.light-mode) .cart-item-bg .cart-discount-text { color: #ffd76f !important; }
/* qty stepper: real buttons */
.cart-item-bg .cart-qty-btn { width: 34px !important; height: 34px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; background: rgba(255,255,255,.06) !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 9px !important; color: #fff !important; transition: all .2s ease !important; }
.cart-item-bg .cart-qty-btn:hover { background: rgba(125,180,255,.15) !important; border-color: rgba(125,180,255,.5) !important; color: #7db4ff !important; }
.cart-item-bg input.form-control { background: transparent !important; border: none !important; color: #fff !important; font-weight: 700 !important; text-align: center !important; box-shadow: none !important; width: 46px !important; }
/* remove buttons: red-tint ghost */
.cart-item-bg [class*="cart-remove"]:not(.cart-remove-mobile) { width: 34px !important; height: 34px !important; display: inline-flex !important; align-items: center !important; justify-content: center !important; background: rgba(255,64,64,.08) !important; border: 1px solid rgba(255,64,64,.25) !important; border-radius: 9px !important; color: #ff8f8f !important; transition: all .2s ease !important; }
.cart-item-bg [class*="cart-remove"]:not(.cart-remove-mobile):hover { background: rgba(255,64,64,.18) !important; border-color: rgba(255,64,64,.5) !important; color: #ff5c5c !important; }
.cart-item-bg .cart-remove-mobile { color: #ff8f8f !important; }
/* summary card */
[data-component-id=cart-page] .form.p-4 { background-image: none !important; }
html:not(.light-mode) [data-component-id=cart-page] .form.p-4 { background: #0a101f !important; }
.ax-cart-summary .form-label { color: #7db4ff !important; font-size: 11.5px !important; letter-spacing: 1.4px !important; text-transform: uppercase !important; font-weight: 700 !important; margin-bottom: 12px !important; }
html:not(.light-mode) .ax-cart-summary .text-muted { color: #9fb0d0 !important; }
html:not(.light-mode) .ax-cart-summary .pb-2.border-bottom { border-bottom: 1px solid rgba(255,255,255,.08) !important; }
html:not(.light-mode) .ax-cart-summary .fw-bold { color: #fff !important; }
.ax-cart-summary .btn-outline-primary { padding: 15px 20px !important; font-size: 14.5px !important; font-weight: 700 !important; letter-spacing: .4px !important; }
.ax-cart-summary .btn-outline-primary:hover { box-shadow: 0 12px 32px -12px rgba(59,130,246,.55) !important; }
/* light-mode twins */
.light-mode .cart-item-bg { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; }
.light-mode .cart-item-bg .cart-variant-text { background: rgba(0,0,0,.04) !important; border-color: rgba(0,0,0,.1) !important; color: #3a4a6b !important; }
.light-mode .cart-item-bg .cart-qty-btn { background: rgba(0,0,0,.04) !important; border-color: rgba(0,0,0,.1) !important; color: #0b1020 !important; }
.light-mode .cart-item-bg .cart-qty-btn:hover { background: rgba(2,132,199,.1) !important; border-color: rgba(2,132,199,.4) !important; color: #0369a1 !important; }
.light-mode .cart-item-bg [class*="cart-remove"]:not(.cart-remove-mobile) { background: rgba(220,38,38,.06) !important; border-color: rgba(220,38,38,.25) !important; color: #dc2626 !important; }
.light-mode .ax-cart-summary .form-label { color: #0369a1 !important; }
.light-mode [data-component-id=cart-page] .form.p-4 { background: #ffffff !important; }

/* ===== v91: flat modals + reviews/trust/payments flatten + light-mode completion ===== */
/* 1. all modals (customer login, native quick view, etc.) */
html:not(.light-mode) .modal-content { background: #0a101f !important; background-image: none !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; box-shadow: 0 24px 60px -20px rgba(0,0,0,.65) !important; }
html:not(.light-mode) .modal-content .modal-title { color: #fff !important; }
html:not(.light-mode) .modal-content .form-label, html:not(.light-mode) .modal-content .form-text { color: #9fb0d0 !important; }
html:not(.light-mode) .modal-content .form-control, html:not(.light-mode) .modal-content .form-select { background: rgba(255,255,255,.05) !important; border: 1px solid rgba(255,255,255,.1) !important; color: #fff !important; border-radius: 10px !important; }
html:not(.light-mode) .modal-content .form-control:focus { border-color: rgba(125,180,255,.6) !important; box-shadow: 0 0 0 3px rgba(59,130,246,.15) !important; }
html:not(.light-mode) .modal-content .btn-close { filter: invert(1) !important; }
html:not(.light-mode) .modal-content .btn-primary { background: #3B82F6 !important; border-color: #3B82F6 !important; }
.light-mode .modal-content { background: #ffffff !important; background-image: none !important; border: 1px solid rgba(0,0,0,.1) !important; border-radius: 14px !important; }
.light-mode .modal-content .form-control, .light-mode .modal-content .form-select { background: #ffffff !important; border: 1px solid rgba(0,0,0,.15) !important; color: #0b1020 !important; border-radius: 10px !important; }
/* 2. review cards */
html:not(.light-mode) .review-card { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; color: #c9d4ea !important; }
html:not(.light-mode) .review-card .ax3d-glare { display: none !important; }
html:not(.light-mode) .review-card:hover { border-color: rgba(125,180,255,.55) !important; box-shadow: 0 0 0 1px rgba(125,180,255,.22), 0 12px 32px -16px rgba(125,180,255,.4) !important; }
html:not(.light-mode) .review-card strong, html:not(.light-mode) .review-card b, html:not(.light-mode) .review-card h4, html:not(.light-mode) .review-card .review-name { color: #fff !important; }
.light-mode .review-card { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; color: #3a4a6b !important; }
.light-mode .review-card strong, .light-mode .review-card b, .light-mode .review-card h4 { color: #0b1020 !important; }
/* 3. trust cards with per-card accents */
html:not(.light-mode) .trust-card { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; --ax-acc: #7db4ff; }
html:not(.light-mode) .trust-card:nth-child(2) { --ax-acc: #7dffb2; }
html:not(.light-mode) .trust-card:nth-child(3) { --ax-acc: #ffd76f; }
html:not(.light-mode) .trust-card:nth-child(4) { --ax-acc: #c39bff; }
html:not(.light-mode) .trust-card .ax3d-glare { display: none !important; }
html:not(.light-mode) .trust-card:hover { border-color: color-mix(in srgb, var(--ax-acc) 55%, transparent) !important; box-shadow: 0 0 0 1px color-mix(in srgb, var(--ax-acc) 25%, transparent), 0 12px 34px -16px color-mix(in srgb, var(--ax-acc) 40%, transparent) !important; }
html:not(.light-mode) .trust-card svg { color: var(--ax-acc) !important; }
html:not(.light-mode) .trust-card p { color: #9fb0d0 !important; }
html:not(.light-mode) .trust-card h3, html:not(.light-mode) .trust-card strong { color: #fff !important; }
.light-mode .trust-card { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; --ax-acc: #0066cc; }
.light-mode .trust-card:nth-child(2) { --ax-acc: #0a9e57; }
.light-mode .trust-card:nth-child(3) { --ax-acc: #b8860b; }
.light-mode .trust-card:nth-child(4) { --ax-acc: #8b2fc9; }
.light-mode .trust-card p { color: #3a4a6b !important; }
/* 4. payments panel */
html:not(.light-mode) .payments-panel { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; }
.light-mode .payments-panel { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; }
/* 5. cookie banner */
.cookie-banner { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; border-radius: 14px !important; }
.light-mode .cookie-banner { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; }
/* 6. privacy page grid-gradient artifact */
div.error { background-image: none !important; }
/* 7. light-mode completion: products + product page */
.light-mode .product-card { background: #ffffff !important; border-color: rgba(0,0,0,.1) !important; }
.light-mode .ax-search-input { background: #ffffff !important; border-color: rgba(0,0,0,.15) !important; color: #0b1020 !important; }
.light-mode .ax-search-input::placeholder { color: #6b7a99 !important; }
.light-mode .product-card__image { background: #eef1f7 !important; }
.light-mode img.aspect-product-page-image { background: transparent !important; }

/* v91b: beat SellAuth app dark !important in light mode (doubled specificity, later cascade) */
html.light-mode .product-card.product-card { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; }
html.light-mode .product-card .product-card__title { color: #0b1020 !important; -webkit-text-fill-color: #0b1020 !important; }
html.light-mode .product-card .product-card__image { background: #eef1f7 !important; }
html.light-mode .ax-search-input.ax-search-input { background: #ffffff !important; color: #0b1020 !important; border-color: rgba(0,0,0,.15) !important; }
html.light-mode .ax-cat-chip.ax-cat-chip { background: rgba(0,0,0,.05) !important; color: #3a4a6b !important; border-color: rgba(0,0,0,.12) !important; }
html.light-mode .ax-cat-chip.ax-cat-chip.active { background: #3B82F6 !important; color: #fff !important; border-color: #3B82F6 !important; }
html.light-mode [data-component-id=product-page] .pp-buybox.pp-buybox { background: #ffffff !important; border: 1px solid rgba(0,0,0,.1) !important; }/* ==== v94: QV entrance + navbar two-tone unify + nav-link glow ==== */
.ax-qv { opacity:0; transition: transform .42s cubic-bezier(.22,1,.36,1), opacity .34s ease; }
.ax-qv-ov.ax-open .ax-qv { opacity:1; }
@media (prefers-reduced-motion: reduce) {
  .ax-qv { opacity:1 !important; transform:none !important; transition:none !important; }
}
/* unify navbar surfaces to the flat #0a101f system (was 12,20,48 glass vs 12,14,20 panel) */
.header .header-inner, header .header-inner { background: rgba(10,16,31,.92) !important; border:1px solid rgba(255,255,255,.09) !important; }
.nav-dropdown-panel { background: rgba(10,16,31,.97) !important; }
.ax-orbit .ax-tip { background: rgba(10,16,31,.95); }
/* nav-link blue glow hover — as polished as the active blue pill */
.header-nav .nav-link { border-radius:999px; transition: transform .25s ease, text-shadow .25s ease, background-color .25s ease, box-shadow .25s ease, color .25s ease !important; }
.header-nav .nav-link:hover { color:#fff !important; background: rgba(59,130,246,.15); box-shadow: inset 0 0 0 1px rgba(59,130,246,.32), 0 0 20px rgba(59,130,246,.2); text-shadow: 0 0 12px rgba(140,190,255,.9), 0 0 26px rgba(59,130,246,.45) !important; }
html.light-mode .header-nav .nav-link:hover { color:#0057b8 !important; background:rgba(59,130,246,.1); text-shadow:none !important; box-shadow: inset 0 0 0 1px rgba(59,130,246,.28); }/* ==== v94b: flatten last rgb(12,20,48) surfaces ==== */
.payments-panel, .payment-card, .support-tooltip { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; }
html.light-mode .payments-panel, html.light-mode .payment-card, .light-mode .payments-panel, .light-mode .payment-card { background: #ffffff !important; border-color: rgba(0,0,0,.1) !important; }
html.light-mode .support-tooltip, .light-mode .support-tooltip { background: #0a101f !important; border-color: rgba(255,255,255,.12) !important; }/* ==== v94c: specificity-matched flatten (beat ID-scoped #0C1430 rules) ==== */
html:not(.light-mode) #es-payments-section .payments-panel,
html:not(.light-mode) .payments-panel,
.payments-panel { background: #0a101f !important; border: 1px solid rgba(255,255,255,.1) !important; }
html:not(.light-mode) .support-button .support-tooltip,
.support-button .support-tooltip { background: #0a101f !important; }
.support-button .support-tooltip::after { border-left-color: #0a101f !important; }
html.light-mode #es-payments-section .payments-panel, html.light-mode .payments-panel,
.light-mode .payments-panel { background: #ffffff !important; border-color: rgba(0,0,0,.1) !important; }/* ==== v95: product grid centering fix (minmax(0,1fr) kills min-content blowout) ==== */
.ax-prod-grid.ax-caro { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
.ax-prod-grid > [class*="col-"] { min-width: 0 !important; max-width: none !important; flex: none !important; width: auto !important; }
.ax-prod-grid .product-card { min-width: 0 !important; max-width: 100% !important; }
.ax-prod-grid .product-card__image img { width: 100% !important; max-width: 100% !important; object-fit: cover !important; }
@media (max-width: 991.98px) {
  .ax-prod-grid.ax-caro { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 575.98px) {
  .ax-prod-grid.ax-caro { grid-template-columns: minmax(0, 1fr) !important; }
}/* ==== v96: mobile compact cards + menu icons + language row + reveal safety ==== */
@media (max-width: 575.98px) {
  .ax-prod-grid.ax-caro { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px 10px !important; }
  .ax-prod-grid > [class*="col-"] { padding-left: 5px !important; padding-right: 5px !important; margin-top: 10px !important; }
  .ax-prod-grid .product-card { padding: 8px !important; border-radius: 12px !important; }
  .ax-prod-grid .product-card__image, .ax-prod-grid .product-card__image img { height: 112px !important; }
  .ax-prod-grid .product-card__title { font-size: 12.5px !important; line-height: 1.3 !important; }
  .ax-prod-grid .product-card__price { font-size: 14px !important; }
}
.header-nav .nav-link .ax-mi { display: none; }
@media (max-width: 991.98px) {
  .header-nav .nav-link .ax-mi { display: inline-flex; width: 18px; height: 18px; flex: 0 0 18px; margin-right: 10px; vertical-align: -3px; color: #9fb2d8; }
  .header-nav .nav-link .ax-mi svg { width: 100%; height: 100%; }
  .header-nav a[href*="discord"] .ax-mi { color: #5865F2; }
  .ax-mlang { display: flex !important; align-items: center; gap: 10px; margin: 10px 12px 4px; padding: 10px 12px; background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1); border-radius: 12px; }
  .ax-mlang .ax-mi { display: inline-flex; width: 17px; height: 17px; color: #9fb2d8; }
  .ax-mlang .ax-mi svg { width: 100%; height: 100%; }
  .ax-mlang select { appearance: none; -webkit-appearance: none; background: rgba(255,255,255,.05); color: #fff; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; padding: 7px 14px; font-size: 13px; font-weight: 600; width: auto !important; }
  .ax-mlang select option { background: #0a101f; color: #fff; }
}
.ax-mlang { display: none; }
html.light-mode .ax-mlang { background: rgba(0,0,0,.04); border-color: rgba(0,0,0,.1); }
html.light-mode .ax-mlang select { background: #fff; color: #111; border-color: rgba(0,0,0,.15); }
/* ==== v97: language row one-line tidy ==== */
.ax-mlang { flex-wrap: nowrap; }
.ax-mlang select { max-width: 180px; white-space: nowrap; }/* ==== v98: no black band behind the navbar on scroll ==== */
header.background-opaque,
header.background-opaque:hover { background: transparent !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; border-bottom: none !important; box-shadow: none !important; }
.light-mode header.background-opaque { background: transparent !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; border-bottom: none !important; box-shadow: none !important; }/* ==== v99: min-content blowout guard for homepage card grids (min-width:0 == minmax(0,1fr) effect, keeps column counts) ==== */
.pop-grid > *, .faq-grid > *, .trust-grid > *, .gallery-grid > * { min-width: 0 !important; max-width: 100%; }
.pop-grid img, .faq-grid img, .trust-grid img, .gallery-grid img { max-width: 100%; }/* ==== v100: uniform card image fill — cover-fit, img always fills its slot (beats SellAuth contain rule) ==== */
.ax-prod-grid .product-card__image.product-card__image img,
.ax-prod-grid .product-card .product-card__image img,
.pop-grid .product-card__image.product-card__image img,
.pop-grid .product-card .product-card__image img {
  width: 100% !important; height: 100% !important; max-width: none !important;
  object-fit: cover !important; object-position: center !important; display: block !important;
}/* ==== v100b: cover-fit beats the (0,3,2)/(0,3,3) ax-products-page contain rules ==== */
body.ax-products-page .product-card .product-card__image.product-card__image img,
html:not(.light-mode) body.ax-products-page .product-card .product-card__image.product-card__image img,
html.light-mode body.ax-products-page .product-card .product-card__image.product-card__image img {
  width: 100% !important; height: 100% !important; max-width: none !important;
  object-fit: cover !important; object-position: center !important; display: block !important;
}/* ==== v101: centering fixes (3d title wraps, mobile sort row) ==== */
.section-title .ax3d-wrap { display: inline-block !important; max-width: 100%; margin: 0 auto; }
@media (max-width: 575.98px) {
  .ax-toolbar { text-align: center !important; }
  .ax-toolbar-sort { justify-content: center !important; }
}
/* ==== v102: mobile toolbar stacks centered ==== */
@media (max-width: 575.98px) {
  .ax-toolbar { flex-direction: column !important; align-items: center !important; gap: 8px !important; }
}/* ==== v103: products hero — no orbs, no blur box, no mouse tilt ==== */
.products-hero .ax3d-orb { display: none !important; }
.products-hero { background: transparent !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
body.ax-products-page .products-hero .products-hero-title,
body.ax-products-page .products-hero h1 { transform: none !important; }/* ==== v104: bigger Apple Pay / Google Pay badges ==== */
.pay-badge.pay-apay, .pay-badge.pay-gpay { height: 34px; padding: 0 12px; border-radius: 7px; }
.pay-badge.pay-apay img, .pay-badge.pay-gpay img { height: 22px !important; width: auto !important; }/* ==== v105: stronger scrolled navbar pill separation ==== */
/* scrolled pill: deeper shadow + subtle blue ring so it separates cleanly */
body header nav.navbar,
body header .navbar,
body header nav {
  transition: box-shadow .25s ease, background-color .25s ease !important;
}
body[class*="scrolled"] header nav.navbar,
body[class*="scrolled"] header .navbar,
body[class*="scrolled"] header nav,
header.background-opaque nav.navbar,
header.background-opaque .navbar,
header.background-opaque nav,
header[class*="scrolled"] nav.navbar,
header[class*="scrolled"] .navbar,
header[class*="scrolled"] nav,
header[class*="opaque"] nav.navbar,
header[class*="opaque"] .navbar,
header[class*="opaque"] nav {
  box-shadow:
    0 10px 30px -8px rgba(0, 0, 0, .55),
    0 4px 12px -2px rgba(0, 0, 0, .40),
    0 0 0 1px rgba(120, 170, 255, .16),
    0 0 22px -4px rgba(80, 140, 255, .22) !important;
}
/* light mode: same depth, softer ring */
html[data-theme="light"] body[class*="scrolled"] header nav,
html[data-theme="light"] header.background-opaque nav,
html[data-theme="light"] header[class*="scrolled"] nav,
html[data-theme="light"] header[class*="opaque"] nav {
  box-shadow:
    0 10px 28px -8px rgba(30, 50, 90, .28),
    0 4px 12px -2px rgba(30, 50, 90, .18),
    0 0 0 1px rgba(60, 110, 220, .14),
    0 0 20px -4px rgba(60, 110, 220, .16) !important;
}/* ==== v106: scrolled pill depth (header-inner) ==== */
/* the floating pill is .header-inner; deepen its shadow when the header is scrolled */
header.background-opaque .header-inner,
header[class*="scrolled"] .header-inner,
header[class*="opaque"] .header-inner,
body[class*="scrolled"] header .header-inner {
  box-shadow:
    0 14px 40px -6px rgba(0, 0, 0, .60),
    0 5px 16px -2px rgba(0, 0, 0, .45),
    0 0 0 1px rgba(120, 170, 255, .18),
    0 0 26px -4px rgba(80, 140, 255, .25) !important;
}
/* light mode: same depth, softer blue-tinted ring */
html[data-theme="light"] header.background-opaque .header-inner,
html[data-theme="light"] header[class*="scrolled"] .header-inner,
html[data-theme="light"] header[class*="opaque"] .header-inner,
html[data-theme="light"] body[class*="scrolled"] header .header-inner {
  box-shadow:
    0 14px 36px -6px rgba(30, 50, 90, .30),
    0 5px 16px -2px rgba(30, 50, 90, .20),
    0 0 0 1px rgba(60, 110, 220, .16),
    0 0 22px -4px rgba(60, 110, 220, .18) !important;
}/* ==== v107: min-content guard for related carousel + quick-view modal ==== */
/* --- related carousel (product page pp-related): kill min-content blowout --- */
.pp-related .row.products > [class*="col-"] { min-width: 0 !important; max-width: 100%; }
.pp-related .row.products { min-width: 0; max-width: 100%; }
.pp-related .product-card { min-width: 0; max-width: 100%; }
.pp-related .product-card__title,
.pp-related .product-card__price { overflow-wrap: anywhere; word-break: break-word; }
/* --- quick-view modal: same guards inside the dialog --- */
.ax-qv { min-width: 0; max-width: 100%; }
.ax-qv-body { min-width: 0; max-width: 100%; }
.ax-qv-title, .ax-qv-price, .ax-qv-desc { overflow-wrap: anywhere; word-break: break-word; min-width: 0; }
.ax-qv-img { max-width: 100%; }
.ax-qv-buy { max-width: 100%; }/* ==== v110: preloader + hero-card use official A logo ==== */
.loader-logo img { object-fit: contain !important; background: transparent !important; }
.light-mode .loader-logo img { filter: none !important; }
.axhc-logo img { object-fit: contain !important; }/* ==== v111: Nivex-style discount popup (.EXE) ==== */
/* v133: never let our overlays block native modals (login/ticket/checkout) */
body.modal-open .ax-promo-ov, body.modal-open .ax-qv-ov { display:none !important; }
body.modal-open .axhc, body.modal-open .ax-buybar, body.modal-open .ax-topbar { display:none !important; }
/* v134: the app wrapper z-index:1 traps .modal (z1055) under the backdrop (z1050) — drop it while a modal is open */
body.modal-open #app.flex-wrapper, body.modal-open .flex-wrapper { z-index: auto !important; }
.ax-promo-ov { position:fixed; inset:0; z-index:120000; display:flex; align-items:center; justify-content:center;
  background:rgba(3,6,18,.72); backdrop-filter:blur(6px); opacity:0; pointer-events:none; transition:opacity .28s ease; padding:18px; }
.ax-promo-ov.ax-open { opacity:1; pointer-events:auto; }
.ax-promo { width:min(460px, 94vw); border-radius:18px; overflow:hidden; position:relative;
  background:#0d1530; border:1px solid rgba(120,170,255,.22);
  box-shadow:0 30px 90px rgba(0,0,0,.65), 0 0 60px -18px rgba(59,130,246,.5);
  transform:translateY(16px) scale(.96); transition:transform .3s cubic-bezier(.22,1,.36,1); }
.ax-promo-ov.ax-open .ax-promo { transform:translateY(0) scale(1); }
.ax-promo-banner { position:relative; height:120px; overflow:hidden;
  background:linear-gradient(120deg,#071433 0%,#0b2a6b 45%,#0e3fa8 75%,#38bdf8 110%); }
.ax-promo-banner::after { content:''; position:absolute; inset:0;
  background:linear-gradient(90deg, transparent 0%, rgba(56,189,248,.18) 50%, transparent 100%);
  animation:axpromo-shine 2.6s ease-in-out infinite; }
@keyframes axpromo-shine { 0%,100% { transform:translateX(-60%);} 50% { transform:translateX(60%);} }
.ax-promo-emoji { position:absolute; top:14px; font-size:30px; filter:drop-shadow(0 4px 10px rgba(0,0,0,.5)); }
.ax-promo-emoji.l { left:16px; } .ax-promo-emoji.r { right:16px; }
.ax-promo-title { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; }
.ax-promo-title b { font-size:30px; font-weight:900; letter-spacing:1px; color:#fff;
  text-shadow:0 2px 14px rgba(0,0,0,.55), 0 0 26px rgba(56,189,248,.55); }
.ax-promo-title span { font-size:15px; font-weight:800; letter-spacing:4px; color:#7dd3fc; text-transform:uppercase; }
.ax-promo-body { padding:18px 20px 20px; text-align:center; }
.ax-promo-sub { font-size:13.5px; color:rgba(230,238,255,.78); line-height:1.5; margin:0 0 14px; }
.ax-promo-codebox { display:flex; align-items:center; justify-content:space-between; gap:10px;
  border:1px dashed rgba(125,211,252,.45); background:rgba(10,20,48,.7); border-radius:12px; padding:12px 14px; margin-bottom:14px; }
.ax-promo-code { font-size:20px; font-weight:900; letter-spacing:3px; color:#fff; }
.ax-promo-copy { display:flex; align-items:center; gap:6px; border:none; cursor:pointer; font-size:12.5px; font-weight:700;
  color:#7dd3fc; background:transparent; padding:6px 8px; border-radius:8px; transition:background .15s; }
.ax-promo-copy:hover { background:rgba(125,211,252,.12); }
.ax-promo-copy.done { color:#4ade80; }
.ax-promo-shop { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; border:none; cursor:pointer;
  font-size:14.5px; font-weight:800; color:#fff; padding:13px 20px; border-radius:12px; text-decoration:none;
  background:linear-gradient(135deg,#3B82F6,#38bdf8); box-shadow:0 10px 30px -8px rgba(59,130,246,.65); transition:transform .18s, box-shadow .18s; }
.ax-promo-shop:hover { transform:translateY(-2px); box-shadow:0 14px 38px -8px rgba(59,130,246,.8); }
.ax-promo-later { display:block; margin:12px auto 0; border:none; background:transparent; cursor:pointer;
  font-size:12.5px; color:rgba(230,238,255,.55); text-decoration:underline; text-underline-offset:3px; }
.ax-promo-later:hover { color:rgba(230,238,255,.85); }
.ax-promo-foot { display:flex; align-items:center; justify-content:center; gap:18px; padding:12px 0 4px;
  border-top:1px solid rgba(255,255,255,.07); margin-top:16px; }
.ax-promo-foot span { font-size:11.5px; color:rgba(230,238,255,.55); display:flex; align-items:center; gap:5px; }
.ax-promo-x { position:absolute; top:10px; right:10px; width:30px; height:30px; border-radius:50%; z-index:2;
  border:1px solid rgba(255,255,255,.18); background:rgba(8,12,28,.6); color:#fff; font-size:15px; cursor:pointer; line-height:1; }
.ax-promo-x:hover { background:rgba(255,255,255,.15); }
.light-mode .ax-promo { background:#f4f7ff; border-color:rgba(0,60,160,.18); }
.light-mode .ax-promo-sub { color:rgba(10,20,50,.7); }
.light-mode .ax-promo-codebox { background:#fff; border-color:rgba(0,90,200,.35); }
.light-mode .ax-promo-code { color:#0a1230; }
.light-mode .ax-promo-later { color:rgba(10,20,50,.5); }
.light-mode .ax-promo-foot span { color:rgba(10,20,50,.55); }
@media (max-width:480px) {
  .ax-promo-banner { height:96px; }
  .ax-promo-title b { font-size:24px; }
  .ax-promo-title span { font-size:12px; letter-spacing:3px; }
  .ax-promo-body { padding:14px 14px 16px; }
}

/* ==== v112 FEEDBACK VOUCH BUBBLE + hide auto-placeholder ==== */
/* Hide SellAuth's robotic "Automatic feedback after 7 days." placeholder text */
.testimonial .content .message span {
  font-size: 0 !important;
  visibility: hidden;
  position: relative;
}
.testimonial .content .message span::after {
  content: "2713  Verified purchase - automatic feedback";
  font-size: 13px !important;
  visibility: visible;
  position: absolute;
  left: 0;
  top: 0;
  white-space: nowrap;
  color: rgba(255,255,255,.45);
  font-style: italic;
}
/* The synced vouch reply: branded violet bubble */
.testimonial .content .reply {
  position: relative;
  margin: 14px 0 4px !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  background: linear-gradient(135deg, rgba(133,82,255,.16), rgba(168,15,255,.08)) !important;
  border: 1px solid rgba(133,82,255,.35) !important;
  box-shadow: 0 0 0 1px rgba(133,82,255,.06), 0 8px 24px -12px rgba(133,82,255,.45) !important;
}
.testimonial .content .reply::before {
  content: "D83EDD1D  Customer vouch";
  display: block;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #A685FF;
  margin-bottom: 6px;
}
.testimonial .content .reply .text span {
  font-size: 14.5px !important;
  visibility: visible !important;
  color: #F4F1FF !important;
  font-style: italic;
  line-height: 1.5;
  white-space: normal;
}
.testimonial .content .reply .text span::after { content: none !important; }
.testimonial .content .reply .author {
  margin-top: 8px !important;
  font-size: 11.5px !important;
  color: rgba(255,255,255,.5) !important;
}
.testimonial .content .reply .author span { color: #B794FF !important; font-weight: 700; }
/* Light mode */
html[data-theme="light"] .testimonial .content .message span::after { color: rgba(0,0,0,.4); }
html[data-theme="light"] .testimonial .content .reply {
  background: linear-gradient(135deg, rgba(133,82,255,.10), rgba(168,15,255,.05)) !important;
  border-color: rgba(133,82,255,.30) !important;
}
html[data-theme="light"] .testimonial .content .reply .text span { color: #3A2B66 !important; }
html[data-theme="light"] .testimonial .content .reply .author { color: rgba(0,0,0,.5) !important; }
html[data-theme="light"] .testimonial .content .reply::before { color: #7A4FD9; }
/* ==== END v112 ==== */

/* ==== v113: SEPTEMBER 15% DISCOUNT banner ==== */
.ax-sep15 {
  margin: 0 auto 18px;
  max-width: 780px;
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(133,82,255,.28);
  box-shadow: 0 10px 30px -14px rgba(133,82,255,.45), 0 2px 10px rgba(0,0,0,.35);
  line-height: 0;
}
.ax-sep15 img { width: 100%; height: auto; display: block; }
html[data-theme="light"] .ax-sep15 {
  border-color: rgba(133,82,255,.35);
  box-shadow: 0 10px 26px -14px rgba(133,82,255,.4), 0 2px 8px rgba(0,0,0,.08);
}
@media (max-width: 640px) {
  .ax-sep15 { margin-bottom: 14px; border-radius: 11px; }
}
/* ==== END v113 ==== */
/* v113b: clear the fixed navbar */
.ax-sep15 { margin-top: 92px; }
@media (max-width: 640px) { .ax-sep15 { margin-top: 80px; } }

/* ==== v114: NIVEX DESIGN MODE (flat navy #0B1320 + Inter + #3B82F6 pills) ==== */
/* 1. Page background -> Nivex navy (keep starfield layers beneath) */
body, .atlas-page { background: #0B1320 !important; }
/* 2. Inter font (link injected by JS below) + global text color */
body, .atlas-page { font-family: 'Inter', 'Poppins', sans-serif !important; color: #fff !important; }
/* 3. Headings: big, tight, white */
h1, h2, h3, .section-title, .hero-title, .ax3d-hero, .products-hero-title, .faq-hero-title {
  font-family: 'Inter', 'Poppins', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: -1.5px !important;
  line-height: 1.08 !important;
  color: #fff !important;
  text-shadow: none !important;
}
h1 { letter-spacing: -2px !important; }
/* 4. Primary buttons -> glowing blue pills */
.btn-primary, button.btn-primary, a.btn-primary, .ax-qv-buy, .btn-cart-add,
.ax-promo-shop, .btn-checkout, .btn:not(.btn-ghost) {
  background: #3B82F6 !important;
  color: #fff !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
  border: none !important;
  box-shadow: 0 10px 25px rgba(59, 130, 246, .4) !important;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease !important;
}
.btn-primary:hover, .ax-qv-buy:hover { background: #2f74e8 !important; transform: translateY(-1px); }
/* 5. Ghost buttons -> white outline pills */
.btn-ghost, .ax-promo-later, .btn-outline-secondary, .btn-outline-primary,
.ax-ghost, .btn-light {
  background: transparent !important;
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, .15) !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
}
.btn-ghost:hover, .btn-outline-secondary:hover { border-color: rgba(255,255,255,.35) !important; }
/* 6. Cards -> ultra-flat white-alpha */
.card, .product-card, .ax-flat, .buy-box, .ax-qv, .policy-card, .step-card, .trust-card,
.faq-item, .review-card, .testimonial {
  background: rgba(255, 255, 255, .03) !important;
  border: 1px solid rgba(255, 255, 255, .06) !important;
  border-radius: 18px !important;
  box-shadow: none !important;
}
/* 7. Stock / availability chips -> Nivex green tint */
[class*=stock], .stock-badge, .ax-stock, .in-stock {
  background: rgba(0, 200, 83, .08) !important;
  color: #00C853 !important;
  border: 1px solid rgba(0, 200, 83, .25) !important;
  border-radius: 999px !important;
}
/* 8. Nav pill stays but adopts the blue glow on active */
.nav-links a.active, .ax-nav-active {
  background: #3B82F6 !important;
  box-shadow: 0 8px 22px rgba(59, 130, 246, .35) !important;
}
/* 9. Muted text tone */
.text-muted, .muted, .section-desc, .faq-item p, footer p, footer a {
  color: rgba(255, 255, 255, .55) !important;
}
/* ==== END v114 ==== */

/* ==== v115: NIVEX BUY-BOX MATCH (reference screenshot parity) ==== */
/* A. Buy-box buttons: 12px rounded (Nivex uses rounded rects, not pills) */
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .btn-primary,
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox button.btn-primary,
.product-wrapper button.btn-primary {
  background: #3B82F6 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 12px !important;
  min-height: 56px !important;
  padding: 8px 24px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .5px !important;
  box-shadow: 0 8px 24px rgba(59, 130, 246, .45) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  transition: background .18s ease, transform .18s ease, box-shadow .18s ease !important;
}
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .btn-primary:hover,
.product-wrapper button.btn-primary:hover {
  background: #2f74e8 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 12px 30px rgba(59, 130, 246, .55) !important;
}
/* nested "Cart Limit Reached" note becomes a small sub-label so the button stays 56px (v139: hidden spans must stay hidden) */
.product-wrapper .btn-primary span:not([style*="display: none"]):not([style*="display:none"]) {
  display: block !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  opacity: .75 !important;
  letter-spacing: .3px !important;
}
.product-wrapper .btn-primary span[style*="display: none"], .product-wrapper .btn-primary span[style*="display:none"] {
  display: none !important;
}
/* B. Buy Now: ghost blue like the reference */
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .btn-outline-primary:not(.stock-indicator),
.product-wrapper button.btn-outline-primary {
  background: rgba(59, 130, 246, .08) !important;
  color: #8CC2FF !important;
  border: 1px solid rgba(59, 130, 246, .4) !important;
  border-radius: 12px !important;
  min-height: 56px !important;
  padding: 8px 24px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .5px !important;
  box-shadow: none !important;
  transition: background .18s ease, border-color .18s ease !important;
}
html:not(.light-mode) [data-component-id="product-page"] .pp-buybox .btn-outline-primary:not(.stock-indicator):hover,
.product-wrapper button.btn-outline-primary:hover {
  background: rgba(59, 130, 246, .16) !important;
  border-color: rgba(59, 130, 246, .7) !important;
  color: #b4d6ff !important;
}
/* C. Quantity field: dark Nivex input, centered bold value */
.product-wrapper .form-control {
  background: rgba(255, 255, 255, .04) !important;
  border: 1px solid rgba(255, 255, 255, .08) !important;
  border-radius: 10px !important;
  color: #fff !important;
  font-weight: 700 !important;
  text-align: center !important;
  min-height: 44px !important;
  box-shadow: none !important;
}
.product-wrapper .form-control:focus {
  border-color: rgba(59, 130, 246, .6) !important;
  box-shadow: 0 0 0 3px rgba(59, 130, 246, .18) !important;
  background: rgba(255, 255, 255, .05) !important;
}
/* +/- stepper buttons */
.product-wrapper .input-group .btn,
.product-wrapper .input-group-append .btn,
.product-wrapper .input-group-prepend .btn {
  background: rgba(255, 255, 255, .05) !important;
  border: 1px solid rgba(255, 255, 255, .08) !important;
  color: #fff !important;
  border-radius: 10px !important;
  font-size: 18px !important;
  min-height: 44px !important;
  min-width: 44px !important;
}
.product-wrapper .input-group .btn:hover { background: rgba(255, 255, 255, .1) !important; }
/* Quantity label: small caps gray like reference */
.product-wrapper .form-label {
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: 1.2px !important;
  text-transform: uppercase !important;
  color: rgba(255, 255, 255, .65) !important;
}
/* D. Price: big bold white beside the stock chip */
.product-wrapper .pp-price,
.product-wrapper .product-price,
.product-wrapper .price,
.product-wrapper h2[class*=price],
.product-wrapper [class*=price]:not(.btn):not(span[class*=stock]) {
  color: #fff !important;
  font-weight: 800 !important;
  font-size: 30px !important;
  letter-spacing: -.5px !important;
}
/* E. Pay badges row: slightly larger chips with dark fill */
.product-wrapper .pay-badges {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 12px !important;
}
.product-wrapper .pay-badges .pay-badge {
  background: rgba(255, 255, 255, .05) !important;
  border: 1px solid rgba(255, 255, 255, .09) !important;
  border-radius: 8px !important;
  padding: 4px 8px !important;
  min-height: 30px !important;
}
.product-wrapper .pay-badges img { height: 20px !important; width: auto !important; }
/* F. Trust grid: 2x2 dark panel like reference */
.product-wrapper .pp-trust {
  background: rgba(255, 255, 255, .03) !important;
  border: 1px solid rgba(255, 255, 255, .07) !important;
  border-radius: 12px !important;
  padding: 14px 16px !important;
  color: rgba(255, 255, 255, .8) !important;
}
/* G. Light-mode parity */
body.light-mode [data-component-id="product-page"] .pp-buybox .btn-primary,
body.light-mode .product-wrapper .btn-primary { background: #3B82F6 !important; color: #fff !important; }
body.light-mode [data-component-id="product-page"] .pp-buybox .btn-outline-primary:not(.stock-indicator),
body.light-mode .product-wrapper .btn-outline-primary { color: #2563EB !important; border-color: rgba(37, 99, 235, .5) !important; background: rgba(59, 130, 246, .06) !important; }
body.light-mode .product-wrapper .form-control { background: rgba(11, 19, 32, .04) !important; border-color: rgba(11, 19, 32, .12) !important; color: #0B1320 !important; }
body.light-mode .product-wrapper .form-label { color: rgba(11, 19, 32, .6) !important; }
/* ==== end v115 ==== */

/* ==== v116: banner ONLY inside the discount popup (removed from product pages) ==== */
.ax-promo-banner img, .ax-promo-img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 0 !important;
  margin: 0 !important;
}
.ax-promo-banner::after { display: none !important; }
.ax-promo-banner { background: #05070d !important; }
.light-mode .ax-promo-banner { background: #e8eefc !important; }
/* kill the v113 product-page banner even if cached JS tries to inject it */
#ax-sep15, .ax-sep15 { display: none !important; }
/* ==== end v116 ==== */

/* ==== v117: popup banner shows FULL artwork + popup fits small screens ==== */
/* banner box matches the artwork's real aspect (2606x786) -> nothing gets cropped */
.ax-promo-banner {
  height: auto !important;
  aspect-ratio: 1295 / 237 !important; /* artwork real size 1295x237 */
  min-height: 0 !important;
}
@media (max-width: 480px) {
  .ax-promo-banner { height: auto !important; }
}
/* if the phone is short, the popup scrolls instead of getting cut */
.ax-promo {
  max-height: 94vh !important;
  overflow-y: auto !important;
  -webkit-overflow-scrolling: touch;
}
/* ==== end v117 ==== */

/* ==== v119: POPUP 3D + ANIMATIONS ==== */
@keyframes axpIn {
  0% { opacity:0; transform: perspective(1200px) translateY(64px) rotateX(16deg) scale(.9); }
  60% { opacity:1; transform: perspective(1200px) translateY(-10px) rotateX(-4deg) scale(1.02); }
  100% { opacity:1; transform: perspective(1200px) translateY(0) rotateX(0deg) scale(1); }
}
@keyframes axpCardGlow {
  0%,100% { box-shadow: 0 30px 80px -20px rgba(0,0,0,.8), 0 0 40px -6px rgba(133,82,255,.35), 0 0 90px -20px rgba(59,130,246,.35); }
  50% { box-shadow: 0 30px 90px -18px rgba(0,0,0,.85), 0 0 60px -4px rgba(133,82,255,.55), 0 0 130px -14px rgba(59,130,246,.5); }
}
@keyframes axpShine { 0% { left:-60%; } 100% { left:130%; } }
@keyframes axpKen { 0%,100% { transform: scale(1); } 50% { transform: scale(1.07); } }
@keyframes axpRise { from { opacity:0; transform: translateY(18px); } to { opacity:1; transform: translateY(0); } }
@keyframes axpCodeGlow {
  0%,100% { text-shadow: 0 0 8px rgba(59,130,246,.4), 0 2px 0 rgba(0,0,0,.55); }
  50% { text-shadow: 0 0 18px rgba(59,130,246,.95), 0 0 42px rgba(59,130,246,.5), 0 2px 0 rgba(0,0,0,.55); }
}
@keyframes axpBtnGlow {
  0%,100% { box-shadow: 0 12px 30px -10px rgba(59,130,246,.75), 0 0 0 0 rgba(59,130,246,.4); }
  50% { box-shadow: 0 16px 38px -10px rgba(59,130,246,.9), 0 0 0 12px rgba(59,130,246,0); }
}
.ax-promo-ov { perspective: 1200px; backdrop-filter: blur(7px) saturate(1.1); -webkit-backdrop-filter: blur(7px) saturate(1.1); }
.ax-promo-ov.ax-open .ax-promo {
  animation: axpIn .75s cubic-bezier(.2,.85,.25,1.15) backwards, axpCardGlow 4.5s ease-in-out 1s infinite;
  will-change: transform;
}
/* re-enable ::after as a travelling shine (v116 had disabled the old static gradient) */
.ax-promo-banner::after {
  display:block !important;
  content:'' !important;
  position:absolute; top:0; bottom:0; width:45%; left:-60%;
  background: linear-gradient(105deg, transparent 0%, rgba(255,255,255,.06) 35%, rgba(255,255,255,.32) 50%, rgba(255,255,255,.06) 65%, transparent 100%);
  transform: skewX(-18deg);
  animation: axpShine 4.2s ease-in-out 1.4s infinite;
  pointer-events:none;
}
.ax-promo-ov.ax-open .ax-promo-sub { animation: axpRise .5s ease-out .30s backwards; }
.ax-promo-ov.ax-open .ax-promo-codebox { animation: axpRise .5s ease-out .42s backwards; }
.ax-promo-ov.ax-open .ax-promo-shop { animation: axpRise .5s ease-out .54s backwards, axpBtnGlow 2.6s ease-in-out 1.4s infinite; }
.ax-promo-ov.ax-open .ax-promo-later { animation: axpRise .5s ease-out .66s backwards; }
.ax-promo-ov.ax-open .ax-promo-foot { animation: axpRise .5s ease-out .78s backwards; }
.ax-promo-code { animation: axpCodeGlow 2.4s ease-in-out infinite; }
.ax-promo-codebox {
  background: linear-gradient(180deg, rgba(10,18,38,.9), rgba(7,12,26,.9)) !important;
  border:1px solid rgba(59,130,246,.35) !important;
  border-radius:14px !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), inset 0 10px 26px -18px rgba(59,130,246,.5), 0 8px 26px -14px rgba(0,0,0,.8);
  transition: transform .18s ease, border-color .18s ease;
}
.ax-promo-codebox:hover { transform: translateY(-2px); border-color: rgba(59,130,246,.6) !important; }
.ax-promo-copy { transition: transform .18s ease, background .18s ease, color .18s ease; border-radius:10px; }
.ax-promo-copy:hover { transform: translateY(-2px) scale(1.03); background: rgba(125,211,252,.16); }
.ax-promo-copy:active { transform: translateY(1px) scale(.97); }
.ax-promo-shop {
  position:relative; overflow:hidden;
  background: linear-gradient(180deg, #4a9bff 0%, #2b7ff2 55%, #1f6adf 100%) !important;
  box-shadow: 0 12px 30px -10px rgba(59,130,246,.75), inset 0 1px 0 rgba(255,255,255,.35), inset 0 -2px 6px rgba(0,40,120,.35);
  transition: transform .18s ease, filter .18s ease;
}
.ax-promo-shop::after {
  content:''; position:absolute; top:0; bottom:0; width:40%; left:-60%;
  background: linear-gradient(105deg, transparent, rgba(255,255,255,.35), transparent);
  transform: skewX(-20deg); transition: left .5s ease; pointer-events:none;
}
.ax-promo-shop:hover { transform: translateY(-3px) scale(1.015); filter: brightness(1.06); }
.ax-promo-shop:hover::after { left:130%; }
.ax-promo-shop:active { transform: translateY(1px) scale(.985); }
.ax-promo-later { transition: color .18s ease, text-shadow .18s ease; }
.ax-promo-later:hover { color:#cfe2ff; text-shadow: 0 0 12px rgba(59,130,246,.6); }
.ax-promo-x { transition: transform .2s ease, background .2s ease, box-shadow .2s ease; background: rgba(10,16,32,.65); backdrop-filter: blur(4px); }
.ax-promo-x:hover { transform: rotate(90deg) scale(1.08); background: rgba(59,130,246,.25); box-shadow: 0 0 16px rgba(59,130,246,.5); }
@media (prefers-reduced-motion: reduce) {
  .ax-promo-ov.ax-open .ax-promo, .ax-promo-ov.ax-open .ax-promo-banner .ax-promo-img,
  .ax-promo-ov.ax-open .ax-promo-sub, .ax-promo-ov.ax-open .ax-promo-codebox,
  .ax-promo-ov.ax-open .ax-promo-shop, .ax-promo-ov.ax-open .ax-promo-later,
  .ax-promo-ov.ax-open .ax-promo-foot, .ax-promo-code, .ax-promo-banner::after { animation: none !important; }
}
/* ==== end v119 ==== */

/* ==== v121: TRUE-3D popup — depth layers + halo + orbs + smoothed tilt ==== */
/* card: single transform source (CSS vars written by the rAF engine) -> no fighting, no jitter */
.ax-promo-ov.ax-open .ax-promo {
  transform: perspective(1150px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));
  transform-style: preserve-3d !important;
  overflow: visible !important; /* overflow flattens 3D; scroll fallback only on short screens below */
}
@media (max-height: 520px) {
  .ax-promo-ov.ax-open .ax-promo { overflow-y: auto !important; transform-style: flat; }
}
/* true Z depth: elements separate as the card tilts */
.ax-promo-ov.ax-open .ax-promo-banner { transform: translateZ(34px); border-radius: 18px 18px 0 0; }
.ax-promo-ov.ax-open .ax-promo-sub { transform: translateZ(22px); }
.ax-promo-ov.ax-open .ax-promo-codebox { transform: perspective(700px) translateZ(48px) rotateX(var(--crx, 0deg)) rotateY(var(--cry, 0deg)); position: relative; }
.ax-promo-ov.ax-open .ax-promo-shop { transform: translateZ(40px); }
.ax-promo-ov.ax-open .ax-promo-later { transform: translateZ(26px); }
.ax-promo-ov.ax-open .ax-promo-foot { transform: translateZ(18px); }
.ax-promo-ov.ax-open .ax-promo-x { transform: translateZ(60px); }
/* artwork parallax (counter-moves while card tilts; scale keeps edges covered) */
.ax-promo-img { transform: translate(var(--px, 0px), var(--py, 0px)) scale(1.08); }
/* light streak follows the mouse inside the code box */
.ax-promo-codebox::before {
  content:''; position:absolute; inset:0; border-radius:14px; pointer-events:none;
  background: radial-gradient(220px 60px at var(--cxp, 50%) 0%, rgba(125,211,252,.14), transparent 70%);
  opacity:0; transition: opacity .25s ease;
}
.ax-promo-codebox:hover::before { opacity:1; }
/* rotating conic halo behind the card */
.ax-promo::before {
  content:''; position:absolute; inset:-3px; z-index:-1; border-radius:21px;
  background: conic-gradient(from 0deg, rgba(59,130,246,.0), rgba(59,130,246,.55), rgba(133,82,255,.55), rgba(0,168,255,.55), rgba(59,130,246,0));
  filter: blur(14px); opacity:.8;
  animation: axpHalo 7s linear infinite;
}
@keyframes axpHalo { to { transform: rotate(360deg); } }
/* drifting ambient orbs in the backdrop */
.ax-promo-ov::before, .ax-promo-ov::after {
  content:''; position:absolute; border-radius:50%; pointer-events:none; z-index:0;
}
.ax-promo-ov::before {
  width:44vw; height:44vw; max-width:560px; max-height:560px; left:8%; top:12%;
  background: radial-gradient(circle, rgba(133,82,255,.20), transparent 65%);
  filter: blur(30px); animation: axpOrbA 16s ease-in-out infinite alternate;
}
.ax-promo-ov::after {
  width:38vw; height:38vw; max-width:480px; max-height:480px; right:6%; bottom:10%;
  background: radial-gradient(circle, rgba(59,130,246,.20), transparent 65%);
  filter: blur(30px); animation: axpOrbB 20s ease-in-out infinite alternate;
}
@keyframes axpOrbA { from { transform: translate(0,0) scale(1); } to { transform: translate(9vw, 7vh) scale(1.15); } }
@keyframes axpOrbB { from { transform: translate(0,0) scale(1); } to { transform: translate(-8vw, -6vh) scale(1.12); } }
.ax-promo { z-index: 1; }
/* keep entrance smooth: it owns transform for its 0.75s, vars take over after (equal end state) */
@media (prefers-reduced-motion: reduce) {
  .ax-promo::before, .ax-promo-ov::before, .ax-promo-ov::after { animation: none !important; }
  .ax-promo-img { transform: none !important; }
}
/* ==== end v121 ==== */

/* ==== v122: SUPPORT WIDGET — full brand redesign + 3D ==== */
@keyframes axSupIn {
  0% { opacity:0; transform: perspective(900px) translateY(46px) rotateX(14deg) scale(.92); }
  65% { opacity:1; transform: perspective(900px) translateY(-6px) rotateX(-3deg) scale(1.015); }
  100% { opacity:1; transform: perspective(900px) translateY(0) rotateX(0) scale(1); }
}
@keyframes axSupRise { from { opacity:0; transform: translateY(14px); } to { opacity:1; transform: translateY(0); } }
@keyframes axSupMsgIn { from { opacity:0; transform: translateY(8px) scale(.97); } to { opacity:1; transform: none; } }
@keyframes axSupGlow {
  0%,100% { box-shadow: 0 24px 70px -18px rgba(0,0,0,.85), 0 0 34px -10px rgba(133,82,255,.35); }
  50% { box-shadow: 0 26px 80px -16px rgba(0,0,0,.9), 0 0 52px -8px rgba(59,130,246,.45); }
}
.support-popup {
  background: linear-gradient(180deg, #0d1326 0%, #0a101f 100%) !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  border-radius: 20px !important;
  transform-origin: bottom right;
  will-change: transform;
}
.support-popup.show { animation: axSupIn .6s cubic-bezier(.2,.85,.3,1.12) backwards, axSupGlow 5s ease-in-out 1s infinite; transform: none !important; }
/* header: brand bar with gradient wordmark + spinning close */
.support-header {
  background: linear-gradient(90deg, rgba(133,82,255,.16), rgba(59,130,246,.10) 55%, transparent) !important;
  border-bottom: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 20px 20px 0 0 !important;
  padding: 13px 16px !important;
}
.support-header .title {
  font-family: Inter, 'Poppins', sans-serif !important;
  font-weight: 800 !important; letter-spacing: 1.2px !important; font-size: 14px !important;
  background: linear-gradient(90deg, #c9b4ff, #7db4ff) !important;
  -webkit-background-clip: text !important; background-clip: text !important; color: transparent !important;
  text-shadow: none !important;
}
.close-popup { border-radius: 50% !important; width: 28px !important; height: 28px !important; font-size: 18px !important; transition: transform .25s ease, background .25s ease, box-shadow .25s ease !important; }
.close-popup:hover { transform: rotate(90deg) scale(1.1) !important; background: rgba(133,82,255,.25) !important; box-shadow: 0 0 14px rgba(133,82,255,.5) !important; }
/* chat window */
.chat-window { background: transparent !important; border-bottom: 1px solid rgba(255,255,255,.06) !important; scrollbar-width: thin; scrollbar-color: rgba(133,82,255,.4) transparent; }
.chat-window::-webkit-scrollbar { width: 5px; }
.chat-window::-webkit-scrollbar-thumb { background: rgba(133,82,255,.4); border-radius: 4px; }
.chat-message { border-radius: 14px !important; font-size: 13px !important; animation: axSupMsgIn .35s ease-out backwards; }
.chat-message.bot { background: rgba(255,255,255,.05) !important; border-left: 3px solid #8552FF !important; color: #e9edf8 !important; }
.chat-message.user { background: linear-gradient(135deg, #2b7ff2, #1f6adf) !important; border-left: none !important; color: #fff !important; box-shadow: 0 6px 18px -8px rgba(59,130,246,.6) !important; }
/* typing dots -> violet */
.typing { background: rgba(255,255,255,.05) !important; border-left: 3px solid #8552FF !important; }
.support-dot { background-color: #a58bff !important; }
/* option buttons: flat brand cards, staggered, 3D hover */
.options-container { padding: 12px !important; gap: 8px !important; }
.options-divider { display: none !important; }
.option-btn {
  background: rgba(255,255,255,.045) !important;
  border: 1px solid rgba(255,255,255,.09) !important;
  color: #eef2ff !important;
  border-radius: 13px !important;
  padding: 13px 16px !important;
  font-weight: 600 !important; font-size: 13.5px !important; letter-spacing: .2px;
  box-shadow: none !important;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease !important;
  animation: axSupRise .45s ease-out backwards;
  text-shadow: none !important;
}
.option-btn::before { display: none !important; }
.option-btn:nth-of-type(1) { animation-delay: .10s; }
.option-btn:nth-of-type(2) { animation-delay: .18s; }
.option-btn:nth-of-type(3) { animation-delay: .26s; }
.option-btn:nth-of-type(4) { animation-delay: .34s; }
.option-btn:nth-of-type(5) { animation-delay: .42s; }
.option-btn:hover {
  transform: translateY(-2px) scale(1.015) !important;
  background: rgba(133,82,255,.13) !important;
  border-color: rgba(133,82,255,.55) !important;
  box-shadow: 0 10px 26px -12px rgba(133,82,255,.55) !important;
  color: #fff !important;
}
.option-btn:active { transform: translateY(1px) scale(.98) !important; }
/* link buttons inside messages -> blue pills */
.chat-button {
  background: linear-gradient(180deg, #4a9bff, #2b7ff2 60%, #1f6adf) !important;
  color: #fff !important; border-radius: 999px !important; font-weight: 700 !important;
  padding: 9px 18px !important; text-decoration: none !important;
  box-shadow: 0 10px 24px -10px rgba(59,130,246,.7), inset 0 1px 0 rgba(255,255,255,.3) !important;
  transition: transform .18s ease, filter .18s ease !important;
  display: inline-flex; align-items: center; gap: 6px;
}
.chat-button:hover { transform: translateY(-2px) !important; filter: brightness(1.08) !important; color:#fff !important; }
/* ==== end v122 ==== */

/* ==== v122b: SUPPORT FAB LAUNCHER — brand match (Nivex blue + soft pulse) ==== */
#supportButton.support-button {
  background: linear-gradient(135deg, #3B82F6 0%, #2563EB 100%) !important;
  box-shadow: 0 10px 30px rgba(59, 130, 246, 0.45), inset 0 1px 0 rgba(255, 255, 255, 0.18) !important;
  border-radius: 50% !important;
  transition: transform .25s cubic-bezier(.34,1.56,.64,1), box-shadow .25s ease !important;
}
#supportButton.support-button:hover {
  transform: translateY(-3px) scale(1.05);
  box-shadow: 0 14px 38px rgba(59, 130, 246, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}
#supportButton.support-button:active { transform: translateY(-1px) scale(.97) !important; }
#supportButton.support-button::after {
  background: radial-gradient(circle, rgba(59,130,246,.38) 0%, rgba(59,130,246,0) 70%) !important;
  animation: axFabPulse 2.6s ease-in-out infinite !important;
}
#supportButton.support-button::before {
  background: radial-gradient(circle, rgba(37,99,235,.30) 0%, rgba(37,99,235,0) 70%) !important;
  animation: axFabPulse 2.6s ease-in-out infinite 1.3s !important;
}
@keyframes axFabPulse {
  0%, 100% { transform: translate(-50%, -50%) scale(1); opacity: .55; }
  50% { transform: translate(-50%, -50%) scale(1.28); opacity: .18; }
}
@media (prefers-reduced-motion: reduce) {
  #supportButton.support-button::after, #supportButton.support-button::before { animation: none !important; }
}
/* ==== end v122b ==== */

/* ==== v125: widget quick-link chips (Nivex flat) ==== */
.ax-wquick { display: flex; flex-direction: column; gap: 7px; margin: 4px 0 2px; }
.ax-wquick__title {
  font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase;
  color: rgba(255,255,255,.45); padding: 2px 4px 0;
}
.ax-wquick__chip {
  display: flex; align-items: center; gap: 10px;
  padding: 11px 13px; border-radius: 12px;
  background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.07);
  color: #fff; text-decoration: none;
  font-size: 13.5px; font-weight: 600;
  opacity: 0; transform: translateY(8px);
  animation: axWQuickRise .45s cubic-bezier(.22,1,.36,1) forwards;
  transition: background .2s ease, border-color .2s ease, transform .2s cubic-bezier(.34,1.56,.64,1);
}
.ax-wquick__chip:hover {
  background: rgba(59,130,246,.10);
  border-color: rgba(59,130,246,.45);
  transform: translateY(-1px);
}
.ax-wquick__emoji { font-size: 16px; line-height: 1; }
.ax-wquick__name { flex: 1; }
.ax-wquick__price { font-weight: 800; font-size: 13px; color: #7fb2ff; }
@keyframes axWQuickRise { to { opacity: 1; transform: translateY(0); } }
html.light-mode .ax-wquick__title { color: rgba(10,16,31,.45); }
html.light-mode .ax-wquick__chip {
  background: rgba(10,16,31,.04); border-color: rgba(10,16,31,.09); color: #0a101f;
}
html.light-mode .ax-wquick__chip:hover { background: rgba(59,130,246,.09); border-color: rgba(59,130,246,.45); }
html.light-mode .ax-wquick__price { color: #2563eb; }
@media (prefers-reduced-motion: reduce) {
  .ax-wquick__chip { animation: none; opacity: 1; transform: none; }
}
/* ==== end v125 ==== */

/* ==== v126: legacy purge marker — all old-theme tokens normalized to the Nivex palette ==== */
/* ==== v130: FAB above cookie banner — mobile tap fix ====
   The platform cookie banner (z 9999) covered #supportButton (z 1100) on phones,
   so every tap on the support FAB landed on the banner and the widget never opened.
   Raise FAB + popup above the banner but keep them below the promo overlay (z 120000). */
#supportButton, .support-button { z-index: 10000 !important; }
#supportPopup, .support-popup { z-index: 10001 !important; }
/* ==== v132: widget chips -> in-widget quick-view ==== */
.ax-wquick__chip.ax-chip-loading { pointer-events: none; opacity: 0.6; }
.ax-wquick__chip.ax-chip-loading .ax-wquick__emoji { display: inline-block; animation: axChipSpin 0.9s linear infinite; }
@keyframes axChipSpin { to { transform: rotate(360deg); } }
.ax-qv-media { width: 100%; aspect-ratio: 16 / 9; background: linear-gradient(135deg, #0c1220, #131b30); position: relative; overflow: hidden; margin: 0 0 14px; }
.ax-qv-media img { width: 100%; height: 100%; object-fit: cover; display: block; }
.ax-qv-media.ax-noimg .ax-qv-skel { display: none; }
.ax-qv-skel { position: absolute; inset: 0; background: linear-gradient(100deg, rgba(255,255,255,0.04) 40%, rgba(255,255,255,0.10) 50%, rgba(255,255,255,0.04) 60%); background-size: 200% 100%; animation: axSkel 1.2s linear infinite; }
@keyframes axSkel { to { background-position: -200% 0; } }
.light-mode .ax-qv-media { background: linear-gradient(135deg, #e7ebf3, #f4f6fb); }
.light-mode .ax-qv-skel { background: linear-gradient(100deg, rgba(0,0,0,0.04) 40%, rgba(0,0,0,0.08) 50%, rgba(0,0,0,0.04) 60%); background-size: 200% 100%; }
@media (prefers-reduced-motion: reduce) { .ax-wquick__chip.ax-chip-loading .ax-wquick__emoji { animation: none; } .ax-qv-skel { animation: none; } }
/* ================= v142: NIVEX XL hero card + giant headline ================= */
html:not(.light-mode) .ax-hero-card {
  width: 460px; border-radius: 22px; padding: 30px 30px 0;
  background: linear-gradient(180deg, #0E1734 0%, #0A1128 100%);
  border: 1px solid rgba(130,160,255,0.20);
  box-shadow: 0 40px 110px rgba(0,10,40,0.60), inset 0 1px 0 rgba(255,255,255,0.06);
}
.ax-hero-card .axhc-logo { width: 96px; height: 96px; margin: 10px auto 12px; }
.ax-hero-card .axhc-logo img { width: 66px; }
.ax-hero-card .axhc-eyebrow { color: #7db4ff; font-size: 11px; font-weight: 800; letter-spacing: 2.6px; margin-bottom: 8px; }
.ax-hero-card .axhc-title { font-size: 30px; line-height: 1.18; margin: 0 0 18px; }
.ax-hero-card .axhc-stats { gap: 34px; margin-bottom: 22px; }
.ax-hero-card .axhc-stat b { font-size: 24px; }
.ax-hero-card .axhc-stat span { font-size: 10px; }
.ax-hero-card .axhc-btns { gap: 12px; margin-bottom: 20px; }
.ax-hero-card .axhc-btns a { padding: 12px 0; font-size: 14.5px; }
.ax-hero-card .axhc-verify { display: none !important; }
.ax-hero-card .axhc-marquee { margin: 0 -30px; overflow: hidden; border-top: 1px solid rgba(255,255,255,0.07); background: rgba(5,10,26,0.55); padding: 9px 0; border-radius: 0 0 22px 22px; }
.ax-hero-card .axhc-mtrack { display: inline-flex; gap: 10px; white-space: nowrap; padding-left: 10px; animation: axhcMar 20s steps(240) infinite; transform: translateZ(0); }
.ax-hero-card .axhc-mchip { display: inline-flex; align-items: center; gap: 6px; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.09); color: rgba(255,255,255,0.82); border-radius: 999px; padding: 5px 12px; font-size: 11px; font-weight: 600; }
.ax-hero-card .axhc-mchip i { font-style: normal; }
.ax-hero-card .axhc-mchip .ok { color: #35C75A; }
.ax-hero-card .axhc-mchip .stars { color: #FFC53D; letter-spacing: 1px; font-size: 10px; }
.ax-hero-card:hover .axhc-mtrack { animation-play-state: paused; }
@keyframes axhcMar { from { transform: translateX(0); } to { transform: translateX(-50%); } }
/* giant Nivex headline */
html:not(.light-mode) .hero .hero-title, html:not(.light-mode) .hero h1 { font-size: clamp(64px, 7.2vw, 104px) !important; line-height: 1.02 !important; letter-spacing: -1px !important; }
@media (max-width: 1100px) {
  html:not(.light-mode) .ax-hero-card { width: min(430px, 92vw); margin: 38px auto 0; padding: 28px 26px 0; }
  .ax-hero-card .axhc-marquee { margin: 0 -26px; }
  html:not(.light-mode) .hero .hero-title, html:not(.light-mode) .hero h1 { font-size: clamp(44px, 11vw, 64px) !important; }
}
@media (max-width: 420px) { .ax-hero-card .axhc-title { font-size: 24px; } .ax-hero-card .axhc-stats { gap: 22px; } .ax-hero-card .axhc-stat b { font-size: 21px; } }
/* light-mode parity */
.light-mode .ax-hero-card { background: linear-gradient(180deg, #FFFFFF, #F2F6FF); border-color: rgba(20,40,90,0.12); box-shadow: 0 30px 80px rgba(20,40,90,0.12); width: 460px; padding: 30px 30px 0; }
.light-mode .ax-hero-card .axhc-title { color: #0B1530; }
.light-mode .ax-hero-card .axhc-stat b { color: #0B1530; }
.light-mode .ax-hero-card .axhc-stat span { color: rgba(10,20,50,0.55); }
.light-mode .ax-hero-card .axhc-eyebrow { color: #2b6fd6; }
.light-mode .ax-hero-card .axhc-marquee { background: rgba(240,245,255,0.75); border-top-color: rgba(20,40,90,0.08); }
.light-mode .ax-hero-card .axhc-mchip { background: #ffffff; border-color: rgba(20,40,90,0.10); color: #33415e; }
@media (max-width: 1100px) { .light-mode .ax-hero-card { width: min(430px, 92vw); } }
/* ================= end v142 ================= */
/* ================= v143: NIVEX XL CARD WINS — beats v75 slim / v55 330px / v60 38px ================= */
@media (min-width: 1100px) {
  html:not(.light-mode) .ax-hero-card, .light-mode .ax-hero-card, .hero .ax-hero-card, #hero.hero .ax-hero-card {
    width: 460px !important; padding: 30px 30px 0 !important;
  }
  .ax-hero-card .axhc-dots { gap: 6px !important; top: 16px !important; left: 18px !important; }
  .ax-hero-card .axhc-dots i { width: 9px !important; height: 9px !important; }
  .ax-hero-card .axhc-brand { font-size: 10px !important; letter-spacing: 2px !important; top: 14px !important; right: 18px !important; }
  .ax-hero-card .axhc-logo { width: 96px !important; height: 96px !important; margin: 12px auto 12px !important; }
  .ax-hero-card .axhc-logo img { width: 66px !important; max-width: 66px !important; max-height: none !important; }
  .ax-hero-card .axhc-eyebrow { font-size: 11px !important; letter-spacing: 2.6px !important; margin-bottom: 8px !important; }
  .ax-hero-card .axhc-title { font-size: 30px !important; line-height: 1.18 !important; margin: 0 0 18px !important; }
  .ax-hero-card .axhc-stats { gap: 34px !important; margin: 0 0 22px !important; }
  .ax-hero-card .axhc-stat b { font-size: 24px !important; }
  .ax-hero-card .axhc-stat span { font-size: 10px !important; letter-spacing: 1.2px !important; }
  .ax-hero-card .axhc-btns { gap: 12px !important; margin: 0 0 20px !important; }
  .ax-hero-card .axhc-btn1, .ax-hero-card .axhc-btn2 { padding: 12px 0 !important; font-size: 14.5px !important; }
  .ax-hero-card .axhc-verify { display: none !important; }
  .ax-hero-card .axhc-marquee { margin: 0 -30px !important; }
}
@media (min-width: 2000px) {
  html:not(.light-mode) .hero .ax-hero-card, .light-mode .hero .ax-hero-card, .hero .ax-hero-card { width: 500px !important; }
  .ax-hero-card .axhc-title { font-size: 32px !important; }
}
/* mobile: XL card kept, beats v55 330px + v51 88vw */
@media (max-width: 1100px) {
  html:not(.light-mode) .ax-hero-card, .light-mode .ax-hero-card, .hero .ax-hero-card, #hero.hero .ax-hero-card {
    width: min(430px, calc(100vw - 28px)) !important; margin: 38px auto 0 !important; padding: 28px 26px 0 !important;
  }
  .ax-hero-card .axhc-marquee { margin: 0 -26px !important; }
}
@media (max-width: 420px) {
  .ax-hero-card .axhc-title { font-size: 24px !important; }
  .ax-hero-card .axhc-stats { gap: 22px !important; }
  .ax-hero-card .axhc-stat b { font-size: 21px !important; }
}
/* giant headline on phones: beats v60c (html body ...) and v60d (#hero.hero ...) at equal-or-higher priority, later in file */
@media (max-width: 1100px) {
  html body .hero .hero-title,
  html:not(.light-mode) #hero.hero .hero-title,
  .light-mode #hero.hero .hero-title,
  .hero .hero-title, .hero h1 {
    font-size: clamp(44px, 12vw, 64px) !important;
    letter-spacing: 1px !important;
    line-height: 1.04 !important;
  }
}
@media (max-width: 360px) {
  html body .hero .hero-title, html:not(.light-mode) #hero.hero .hero-title, .hero .hero-title, .hero h1 { font-size: 40px !important; }
}
/* ================= end v143 ================= */

/* ================= v144: hero grows to fit the XL card (builder fixed height cut it) ================= */
@media (min-width: 1100px) {
  html:not(.light-mode) .hero, .light-mode .hero, .hero {
    height: auto !important;
    min-height: 680px !important;
    display: flex !important;
    align-items: center !important;
    padding-top: 130px !important;
    padding-bottom: 110px !important;
  }
  html:not(.light-mode) .ax-hero-card, .light-mode .ax-hero-card, .hero .ax-hero-card {
    position: relative !important; top: auto !important; right: auto !important; left: auto !important;
    transform: none !important; flex-shrink: 0 !important;
  }
}
/* ================= end v144 ================= */

/* ================= v146: Nivex float/tilt wrapper + glow border + feature row ================= */
.axhc-float { animation: axhcFloat 7s ease-in-out infinite; }
/* v179c: steps() per segment so every rendered frame is at a whole pixel (crisp text) */
@keyframes axhcFloat {
  0% { transform: translateY(0px); animation-timing-function: steps(3, end); }
  25% { transform: translateY(-3px); animation-timing-function: steps(7, end); }
  50% { transform: translateY(-10px); animation-timing-function: steps(5, end); }
  75% { transform: translateY(-5px); animation-timing-function: steps(5, end); }
  100% { transform: translateY(0px); }
}
@media (max-width: 1100px) {
  .axhc-float { animation-name: axhcFloatM; }
  @keyframes axhcFloatM {
  0% { transform: translateY(0px); animation-timing-function: steps(3, end); }
  25% { transform: translateY(-3px); animation-timing-function: steps(6, end); }
  50% { transform: translateY(-9px); animation-timing-function: steps(5, end); }
  75% { transform: translateY(-4px); animation-timing-function: steps(4, end); }
  100% { transform: translateY(0px); }
}
}
@media (prefers-reduced-motion: reduce) { .axhc-float { animation: none !important; } }
html:not(.light-mode) .ax-hero-card {
  border-color: rgba(59,130,246,0.5) !important;
  box-shadow: 0 40px 110px rgba(0,20,70,0.6), 0 0 0 1px rgba(59,130,246,0.10), 0 0 70px rgba(59,130,246,0.18) !important;
}
.light-mode .ax-hero-card {
  border-color: rgba(59,130,246,0.45) !important;
  box-shadow: 0 30px 80px rgba(20,40,90,0.14), 0 0 60px rgba(59,130,246,0.15) !important;
}
.ax-featrow { display: flex; justify-content: center; gap: clamp(28px, 6vw, 72px); padding: 4px 24px 64px; margin-top: -18px; }
.ax-feat { display: flex; flex-direction: column; align-items: center; gap: 12px; }
.ax-feat-ico {
  width: 64px; height: 64px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: rgba(59,130,246,0.08); border: 1px solid rgba(59,130,246,0.28);
  color: #cfe2ff; box-shadow: 0 0 24px rgba(59,130,246,0.12);
  transition: transform .3s, box-shadow .3s, border-color .3s;
}
.ax-feat:hover .ax-feat-ico { transform: translateY(-4px); box-shadow: 0 0 42px rgba(59,130,246,0.32); border-color: rgba(59,130,246,0.55); }
.ax-feat-ico svg { width: 26px; height: 26px; }
.ax-feat-lbl { font-size: 13px; font-weight: 600; color: #8FA3C8; text-align: center; }
.light-mode .ax-feat-ico { background: rgba(59,130,246,0.06); color: #2b6fd6; }
.light-mode .ax-feat-lbl { color: #44506e; }
@media (max-width: 575.98px) { .ax-featrow { gap: 20px; padding-bottom: 44px; } .ax-feat-ico { width: 54px; height: 54px; } .ax-feat-ico svg { width: 22px; height: 22px; } .ax-feat-lbl { font-size: 11.5px; } }
/* ================= end v146 ================= */

/* v147 superseded by v148 (JS-driven safe chip positions) */

/* ================= v149: text sharpness (Nivex-crisp) ================= */
/* idle float is now translateY-only: no 3D resampling of card text. Tilt stays as hover/touch-only (v57). */
.ax-hero-card, .ax-hero-card * {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}
.ax-hero-card { backface-visibility: hidden; }
.ax-hero-card .axhc-mtrack { will-change: transform; }
.ax-hero-card .axhc-mtrack { animation-duration: 26s !important; }
/* ================= end v149 ================= */

/* ================= v150: NIVEX REPLICATION ================= */
/* --- typography: Nivex uses Inter semibold, plain white, no glow/gradient --- */
html:not(.light-mode) .hero .hero-title, html:not(.light-mode) .hero h1 {
  font-family: Inter, Poppins, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  background: none !important;
  -webkit-background-clip: initial !important;
  -webkit-text-fill-color: #FFFFFF !important;
  color: #FFFFFF !important;
  text-shadow: none !important;
  animation: none !important;
}
html:not(.light-mode) .hero .hero-title .brand-text.accent { color: #3B82F6 !important; -webkit-text-fill-color: #3B82F6 !important; }
html:not(.light-mode) .hero .hero-subtitle {
  font-family: Inter, Poppins, sans-serif !important;
  font-size: 17px !important; font-weight: 400 !important;
  letter-spacing: 0 !important; text-transform: none !important;
  color: #8FA3C8 !important; -webkit-text-fill-color: #8FA3C8 !important;
  background: none !important; animation: none !important; opacity: 1 !important;
}
/* Nivex hero: headline + paragraph + buttons only (card already carries the stats) */
html:not(.light-mode) .hero .hero-stats, .light-mode .hero .hero-stats { display: none !important; }
html:not(.light-mode) .hero .hero-buttons .btn-secondary {
  box-shadow: 0 8px 28px rgba(59,130,246,0.45) !important;
}
/* section headings: Inter, solid white, tight tracking; badges = blue uppercase eyebrow */
html:not(.light-mode) .section-title {
  font-family: Inter, Poppins, sans-serif !important;
  font-weight: 700 !important; font-size: 38px !important;
  letter-spacing: 0 !important; text-align: center;
  background: none !important; -webkit-text-fill-color: #FFFFFF !important;
  color: #FFFFFF !important; text-shadow: none !important; animation: none !important;
}
html:not(.light-mode) .section-badge {
  text-transform: uppercase !important;
  font-size: 12px !important; font-weight: 700 !important;
  letter-spacing: 2.5px !important;
}
/* --- Nivex feature trio: big rings, title, blue underline, gray desc --- */
.ax-featrow--nx { gap: clamp(36px, 7vw, 96px); padding: 26px 24px 84px; margin-top: -30px; }
.ax-featrow--nx .ax-feat { max-width: 320px; }
.ax-featrow--nx .ax-feat-ico {
  width: 96px; height: 96px; border-radius: 50%;
  background: radial-gradient(circle at 50% 30%, rgba(59,130,246,0.10), rgba(59,130,246,0.02));
  border: 1.5px solid rgba(59,130,246,0.35);
  color: #cfe2ff; box-shadow: 0 0 34px rgba(59,130,246,0.14);
}
.ax-featrow--nx .ax-feat-ico svg { width: 34px; height: 34px; }
.ax-featrow--nx .ax-feat-t { font-family: Inter, Poppins, sans-serif; font-size: 22px; font-weight: 700; color: #FFFFFF; margin-top: 18px; text-align: center; }
.ax-featrow--nx .ax-feat-u { width: 42px; height: 3px; border-radius: 2px; background: #3B82F6; margin: 10px auto 12px; box-shadow: 0 0 12px rgba(59,130,246,0.6); }
.ax-featrow--nx .ax-feat-d { font-size: 15px; line-height: 1.65; color: #8FA3C8; text-align: center; }
.light-mode .ax-featrow--nx .ax-feat-t { color: #0B1530; }
.light-mode .ax-featrow--nx .ax-feat-d { color: #44506e; }
/* --- Nivex support hub: bordered container [support card | faq list] --- */
.ax-suphub {
  display: grid; grid-template-columns: 380px 1fr; gap: 26px;
  max-width: 1240px; margin: 0 auto; padding: 26px;
  border: 1px solid rgba(255,255,255,0.07); border-radius: 26px;
  background: rgba(255,255,255,0.012);
}
.ax-sup-card {
  background: rgba(255,255,255,0.02); border: 1px solid rgba(255,255,255,0.07);
  border-radius: 18px; padding: 34px 26px; text-align: center;
  display: flex; flex-direction: column; align-items: center; gap: 16px;
}
.ax-sup-avatar {
  width: 96px; height: 96px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: radial-gradient(circle at 50% 30%, rgba(59,130,246,0.16), rgba(59,130,246,0.03));
  border: 1.5px solid rgba(59,130,246,0.35); color: #cfe2ff;
}
.ax-sup-avatar svg { width: 42px; height: 42px; }
.ax-sup-pill { display: inline-flex; align-items: center; gap: 8px; background: rgba(53,199,90,0.08); border: 1px solid rgba(53,199,90,0.3); color: #5fe09a; border-radius: 999px; padding: 7px 16px; font-size: 13px; font-weight: 600; }
.ax-sup-pill i { width: 7px; height: 7px; border-radius: 50%; background: #35C75A; box-shadow: 0 0 8px rgba(53,199,90,0.8); }
.ax-sup-avg { font-size: 14px; color: #8FA3C8; margin: 0; }
.ax-sup-avg b { color: #3B82F6; font-weight: 600; }
.ax-sup-btn {
  margin-top: 8px; width: 100%; display: flex; align-items: center; justify-content: center; gap: 10px;
  background: #FFFFFF; color: #0B1530 !important; border-radius: 999px; padding: 14px 20px;
  font-family: Inter, Poppins, sans-serif; font-size: 15px; font-weight: 700; text-decoration: none;
  transition: transform .2s, box-shadow .2s;
}
.ax-sup-btn:hover { transform: translateY(-2px); box-shadow: 0 10px 30px rgba(255,255,255,0.12); }
.ax-sup-btn svg { width: 19px; height: 19px; }
.ax-sup-faqs { display: flex; flex-direction: column; gap: 12px; }
.ax-sup-faqs .faq-grid { display: flex !important; flex-direction: column; gap: 12px; }
html:not(.light-mode) .ax-sup-faqs .faq-item {
  background: rgba(255,255,255,0.015) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 14px !important; padding: 6px 10px !important;
}
.light-mode .ax-suphub { border-color: rgba(20,40,90,0.10); background: rgba(20,40,90,0.02); }
.light-mode .ax-sup-card { background: #FFFFFF; border-color: rgba(20,40,90,0.08); }
.light-mode .ax-sup-btn { background: #0B1530; color: #FFFFFF !important; }
@media (max-width: 991.98px) { .ax-suphub { grid-template-columns: 1fr; } }
/* --- reviews: Nivex look - blue stars, green verified pill --- */
html:not(.light-mode) .review-card { background: rgba(255,255,255,0.015) !important; }
.review-stars svg { color: #3B82F6 !important; }
.review-stars svg path, .review-stars svg use { fill: #3B82F6 !important; }
html:not(.light-mode) .review-role {
  color: #5fe09a !important; -webkit-text-fill-color: #5fe09a !important; background: none !important;
  border: 1px solid rgba(53,199,90,0.3) !important; background-color: rgba(53,199,90,0.08) !important;
  border-radius: 999px; padding: 3px 10px; font-size: 11px; font-weight: 600;
}
html:not(.light-mode) .review-role::before { content: '\2713\00a0'; }
/* --- Nivex cards: near-black surfaces --- */
html:not(.light-mode) .ax-prod-grid .product-card,
html:not(.light-mode) body.category-page .ax-prod-grid .product-card,
html:not(.light-mode) #ppRelatedGrid .product-card {
  background: #05080F !important; border-color: rgba(255,255,255,0.07) !important;
}
/* --- global Nivex blue pill for primary buttons (dark mode) --- */
html:not(.light-mode) .atlas-page .btn-primary {
  background: #3B82F6 !important; color: #FFFFFF !important;
  border: none !important; border-radius: 999px !important;
  font-family: Inter, Poppins, sans-serif !important; font-weight: 600 !important;
  letter-spacing: 0.2px !important; text-transform: none !important;
  box-shadow: 0 8px 26px rgba(59,130,246,0.4);
}
html:not(.light-mode) .atlas-page .btn-primary:hover { background: #1E96FF !important; transform: translateY(-2px); box-shadow: 0 12px 34px rgba(59,130,246,0.55); }
/* --- footer: Nivex watermark + tagline + help row --- */
html:not(.light-mode) .vapor-footer { position: relative; overflow: hidden; }
html:not(.light-mode) .vapor-footer::before {
  content: 'ATLAS.EXE';
  position: absolute; left: 50%; bottom: 24px; transform: translateX(-50%);
  font-family: Inter, Poppins, sans-serif; font-weight: 800;
  font-size: clamp(120px, 20vw, 300px); line-height: 1; white-space: nowrap;
  color: rgba(59,130,246,0.05); pointer-events: none; letter-spacing: 8px;
}
.ax-foot-tag { font-size: 14px; line-height: 1.6; color: #8FA3C8; max-width: 320px; margin: 10px 0 0; }
.ax-foot-help { display: inline-flex; align-items: center; gap: 12px; margin-top: 22px; text-decoration: none; }
.ax-foot-dc { width: 42px; height: 42px; border-radius: 12px; display: flex; align-items: center; justify-content: center; background: rgba(88,101,242,0.14); border: 1px solid rgba(88,101,242,0.35); color: #AAB6FF; }
.ax-foot-dc svg { width: 20px; height: 20px; }
.ax-foot-help em { font-style: normal; font-size: 12px; color: #6C7A99; }
.ax-foot-help b { font-size: 14.5px; color: #FFFFFF; font-weight: 600; }
.ax-foot-help:hover b { color: #93c5fd; }
html:not(.light-mode) .vapor-footer .vapor-footer-grid { position: relative; z-index: 1; }
.light-mode .ax-foot-tag { color: #44506e; }
/* --- nx stars in hero --- */
.ax-nx-stars { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.ax-nx-stars i {
  position: absolute; border-radius: 50%;
  background: #6EA8FF; opacity: 0;
  box-shadow: 0 0 6px rgba(110,168,255,0.8);
  animation: axNxTw infinite ease-in-out;
}
@keyframes axNxTw { 0%, 100% { opacity: 0; } 50% { opacity: 0.75; } }
.light-mode .ax-nx-stars i { background: #3B82F6; box-shadow: none; }
/* ================= end v150 ================= */

/* ================= v151: products grid in #products ================= */
section.products-section#products { padding-bottom: 40px; }
section.products-section#products .pop-grid { margin-top: 44px; }
section.products-section#products .products-view-all { margin-top: 36px; }
/* ================= end v151 ================= */

/* ================= v153: PAY4WEB ANIMATIONS ================= */
/* kicker dot on section badges (Pay4Web section-kicker span) */
.section-badge { display: inline-flex; align-items: center; gap: 8px; }
.section-badge::before {
  content: ''; width: 7px; height: 7px; border-radius: 50%;
  background: #3B82F6; box-shadow: 0 0 14px #3B82F6;
  animation: axDotPulse 2.4s ease-in-out infinite;
}
@keyframes axDotPulse { 50% { opacity: 0.45; transform: scale(0.82); } }
/* --- animated delivery demo (Pay4Web delivery-demo, ATLAS blue) --- */
.axp4w-delivery {
  width: min(640px, 100%); margin: 34px auto 0;
  padding: 22px 24px; border: 1px solid rgba(78,164,255,.48); border-radius: 16px;
  background: rgba(8,12,19,.88);
  box-shadow: 0 18px 50px rgba(0,0,0,.35), 0 0 0 6px rgba(59,130,246,.05);
}
.axp4w-del-head { display: flex; align-items: center; gap: 9px; padding-bottom: 12px; margin-bottom: 14px; border-bottom: 1px solid rgba(255,255,255,.07); }
.axp4w-del-tag { margin-left: auto; color: #a5b1c0; font-size: .62rem; font-weight: 800; letter-spacing: .12em; }
.axp4w-dot { width: 8px; height: 8px; border-radius: 50%; background: #48e385; box-shadow: 0 0 10px #48e385; animation: axLiveDot 1.6s ease-in-out infinite; }
@keyframes axLiveDot { 50% { opacity: .45; transform: scale(.8); } }
.axp4w-del-body { display: flex; flex-direction: column; }
.axp4w-dstep {
  position: relative; display: grid; grid-template-columns: 34px 1fr 22px; align-items: center; gap: 10px;
  min-height: 55px; padding: 8px 12px; border: 1px solid rgba(142,180,218,.1); border-radius: 10px;
  background: rgba(255,255,255,.025); opacity: .35;
  animation: axDelStage 6s ease infinite;
}
.axp4w-dstep > span { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 8px; background: #111a25; color: #5faeff; }
.axp4w-dstep > span svg { width: 16px; height: 16px; }
.axp4w-dstep div { display: flex; flex-direction: column; text-align: left; }
.axp4w-dstep b { font-size: .78rem; color: #e7eef7; }
.axp4w-dstep small { color: #607087; font-size: .64rem; }
.axp4w-chk { color: #4ee38b; width: 14px; height: 14px; opacity: 0; transform: scale(.4); animation: axDelCheck 6s ease infinite; }
.axp4w-chk svg { width: 100%; height: 100%; }
.axp4w-chk--bolt { color: #6bb8ff; }
.axp4w-dstep--paid, .axp4w-dstep--paid .axp4w-chk { animation-delay: 1.4s; }
.axp4w-dstep--got, .axp4w-dstep--got .axp4w-chk { animation-delay: 2.8s; }
.axp4w-rail { width: 2px; height: 10px; margin-left: 26px; overflow: hidden; background: #18232f; }
.axp4w-rail span { display: block; width: 100%; height: 100%; background: #45a2ff; transform: translateY(-100%); animation: axDelRail 6s ease infinite; }
.axp4w-rail:nth-of-type(2) span { animation-delay: 1.4s; }
.axp4w-rail:nth-of-type(4) span { animation-delay: 2.8s; }
.axp4w-del-status { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 14px; padding: 9px 13px; border: 1px solid rgba(255,255,255,.07); border-radius: 99px; }
.axp4w-del-status span { width: 7px; height: 7px; border-radius: 50%; background: #48e385; box-shadow: 0 0 10px #48e385; }
.axp4w-del-status em { font-style: normal; color: #9fb0c3; font-size: .72rem; }
@keyframes axDelStage { 0%, 8% { opacity: .35; transform: translateX(-4px); } 12%, 72% { opacity: 1; transform: none; border-color: rgba(54,152,255,.3); } 78%, 100% { opacity: .45; } }
@keyframes axDelCheck { 0%, 18% { opacity: 0; transform: scale(.4); } 24%, 72% { opacity: 1; transform: scale(1); } 80%, 100% { opacity: 0; } }
@keyframes axDelRail { 0%, 18% { transform: translateY(-100%); } 30%, 75% { transform: none; } 85%, 100% { transform: translateY(100%); } }
/* --- hover lift for pop-cards (Pay4Web feature-card feel) --- */
#products .pop-card { transition: transform .35s cubic-bezier(.2,.8,.2,1), border-color .35s, box-shadow .35s; }
#products .pop-card:hover { transform: translateY(-8px); }
/* --- reduced motion: kill everything we added --- */
@media (prefers-reduced-motion: reduce) {
  .axp4w-rv { opacity: 1 !important; transform: none !important; transition: none !important; }
  .axp4w-dstep, .axp4w-chk, .axp4w-rail span, .axp4w-dot, .section-badge::before { animation: none !important; opacity: 1 !important; transform: none !important; }
}
.light-mode .axp4w-delivery { background: #ffffff; border-color: rgba(0,0,0,.1); box-shadow: 0 18px 50px rgba(0,0,0,.08); }
.light-mode .axp4w-dstep b { color: #0b1220; }
.light-mode .axp4w-del-status em, .light-mode .axp4w-del-tag { color: #5a6a7e; }
/* ================= end v153 ================= */

/* ================= v154: ACCENT COLOR FIX (SellAuth Tailwind tokens) ================= */
/* SellAuth ships --accent: 0 0 0 (black) from the builder config; every text-accent-*,
   bg-accent-*, border-accent-* class derives from it. Re-point the channels to ATLAS blue. */
html { --accent: 59 130 246 !important; }
/* direct guarantees on system pages (checkout / invoice / tickets / dashboard), dark mode */
html:not(.light-mode) body:not(:has(.atlas-page)) .text-accent-400,
html:not(.light-mode) body:not(:has(.atlas-page)) .text-accent-500,
html:not(.light-mode) body:not(:has(.atlas-page)) .text-accent-600 { color: #7EB8FF !important; }
html:not(.light-mode) body:not(:has(.atlas-page)) a.text-accent-400:hover,
html:not(.light-mode) body:not(:has(.atlas-page)) a.text-accent-500:hover,
html:not(.light-mode) body:not(:has(.atlas-page)) a.text-accent-600:hover { color: #c7e2ff !important; }
/* redeem/copy codes inside deliverables stay readable */
html:not(.light-mode) body:not(:has(.atlas-page)) .break-all a,
html:not(.light-mode) body:not(:has(.atlas-page)) code a { color: #7EB8FF !important; }
/* ================= end v154 ================= */

/* ================= v156: crisp marquee ================= */
.ax-hero-card .axhc-mtrack { animation: none !important; transform: translateX(0); will-change: transform; }
@media (prefers-reduced-motion: reduce) { .ax-hero-card .axhc-mtrack { transform: none !important; } }
/* ================= end v156 ================= */

/* ================= v157: NIVEX-EXACT CARD (measured 501x565 @1440 on nivexshop.xyz) ================= */
@media (min-width: 1100px) {
  html:not(.light-mode) .ax-hero-card, .light-mode .ax-hero-card, .hero .ax-hero-card, #hero.hero .ax-hero-card {
    width: 500px !important; padding: 0 30px !important;
    border: 1px solid rgba(59,130,246,0.35) !important;
    box-shadow: 0 0 0 1px rgba(59,130,246,0.08), 0 30px 80px rgba(0,0,0,0.55) !important;
  }
  /* real 64px topbar band: dots left, LIVE brand right, hairline under */
  .ax-hero-card::before { content: ''; position: absolute; top: 64px; left: 0; right: 0; height: 1px; background: rgba(255,255,255,0.06); }
  .ax-hero-card .axhc-dots { top: 0 !important; left: 18px !important; height: 64px !important; display: flex !important; align-items: center !important; gap: 7px !important; }
  .ax-hero-card .axhc-dots i { width: 9px !important; height: 10px !important; }
  .ax-hero-card .axhc-brand { top: 0 !important; right: 18px !important; height: 64px !important; display: flex !important; align-items: center !important; gap: 7px !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: 1px !important; color: rgba(255,255,255,0.6) !important; }
  .ax-hero-card .axhc-brand::before { content: ''; width: 6px; height: 6px; border-radius: 50%; background: #28C840; box-shadow: 0 0 8px #28C840; }
  /* logo: 112px dashed ring + glow, img 67px (Nivex measured) */
  .ax-hero-card .axhc-logo { width: 112px !important; height: 112px !important; margin: 24px auto 18px !important; border: 1px dashed rgba(59,130,246,0.45) !important; background: radial-gradient(circle at 50% 42%, rgba(59,130,246,0.28), rgba(59,130,246,0.04) 70%) !important; box-shadow: 0 0 60px rgba(59,130,246,0.22) !important; }
  .ax-hero-card .axhc-logo img { width: 67px !important; max-width: 67px !important; }
  /* eyebrow: 11.5px/700, ls 1.4, #60A5FA, mb 10 */
  .ax-hero-card .axhc-eyebrow { font-size: 11.5px !important; font-weight: 700 !important; letter-spacing: 1.4px !important; color: #60A5FA !important; margin-bottom: 10px !important; }
  /* heading: 30.4px/700, lh 1.2, ls -0.6, mb 18 */
  .ax-hero-card .axhc-title { font-size: 30.4px !important; line-height: 1.2 !important; letter-spacing: -0.6px !important; margin: 0 0 18px !important; }
  /* stats: pad-top 18, gap 20; value 27.2px/700; label 12.5px/400 ls 1px mt 4 */
  .ax-hero-card .axhc-stats { padding-top: 18px !important; gap: 20px !important; margin: 0 0 24px !important; }
  .ax-hero-card .axhc-stat b { font-size: 27.2px !important; font-weight: 700 !important; letter-spacing: normal !important; }
  .ax-hero-card .axhc-stat span { font-size: 12.5px !important; font-weight: 400 !important; letter-spacing: 1px !important; margin-top: 4px !important; }
  /* buttons: inline pills 12/26, radius 40, fs 14.7, gap 8, blue glow on primary */
  .ax-hero-card .axhc-btns { justify-content: center !important; gap: 8px !important; margin: 0 0 26px !important; }
  .ax-hero-card .axhc-btns a { flex: none !important; padding: 12px 26px !important; border-radius: 40px !important; font-size: 14.7px !important; line-height: 22px !important; }
  .ax-hero-card .axhc-btn1 { box-shadow: 0 8px 30px rgba(59,130,246,0.35) !important; }
  .ax-hero-card .axhc-btn2 { background: transparent !important; border: 1px solid rgba(255,255,255,0.2) !important; }
  /* review chips: 11.5px/400 pure white, pad 8/14, tall pills, faint band */
  .ax-hero-card .axhc-marquee { margin: 0 -30px !important; padding: 12px 0 !important; background: rgba(5,10,26,0.35) !important; border-top: 1px solid rgba(255,255,255,0.06) !important; }
  .ax-hero-card .axhc-mchip { font-size: 12.5px !important; font-weight: 700 !important; color: #FFFFFF !important; padding: 8px 14px !important; background: rgba(255,255,255,0.04) !important; border: 1px solid rgba(255,255,255,0.08) !important; }
  .ax-hero-card .axhc-mchip b { font-weight: 700 !important; }
}
@media (min-width: 2000px) {
  html:not(.light-mode) .ax-hero-card, .light-mode .ax-hero-card, .hero .ax-hero-card { width: 520px !important; }
}
/* mobile: same DNA, scaled */
@media (max-width: 1100px) {
  html:not(.light-mode) .ax-hero-card, .light-mode .ax-hero-card, .hero .ax-hero-card, #hero.hero .ax-hero-card {
    width: min(430px, calc(100vw - 28px)) !important; margin: 38px auto 0 !important; padding: 0 24px !important;
  }
  .ax-hero-card::before { top: 52px; }
  .ax-hero-card .axhc-dots { top: 0 !important; left: 14px !important; height: 52px !important; align-items: center !important; }
  .ax-hero-card .axhc-brand { top: 0 !important; right: 14px !important; height: 52px !important; align-items: center !important; font-size: 10px !important; gap: 6px !important; }
  .ax-hero-card .axhc-brand::before { width: 5px; height: 5px; }
  .ax-hero-card .axhc-logo { width: 92px !important; height: 92px !important; margin: 18px auto 12px !important; border: 1px dashed rgba(59,130,246,0.45) !important; }
  .ax-hero-card .axhc-logo img { width: 56px !important; max-width: 56px !important; }
  .ax-hero-card .axhc-eyebrow { font-size: 10.5px !important; letter-spacing: 1.2px !important; margin-bottom: 8px !important; }
  .ax-hero-card .axhc-title { font-size: 26px !important; letter-spacing: -0.5px !important; margin: 0 0 14px !important; }
  .ax-hero-card .axhc-stats { padding-top: 12px !important; gap: 14px !important; margin: 0 0 16px !important; }
  .ax-hero-card .axhc-stat b { font-size: 23px !important; font-weight: 700 !important; }
  .ax-hero-card .axhc-stat span { font-size: 10.5px !important; letter-spacing: 0.8px !important; }
  .ax-hero-card .axhc-btns { gap: 8px !important; margin: 0 0 18px !important; }
  .ax-hero-card .axhc-btns a { padding: 11px 20px !important; font-size: 13.5px !important; border-radius: 40px !important; }
  .ax-hero-card .axhc-marquee { margin: 0 -24px !important; padding: 10px 0 !important; }
  .ax-hero-card .axhc-mchip { font-size: 12.5px !important; font-weight: 700 !important; color: #fff !important; padding: 7px 12px !important; }
}
@media (max-width: 420px) {
  .ax-hero-card .axhc-title { font-size: 23px !important; }
  .ax-hero-card .axhc-stats { gap: 10px !important; }
  .ax-hero-card .axhc-stat b { font-size: 20px !important; }
  .ax-hero-card .axhc-btns a { padding: 10px 14px !important; }
}
/* ================= end v157 ================= */

/* ================= v158: NIVEX-EXACT GRID + REVIEWS (measured on nivexshop.xyz @1440) ================= */
/* --- product grid: 1400px wide, 3 cols, 20px gap (Nivex .nivex-grid) --- */
@media (min-width: 1100px) {
  .pop-grid {
    max-width: 1400px !important; margin: 44px auto 0 !important;
    display: grid !important; grid-template-columns: repeat(3, 1fr) !important;
    gap: 20px !important; justify-content: center !important;
  }
  .pop-grid .pop-card {
    /* Nivex .n-card: 452.7x225.9 (2:1 landscape), pure black, radius 12, white 10% border */
    width: auto !important; height: 226px !important; padding: 0 !important;
    background: #000000 !important;
    border: 1px solid rgba(255,255,255,0.10) !important; border-radius: 12px !important;
    display: flex !important; flex-direction: column !important; align-items: center !important;
    justify-content: center !important; gap: 0 !important; position: relative !important; overflow: hidden !important;
    text-decoration: none !important;
    transition: transform .25s ease, border-color .25s ease !important;
  }
  .pop-grid .pop-card:hover { transform: translateY(-4px) !important; border-color: rgba(255,255,255,0.22) !important; }
  /* brand art fills the card (we have 30px icons, not photos) - Nivex image is full-bleed */
  .pop-grid .pop-card::before {
    content: ''; position: absolute; inset: 0;
    background: radial-gradient(120% 140% at 50% -20%, rgba(59,130,246,0.16), transparent 55%);
    pointer-events: none;
  }
  .pop-grid .pop-card.is-popular { border-color: rgba(59,130,246,0.45) !important; }
  .pop-grid .pop-card.is-popular::after {
    content: ''; position: absolute; inset: 0; border-radius: 12px;
    box-shadow: inset 0 0 60px rgba(59,130,246,0.10); pointer-events: none;
  }
  /* children re-laid out compact: icon, title, tag, price, feats, buy */
  .pop-grid .pop-ribbon { top: 12px !important; right: 12px !important; font-size: 9.5px !important; padding: 4px 9px !important; }
  .pop-grid .pop-icon { width: 44px !important; height: 44px !important; margin: 0 0 8px !important; position: relative !important; }
  .pop-grid .pop-icon img { width: 30px !important; height: 30px !important; }
  .pop-grid .pop-card h3 { font-size: 17px !important; letter-spacing: -0.3px !important; margin: 0 0 3px !important; position: relative !important; }
  .pop-grid .pop-tag { font-size: 11px !important; margin: 0 0 10px !important; position: relative !important; }
  .pop-grid .pop-price { font-size: 22px !important; margin: 0 0 8px !important; position: relative !important; }
  .pop-grid .pop-price span { font-size: 10px !important; }
  .pop-grid .pop-feats { display: none !important; }
  .pop-grid .pop-buy { position: relative !important; font-size: 12.5px !important; padding: 8px 22px !important; border-radius: 40px !important; background: rgba(59,130,246,0.14) !important; border: 1px solid rgba(59,130,246,0.35) !important; }
  /* section header + button aligned to the 1400px frame */
  .pop-section .section-header, .pop-section > a, .pop-section > .btn,
  .pop-section > a[class*="btn"] { max-width: 1400px !important; margin-left: auto !important; margin-right: auto !important; }
  /* reviews heading: 40px/600 tracking -1 (Nivex h2) */
  .reviews-section .section-title { font-size: 40px !important; font-weight: 600 !important; letter-spacing: -1px !important; }
}
@media (min-width: 2000px) {
  .pop-grid { grid-template-columns: repeat(3, 1fr) !important; }
}
/* mobile: 2:1 DNA, 1 col */
@media (max-width: 1099px) {
  .pop-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 14px !important; }
  .pop-grid .pop-card { height: 170px !important; padding: 0 16px !important; background: #000 !important; border: 1px solid rgba(255,255,255,0.10) !important; border-radius: 12px !important; }
  .pop-grid .pop-feats { display: none !important; }
  .pop-grid .pop-icon { width: 36px !important; height: 36px !important; margin: 0 0 6px !important; }
  .pop-grid .pop-icon img { width: 24px !important; height: 24px !important; }
  .pop-grid .pop-card h3 { font-size: 15.5px !important; margin: 0 0 2px !important; }
  .pop-grid .pop-tag { font-size: 10.5px !important; margin: 0 0 8px !important; }
  .pop-grid .pop-price { font-size: 19px !important; margin: 0 0 8px !important; }
  .pop-grid .pop-buy { font-size: 12px !important; padding: 7px 18px !important; border-radius: 40px !important; background: rgba(59,130,246,0.14) !important; border: 1px solid rgba(59,130,246,0.35) !important; }
}
/* --- review cards: Nivex .review-card 320px, pad 24, radius 14, white 2%/5%, text 15.2px @70% --- */
@media (min-width: 1100px) {
  .reviews-scroll-list .review-card {
    width: 320px !important; min-height: 171px !important; height: auto !important;
    padding: 24px !important; border-radius: 14px !important;
    background: rgba(255,255,255,0.02) !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
    display: flex !important; flex-direction: column !important;
  }
  .reviews-scroll-list .review-text {
    font-size: 15.2px !important; font-weight: 400 !important; line-height: 22.8px !important;
    color: rgba(255,255,255,0.7) !important; margin: 0 0 20px !important;
  }
  .reviews-scroll-list .review-text::after { content: ''; display: block; height: 0; }
  /* footer pinned to bottom like Nivex (border-top + padding-top 15) */
  .reviews-scroll-list .review-author {
    margin-top: auto !important; padding-top: 15px !important;
    border-top: 1px solid rgba(255,255,255,0.06) !important; gap: 10px !important;
  }
  .reviews-scroll-list .review-avatar { width: 34px !important; height: 34px !important; font-size: 14px !important; }
  .reviews-scroll-list .review-name { font-size: 14px !important; letter-spacing: 0.3px !important; }
  .reviews-scroll-list .review-role { font-size: 10.5px !important; }
  .reviews-scroll-list .review-stars { gap: 3px !important; margin: 0 0 15px !important; }
}
@media (max-width: 1099px) {
  .reviews-scroll-list .review-card { width: 290px !important; padding: 20px !important; background: rgba(255,255,255,0.02) !important; border: 1px solid rgba(255,255,255,0.05) !important; }
  .reviews-scroll-list .review-text { font-size: 14px !important; color: rgba(255,255,255,0.7) !important; margin: 0 0 16px !important; }
  .reviews-scroll-list .review-author { padding-top: 12px !important; border-top: 1px solid rgba(255,255,255,0.06) !important; }
}
/* ================= end v158 ================= */

/* ================= v159: NIVEX GRID/REVIEWS — cascade + width + light-mode fixes ================= */
@media (min-width: 1100px) {
  /* grid escapes its 1152px container to Nivex's 1400px (3 x 453px cards, gap 20) */
  #products .pop-grid {
    width: min(1400px, calc(100vw - 40px)) !important;
    margin: 44px 0 0 !important;
    margin-left: calc(50% - min(700px, 50vw - 20px)) !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 20px !important;
  }
  #products .pop-grid .pop-card { width: auto !important; height: 226px !important; }
  /* header + view-all button align to the same 1400px frame */
  #products .section-header, #products .section-header .section-title,
  #products .section-header .section-desc, #products .section-header .section-badge {
    width: min(1400px, calc(100vw - 40px)) !important;
    margin-left: calc(50% - min(700px, 50vw - 20px)) !important;
    margin-right: auto !important;
  }
  #products .pop-section-btn, #products > a.btn, #products a[class*="btn"],
  #products .view-all, #products .section-cta {
    width: min(1400px, calc(100vw - 40px)) !important;
    margin-left: calc(50% - min(700px, 50vw - 20px)) !important;
    margin-right: auto !important;
    justify-content: center !important; display: flex !important;
  }
  /* headings: Nivex h2 40px/600 ls -1 (ID specificity beats JS-injected styles) */
  #reviews .section-title, #products .section-title {
    font-size: 40px !important; font-weight: 600 !important; letter-spacing: -1px !important;
  }
  /* review card exact surface: white 2% bg, white 5% border */
  #reviews .reviews-scroll-list .review-card {
    background: rgba(255,255,255,0.02) !important;
    border: 1px solid rgba(255,255,255,0.05) !important;
  }
  /* product card surface: pure black, white 10% border (Nivex .n-card) */
  #products .pop-grid .pop-card {
    background: #000000 !important;
    border: 1px solid rgba(255,255,255,0.10) !important;
  }
  #products .pop-grid .pop-card.is-popular { border-color: rgba(59,130,246,0.45) !important; }
}
/* light-mode guards: no black cards on light theme */
html.light-mode .pop-grid .pop-card {
  background: #FFFFFF !important;
  border: 1px solid rgba(10,16,31,0.10) !important;
}
html.light-mode .pop-grid .pop-card.is-popular { border-color: rgba(59,130,246,0.5) !important; }
html.light-mode .pop-grid .pop-card h3,
html.light-mode .pop-grid .pop-price { color: #0A101F !important; }
html.light-mode .pop-grid .pop-tag { color: rgba(10,16,31,0.6) !important; }
html.light-mode .pop-grid .pop-buy { background: rgba(59,130,246,0.10) !important; color: #1D4ED8 !important; border-color: rgba(59,130,246,0.4) !important; }
html.light-mode .reviews-scroll-list .review-card {
  background: rgba(10,16,31,0.03) !important;
  border: 1px solid rgba(10,16,31,0.08) !important;
}
html.light-mode .reviews-scroll-list .review-text { color: rgba(10,16,31,0.7) !important; }
/* ================= end v159 ================= */

/* ================= v160: grid polish — ribbon right, pill buy, natural CTA, flat review tops ================= */
/* ribbon: top-RIGHT corner (was centered over the icon) */
#products .pop-grid .pop-ribbon {
  left: auto !important; right: 12px !important; top: 12px !important;
  transform: none !important; -webkit-transform: none !important;
  margin: 0 !important;
}
/* buy pill: compact, centered, never full-width */
#products .pop-grid .pop-buy {
  position: static !important;
  width: auto !important; max-width: none !important;
  align-self: center !important; flex: 0 0 auto !important;
  display: inline-block !important;
  margin: 2px 0 0 !important;
  padding: 8px 22px !important; border-radius: 40px !important;
  font-size: 12.5px !important; line-height: 1.2 !important;
  background: rgba(59,130,246,0.14) !important;
  border: 1px solid rgba(59,130,246,0.35) !important;
  color: #FFFFFF !important;
}
#products .pop-grid .pop-card:hover .pop-buy { background: rgba(59,130,246,0.28) !important; }
/* view-all CTA: natural width, centered (was stretched to 1400px) */
#products > a.btn, #products a[class*="btn"], #products .pop-section-btn, #products .section-cta {
  width: fit-content !important;
  margin: 30px auto 0 !important;
  display: flex !important; justify-content: center !important;
}
/* review cards: flat Nivex top — kill legacy gradient accents */
#reviews .reviews-scroll-list .review-card { background-image: none !important; }
#reviews .reviews-scroll-list .review-card::before,
#reviews .reviews-scroll-list .review-card::after { display: none !important; content: none !important; }
/* Nivex reviews use blue stars */
#reviews .review-stars svg { color: #3B82F6 !important; fill: #3B82F6 !important; }
html.light-mode #reviews .review-stars svg { color: #3B82F6 !important; fill: #3B82F6 !important; }
/* ================= end v160 ================= */

/* ================= v161: blue Nivex stars (beat symbol fill attrs) + centered section desc ================= */
#reviews .review-stars svg,
#reviews .review-stars svg *,
#reviews .review-stat-stars svg,
#reviews .review-stat-stars svg * {
  color: #3B82F6 !important;
  fill: #3B82F6 !important;
}
html.light-mode #reviews .review-stars svg,
html.light-mode #reviews .review-stars svg *,
html.light-mode #reviews .review-stat-stars svg,
html.light-mode #reviews .review-stat-stars svg * {
  color: #3B82F6 !important;
  fill: #3B82F6 !important;
}
/* subtitle centered under the centered title inside the 1400px frame */
#products .section-header .section-desc,
.reviews-section .section-header .section-desc {
  text-align: center !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
/* ================= end v161 ================= */

/* ================= v163: full-bleed banner layer in product cards ================= */
#products .pop-grid .pop-card { position: relative !important; overflow: hidden !important; }
#products .pop-grid .pop-card img.axpc-banner {
  position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; object-position: center !important;
  z-index: 0 !important; pointer-events: none !important;
  border-radius: 12px !important;
}
/* content floats above the art */
#products .pop-grid .pop-card > *:not(.axpc-banner) { position: relative !important; z-index: 1 !important; }
/* readability scrim under text (Nivex-like gradient floor) */
#products .pop-grid .pop-card::after {
  content: '' !important; position: absolute !important; inset: 0 !important; z-index: 0 !important;
  background: linear-gradient(180deg, rgba(0,0,0,0.05) 30%, rgba(0,0,0,0.62) 100%) !important;
  border-radius: 12px !important; pointer-events: none !important;
}
html.light-mode #products .pop-grid .pop-card::after {
  background: linear-gradient(180deg, rgba(255,255,255,0.02) 30%, rgba(2,6,18,0.55) 100%) !important;
}
/* hover: subtle art zoom like Nivex */
#products .pop-grid .pop-card:hover img.axpc-banner { transform: scale(1.05) !important; transition: transform .45s ease !important; }
/* ================= end v163 ================= */

/* ================= v164: ribbon pinned top-right at every width ================= */
#products .pop-grid .pop-ribbon,
html.light-mode #products .pop-grid .pop-ribbon {
  position: absolute !important;
  left: auto !important; right: 12px !important; top: 12px !important;
  transform: none !important; -webkit-transform: none !important; translate: none !important;
  margin: 0 !important; z-index: 2 !important;
}
/* ================= end v164 ================= */

/* ================= v167: ribbon truly absolute — exempt from blanket content lift ================= */
/* blanket rule now excludes the ribbon (old rule lifts EVERYTHING to relative, beating the pin) */
#products .pop-grid .pop-card > *:not(.axpc-banner):not(.pop-ribbon) { position: relative !important; z-index: 1 !important; }
/* re-assert absolute pin at full strength (later in file wins at equal specificity) */
#products .pop-grid .pop-card .pop-ribbon {
  position: absolute !important;
  left: auto !important; right: 12px !important; top: 12px !important;
  transform: none !important; -webkit-transform: none !important; translate: none !important;
  margin: 0 !important; z-index: 2 !important;
}
/* ================= end v167 ================= */

/* ================= v168: light-mode text fixes on /products (hero desc + toolbar) ================= */
html.light-mode .products-hero-desc,
html.light-mode .section-desc.products-hero-desc {
  color: rgba(10,16,31,0.62) !important;
}
html.light-mode .ax-toolbar,
html.light-mode .ax-toolbar-count,
html.light-mode .ax-toolbar-count b {
  color: rgba(10,16,31,0.62) !important;
}
html.light-mode .ax-toolbar-count b { color: #0A101F !important; }
/* sort select legibility */
html.light-mode .ax-toolbar select {
  color: #0A101F !important;
  background: #F4F6FB !important;
  border-color: rgba(10,16,31,0.12) !important;
}
/* search input */
html.light-mode .ax-search input, html.light-mode input[class*="search"] {
  color: #0A101F !important;
}
/* ================= end v168 ================= */

/* ============ v169: Nivex footer + support hub replication (measured 1:1) ============ */
/* --- footer surface: translucent navy, hairline top, 60px top pad (Nivex) --- */
footer.vapor-footer {
  position: relative !important;
  padding: 60px 24px 24px !important;
  background: rgba(0, 10, 28, 0.44) !important;
  border-top: 1px solid rgba(255,255,255,0.06) !important;
  overflow: hidden !important;
}
footer.vapor-footer > * { position: relative !important; z-index: 1 !important; }
/* giant brand watermark (Nivex: 201.6px/900 uppercase, brand blue @5%) */
footer.vapor-footer .ax-foot-wm {
  position: absolute !important;
  left: 50% !important; bottom: -0.14em !important;
  transform: translateX(-50%) !important;
  font-size: clamp(90px, 13.2vw, 195px) !important;
  font-weight: 900 !important; line-height: 1 !important;
  letter-spacing: 0.12em !important; text-transform: uppercase !important;
  color: rgba(59,130,246,0.05) !important;
  white-space: nowrap !important;
  z-index: 0 !important; pointer-events: none !important; user-select: none !important;
}
/* brand text + tagline (17.6 / 14 @50) */
footer.vapor-footer .vapor-footer-title { font-size: 17.6px !important; }
footer.vapor-footer .vapor-footer-copy { font-size: 14px !important; color: rgba(255,255,255,0.5) !important; }
/* circular socials: 36px, Discord violet */
footer.vapor-footer .ax-foot-social { display: flex !important; gap: 10px !important; margin-top: 14px !important; }
footer.vapor-footer .ax-foot-social a {
  width: 36px !important; height: 36px !important; border-radius: 50% !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  background: #5865F2 !important;
  box-shadow: 0 4px 16px rgba(88,101,242,0.35) !important;
  transition: transform .2s ease !important;
}
footer.vapor-footer .ax-foot-social a:hover { transform: translateY(-2px) !important; }
/* column titles: 11.2px uppercase @40 */
footer.vapor-footer .vapor-footer-col h4,
footer.vapor-footer .vapor-footer-col .col-title,
footer.vapor-footer .vapor-footer-col strong {
  font-size: 11.2px !important; text-transform: uppercase !important;
  letter-spacing: 1.2px !important; color: rgba(255,255,255,0.4) !important;
}
/* footer Discord help link -> Nivex ghost pill (16/34, r50) */
footer.vapor-footer a.ax-foot-help {
  display: inline-flex !important; align-items: center !important;
  width: auto !important; padding: 16px 34px !important;
  border-radius: 50px !important; border: 1px solid rgba(255,255,255,0.15) !important;
  font-size: 14.5px !important; font-weight: 600 !important; color: #FFFFFF !important;
  background: transparent !important;
  transition: border-color .2s ease, background .2s ease !important;
}
footer.vapor-footer a.ax-foot-help:hover { border-color: rgba(59,130,246,0.5) !important; background: rgba(59,130,246,0.08) !important; }
/* --- support hub / FAQ (Nivex measured: title 44.8/600, items r20 white2%/5% gap15) --- */
#faq .section-title, .faq-section .section-title {
  font-size: 44.8px !important; font-weight: 600 !important; letter-spacing: -1px !important;
}
.faq-grid { gap: 15px !important; }
.faq-grid .faq-item {
  border-radius: 20px !important;
  background: rgba(255,255,255,0.02) !important;
  border: 1px solid rgba(255,255,255,0.05) !important;
  background-image: none !important;
}
.faq-grid .faq-item::before, .faq-grid .faq-item::after { content: none !important; display: none !important; }
/* --- light-mode guards --- */
html.light-mode footer.vapor-footer {
  background: rgba(10,16,31,0.035) !important;
  border-top-color: rgba(10,16,31,0.08) !important;
}
html.light-mode footer.vapor-footer .ax-foot-wm { color: rgba(59,130,246,0.07) !important; }
html.light-mode footer.vapor-footer .vapor-footer-copy { color: rgba(10,16,31,0.55) !important; }
html.light-mode footer.vapor-footer .vapor-footer-col h4,
html.light-mode footer.vapor-footer .vapor-footer-col .col-title,
html.light-mode footer.vapor-footer .vapor-footer-col strong { color: rgba(10,16,31,0.45) !important; }
html.light-mode footer.vapor-footer a.ax-foot-help { color: #0A101F !important; border-color: rgba(10,16,31,0.15) !important; }
html.light-mode .faq-grid .faq-item { background: rgba(10,16,31,0.03) !important; border-color: rgba(10,16,31,0.08) !important; }
/* ================= end v169 ================= */

/* ============ v170: FAQ hub re-assert — match legacy html:not(.light-mode) specificity ============ */
html:not(.light-mode) .faq-grid .faq-item,
html:not(.light-mode) .faq-section .faq-item {
  border-radius: 20px !important;
  background: rgba(255,255,255,0.02) !important;
  border: 1px solid rgba(255,255,255,0.05) !important;
  background-image: none !important;
}
html:not(.light-mode) #faq .section-title,
html:not(.light-mode) .faq-section .section-title,
html:not(.light-mode) .faq-section h2.section-title {
  font-size: 44.8px !important;
  font-weight: 600 !important;
  letter-spacing: -1px !important;
}
html:not(.light-mode) .faq-grid { gap: 15px !important; }
/* light variants already shipped in v169; re-assert here to stay ahead */
html.light-mode .faq-grid .faq-item {
  border-radius: 20px !important;
  background: rgba(10,16,31,0.03) !important;
  border: 1px solid rgba(10,16,31,0.08) !important;
}
html.light-mode .faq-section .section-title { font-size: 44.8px !important; font-weight: 600 !important; }
/* ================= end v170 ================= */

/* ================= v171: social row — brand-colored 36px circles ================= */
footer.vapor-footer .ax-foot-social { gap: 10px !important; }
footer.vapor-footer .ax-foot-social a.ax-so {
  width: 36px !important; height: 36px !important; border-radius: 50% !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  transition: transform .2s ease, box-shadow .2s ease !important;
}
footer.vapor-footer .ax-foot-social a.ax-so:hover { transform: translateY(-2px) !important; }
footer.vapor-footer .ax-so-discord { background: #5865F2 !important; box-shadow: 0 4px 16px rgba(88,101,242,0.35) !important; }
footer.vapor-footer .ax-so-x { background: #0A0A0A !important; border: 1px solid rgba(255,255,255,0.18) !important; }
footer.vapor-footer .ax-so-instagram { background: linear-gradient(45deg, #F58529 0%, #DD2A7B 55%, #8134AF 100%) !important; box-shadow: 0 4px 16px rgba(221,42,123,0.30) !important; }
footer.vapor-footer .ax-so-tiktok { background: #010101 !important; border: 1px solid rgba(255,255,255,0.18) !important; }
footer.vapor-footer .ax-so-soon { opacity: 0.75 !important; }
html.light-mode footer.vapor-footer .ax-so-x,
html.light-mode footer.vapor-footer .ax-so-tiktok { border-color: rgba(10,16,31,0.15) !important; }
/* ================= end v171 ================= */

/* ============ v172: brand social colors — win cascade over v169 legacy ============ */
footer.vapor-footer .ax-foot-social a.ax-so { background: transparent !important; }
footer.vapor-footer .ax-foot-social a.ax-so.ax-so-discord { background: #5865F2 !important; box-shadow: 0 4px 16px rgba(88,101,242,0.35) !important; }
footer.vapor-footer .ax-foot-social a.ax-so.ax-so-x { background: #0A0A0A !important; border: 1px solid rgba(255,255,255,0.22) !important; }
footer.vapor-footer .ax-foot-social a.ax-so.ax-so-instagram { background: linear-gradient(45deg,#F58529 0%,#DD2A7B 55%,#8134AF 100%) !important; box-shadow: 0 4px 16px rgba(221,42,123,0.30) !important; }
footer.vapor-footer .ax-foot-social a.ax-so.ax-so-tiktok { background: #010101 !important; border: 1px solid rgba(255,255,255,0.22) !important; }
footer.vapor-footer .ax-foot-social a.ax-so.ax-so-soon { opacity: .78 !important; }
html.light-mode footer.vapor-footer .ax-foot-social a.ax-so.ax-so-x,
html.light-mode footer.vapor-footer .ax-foot-social a.ax-so.ax-so-tiktok { border-color: rgba(10,16,31,0.15) !important; }
/* ============ end v172 ============ */

/* ================= v175: Síguenos column ================= */
footer.vapor-footer .vapor-footer-grid { flex-wrap: wrap !important; }
footer.vapor-footer .ax-foot-follow { min-width: 150px !important; }
footer.vapor-footer .ax-foot-follow h5 { margin-bottom: 14px !important; }
footer.vapor-footer .ax-foot-follow a.ax-soc-link { display: flex !important; align-items: center !important; gap: 8px !important; }
footer.vapor-footer .ax-foot-follow a.ax-soc-link .ax-soc-ic { flex: 0 0 auto !important; }
footer.vapor-footer .ax-foot-follow a.ax-soc-link:hover .ax-soc-ic { transform: scale(1.12) !important; }
footer.vapor-footer .ax-foot-follow a.ax-soc-link .ax-soc-ic { transition: transform .2s ease !important; }
footer.vapor-footer .ax-foot-follow a.ax-soc-soon { opacity: .7 !important; }
html.light-mode footer.vapor-footer .ax-foot-follow .ax-soc-ic { filter: saturate(1.1) !important; }
/* ================= end v175 ================= */
/* v179: crisp text in hero card (no fractional layers) */
.ax-hero-card, .ax-hero-card * { text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; }
/* ================= v180: cart summary 3D - entrance, tilt, badge stagger, button bevel ================= */
form.ax-cart-summary {
  position: relative;
  border-radius: 18px;
  border-color: rgba(59,130,246,0.22);
  background: linear-gradient(180deg, rgba(59,130,246,0.07), rgba(255,255,255,0.02) 34%, rgba(255,255,255,0.015)), var(--s1, rgba(255,255,255,0.024));
  box-shadow: 0 26px 52px -26px rgba(0,0,0,0.65), 0 0 0 1px rgba(59,130,246,0.08), 0 0 34px -10px rgba(59,130,246,0.22), inset 0 1px 0 rgba(255,255,255,0.07);
  transition: transform 0.18s ease-out, border-color 0.25s ease, box-shadow 0.25s ease;
}
form.ax-cart-summary::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(59,130,246,0.10), transparent 40%);
  opacity: 0.5;
  animation: axCartSheen 5.5s ease-in-out 1.2s infinite;
}
@keyframes axCartSheen { 0%, 100% { opacity: 0.4; } 50% { opacity: 0.95; } }
@keyframes axCart3dIn {
  from { opacity: 0; transform: perspective(900px) rotateX(9deg) translateY(24px) scale(0.97); }
  60%  { opacity: 1; }
  to   { opacity: 1; transform: perspective(900px) rotateX(0deg) translateY(0) scale(1); }
}
form.ax-cart-summary.ax-c3d-in { animation: axCart3dIn 0.75s cubic-bezier(0.22,1,0.36,1) both; }
form.ax-cart-summary.ax-c3d-live { will-change: transform; }
form.ax-cart-summary label.form-label {
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.16em;
  color: #BFDBFE;
  text-shadow: 0 0 18px rgba(59,130,246,0.45);
  margin-bottom: 12px;
}
form.ax-cart-summary .text-muted { color: #94A7C9 !important; font-size: 13.5px; }
form.ax-cart-summary .d-flex > span { font-variant-numeric: tabular-nums; }
form.ax-cart-summary .d-flex > span:last-child { font-weight: 700; font-size: 15px; color: #E7ECF5; }
form.ax-cart-summary .fw-bold {
  font-size: 20px;
  font-weight: 800;
  color: #FFFFFF;
  text-shadow: 0 0 22px rgba(59,130,246,0.35);
}
form.ax-cart-summary .ax-paytrust-label { color: #94A7C9; }
form.ax-cart-summary .ax-pt-badge { transition: transform 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease; }
form.ax-cart-summary .ax-pt-badge:hover {
  transform: translateY(-2px);
  border-color: rgba(59,130,246,0.55);
  box-shadow: 0 8px 18px -6px rgba(59,130,246,0.35), inset 0 1px 0 rgba(255,255,255,0.12);
}
@keyframes axBadge3dIn { from { opacity: 0; transform: translateY(9px) scale(0.94); } to { opacity: 1; transform: none; } }
form.ax-cart-summary.ax-c3d-in .ax-paytrust .ax-pt-badge { animation: axBadge3dIn 0.45s ease both; }
form.ax-cart-summary.ax-c3d-in .ax-paytrust .ax-pt-badge:nth-of-type(2) { animation-delay: 0.30s; }
form.ax-cart-summary.ax-c3d-in .ax-paytrust .ax-pt-badge:nth-of-type(3) { animation-delay: 0.36s; }
form.ax-cart-summary.ax-c3d-in .ax-paytrust .ax-pt-badge:nth-of-type(4) { animation-delay: 0.42s; }
form.ax-cart-summary.ax-c3d-in .ax-paytrust .ax-pt-badge:nth-of-type(5) { animation-delay: 0.48s; }
form.ax-cart-summary.ax-c3d-in .ax-paytrust .ax-pt-badge:nth-of-type(6) { animation-delay: 0.54s; }
form.ax-cart-summary.ax-c3d-in .ax-paytrust .ax-pt-badge:nth-of-type(7) { animation-delay: 0.60s; }
form.ax-cart-summary.ax-c3d-in .btn { animation: axBadge3dIn 0.5s ease 0.5s both; }
form.ax-cart-summary .btn {
  border: none;
  font-weight: 800;
  letter-spacing: 0.1em;
  background-image: linear-gradient(180deg, rgba(255,255,255,0.20), rgba(255,255,255,0) 52%);
  box-shadow: 0 10px 26px -8px rgba(59,130,246,0.55), 0 2px 6px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.28), inset 0 -2px 6px rgba(0,0,0,0.22);
  transition: transform 0.16s ease, box-shadow 0.16s ease, filter 0.16s ease;
}
form.ax-cart-summary .btn:hover {
  transform: translateY(-1px);
  filter: brightness(1.06);
  box-shadow: 0 14px 32px -8px rgba(59,130,246,0.65), 0 3px 8px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.3), inset 0 -2px 6px rgba(0,0,0,0.22);
}
form.ax-cart-summary .btn:active {
  transform: translateY(1px);
  filter: brightness(0.98);
  box-shadow: 0 4px 14px -6px rgba(59,130,246,0.5), inset 0 2px 8px rgba(0,0,0,0.35);
}
html.light-mode form.ax-cart-summary {
  border-color: rgba(59,130,246,0.35);
  background: linear-gradient(180deg, rgba(59,130,246,0.05), rgba(255,255,255,0.92));
  box-shadow: 0 18px 40px -22px rgba(15,23,42,0.28), 0 0 26px -10px rgba(59,130,246,0.28), inset 0 1px 0 rgba(255,255,255,0.7);
}
html.light-mode form.ax-cart-summary label.form-label { color: #1D4ED8; text-shadow: none; }
html.light-mode form.ax-cart-summary .text-muted { color: #47576F !important; }
html.light-mode form.ax-cart-summary .d-flex > span:last-child { color: #0F172A; }
html.light-mode form.ax-cart-summary::before { opacity: 0.25; }
@media (max-width: 640px) {
  form.ax-cart-summary { border-radius: 16px; box-shadow: 0 18px 36px -22px rgba(0,0,0,0.6), 0 0 24px -12px rgba(59,130,246,0.2), inset 0 1px 0 rgba(255,255,255,0.06); }
}
@media (prefers-reduced-motion: reduce) {
  form.ax-cart-summary, form.ax-cart-summary *, form.ax-cart-summary::before { animation: none !important; transition: none !important; }
}
/* ================= end v180 ================= */

/* v180b: typography override - out-rank legacy !important form-label rule */
form.ax-cart-summary label.form-label {
  font-size: 13px !important;
  font-weight: 800 !important;
  letter-spacing: 0.16em !important;
  color: #BFDBFE !important;
  text-shadow: 0 0 18px rgba(59,130,246,0.45);
  margin-bottom: 12px !important;
}
form.ax-cart-summary .text-muted { color: #94A7C9 !important; font-size: 13.5px !important; }
form.ax-cart-summary .d-flex > span:last-child { font-weight: 700 !important; font-size: 15px !important; color: #E7ECF5 !important; }
form.ax-cart-summary .fw-bold { font-size: 20px !important; font-weight: 800 !important; color: #FFFFFF !important; text-shadow: 0 0 22px rgba(59,130,246,0.35); }
html.light-mode form.ax-cart-summary label.form-label { color: #1D4ED8 !important; text-shadow: none; }
html.light-mode form.ax-cart-summary .text-muted { color: #47576F !important; }
html.light-mode form.ax-cart-summary .d-flex > span:last-child { color: #0F172A !important; }

/* ================= v181: language selector + embed chrome in site colors (navy #0a101f / ATLAS blue #3B82F6) ================= */
header .header-actions select#langSelect.lang-select {
  appearance: none !important; -webkit-appearance: none !important; -moz-appearance: none !important;
  background-color: rgba(255,255,255,0.04) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%233B82F6' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  border: 1px solid rgba(255,255,255,0.16) !important;
  border-radius: 999px !important;
  color: #E7ECF5 !important;
  font-family: 'Poppins', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  padding: 6px 30px 6px 14px !important;
  height: 34px !important;
  cursor: pointer;
  transition: border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}
header .header-actions select#langSelect.lang-select:hover {
  border-color: rgba(59,130,246,0.55) !important;
  background-color: rgba(59,130,246,0.10) !important;
  box-shadow: 0 0 0 3px rgba(59,130,246,0.15), 0 4px 14px -4px rgba(59,130,246,0.35);
}
header .header-actions select#langSelect.lang-select:focus { outline: none; border-color: rgba(59,130,246,0.8) !important; box-shadow: 0 0 0 3px rgba(59,130,246,0.22); }
select#langSelect.lang-select option, .ax-mlang select option {
  background: #0a101f !important;
  color: #E7ECF5 !important;
  font-weight: 600;
  padding: 8px 10px;
}
select#langSelect.lang-select option:checked, .ax-mlang select option:checked { background: #3B82F6 !important; color: #ffffff !important; }
html.light-mode header .header-actions select#langSelect.lang-select { background-color: #ffffff !important; border-color: rgba(11,19,32,0.15) !important; color: #0F172A !important; }
html.light-mode select#langSelect.lang-select option, html.light-mode .ax-mlang select option { background: #ffffff !important; color: #0F172A !important; }
html.light-mode select#langSelect.lang-select option:checked, html.light-mode .ax-mlang select option:checked { background: #3B82F6 !important; color: #ffffff !important; }
/* ================= end v181 ================= */

/* ================= v183: Nivex-grade typography (chips, stats) + custom language dropdown ================= */
/* --- hero card marquee chips: bigger, brighter, breathable (was 11px cramped) --- */
.ax-hero-card .axhc-mtrack { gap: 12px; }
.ax-hero-card .axhc-mchip {
  font-family: Inter, 'Poppins', sans-serif; /* v216.2: match the theme typeface */
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #F2F6FF !important;
  padding: 8px 16px !important;
  gap: 8px !important;
  letter-spacing: 0.01em;
  background: rgba(255,255,255,0.06) !important;
  border-color: rgba(255,255,255,0.12) !important;
}
.ax-hero-card .axhc-mchip .stars { font-size: 12.5px !important; }
html.light-mode .ax-hero-card .axhc-mchip { color: #1B2A4A !important; }
/* --- stat sublabels: readable tracking like Nivex --- */
.ax-hero-card .axhc-stat span { font-size: 11px !important; letter-spacing: 0.12em !important; font-weight: 600; }
/* --- custom language dropdown (replaces native select popup) --- */
.ax-dd { position: relative; display: inline-flex; }
.ax-dd-btn {
  display: inline-flex; align-items: center; gap: 7px;
  font-family: 'Poppins', sans-serif; font-size: 12.5px; font-weight: 700; letter-spacing: 0.04em;
  color: #E7ECF5; background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.16); border-radius: 999px;
  padding: 7px 14px; cursor: pointer; transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.ax-dd-btn:hover, .ax-dd.ax-open .ax-dd-btn { border-color: rgba(59,130,246,0.55); background: rgba(59,130,246,0.10); box-shadow: 0 0 0 3px rgba(59,130,246,0.15); }
.ax-dd-btn svg { width: 13px; height: 13px; flex: none; color: #3B82F6; }
.ax-dd-btn .ax-dd-caret { width: 9px; height: 6px; color: #3B82F6; transition: transform .2s ease; }
.ax-dd.ax-open .ax-dd-caret { transform: rotate(180deg); }
.ax-dd-menu {
  position: absolute; top: calc(100% + 8px); right: 0; min-width: 158px; z-index: 99999;
  background: #0a101f; border: 1px solid rgba(59,130,246,0.30); border-radius: 14px;
  box-shadow: 0 24px 48px -16px rgba(0,0,0,0.8), 0 0 30px -8px rgba(59,130,246,0.35);
  padding: 6px; display: none; animation: axDdIn 0.18s ease both;
}
.ax-dd.ax-open .ax-dd-menu { display: block; }
@keyframes axDdIn { from { opacity: 0; transform: translateY(-6px) scale(0.97); } to { opacity: 1; transform: none; } }
.ax-dd-opt {
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
  font-family: 'Poppins', sans-serif; font-size: 13px; font-weight: 600;
  color: #C9D6EE; padding: 10px 12px; border-radius: 9px; cursor: pointer; white-space: nowrap;
  transition: background-color .15s ease, color .15s ease;
}
.ax-dd-opt:hover { background: rgba(59,130,246,0.16); color: #FFFFFF; }
.ax-dd-opt.ax-cur { color: #60A5FA; }
.ax-dd-opt .ax-dd-check { width: 13px; height: 13px; color: #3B82F6; opacity: 0; }
.ax-dd-opt.ax-cur .ax-dd-check { opacity: 1; }
/* mobile menu variant: keep the existing row, swap select for dropdown */
.ax-mlang .ax-dd { flex: 1; }
.ax-mlang .ax-dd-btn { width: 100%; justify-content: space-between; }
.ax-mlang select { display: none !important; }
html.light-mode .ax-dd-btn { background: #ffffff; border-color: rgba(11,19,32,0.15); color: #0F172A; }
html.light-mode .ax-dd-menu { background: #ffffff; border-color: rgba(11,19,32,0.15); box-shadow: 0 24px 48px -16px rgba(15,23,42,0.25); }
html.light-mode .ax-dd-opt { color: #33415E; }
html.light-mode .ax-dd-opt:hover { background: rgba(59,130,246,0.10); color: #0F172A; }
/* ================= end v183 ================= */

/* ================= v184: cart item rows 3D - staggered entrance + pointer tilt (matches v180 summary box) ================= */
/* rows need a perspective context; the column wrapper gets it */
.ax-cart-items, .cart [class*="cart-items"], .cart .col-lg-8 { perspective: 1100px; }
/* entrance: rise + un-tilt per row, cadence set inline by JS (--ax-d) */
@keyframes axRow3dIn {
  from { opacity: 0; transform: perspective(900px) rotateX(8deg) translateY(18px) scale(0.98); }
  60%  { opacity: 1; }
  to   { opacity: 1; transform: perspective(900px) rotateX(0deg) translateY(0) scale(1); }
}
.cart-item-bg.ax-r3d-in { animation: axRow3dIn 0.65s cubic-bezier(0.22,1,0.36,1) both; animation-delay: var(--ax-d, 0s); }
/* tilt: same recipe as the summary box (JS sets inline transform, rAF-damped) */
.cart-item-bg { transform-style: preserve-3d; will-change: auto; }
.cart-item-bg.ax-r3d-live { will-change: transform; }
/* image pop stays layered while tilted */
.cart-item-bg.ax-r3d-live img { transform: translateZ(24px); }
.cart-item-bg.ax-r3d-live:hover img { transform: translateZ(34px) scale(1.04); }
html.light-mode .cart-item-bg.ax-r3d-in { animation: axRow3dIn 0.65s cubic-bezier(0.22,1,0.36,1) both; animation-delay: var(--ax-d, 0s); }
@media (prefers-reduced-motion: reduce) {
  .cart-item-bg, .cart-item-bg * { animation: none !important; transition: none !important; }
}
/* ================= end v184 ================= */

/* ================= v185: cart empty state - Nivex style with CTA ================= */
/* when empty: hide the summary column entirely, let the empty panel own the page */
.cart.ax-empty-cart form.ax-cart-summary { display: none !important; }
.cart.ax-empty-cart .row > [class*="col-lg-4"], .cart.ax-empty-cart .row > [class*="col-md-4"] { display: none !important; }
.cart.ax-empty-cart .row > [class*="col-lg-8"], .cart.ax-empty-cart .row > [class*="col-md-8"] { flex: 0 0 100% !important; max-width: 100% !important; }
.ax-empty { text-align: center; padding: 58px 28px 62px; animation: axRow3dIn 0.6s cubic-bezier(0.22,1,0.36,1) both; }
.ax-empty-ic {
  width: 86px; height: 86px; margin: 0 auto 22px; border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: radial-gradient(circle at 30% 25%, rgba(59,130,246,0.35), rgba(59,130,246,0.10));
  border: 1px solid rgba(59,130,246,0.35);
  box-shadow: 0 0 44px -8px rgba(59,130,246,0.45), inset 0 1px 0 rgba(255,255,255,0.15);
  animation: axEmptyFloat 3.4s ease-in-out 0.6s infinite;
}
@keyframes axEmptyFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-6px); } }
.ax-empty-ic svg { width: 38px; height: 38px; color: #BFDBFE; }
.ax-empty h3 {
  font-family: 'Poppins', sans-serif; font-size: 22px; font-weight: 800;
  color: #FFFFFF; letter-spacing: -0.01em; margin: 0 0 10px;
  text-shadow: 0 0 24px rgba(59,130,246,0.25);
}
.ax-empty p { color: #94A7C9; font-size: 14.5px; max-width: 400px; margin: 0 auto 28px; line-height: 1.65; }
.ax-empty-btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }
.ax-empty-cta {
  font-family: 'Poppins', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: 0.06em;
  text-transform: uppercase; color: #fff; text-decoration: none;
  background-color: #3B82F6;
  background-image: linear-gradient(180deg, rgba(255,255,255,0.20), rgba(255,255,255,0) 52%);
  padding: 14px 32px; border-radius: 12px; display: inline-flex; align-items: center; gap: 9px;
  box-shadow: 0 10px 26px -8px rgba(59,130,246,0.55), 0 2px 6px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.28), inset 0 -2px 6px rgba(0,0,0,0.22);
  transition: transform 0.16s ease, box-shadow 0.16s ease, filter 0.16s ease;
}
.ax-empty-cta:hover { transform: translateY(-1px); filter: brightness(1.06); color: #fff; }
.ax-empty-cta:active { transform: translateY(1px); box-shadow: 0 4px 14px -6px rgba(59,130,246,0.5), inset 0 2px 8px rgba(0,0,0,0.35); }
.ax-empty-alt {
  font-family: 'Poppins', sans-serif; font-size: 13px; font-weight: 600; color: #93B8F8; text-decoration: none;
  border: 1px solid rgba(59,130,246,0.30); padding: 13px 24px; border-radius: 12px; display: inline-flex; align-items: center; gap: 8px;
  background: rgba(59,130,246,0.06); transition: border-color 0.16s ease, background-color 0.16s ease;
}
.ax-empty-alt:hover { border-color: rgba(59,130,246,0.55); background: rgba(59,130,246,0.12); color: #BFDBFE; }
.ax-empty-alt svg { width: 16px; height: 16px; }
html.light-mode .cart.ax-empty-cart .ax-empty-panel { background: #ffffff !important; border-color: rgba(11,19,32,0.12) !important; }
html.light-mode .ax-empty h3 { color: #0B1530; text-shadow: none; }
html.light-mode .ax-empty p { color: #47576F; }
html.light-mode .ax-empty-ic { background: radial-gradient(circle at 30% 25%, rgba(59,130,246,0.20), rgba(59,130,246,0.06)); }
@media (max-width: 640px) { .ax-empty { padding: 44px 20px 48px; } .ax-empty h3 { font-size: 19px; } .ax-empty-btns { flex-direction: column; align-items: stretch; } .ax-empty-cta, .ax-empty-alt { justify-content: center; } }
@media (prefers-reduced-motion: reduce) { .ax-empty, .ax-empty-ic { animation: none !important; } }
/* ================= end v185 ================= */

/* v185c: keep CTA on one line */
.ax-empty-cta { white-space: nowrap; flex: 0 0 auto; }
.ax-empty-btns { gap: 14px; }

/* ================= v186: pixel-snap ALL float/tilt animations (v179 standard) ================= */
/* every keyframe lands on whole pixels / whole degrees — text never rasterizes between pixels */
@keyframes axTileFloat {
  0% { transform: translateZ(38px) translateY(0px); animation-timing-function: steps(5, end); }
  50% { transform: translateZ(38px) translateY(-5px); animation-timing-function: steps(5, end); }
  100% { transform: translateZ(38px) translateY(0px); }
}
@keyframes axTitleFloat {
  0% { transform: perspective(900px) rotateX(2deg) rotateY(-2deg) translateY(0px); animation-timing-function: steps(2, end); }
  50% { transform: perspective(900px) rotateX(-2deg) rotateY(2deg) translateY(-4px); animation-timing-function: steps(2, end); }
  100% { transform: perspective(900px) rotateX(2deg) rotateY(-2deg) translateY(0px); }
}
@keyframes axOrbitFloat {
  0% { transform: translateY(0px) rotate(var(--or, 0deg)); animation-timing-function: steps(6, end); }
  50% { transform: translateY(-12px) rotate(calc(var(--or, 0deg) + 6deg)); animation-timing-function: steps(6, end); }
  100% { transform: translateY(0px) rotate(var(--or, 0deg)); }
}
@keyframes axEmptyFloat {
  0% { transform: translateY(0px); animation-timing-function: steps(3, end); }
  50% { transform: translateY(-6px); animation-timing-function: steps(3, end); }
  100% { transform: translateY(0px); }
}
/* ================= end v186 ================= */

/* ================= v187: stat sub-labels contrast (CLIENTES/SOPORTE/RATING) ================= */
/* was rgba(255,255,255,0.5) @9.5px — too faint on the navy card; raise to AA-friendly white */
.ax-hero-card .axhc-stat span {
  color: rgba(242, 246, 255, 0.82) !important;
  font-weight: 600 !important;
  font-size: 10.5px !important;
  letter-spacing: 1.4px !important;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.45) !important;
}
.ax-hero-card .axhc-stat b { text-shadow: 0 0 18px rgba(59, 130, 246, 0.35); }
@media (max-width: 768px) { .ax-hero-card .axhc-stat span { font-size: 10px !important; letter-spacing: 1px !important; } }
/* ================= end v187 ================= */

/* ================= v188: inline SVG pay badges (no simpleicons CDN dependency) ================= */
.ax-pb-svg { color: #fff !important; }
.ax-pb-svg svg { display: block; }
.light-mode .ax-pb-svg { color: #1a2440 !important; }
/* ================= end v188 ================= */

/* ================= v192: pop-card 3D tilt (popup engine) ================= */
#products .pop-grid .pop-card { will-change: transform; transform-style: preserve-3d; }
#products .pop-grid .pop-card { transition: border-color .35s ease, box-shadow .35s ease; }
/* JS drives transform during tilt; CSS hover lift only when no JS transform active */
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  #products .pop-grid .pop-card:hover { transform: translateY(-4px); }
}
.pop-card img.axpc-banner { transform: translate3d(var(--px, 0px), var(--py, 0px), 0) scale(1.06); transition: transform .18s ease-out; will-change: transform; }
.pop-card:hover img.axpc-banner { transform: translate3d(var(--px, 0px), var(--py, 0px), 0) scale(1.06) !important; }
.pop-icon.axpop-3d, .pop-price.axpop-3d, .pop-buy.axpop-3d { transform: translateZ(34px); }
.pop-icon.axpop-3d { transition: transform .3s ease; }
@media (prefers-reduced-motion: reduce) {
  #products .pop-grid .pop-card { will-change: auto !important; transform: none !important; }
  .pop-card img.axpc-banner { transform: none !important; }
  .pop-icon.axpop-3d, .pop-price.axpop-3d, .pop-buy.axpop-3d { transform: none !important; }
}
/* ================= end v192 ================= */

/* ================= v203: integer-stepped glow pulse (homepage pop-cards breathe) ================= */
@keyframes axGlowPulse {
  0%   { opacity: 0.82; }
  25%  { opacity: 0.88; }
  50%  { opacity: 1; }
  75%  { opacity: 0.88; }
  100% { opacity: 0.82; }
}
#products .pop-grid .pop-card img.axpc-banner {
  animation: axGlowPulse 6s steps(1, end) infinite; /* 4 integer stops, 1.5s each */
  will-change: opacity;
}
@media (prefers-reduced-motion: reduce) {
  #products .pop-grid .pop-card img.axpc-banner { animation: none !important; }
}
/* ================= end v203 ================= */
/* --- v207: cursor glare + banner parallax on product-cards (popup recipe) --- */
.ax-prod-grid .product-card .ax3d-glare,
body.ax-products-page .product-card .ax3d-glare {
  display: block !important;
  border-radius: 14px !important;
  z-index: 3 !important;
}
.ax-prod-grid .product-card .product-card__image img,
body.ax-products-page .product-card .product-card__image img {
  transform: translate3d(var(--px, 0px), var(--py, 0px), 0) scale(1.05) !important;
  transition: transform .18s ease-out !important;
  will-change: transform;
}
.ax-prod-grid .product-card:hover .product-card__image img,
body.ax-products-page .product-card:hover .product-card__image img {
  transform: translate3d(var(--px, 0px), var(--py, 0px), 0) scale(1.05) !important;
}
/* --- v208: glare above category card content --- */
.gallery-item.ax-cat3d .ax3d-glare { z-index: 5 !important; border-radius: 16px !important; display: block !important; }
/* ===== v209b: navbar action polish — premium language dd, blue login, cart badge ===== */
/* language dropdown: tighter pill, hover lift, open-state glow */
.header-actions .ax-dd-btn {
  padding: 7px 13px 7px 11px;
  gap: 6px;
  font-size: 12px;
  letter-spacing: 0.03em;
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.14);
  transition: border-color .2s ease, background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.header-actions .ax-dd-btn:hover { transform: translateY(-1px); }
.header-actions .ax-dd.ax-open .ax-dd-btn { transform: translateY(-1px); }
/* dropdown menu: softer glass navy, roomier rows */
.header-actions .ax-dd-menu {
  min-width: 172px;
  border-radius: 16px;
  background: linear-gradient(180deg, #0d1428 0%, #0a101f 100%);
  border: 1px solid rgba(96,165,250,0.28);
  box-shadow: 0 28px 56px -18px rgba(0,0,0,0.85), 0 0 34px -10px rgba(59,130,246,0.4);
  padding: 7px;
}
.header-actions .ax-dd-opt {
  padding: 9px 12px;
  border-radius: 10px;
  font-size: 12.5px;
  letter-spacing: 0.02em;
  display: flex; align-items: center; justify-content: space-between; gap: 10px;
}
/* login button: solid brand blue, white text, glow hover */
.header-actions button.btn-login {
  background: linear-gradient(135deg, #1E96FF 0%, #0069FF 100%);
  border: 1px solid rgba(120,180,255,0.45);
  color: #ffffff;
  border-radius: 999px;
  padding: 7px 16px 7px 12px;
  font-size: 12.5px;
  gap: 7px;
  box-shadow: 0 4px 18px -6px rgba(30,120,255,0.55);
  transition: box-shadow .2s ease, transform .2s ease, filter .2s ease;
}
.header-actions button.btn-login svg { color: #ffffff; }
.header-actions button.btn-login:hover {
  transform: translateY(-1px);
  filter: brightness(1.08);
  box-shadow: 0 6px 24px -6px rgba(30,120,255,0.7), 0 0 0 3px rgba(59,130,246,0.18);
}
html.light-mode .header-actions button.btn-login { border-color: rgba(0,60,160,0.25); }
/* cart button: framed pill + count badge */
.header-actions .btn-cart {
  padding: 7px 11px;
  border: 1px solid rgba(255,255,255,0.14);
  border-radius: 999px;
  background: rgba(255,255,255,0.05);
  color: #E7ECF5;
  transition: border-color .2s ease, background-color .2s ease, transform .2s ease, box-shadow .2s ease;
}
.header-actions .btn-cart:hover {
  transform: translateY(-1px);
  border-color: rgba(59,130,246,0.55);
  background: rgba(59,130,246,0.10);
  box-shadow: 0 0 0 3px rgba(59,130,246,0.15);
  color: #ffffff;
}
.ax-cart-badge {
  position: absolute;
  top: -5px; right: -5px;
  min-width: 17px; height: 17px;
  padding: 0 4px;
  border-radius: 999px;
  background: linear-gradient(135deg, #1E96FF, #0059E0);
  color: #fff;
  font-size: 10px; font-weight: 800; line-height: 17px;
  text-align: center;
  border: 2px solid #070D1E;
  box-shadow: 0 2px 8px rgba(30,120,255,0.5);
  pointer-events: none;
}
html.light-mode .ax-cart-badge { border-color: #ffffff; }
/* mobile: keep the trio inside the collapsed menu tidy */
@media (max-width: 991.98px) {
  .ax-cart-badge { top: -4px; right: -4px; }
}

/* ==== v216: .EXE coupon popup REMOVED — kill-switch (JS deleted; this guards against a stale cached external.js) ==== */
.ax-promo-ov, .ax-promo { display:none !important; visibility:hidden !important; pointer-events:none !important; }

/* ==== v216.3: hero buttons — el texto ya no se recorta en móviles estrechos ====
   Causa: la v56b forzaba "una sola línea" (flex:1 1 0 + nowrap) a <=480px, pero la
   restilización Lusive subió el botón a 15px/padding 12x28 -> el CTA de Discord
   (icono + etiqueta + relleno = ~214px) se comprimía a ~145px y el label quedaba
   cortado ("Unirse a Disco"). Ahora la fila puede envolver y cada botón toma su
   tamaño natural: caben lado a lado si hay sitio y, si no, se apilan centrados. */
@media (max-width: 480px) {
  .hero .hero-buttons { flex-wrap: wrap !important; row-gap: 10px !important; }
  .hero .hero-buttons a { flex: 0 1 auto !important; min-width: 0 !important; white-space: nowrap !important; }
}

/* ==== v216.4: botones del hero — fuera el tracking negativo y en negrita ====
   La regla v114 de titulares (h1,h2,h3,...,.ax3d-hero) lleva
   "letter-spacing: -1.5px !important; font-weight: 600 !important" y, al incluir
   .ax3d-hero en la lista, ambos valores se HEREDABAN a todo el contenido del hero:
   los botones de la tarjeta ("Comprar Ahora" / "Nuestro Discord") y los de la
   columna izquierda salían con las letras pegadas y sin negrita. Aquí recuperan el
   espaciado natural del tema (Inter, como chips y títulos) y el peso 700. */
.ax-hero-card .axhc-btns a,
html:not(.light-mode) .hero .hero-buttons a.btn-primary,
html:not(.light-mode) .hero .hero-buttons a.btn-secondary,
html.light-mode .hero .hero-buttons a.btn-primary,
html.light-mode .hero .hero-buttons a.btn-secondary {
  letter-spacing: normal !important;
  font-weight: 700 !important;
} /* v216.5: el peso 600 venía de una regla más específica del .btn-primary */