/* ===== Xoxomart NEXORA Design Layer ===== */

.xox-search-wrap { position: relative !important; width: 100%; }
.xox-search-wrap form,
.xox-search-wrap .dgwt-wcas-search-wrapp,
.xox-search-wrap .dgwt-wcas-sf-wrapp {
  display: flex !important; align-items: center;
  background: #ffffff !important; border-radius: 999px !important;
  box-shadow: 0 8px 24px rgba(11,17,48,0.28) !important;
  overflow: hidden; padding: 5px 5px 5px 22px !important; width: 100% !important;
}
.xox-search-wrap input[type="search"], .xox-search-wrap input[type="text"] {
  flex: 1 1 auto; border: none !important; outline: none !important;
  background: transparent !important; box-shadow: none !important;
  font-family: 'Manrope', sans-serif !important; font-size: 15px !important; color: #0A0E27 !important;
  padding: 12px 8px !important; min-width: 0;
}
.xox-search-wrap button[type="submit"], .xox-search-wrap .dgwt-wcas-search-submit {
  flex: 0 0 auto !important; width: 42px !important; height: 42px !important; border-radius: 50% !important;
  background: linear-gradient(135deg,#7C3AED,#4F6BFF) !important; border: none !important;
  color: #fff !important; display: flex !important; align-items: center; justify-content: center; cursor: pointer;
}
.xox-search-wrap .dgwt-wcas-search-submit svg, .xox-search-wrap .dgwt-wcas-search-submit path { fill: #fff !important; }
.xox-search-wrap .dgwt-wcas-suggestions-wrapp {
  border-radius: 16px !important; overflow: hidden;
  box-shadow: 0 12px 32px rgba(11,17,48,0.25) !important; margin-top: 8px !important; border: none !important;
}

/* Header icon buttons */
.xox-header-icon-btn { position: relative !important; transition: transform .2s ease; }
.xox-header-icon-btn:hover { transform: translateY(-2px); }
.xox-header-icon-btn .xox-cart-badge {
  position: absolute !important; top: -6px !important; right: -6px !important; left: auto !important; bottom: auto !important;
  background: #FF6B8A !important; color: #fff !important; font-size: 11px !important; font-weight: 700 !important;
  min-width: 18px !important; height: 18px !important; border-radius: 999px !important;
  display: flex !important; align-items: center; justify-content: center; padding: 0 4px !important;
  font-family: 'Manrope', sans-serif !important; box-shadow: 0 2px 6px rgba(0,0,0,0.35) !important;
  line-height: 1 !important; z-index: 20 !important; margin: 0 !important;
}

.xox-header-row2 a { transition: color .2s ease, opacity .2s ease; }

/* Card hover states */
.xox-cat-card, .xox-collection-card, .xox-product-card, .xox-benefit-item, .xox-review-card, .xox-promo-card {
  transition: transform .3s ease, box-shadow .3s ease;
}
.xox-cat-card:hover, .xox-collection-card:hover { transform: translateY(-8px) !important; }
.xox-product-card:hover { transform: translateY(-6px) !important; }
.xox-benefit-item:hover, .xox-review-card:hover, .xox-promo-card:hover { transform: translateY(-4px) !important; }
.xox-cat-card-img, .xox-collection-card-img { transition: transform .5s ease; overflow: hidden !important; }
.xox-cat-card:hover .xox-cat-card-img img, .xox-collection-card:hover .xox-collection-card-img img { transform: scale(1.08); }

/* Hero glow */
.xox-hero { position: relative !important; overflow: hidden !important; isolation: isolate; }
.xox-hero::before, .xox-hero::after {
  content: ''; position: absolute; border-radius: 50%; filter: blur(70px); pointer-events: none; z-index: 0;
}
.xox-hero::before {
  width: 520px; height: 520px;
  background: radial-gradient(circle, rgba(124,58,237,0.55) 0%, rgba(124,58,237,0) 70%);
  top: -160px; right: -120px;
}
.xox-hero::after {
  width: 460px; height: 460px;
  background: radial-gradient(circle, rgba(79,107,255,0.45) 0%, rgba(79,107,255,0) 70%);
  bottom: -160px; left: -100px;
}
@keyframes xoxPulse { 0%, 100% { transform: scale(1); opacity: 0.85; } 50% { transform: scale(1.18); opacity: 1; } }
.xox-hero-content { position: relative; z-index: 1; }

/* Hero visual column */
.xox-hero-visual { position: relative !important; z-index: 1; }

/* Floating category panels */
.xox-float-panel { animation: xoxFloat 5.5s ease-in-out infinite; }
.xox-float-panel.xox-float-d1 { animation-delay: .9s; }
.xox-float-panel.xox-float-d2 { animation-delay: 1.8s; }
.xox-float-panel.xox-float-d3 { animation-delay: 2.7s; }
@keyframes xoxFloat { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-16px); } }
.xox-float-panel:hover { transform: translateY(-10px) scale(1.04) !important; }

/* Gradient headline text */
h1.xox-gradient-text, .xox-gradient-text, .xox-gradient-text .elementor-heading-title {
  background: linear-gradient(90deg, #FF6B8A, #7C3AED 55%, #4F6BFF) !important;
  -webkit-background-clip: text !important; background-clip: text !important;
  -webkit-text-fill-color: transparent !important; color: transparent !important;
}

/* Horizontal scroll row */
.xox-scroll-row { overflow-x: auto !important; scrollbar-width: none; -ms-overflow-style: none; scroll-snap-type: x proximity; }
.xox-scroll-row::-webkit-scrollbar { display: none; }
.xox-scroll-row > * { scroll-snap-align: start; }

/* Newsletter */
.xox-newsletter input[type="email"], .xox-newsletter input[type="text"] {
  border-radius: 999px !important; border: none !important; padding: 14px 22px !important;
  font-family: 'Manrope', sans-serif !important; width: 100%;
}
.xox-newsletter .wpforms-container, .xox-newsletter .wpforms-form { margin: 0 !important; }
.xox-newsletter .wpforms-field { padding: 0 !important; }
.xox-newsletter .wpforms-submit {
  border-radius: 999px !important; padding: 14px 32px !important; background: #7C3AED !important;
  border: none !important; font-family: 'Manrope', sans-serif !important; font-weight: 600 !important;
}
.xox-newsletter .wpforms-field-label { display: none !important; }

.xox-trend-row { transition: background .2s ease, transform .2s ease; }
.xox-trend-row:hover { transform: translateX(4px) !important; }
.xox-countdown-box { font-variant-numeric: tabular-nums; }

@media (max-width: 1024px) {
  .xox-hero::before, .xox-hero::after { width: 320px; height: 320px; }
}
@media (max-width: 767px) {
  .xox-hero::before, .xox-hero::after { display: none; }
  .xox-float-panel { animation: none; }
}
.xox-float-panel img { width: 44px !important; height: 44px !important; object-fit: cover !important; display: block !important; border-radius: 12px !important; }

.xox-cat-card, .xox-collection-card, .xox-product-card, .xox-benefit-item, .xox-review-card, .xox-promo-card { box-shadow: 0 10px 28px rgba(11,17,48,0.10) !important; }
.xox-cat-card { overflow: hidden; }
