/* ==========================================================================
   Petvixa - 2026 Master WooCommerce Stylesheet (Zero Bugs, 100% Responsive)
   ========================================================================== */

/* Design Tokens Inherited from NailPro Luxury */
:root {
  --pv-primary: var(--luxe-gold, #D5AA6D);
  --pv-primary-hover: var(--luxe-gold-hover, #C4985B);
  --pv-primary-light: var(--luxe-gold-light, #F4E8D7);
  --pv-secondary: var(--luxe-dark, #0C0C0E);
  --pv-surface: var(--luxe-surface, #ffffff);
  --pv-surface-alt: var(--luxe-bg, #FAF8F5);
  --pv-border: var(--luxe-border, #EDE6DE);
  --pv-text: var(--luxe-text, #18181B);
  --pv-muted: var(--luxe-text-muted, #6B6865);
  --pv-danger: #E11D48;
  --pv-success: #10B981;
}

/* Luxury Cart Count Badge Override */
.luxe-cart-badge,
.cart-badge-count,
#header-cart-count {
  position: absolute !important;
  top: 2px !important;
  right: 2px !important;
  min-width: 18px !important;
  height: 18px !important;
  padding: 0 4px !important;
  border-radius: 9999px !important;
  background: #D5AA6D !important;
  color: #0C0C0E !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 0.68rem !important;
  font-weight: 800 !important;
  line-height: 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: nowrap !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4) !important;
  pointer-events: none !important;
  box-sizing: border-box !important;
  z-index: 10 !important;
}

.luxe-mobile-app-bar .tab-icon-wrap #mobile-cart-count,
#mobile-cart-count {
  position: absolute !important;
  top: -4px !important;
  right: -3px !important;
  min-width: 17px !important;
  height: 17px !important;
  padding: 0 4px !important;
  border-radius: 9999px !important;
  background: #D5AA6D !important;
  color: #0C0C0E !important;
  border: 1.5px solid #0C0C0E !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 0.65rem !important;
  font-weight: 800 !important;
  line-height: 17px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: nowrap !important;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.35) !important;
  pointer-events: none !important;
  box-sizing: border-box !important;
  z-index: 10 !important;
}

.luxe-mobile-app-bar .tab-icon-wrap #mobile-wishlist-count,
#mobile-wishlist-count {
  position: absolute !important;
  top: -4px !important;
  right: -3px !important;
  min-width: 17px !important;
  height: 17px !important;
  padding: 0 4px !important;
  border-radius: 9999px !important;
  background: #E11D48 !important;
  color: #FFFFFF !important;
  border: 1.5px solid #0C0C0E !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 0.65rem !important;
  font-weight: 800 !important;
  line-height: 17px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: nowrap !important;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.35) !important;
  pointer-events: none !important;
  box-sizing: border-box !important;
  z-index: 10 !important;
}

/* ==========================================================================
   1. SHOP CATALOG & MASTER PRODUCT GRID
   ========================================================================== */
.petvixa-shop-layout {
  display: grid !important;
  grid-template-columns: 260px 1fr !important;
  gap: 36px !important;
  padding: 20px 0 80px !important;
  align-items: start !important;
}

@media (max-width: 991px) {
  .petvixa-shop-layout {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
}

.petvixa-shop-sidebar {
  background: #ffffff !important;
  border: 1px solid var(--pv-border) !important;
  border-radius: 20px !important;
  padding: 24px !important;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05) !important;
}

.petvixa-shop-sidebar .widget {
  margin-bottom: 24px !important;
  padding-bottom: 18px !important;
  border-bottom: 1px solid var(--pv-border) !important;
}

.petvixa-shop-sidebar .widget:last-child {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  border-bottom: none !important;
}

.petvixa-shop-sidebar .widget-title {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  margin-bottom: 14px !important;
  color: var(--pv-secondary) !important;
}

.petvixa-shop-content {
  min-width: 0 !important;
  width: 100% !important;
}

.petvixa-shop-controls {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  background: #ffffff !important;
  padding: 14px 18px !important;
  border-radius: 16px !important;
  border: 1px solid var(--pv-border) !important;
  margin-bottom: 24px !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

.woocommerce-result-count {
  font-size: 0.875rem !important;
  color: var(--pv-muted) !important;
  margin: 0 !important;
}

.woocommerce-ordering select {
  padding: 8px 14px !important;
  border-radius: 9999px !important;
  border: 1px solid var(--pv-border) !important;
  background: #ffffff !important;
  font-size: 0.875rem !important;
  color: var(--pv-text) !important;
  outline: none !important;
}

/* Master Product Grid (Desktop Defaults) */
.woocommerce ul.products,
.woocommerce-page ul.products,
ul.products,
#trending-products ul.products,
div.woocommerce ul.products,
.related ul.products,
.upsells ul.products,
.cross-sells ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  list-style: none !important;
  margin: 0 0 40px 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
}

/* Related & Upsell Section Layout (Prevents single column squishing) */
section.related.products,
section.upsells.products,
section.cross-sells.products,
.related.products,
.upsells.products,
.cross-sells.products,
.related,
.upsells {
  display: block !important;
  width: 100% !important;
  clear: both !important;
  float: none !important;
  margin: 48px 0 30px !important;
  position: relative !important;
}

section.related.products > h2,
section.upsells.products > h2,
section.cross-sells.products > h2,
.related.products > h2,
.upsells.products > h2,
.related > h2,
.upsells > h2 {
  display: block !important;
  width: 100% !important;
  font-size: clamp(1.4rem, 2.5vw, 1.85rem) !important;
  font-weight: 800 !important;
  color: var(--pv-secondary) !important;
  margin: 0 0 24px 0 !important;
  padding: 0 0 12px 0 !important;
  border-bottom: 2px solid var(--pv-border) !important;
  text-align: left !important;
}

/* Shop Catalog with Sidebar on Desktop: 3 Columns */
.petvixa-shop-layout ul.products,
.petvixa-shop-content ul.products {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.woocommerce ul.products::before,
.woocommerce ul.products::after,
ul.products::before,
ul.products::after {
  display: none !important;
  content: none !important;
}

/* Product Card Base */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
.woocommerce ul.products[class*="columns-"] li.product,
.woocommerce-page ul.products[class*="columns-"] li.product,
ul.products li.product,
li.product.type-product,
.pv-product-card {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  clear: none !important;
  display: flex !important;
  flex-direction: column !important;
  background: transparent !important;
  border-radius: 18px !important;
  border: none !important;
  overflow: hidden !important;
  position: relative !important;
  transition: all 0.3s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.woocommerce ul.products li.product:hover,
.pv-product-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.08) !important;
}

/* Product Thumbnail Container */
.pv-product-thumb-wrap,
.woocommerce ul.products li.product .pv-product-thumb-wrap {
  position: relative !important;
  width: 100% !important;
  height: 280px !important;
  min-height: 280px !important;
  background-color: transparent !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px !important;
  box-sizing: border-box !important;
}

.pv-product-thumb-wrap a,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link,
.woocommerce-loop-product__link,
.luxe-thumb-link {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.pv-product-thumb-wrap img,
.woocommerce ul.products li.product img,
.woocommerce-LoopProduct-link img,
.luxe-thumb-link img,
.luxe-product-thumb img,
.luxe-product-img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 auto !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  transition: transform 0.4s ease !important;
}

.woocommerce ul.products li.product:hover img {
  transform: scale(1.03) !important;
}

/* Badges */
.pv-badges-wrap {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  z-index: 15 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 6px !important;
  pointer-events: none !important;
}

.pv-badge,
.pv-badge-sale,
.woocommerce span.onsale,
.woocommerce-page span.onsale,
.woocommerce ul.products li.product .onsale,
.woocommerce ul.products li.product span.onsale,
.woocommerce div.product span.onsale,
.woocommerce div.product div.images span.onsale,
.petvixa-single-gallery-column span.onsale,
.woocommerce-product-gallery span.onsale {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 20 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: auto !important;
  max-width: none !important;
  height: auto !important;
  min-height: auto !important;
  max-height: none !important;
  padding: 3px 8px !important;
  border-radius: 9999px !important;
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
  background-color: #ef4444 !important;
  color: #ffffff !important;
  font-size: 0.68rem !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 0.03em !important;
  white-space: nowrap !important;
  box-shadow: 0 2px 6px rgba(239, 68, 68, 0.35) !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  pointer-events: none !important;
}

.pv-badges-wrap .pv-badge,
.pv-badges-wrap span.onsale,
.pv-badges-wrap .onsale {
  position: static !important;
}

.pv-badge-hot {
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  background-color: var(--pv-primary) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(213, 170, 109, 0.4) !important;
}

/* Action Overlay */
.pv-product-actions-overlay {
  position: absolute !important;
  top: 10px !important;
  right: 10px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  z-index: 6 !important;
  opacity: 0 !important;
  transform: translateX(8px) !important;
  transition: opacity 0.25s ease, transform 0.25s ease !important;
}

.woocommerce ul.products li.product:hover .pv-product-actions-overlay {
  opacity: 1 !important;
  transform: translateX(0) !important;
}

.pv-action-icon-btn {
  width: 34px !important;
  height: 34px !important;
  border-radius: 9999px !important;
  background: #ffffff !important;
  border: 1px solid var(--pv-border) !important;
  color: var(--pv-text) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
  transition: all 0.2s ease !important;
}

.pv-action-icon-btn:hover {
  background-color: var(--pv-primary) !important;
  color: #ffffff !important;
  border-color: var(--pv-primary) !important;
}

/* Product Card Details */
.pv-product-content {
  padding: 16px 14px 20px !important;
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  box-sizing: border-box !important;
  text-align: center !important;
  align-items: center !important;
}

.pv-product-cat {
  font-size: 0.725rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: var(--pv-muted) !important;
  margin-bottom: 6px !important;
  display: block !important;
}

.pv-product-title,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
  font-family: var(--luxe-font-serif, 'Playfair Display', serif) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: var(--luxe-text, #18181B) !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.01em !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  white-space: normal !important;
  word-break: break-word !important;
  padding: 0 !important;
}

.pv-product-title a,
.woocommerce-loop-product__title a {
  color: var(--luxe-text, #18181B) !important;
  text-decoration: none !important;
}

.pv-product-title a:hover,
.woocommerce-loop-product__title a:hover {
  color: var(--luxe-gold-hover, #C4985B) !important;
}

.star-rating,
.woocommerce .star-rating {
  font-size: 0.8rem !important;
  color: #f59e0b !important;
  margin-bottom: 6px !important;
  float: none !important;
}

.price,
.woocommerce ul.products li.product .price,
.luxe-product-card .price {
  font-family: var(--luxe-font-sans, 'Montserrat', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif) !important;
  font-variant-numeric: tabular-nums lining-nums !important;
  -webkit-font-feature-settings: "lnum" 1, "tnum" 1 !important;
  font-feature-settings: "lnum" 1, "tnum" 1 !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: var(--luxe-text, #18181B) !important;
  margin-bottom: 8px !important;
  display: flex !important;
  align-items: baseline !important;
  justify-content: flex-start !important;
  text-align: left !important;
  gap: 8px !important;
  line-height: 1.2 !important;
}

.price del,
.woocommerce ul.products li.product .price del,
.luxe-product-card .price del {
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  color: var(--luxe-text-light, #948F8A) !important;
  text-decoration: line-through !important;
  opacity: 0.75 !important;
  display: inline-block !important;
}

.price ins,
.woocommerce ul.products li.product .price ins,
.luxe-product-card .price ins {
  text-decoration: none !important;
  background: transparent !important;
  color: var(--luxe-text, #18181B) !important;
  font-weight: 700 !important;
  display: inline-block !important;
}

/* Product Card Add to Cart Button */
.pv-add-to-cart-wrapper,
.woocommerce ul.products li.product .pv-add-to-cart-wrapper {
  margin-top: auto !important;
  width: 100% !important;
}

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button,
.pv-add-to-cart-btn {
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  background: var(--luxe-dark, #0C0C0E) !important;
  color: #FAF5EE !important;
  border: 1.5px solid rgba(213, 170, 109, 0.45) !important;
  font-family: var(--luxe-font-sans, 'Montserrat', sans-serif) !important;
  font-weight: 700 !important;
  font-size: 0.82rem !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 0 16px !important;
  border-radius: 9999px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  text-align: center !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover,
.pv-add-to-cart-btn:hover {
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  border-color: transparent !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(213, 170, 109, 0.4) !important;
}

/* ==========================================================================
   RESPONSIVE PRODUCT GRID BREAKPOINTS (STRICT MOBILE 2-COL RULES)
   ========================================================================== */
@media screen and (max-width: 1100px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  ul.products,
  #trending-products ul.products,
  .petvixa-shop-layout ul.products,
  .petvixa-shop-content ul.products,
  .related ul.products,
  .upsells ul.products,
  .cross-sells ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
}

/* Mobile Screens (768px & below): FORCED 2-COLUMN GRID EVERYWHERE */
@media screen and (max-width: 768px) {
  body .woocommerce ul.products,
  body .woocommerce-page ul.products,
  body ul.products,
  body #trending-products ul.products,
  body div.woocommerce ul.products,
  body .petvixa-shop-layout ul.products,
  body .petvixa-shop-content ul.products,
  body .related ul.products,
  body .upsells ul.products,
  body .cross-sells ul.products,
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  ul.products,
  #trending-products ul.products,
  div.woocommerce ul.products,
  .related ul.products,
  .upsells ul.products,
  .cross-sells ul.products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 0 0 24px 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }

  body .woocommerce ul.products li.product,
  body .woocommerce-page ul.products li.product,
  body ul.products li.product,
  body #trending-products ul.products li.product,
  body div.woocommerce ul.products li.product,
  .woocommerce ul.products li.product,
  .woocommerce-page ul.products li.product,
  ul.products li.product,
  li.product,
  .pv-product-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    float: none !important;
    margin: 0 !important;
    display: flex !important;
    flex-direction: column !important;
  }

  .pv-product-thumb-wrap,
  .woocommerce ul.products li.product .pv-product-thumb-wrap {
    height: 180px !important;
    min-height: 180px !important;
    width: 100% !important;
  }

  .pv-product-thumb-wrap img,
  .woocommerce ul.products li.product img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  /* Luxe Product Card & Thumbnail Boundaries on Mobile */
  .woocommerce ul.products.luxe-product-grid,
  .woocommerce ul.products.columns-4 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
  }
  .woocommerce ul.products li.product.luxe-product-card,
  body .woocommerce ul.products li.product.luxe-product-card,
  .luxe-product-card {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
    float: none !important;
    margin: 0 !important;
  }
  .luxe-product-card .luxe-card-inner {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
    background: #FFFFFF !important;
    border: 1px solid rgba(213, 170, 109, 0.28) !important;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05) !important;
  }
  .luxe-product-card .luxe-product-thumb,
  .luxe-product-thumb {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    overflow: hidden !important;
    position: relative !important;
    box-sizing: border-box !important;
    background: #FDFBF8 !important;
    border-radius: 14px 14px 0 0 !important;
    display: block !important;
  }
  .luxe-product-card .luxe-thumb-link,
  .luxe-thumb-link {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }
  .woocommerce ul.products li.product.luxe-product-card img,
  .woocommerce ul.products li.product.luxe-product-card .luxe-product-thumb img,
  .woocommerce ul.products li.product.luxe-product-card .luxe-thumb-link img,
  .woocommerce ul.products li.product.luxe-product-card img.luxe-product-img,
  .woocommerce ul.products li.product.luxe-product-card img.wp-post-image,
  .luxe-product-card .luxe-product-thumb img,
  .luxe-product-card .luxe-thumb-link img,
  .luxe-product-card .luxe-product-img,
  .luxe-product-card img.wp-post-image,
  .woocommerce ul.products li.product img.wp-post-image {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    height: 100% !important;
    max-height: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    box-sizing: border-box !important;
    transform: none !important;
  }

  .pv-product-content,
  .luxe-product-content {
    padding: 10px 10px 12px !important;
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
    box-sizing: border-box !important;
  }

  .pv-product-title,
  .woocommerce ul.products li.product .woocommerce-loop-product__title,
  .luxe-product-title {
    font-size: 0.86rem !important;
    line-height: 1.35 !important;
    margin: 0 0 6px 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    min-height: 2.7em !important;
    max-height: 2.7em !important;
    color: var(--luxe-text, #18181B) !important;
  }

  .price,
  .woocommerce ul.products li.product .price,
  .luxe-product-price-row {
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    color: var(--luxe-gold-hover, #C4985B) !important;
    margin-bottom: 6px !important;
    display: inline-flex !important;
    align-items: baseline !important;
    gap: 6px !important;
    min-height: 1.4em !important;
    width: 100% !important;
  }

  .woocommerce ul.products li.product .button,
  .woocommerce ul.products li.product .add_to_cart_button,
  .pv-add-to-cart-btn,
  .luxe-btn-add-cart,
  .luxe-add-demo-btn {
    font-size: 0.74rem !important;
    padding: 0 8px !important;
    height: 38px !important;
    min-height: 38px !important;
    border-radius: 9999px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    background: var(--luxe-dark, #0C0C0E) !important;
    color: #FFFFFF !important;
    border: 1px solid rgba(213, 170, 109, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    width: 100% !important;
    transition: all 0.2s ease !important;
  }
  .woocommerce ul.products li.product .button:active,
  .luxe-btn-add-cart:active {
    background: var(--luxe-gold-gradient, linear-gradient(135deg, #DEB887, #C4985B)) !important;
    color: #0C0C0E !important;
    transform: scale(0.96) !important;
  }
}

/* Small Mobile (< 360px) */
@media screen and (max-width: 360px) {
  body .woocommerce ul.products,
  body .woocommerce-page ul.products,
  body ul.products,
  body #trending-products ul.products,
  .woocommerce ul.products,
  .related ul.products,
  .upsells ul.products {
    grid-template-columns: 1fr !important;
  }
}

/* ==========================================================================
   2. SINGLE PRODUCT PAGE OVERHAUL (Shopify/Apple Level PDP)
   ========================================================================== */
.petvixa-single-product-wrap {
  display: grid !important;
  grid-template-columns: 1.05fr 0.95fr !important;
  gap: 48px !important;
  padding: 30px 0 50px !important;
  align-items: start !important;
  position: relative !important;
}

@media (max-width: 900px) {
  .petvixa-single-product-wrap {
    grid-template-columns: 1fr !important;
    gap: 30px !important;
  }
}

/* Gallery Column & Floating Sale Badge */
.petvixa-single-gallery-column {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
  display: block !important;
}

.petvixa-single-gallery-column span.onsale,
.petvixa-single-gallery-column .pv-badge-sale,
.woocommerce div.product div.images span.onsale,
.woocommerce div.product .petvixa-single-gallery-column span.onsale,
.woocommerce-product-gallery span.onsale {
  position: absolute !important;
  top: 14px !important;
  left: 14px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 25 !important;
  background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%) !important;
  background-color: var(--pv-danger) !important;
  color: #ffffff !important;
  font-size: 0.725rem !important;
  font-weight: 800 !important;
  padding: 4px 10px !important;
  border-radius: 9999px !important;
  box-shadow: 0 2px 8px rgba(239, 68, 68, 0.35) !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.03em !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  pointer-events: none !important;
  margin: 0 !important;
  width: auto !important;
  height: auto !important;
  min-width: auto !important;
  min-height: auto !important;
}

.woocommerce div.product div.images,
.petvixa-single-gallery-column {
  margin-bottom: 0 !important;
  width: 100% !important;
  float: none !important;
  position: relative !important;
}

.pv-single-gallery-box {
  position: relative !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.pv-badges-wrap.luxe-gallery-badges,
.pv-single-gallery-box .pv-badges-wrap {
  position: absolute !important;
  top: 16px !important;
  left: 16px !important;
  z-index: 6 !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  pointer-events: none !important;
}

.pv-badge.luxe-sale-badge,
.pv-badge-sale {
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  font-size: 0.74rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  padding: 5px 12px !important;
  border-radius: 30px !important;
  box-shadow: 0 4px 14px rgba(196, 152, 91, 0.35) !important;
  border: none !important;
  display: inline-flex !important;
  align-items: center !important;
}

.pv-badge.luxe-featured-badge,
.pv-badge-hot {
  background: #0C0C0E !important;
  color: #FAF5EE !important;
  font-size: 0.74rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  padding: 5px 12px !important;
  border-radius: 30px !important;
  border: 1px solid rgba(213, 170, 109, 0.45) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
  display: inline-flex !important;
  align-items: center !important;
}

.pv-single-main-image-wrap {
  width: 100% !important;
  height: 480px !important;
  max-height: 480px !important;
  border-radius: 22px !important;
  background: #FAF8F5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  position: relative !important;
  border: 1.5px solid rgba(213, 170, 109, 0.28) !important;
  box-shadow: 0 8px 30px rgba(12, 12, 14, 0.05) !important;
  box-sizing: border-box !important;
}

.pv-single-main-link {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  padding: 12px !important;
  box-sizing: border-box !important;
  cursor: zoom-in !important;
}

.pv-single-main-img,
.woocommerce div.product div.images img,
.woocommerce-product-gallery__image img {
  width: 100% !important;
  height: 100% !important;
  max-height: 460px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
  border-radius: 16px !important;
  transition: transform 0.25s ease !important;
  box-sizing: border-box !important;
}

/* Image Index Counter Pill */
.pv-single-img-counter-pill {
  position: absolute !important;
  bottom: 14px !important;
  left: 14px !important;
  z-index: 5 !important;
  background: rgba(12, 12, 14, 0.78) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  color: #FAF5EE !important;
  font-size: 0.74rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  padding: 4px 11px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(213, 170, 109, 0.35) !important;
  pointer-events: none !important;
}

/* Zoom Trigger Icon Button */
.pv-single-zoom-trigger {
  position: absolute !important;
  bottom: 14px !important;
  right: 14px !important;
  z-index: 5 !important;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  background: rgba(12, 12, 14, 0.78) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  color: #D5AA6D !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(213, 170, 109, 0.35) !important;
  transition: all 0.22s ease !important;
  text-decoration: none !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2) !important;
}

.pv-single-zoom-trigger:hover {
  background: #0C0C0E !important;
  color: #FAF5EE !important;
  transform: scale(1.08) !important;
  border-color: #D5AA6D !important;
}

/* Gallery Thumbnails Strip (Desktop & General) */
.pv-single-thumbnails-strip,
.woocommerce-product-gallery .flex-control-thumbs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  padding: 16px 0 0 0 !important;
  margin: 0 !important;
  list-style: none !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.pv-single-thumb,
.woocommerce-product-gallery .flex-control-thumbs li {
  width: 70px !important;
  height: 70px !important;
  min-width: 70px !important;
  float: none !important;
  margin: 0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  cursor: pointer !important;
  border: 1.5px solid rgba(213, 170, 109, 0.25) !important;
  background: #FAF8F5 !important;
  padding: 3px !important;
  transition: all 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

.pv-single-thumb img,
.woocommerce-product-gallery .flex-control-thumbs li img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 10px !important;
  display: block !important;
}

.pv-single-thumb.is-active,
.pv-single-thumb.flex-active,
.pv-single-thumb:hover,
.woocommerce-product-gallery .flex-control-thumbs li img.flex-active,
.woocommerce-product-gallery .flex-control-thumbs li:hover {
  border-color: #D5AA6D !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 0 0 2px rgba(213, 170, 109, 0.45) !important;
}

/* ==========================================================================
   MOBILE VIEWPORT SINGLE PRODUCT GALLERY OVERHAUL (1:1 Native App PDP)
   ========================================================================== */
@media (max-width: 768px) {
  .pv-single-gallery-box,
  .woocommerce div.product div.images,
  .petvixa-single-gallery-column,
  .luxe-single-gallery-column {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 16px 0 !important;
    padding: 0 !important;
    float: none !important;
    box-sizing: border-box !important;
  }

  .pv-single-main-image-wrap,
  .woocommerce-product-gallery__image {
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    min-height: unset !important;
    max-height: none !important;
    background: #FAF8F5 !important;
    border: 1.5px solid rgba(213, 170, 109, 0.3) !important;
    border-radius: 20px !important;
    box-shadow: 0 6px 24px rgba(12, 12, 14, 0.06) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .pv-single-main-link {
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px !important;
    box-sizing: border-box !important;
  }

  .pv-single-main-img,
  .pv-single-main-image-wrap img,
  .woocommerce div.product div.images img,
  .woocommerce-product-gallery__image img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    border-radius: 14px !important;
    display: block !important;
    box-sizing: border-box !important;
  }

  .pv-single-thumbnails-strip {
    display: flex !important;
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
    scroll-snap-type: x mandatory !important;
    gap: 10px !important;
    padding: 12px 2px 4px !important;
    margin: 0 !important;
    width: 100% !important;
    scrollbar-width: none !important;
    -ms-overflow-style: none !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
  }

  .pv-single-thumbnails-strip::-webkit-scrollbar {
    display: none !important;
  }

  .pv-single-thumb,
  .woocommerce-product-gallery .flex-control-thumbs li {
    flex: 0 0 62px !important;
    width: 62px !important;
    height: 62px !important;
    min-width: 62px !important;
    max-width: 62px !important;
    border-radius: 12px !important;
    border: 1.5px solid rgba(213, 170, 109, 0.25) !important;
    background: #FAF8F5 !important;
    padding: 2px !important;
    overflow: hidden !important;
    scroll-snap-align: start !important;
    box-sizing: border-box !important;
  }

  .pv-single-thumb.is-active,
  .pv-single-thumb:active {
    border-color: #D5AA6D !important;
    box-shadow: 0 0 0 2px rgba(213, 170, 109, 0.45) !important;
    transform: scale(0.97) !important;
  }
}

/* Summary Column */
.woocommerce div.product div.summary,
.petvixa-single-summary-column {
  margin-bottom: 0 !important;
  width: 100% !important;
  float: none !important;
  display: flex !important;
  flex-direction: column !important;
}

.woocommerce div.product .product_title {
  font-size: clamp(1.6rem, 3vw, 2.2rem) !important;
  font-weight: 800 !important;
  color: var(--pv-secondary) !important;
  margin: 0 0 10px 0 !important;
  line-height: 1.25 !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  font-family: var(--luxe-font-sans, 'Montserrat', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif) !important;
  font-variant-numeric: tabular-nums lining-nums !important;
  -webkit-font-feature-settings: "lnum" 1, "tnum" 1 !important;
  font-feature-settings: "lnum" 1, "tnum" 1 !important;
  font-size: 1.6rem !important;
  font-weight: 800 !important;
  color: var(--luxe-text, #18181B) !important;
  margin: 10px 0 16px 0 !important;
  display: flex !important;
  align-items: baseline !important;
  gap: 10px !important;
}
.woocommerce div.product .price del {
  font-size: 1.1rem !important;
  font-weight: 500 !important;
  color: var(--luxe-text-light, #948F8A) !important;
  text-decoration: line-through !important;
}
.woocommerce div.product .price ins {
  text-decoration: none !important;
  background: transparent !important;
  color: var(--luxe-text, #18181B) !important;
}

.woocommerce div.product .woocommerce-product-details__short-description {
  font-size: 0.95rem !important;
  line-height: 1.6 !important;
  color: var(--pv-muted) !important;
  margin-bottom: 20px !important;
}

/* Quantity & Action Buttons (Add to Cart + Buy Now) Matching Board 4 */
.woocommerce div.product form.cart {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 22px 0 16px !important;
  flex-wrap: wrap !important;
  width: 100% !important;
}

.woocommerce div.product form.cart .quantity {
  margin: 0 !important;
  float: none !important;
  flex: 0 0 auto !important;
}

.woocommerce div.product form.cart .quantity input.qty {
  width: 72px !important;
  height: 52px !important;
  border-radius: 8px !important;
  border: 1.5px solid var(--pv-border) !important;
  text-align: center !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  outline: none !important;
  background: #ffffff !important;
  transition: border-color 0.2s ease !important;
}

.woocommerce div.product form.cart .quantity input.qty:focus {
  border-color: #D5AA6D !important;
}

/* Row 1: Add to Cart Button (Warm Luxury Gold) */
.woocommerce div.product form.cart .single_add_to_cart_button,
.woocommerce div.product form.cart button.button.alt,
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  flex: 1 1 auto !important;
  min-width: 160px !important;
  height: 52px !important;
  min-height: 52px !important;
  padding: 0 24px !important;
  border-radius: 8px !important;
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  font-size: 0.95rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  border: none !important;
  cursor: pointer !important;
  box-shadow: 0 4px 16px rgba(196, 152, 91, 0.3) !important;
  transition: all 0.25s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
  text-decoration: none !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button:hover,
.woocommerce button.button.alt:hover {
  background: linear-gradient(135deg, #C4985B 0%, #B38647 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(196, 152, 91, 0.45) !important;
  color: #0C0C0E !important;
}

/* Row 2: Full Width Buy Now Button (Sleek Dark Luxe Black matching Board 4) */
.luxe-btn-buynow,
.pv-btn-buy-now,
.woocommerce div.product form.cart .luxe-btn-buynow,
.woocommerce div.product form.cart .pv-btn-buy-now,
.woocommerce div.product .pv-btn-buy-now {
  flex: 0 0 100% !important;
  width: 100% !important;
  min-width: 100% !important;
  height: 52px !important;
  min-height: 52px !important;
  padding: 0 24px !important;
  margin: 6px 0 0 0 !important;
  border-radius: 8px !important;
  background: #0C0C0E !important;
  color: #ffffff !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  border: 1.5px solid #27272A !important;
  cursor: pointer !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  box-sizing: border-box !important;
}

.luxe-btn-buynow:hover,
.pv-btn-buy-now:hover,
.woocommerce div.product form.cart .luxe-btn-buynow:hover,
.woocommerce div.product form.cart .pv-btn-buy-now:hover {
  background: #18181B !important;
  border-color: #D5AA6D !important;
  color: #D5AA6D !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(213, 170, 109, 0.3) !important;
}

.luxe-btn-buynow .buynow-bolt,
.pv-btn-buy-now .buynow-bolt {
  color: #D5AA6D !important;
  font-size: 1.15rem !important;
  line-height: 1 !important;
}

.luxe-btn-buynow.is-loading,
.pv-btn-buy-now.is-loading {
  opacity: 0.8 !important;
  cursor: wait !important;
  pointer-events: none !important;
}

/* Row 3: Wishlist Link centered below Buy Now */
.luxe-single-wishlist-btn,
.woocommerce div.product form.cart .luxe-single-wishlist-btn {
  flex: 0 0 100% !important;
  width: 100% !important;
  margin: 12px 0 0 0 !important;
  background: none !important;
  border: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  color: #71717A !important;
  font-size: 0.88rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: color 0.2s ease !important;
  padding: 4px 0 !important;
  text-decoration: none !important;
}

.luxe-single-wishlist-btn:hover,
.woocommerce div.product form.cart .luxe-single-wishlist-btn:hover {
  color: #D5AA6D !important;
}

/* ==========================================================================
   VARIABLE PRODUCTS: ATTRIBUTES, SWATCHES & ACTION BAR STABILITY
   ========================================================================== */
.woocommerce div.product form.cart table.variations {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 16px 0 !important;
  border: none !important;
  display: block !important;
}

.woocommerce div.product form.cart table.variations tbody,
.woocommerce div.product form.cart table.variations tr {
  display: block !important;
  margin-bottom: 16px !important;
  border: none !important;
}

.woocommerce div.product form.cart table.variations td.label,
.woocommerce div.product form.cart table.variations th.label {
  display: block !important;
  padding: 0 0 8px 0 !important;
  border: none !important;
  text-align: left !important;
}

.woocommerce div.product form.cart table.variations td.label label,
.woocommerce div.product form.cart table.variations th.label label {
  font-size: 0.85rem !important;
  font-weight: 800 !important;
  color: var(--pv-secondary) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  display: inline-block !important;
}

.woocommerce div.product form.cart table.variations td.value {
  display: block !important;
  padding: 0 !important;
  border: none !important;
  position: relative !important;
}

.woocommerce div.product form.cart table.variations select {
  width: 100% !important;
  max-width: 100% !important;
  height: 48px !important;
  padding: 10px 16px !important;
  border-radius: 12px !important;
  border: 1.5px solid var(--pv-border) !important;
  background-color: #ffffff !important;
  font-size: 0.925rem !important;
  font-weight: 600 !important;
  color: var(--pv-secondary) !important;
  outline: none !important;
  cursor: pointer !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important;
  transition: all 0.2s ease !important;
}

.woocommerce div.product form.cart table.variations select:focus {
  border-color: var(--pv-primary) !important;
  box-shadow: 0 0 0 3px rgba(213, 170, 109, 0.12) !important;
}

.woocommerce div.product form.cart .reset_variations {
  display: inline-block !important;
  margin-top: 8px !important;
  font-size: 0.775rem !important;
  font-weight: 700 !important;
  color: var(--pv-muted) !important;
  text-decoration: underline !important;
  transition: color 0.2s ease !important;
}

.woocommerce div.product form.cart .reset_variations:hover {
  color: var(--pv-danger) !important;
}

/* Custom Interactive Theme Swatches (Pills for S, M, L, XL & Colors) */
.pv-swatches-wrap {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 4px !important;
}

.pv-swatch-item {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 44px !important;
  height: 42px !important;
  padding: 4px 14px !important;
  border-radius: 12px !important;
  border: 1.5px solid var(--pv-border) !important;
  background: #ffffff !important;
  font-size: 0.875rem !important;
  font-weight: 800 !important;
  color: var(--pv-secondary) !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  user-select: none !important;
  box-sizing: border-box !important;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.02) !important;
}

.pv-swatch-item:hover {
  border-color: var(--pv-primary) !important;
  color: var(--pv-primary) !important;
  background: var(--pv-primary-light) !important;
  transform: translateY(-2px) !important;
}

.pv-swatch-item.is-selected {
  border-color: var(--pv-primary) !important;
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px rgba(213, 170, 109, 0.35) !important;
}

/* Variation Price & Stock Status */
.woocommerce div.product .single_variation_wrap {
  width: 100% !important;
  margin-top: 16px !important;
}

.woocommerce div.product .woocommerce-variation-price {
  margin-bottom: 12px !important;
}

.woocommerce div.product .woocommerce-variation-price .price {
  font-size: 1.55rem !important;
  font-weight: 800 !important;
  color: var(--pv-primary) !important;
  display: block !important;
}

.woocommerce div.product .woocommerce-variation-availability {
  margin-bottom: 14px !important;
}

.woocommerce div.product .woocommerce-variation-availability .stock {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 4px 12px !important;
  border-radius: 9999px !important;
  font-size: 0.775rem !important;
  font-weight: 700 !important;
  background: #f0fdf4 !important;
  color: #15803d !important;
  border: 1px solid #bbf7d0 !important;
}

.woocommerce div.product .woocommerce-variation-availability .out-of-stock {
  background: #fef2f2 !important;
  color: #dc2626 !important;
  border-color: #fecaca !important;
}

/* Action Row Alignment for Variable Products */
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart,
.woocommerce div.product form.cart.variations_form .woocommerce-variation-add-to-cart {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: wrap !important;
  width: 100% !important;
  margin-top: 14px !important;
}

@media (max-width: 576px) {
  .woocommerce div.product form.cart,
  .woocommerce div.product form.cart .woocommerce-variation-add-to-cart {
    gap: 10px !important;
  }
  .woocommerce div.product form.cart .quantity,
  .woocommerce div.product form.cart .woocommerce-variation-add-to-cart .quantity {
    width: 100% !important;
  }
  .woocommerce div.product form.cart .quantity input.qty,
  .woocommerce div.product form.cart .woocommerce-variation-add-to-cart .quantity input.qty {
    width: 100% !important;
  }
  .woocommerce div.product form.cart .single_add_to_cart_button,
  .woocommerce div.product form.cart .woocommerce-variation-add-to-cart .single_add_to_cart_button,
  .pv-btn-buy-now,
  .woocommerce div.product form.cart .pv-btn-buy-now {
    width: 100% !important;
    flex: 1 1 100% !important;
  }
}

/* Single Trust Badges */
.pv-single-trust-badges,
.nailpro-single-trust-badges {
  background: #FAF8F5 !important;
  border: 1px solid rgba(213, 170, 109, 0.32) !important;
  border-radius: 16px !important;
  padding: 18px 20px !important;
  margin-top: 24px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  box-shadow: 0 4px 16px rgba(12, 12, 14, 0.03) !important;
}

.trust-item {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.trust-icon {
  width: 36px !important;
  height: 36px !important;
  border-radius: 9999px !important;
  background: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: var(--pv-primary) !important;
  border: 1px solid var(--pv-border) !important;
  font-size: 1.1rem !important;
}

.trust-text strong {
  display: block !important;
  font-size: 0.875rem !important;
  color: var(--pv-secondary) !important;
}

.trust-text span {
  font-size: 0.8rem !important;
  color: var(--pv-muted) !important;
}

/* Sizing Guide Button */
.pv-size-guide-trigger-wrap {
  margin: 14px 0 !important;
}

.pv-open-size-guide {
  font-size: 0.875rem !important;
  font-weight: 700 !important;
  color: var(--pv-primary) !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  transition: color 0.2s ease !important;
}

.pv-open-size-guide:hover {
  color: var(--pv-primary-hover) !important;
}

/* Size Guide Modal & Responsive Table */
.pv-size-guide-modal-box {
  max-width: 760px !important;
  border-radius: 24px !important;
  padding: 36px 30px !important;
  background: #ffffff !important;
  box-shadow: 0 20px 50px -10px rgba(15, 23, 42, 0.25) !important;
  box-sizing: border-box !important;
}

.pv-size-guide-header {
  text-align: center !important;
  margin-bottom: 24px !important;
}

.pv-size-guide-emoji {
  font-size: 2.2rem !important;
  display: block !important;
  margin-bottom: 8px !important;
  line-height: 1 !important;
}

.pv-size-guide-title {
  font-size: clamp(1.4rem, 2.5vw, 1.85rem) !important;
  font-weight: 800 !important;
  color: var(--pv-secondary) !important;
  margin: 0 0 8px 0 !important;
  line-height: 1.25 !important;
}

.pv-size-guide-subtitle {
  color: var(--pv-muted) !important;
  font-size: 0.95rem !important;
  line-height: 1.55 !important;
  max-width: 560px !important;
  margin: 0 auto !important;
}

.pv-size-guide-section-label {
  font-size: 1.05rem !important;
  font-weight: 800 !important;
  color: var(--pv-primary) !important;
  margin-bottom: 12px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

.pv-table-responsive {
  width: 100% !important;
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch !important;
  border: 1px solid var(--pv-border) !important;
  border-radius: 14px !important;
  margin: 12px 0 20px 0 !important;
  background: #ffffff !important;
}

table.pv-size-chart-table {
  width: 100% !important;
  min-width: 520px !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  margin: 0 !important;
}

table.pv-size-chart-table th {
  background: #f8fafc !important;
  color: var(--pv-secondary) !important;
  font-weight: 700 !important;
  font-size: 0.8rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  padding: 14px 16px !important;
  border-bottom: 2px solid var(--pv-border) !important;
  text-align: left !important;
  white-space: nowrap !important;
}

table.pv-size-chart-table td {
  padding: 13px 16px !important;
  border-bottom: 1px solid var(--pv-border) !important;
  color: var(--pv-text) !important;
  vertical-align: middle !important;
  font-size: 0.875rem !important;
  white-space: nowrap !important;
}

table.pv-size-chart-table td span {
  color: var(--pv-muted) !important;
  font-size: 0.825rem !important;
}

table.pv-size-chart-table tr:last-child td {
  border-bottom: none !important;
}

table.pv-size-chart-table tr:nth-child(even) {
  background-color: #fafbfc !important;
}

table.pv-size-chart-table tr:hover {
  background-color: #f1f5f9 !important;
}

.pv-size-badge {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 38px !important;
  width: auto !important;
  height: 34px !important;
  padding: 0 12px !important;
  border-radius: 9999px !important;
  background: #FAF5EE !important;
  color: #0C0C0E !important;
  border: 1px solid #D5AA6D !important;
  font-weight: 700 !important;
  font-size: 0.82rem !important;
  white-space: nowrap !important;
}
.pv-size-badge.is-popular {
  background: #0C0C0E !important;
  color: #D5AA6D !important;
  border-color: #D5AA6D !important;
}

.pv-size-guide-tip {
  background: #FAF8F5 !important;
  border-radius: 12px !important;
  padding: 14px 18px !important;
  border: 1px solid rgba(213, 170, 109, 0.35) !important;
  border-left: 4px solid #D5AA6D !important;
  margin-top: 16px !important;
}

.pv-size-guide-tip p {
  font-size: 0.86rem !important;
  color: #3F3F46 !important;
  margin: 0 !important;
  line-height: 1.55 !important;
}

@media (max-width: 600px) {
  .pv-size-guide-modal-box {
    padding: 24px 16px !important;
    border-radius: 18px !important;
  }
}

/* ==========================================================================
   PRODUCT TABS: DESCRIPTION, SPECIFICATIONS TABLE & CUSTOMER REVIEWS
   ========================================================================== */
.pv-product-tabs-wrapper {
  margin-top: 48px !important;
  background: #ffffff !important;
  border: 1.5px solid var(--pv-border) !important;
  border-radius: 24px !important;
  padding: 36px 32px !important;
  box-shadow: 0 4px 24px -2px rgba(15, 23, 42, 0.04) !important;
}

.woocommerce-tabs ul.wc-tabs {
  display: inline-flex !important;
  gap: 8px !important;
  background: #FAF8F5 !important;
  border: 1px solid rgba(213, 170, 109, 0.3) !important;
  border-radius: 9999px !important;
  padding: 6px !important;
  list-style: none !important;
  margin: 0 0 28px 0 !important;
  flex-wrap: wrap !important;
}

.woocommerce-tabs ul.wc-tabs li {
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: none !important;
}
.woocommerce-tabs ul.wc-tabs li::before,
.woocommerce-tabs ul.wc-tabs li::after {
  display: none !important;
  content: none !important;
}

.woocommerce-tabs ul.wc-tabs li a {
  font-family: var(--luxe-font-serif, 'Playfair Display', serif) !important;
  font-weight: 600 !important;
  font-size: 0.94rem !important;
  color: #6B6865 !important;
  padding: 9px 24px !important;
  border-radius: 9999px !important;
  background: transparent !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: all 0.25s ease !important;
}

.woocommerce-tabs ul.wc-tabs li.active a,
.woocommerce-tabs ul.wc-tabs li a:hover {
  background: #0C0C0E !important;
  color: #D5AA6D !important;
  box-shadow: 0 4px 14px rgba(12, 12, 14, 0.2) !important;
}

.woocommerce-tabs .wc-tab {
  display: none;
  font-size: 0.95rem !important;
  line-height: 1.75 !important;
  color: var(--pv-text) !important;
}

.woocommerce-tabs .wc-tab.is-active {
  display: block;
}

.woocommerce-Tabs-panel--description h2,
.woocommerce-Tabs-panel--additional_information h2,
.woocommerce-Tabs-panel--reviews h2 {
  font-size: 1.25rem !important;
  font-weight: 800 !important;
  color: var(--pv-secondary) !important;
  margin-bottom: 16px !important;
}

/* Specifications Table (Additional Information) */
table.shop_attributes {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: 1.5px solid var(--pv-border) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  margin: 16px 0 24px 0 !important;
  box-sizing: border-box !important;
}

table.shop_attributes th {
  background: #f8fafc !important;
  padding: 12px 18px !important;
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  color: var(--pv-secondary) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.03em !important;
  width: 30% !important;
  border-bottom: 1px solid var(--pv-border) !important;
  border-right: 1px solid var(--pv-border) !important;
  text-align: left !important;
}

table.shop_attributes td {
  padding: 12px 18px !important;
  color: var(--pv-text) !important;
  font-size: 0.9rem !important;
  border-bottom: 1px solid var(--pv-border) !important;
  background: #ffffff !important;
  font-style: normal !important;
}

table.shop_attributes tr:last-child th,
table.shop_attributes tr:last-child td {
  border-bottom: none !important;
}

table.shop_attributes tr:nth-child(even) td {
  background: #fafbfc !important;
}

@media (max-width: 768px) {
  table.shop_attributes {
    display: block !important;
    border: none !important;
    border-radius: 0 !important;
    background: transparent !important;
    margin: 10px 0 16px 0 !important;
  }

  table.shop_attributes tbody {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
  }

  table.shop_attributes tr {
    display: flex !important;
    flex-direction: column !important;
    background: #ffffff !important;
    border: 1px solid var(--pv-border) !important;
    border-radius: 12px !important;
    padding: 10px 14px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.02) !important;
  }

  table.shop_attributes th {
    width: 100% !important;
    padding: 0 0 4px 0 !important;
    border: none !important;
    background: transparent !important;
    font-size: 0.75rem !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    color: var(--pv-muted) !important;
  }

  table.shop_attributes td {
    width: 100% !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    font-size: 0.875rem !important;
    font-weight: 600 !important;
    color: var(--pv-secondary) !important;
  }
}

/* Reviews Overhaul */
#reviews #comments ol.commentlist {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 32px 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

#reviews #comments ol.commentlist li {
  background: #ffffff !important;
  border: 1.5px solid var(--pv-border) !important;
  border-radius: 18px !important;
  padding: 20px !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02) !important;
}

#reviews #comments ol.commentlist li .comment_container {
  display: flex !important;
  gap: 16px !important;
  align-items: flex-start !important;
}

#reviews #comments ol.commentlist li img.avatar {
  width: 44px !important;
  height: 44px !important;
  border-radius: 9999px !important;
  border: 2px solid var(--pv-primary) !important;
  object-fit: cover !important;
}

#reviews #comments ol.commentlist li .comment-text {
  flex: 1 !important;
}

#reviews #comments ol.commentlist li .star-rating {
  color: #f59e0b !important;
  float: right !important;
  margin-bottom: 8px !important;
}

#reviews #comments ol.commentlist li .meta {
  font-size: 0.85rem !important;
  color: var(--pv-muted) !important;
  margin-bottom: 8px !important;
}

#reviews #comments ol.commentlist li .meta strong {
  font-size: 0.95rem !important;
  color: var(--pv-secondary) !important;
}

#reviews #review_form #respond {
  background: #f8fafc !important;
  border: 1.5px solid var(--pv-border) !important;
  border-radius: 20px !important;
  padding: 24px !important;
  margin-top: 24px !important;
}

#reviews #review_form #respond .comment-reply-title {
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  color: var(--pv-secondary) !important;
  margin-bottom: 16px !important;
  display: block !important;
}

#reviews #review_form input[type="text"],
#reviews #review_form input[type="email"],
#reviews #review_form textarea {
  width: 100% !important;
  padding: 12px 16px !important;
  border: 1.5px solid var(--pv-border) !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  font-size: 0.925rem !important;
  outline: none !important;
  box-sizing: border-box !important;
  margin-bottom: 12px !important;
  transition: border-color 0.2s ease !important;
}

#reviews #review_form input[type="text"]:focus,
#reviews #review_form input[type="email"]:focus,
#reviews #review_form textarea:focus {
  border-color: var(--pv-primary) !important;
}

#reviews #review_form input#submit {
  padding: 12px 28px !important;
  background: var(--pv-primary) !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  font-size: 0.95rem !important;
  border-radius: 9999px !important;
  border: none !important;
  cursor: pointer !important;
  box-shadow: 0 4px 14px rgba(213, 170, 109, 0.35) !important;
  transition: all 0.2s ease !important;
}

#reviews #review_form input#submit:hover {
  background: var(--pv-primary-hover) !important;
  transform: translateY(-2px) !important;
}

@media (max-width: 768px) {
  .pv-product-tabs-wrapper {
    padding: 20px 16px !important;
    border-radius: 18px !important;
    margin-top: 30px !important;
  }
  .woocommerce-tabs ul.wc-tabs {
    border-radius: 16px !important;
    width: 100% !important;
    justify-content: center !important;
  }
  .woocommerce-tabs ul.wc-tabs li a {
    padding: 8px 14px !important;
    font-size: 0.85rem !important;
  }
}

/* ==========================================================================
   3. CART PAGE & MINI CART DRAWER (Item 3 Fix)
   ========================================================================== */
.pv-cart-page-wrap {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 20px 0 60px !important;
  box-sizing: border-box !important;
}

.petvixa-cart-layout {
  display: grid !important;
  grid-template-columns: 1.35fr 1fr !important;
  gap: 36px !important;
  align-items: start !important;
}

@media (min-width: 1200px) {
  .petvixa-cart-layout {
    grid-template-columns: 1.3fr 1fr !important;
    gap: 40px !important;
  }
}

@media (max-width: 991px) {
  .petvixa-cart-layout {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
}

.woocommerce-cart-form {
  background: #ffffff !important;
  border: 1px solid var(--pv-border) !important;
  border-radius: 20px !important;
  padding: 24px !important;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

table.shop_table.cart {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border: none !important;
  margin: 0 !important;
}

table.shop_table.cart th {
  padding: 12px 14px !important;
  font-weight: 700 !important;
  font-size: 0.8rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  color: var(--pv-muted) !important;
  border-bottom: 2px solid var(--pv-border) !important;
  background: none !important;
  text-align: left !important;
  white-space: nowrap !important;
}

table.shop_table.cart td {
  padding: 16px 12px !important;
  border-bottom: 1px solid var(--pv-border) !important;
  vertical-align: middle !important;
  font-size: 0.925rem !important;
}

table.shop_table.cart td.product-remove a.remove {
  color: var(--pv-danger) !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 9999px !important;
  background: #fee2e2 !important;
  transition: all 0.2s ease !important;
}

table.shop_table.cart td.product-remove a.remove:hover {
  background: var(--pv-danger) !important;
  color: #ffffff !important;
  transform: scale(1.1) !important;
}

/* Cart Table Thumbnail Clean Single Box Styling */
table.shop_table.cart td.product-thumbnail,
table.shop_table.cart td.luxe-cart-thumb-cell {
  width: 84px !important;
  min-width: 84px !important;
  max-width: 90px !important;
  padding: 14px 10px !important;
  vertical-align: middle !important;
  background: transparent !important;
  box-shadow: none !important;
  border-left: none !important;
  border-right: none !important;
  border-top: none !important;
  border-bottom: 1px solid var(--pv-border, #EDE6DE) !important;
  text-align: center !important;
}

table.shop_table.cart td.product-thumbnail::before,
table.shop_table.cart td.product-thumbnail::after,
table.shop_table.cart td.luxe-cart-thumb-cell::before,
table.shop_table.cart td.luxe-cart-thumb-cell::after,
table.shop_table.cart td.product-thumbnail a::before,
table.shop_table.cart td.product-thumbnail a::after,
table.shop_table.cart .luxe-cart-thumb-wrap::before,
table.shop_table.cart .luxe-cart-thumb-wrap::after {
  display: none !important;
  content: none !important;
}

table.shop_table.cart td.product-thumbnail a,
table.shop_table.cart .luxe-cart-thumb-wrap {
  display: block !important;
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  line-height: 0 !important;
  text-decoration: none !important;
}

table.shop_table.cart td.product-thumbnail img,
table.shop_table.cart .luxe-cart-thumb-wrap img {
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 10px !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--luxe-border, #EDE6DE) !important;
  background: #FAF8F5 !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
  outline: none !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

table.shop_table.cart td.product-thumbnail a:hover img,
table.shop_table.cart .luxe-cart-thumb-wrap:hover img {
  transform: scale(1.03) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08) !important;
}

a.pv-cart-prod-title,
table.shop_table.cart td.product-name a {
  font-weight: 700 !important;
  color: var(--pv-secondary) !important;
  font-size: 0.925rem !important;
  text-decoration: none !important;
  line-height: 1.35 !important;
}

a.pv-cart-prod-title:hover,
table.shop_table.cart td.product-name a:hover {
  color: var(--pv-primary) !important;
}

table.shop_table.cart td.product-price,
table.shop_table.cart td.product-subtotal {
  font-weight: 700 !important;
  color: var(--pv-secondary) !important;
  white-space: nowrap !important;
}

table.shop_table.cart td.product-subtotal {
  color: var(--pv-primary) !important;
  font-weight: 800 !important;
}

table.shop_table.cart .quantity input.qty {
  width: 60px !important;
  height: 42px !important;
  border-radius: 9999px !important;
  border: 1.5px solid var(--pv-border) !important;
  text-align: center !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  outline: none !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
}

.pv-cart-actions-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  padding-top: 14px !important;
}

.pv-cart-actions-row .coupon {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex: 1 1 260px !important;
}

.pv-cart-actions-row .coupon input.input-text {
  padding: 10px 16px !important;
  border-radius: 9999px !important;
  border: 1.5px solid var(--pv-border) !important;
  outline: none !important;
  font-size: 0.875rem !important;
  height: 44px !important;
  flex: 1 !important;
  box-sizing: border-box !important;
}

.pv-cart-actions-row .coupon button,
.pv-cart-actions-row button[name="update_cart"] {
  height: 44px !important;
  padding: 0 20px !important;
  border-radius: 9999px !important;
  font-weight: 700 !important;
  font-size: 0.875rem !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  min-width: max-content !important;
}

.woocommerce-cart table.cart td.actions .coupon,
.pv-cart-actions-row .coupon {
  display: flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 8px !important;
}

.woocommerce-cart table.cart td.actions .coupon {
  margin-bottom: 0 !important;
}

/* Luxe Coupon Box & Suggested Promo Code Pill */
.luxe-coupon-box-wrap {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: 460px !important;
}
.luxe-coupon-box-wrap .coupon {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  margin: 0 !important;
}
.luxe-coupon-box-wrap .coupon input.input-text {
  flex: 1 1 auto !important;
  min-width: 130px !important;
  height: 44px !important;
  padding: 0 14px !important;
  border-radius: 9999px !important;
  border: 1.5px solid var(--pv-border, #E5E7EB) !important;
  background: #ffffff !important;
  color: #111827 !important;
  font-size: 0.88rem !important;
  outline: none !important;
  box-sizing: border-box !important;
}
.luxe-coupon-box-wrap .coupon input.input-text::placeholder {
  color: #888888 !important;
  font-size: 0.85rem !important;
  opacity: 1 !important;
}
.luxe-coupon-box-wrap .coupon button[name="apply_coupon"] {
  flex: 0 0 auto !important;
  height: 44px !important;
  padding: 0 20px !important;
  border-radius: 9999px !important;
  font-weight: 700 !important;
  font-size: 0.88rem !important;
  white-space: nowrap !important;
  cursor: pointer !important;
}
.luxe-coupon-suggest-bar {
  display: inline-flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  background: #FFFDF9 !important;
  border: 1px dashed #D5AA6D !important;
  border-radius: 8px !important;
  padding: 6px 12px !important;
  font-size: 0.82rem !important;
  color: #4B5563 !important;
  width: fit-content !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}
.luxe-coupon-suggest-bar .suggest-icon {
  font-size: 0.95rem !important;
  line-height: 1 !important;
}
.luxe-coupon-suggest-bar .suggest-label {
  font-weight: 600 !important;
  color: #4B5563 !important;
  white-space: nowrap !important;
}
.luxe-coupon-suggest-bar .luxe-apply-suggested-code {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #0C0C0E !important;
  color: #D5AA6D !important;
  border: 1px solid #D5AA6D !important;
  border-radius: 6px !important;
  padding: 3px 9px !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  line-height: 1.2 !important;
}
.luxe-coupon-suggest-bar .luxe-apply-suggested-code:hover,
.luxe-coupon-suggest-bar .luxe-apply-suggested-code:active {
  background: #D5AA6D !important;
  color: #0C0C0E !important;
  transform: translateY(-1px) !important;
}
.luxe-coupon-suggest-bar .code-badge {
  letter-spacing: 0.5px !important;
  font-weight: 800 !important;
}
.luxe-coupon-suggest-bar .code-action {
  font-size: 0.7rem !important;
  color: #FBBF24 !important;
  opacity: 0.95 !important;
}
.luxe-coupon-suggest-bar .luxe-apply-suggested-code:hover .code-action {
  color: #0C0C0E !important;
}

/* Continue Shopping Styles matching Board 5 */
.luxe-continue-shopping-link {
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  color: #854D0E !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: all 0.2s ease !important;
}
.luxe-continue-shopping-link:hover {
  color: #C4985B !important;
  transform: translateX(-2px) !important;
}
.luxe-continue-shopping-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  white-space: nowrap !important;
  padding: 10px 18px !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  color: #18181B !important;
  border: 1px solid var(--pv-border) !important;
  border-radius: 9999px !important;
  background: #FFFFFF !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
}
.luxe-continue-shopping-btn:hover {
  background: #FAF8F5 !important;
  border-color: #D5AA6D !important;
  color: #854D0E !important;
  transform: translateX(-2px) !important;
}
.luxe-cart-totals-continue {
  display: inline-block !important;
  text-align: center !important;
  margin-top: 14px !important;
  font-size: 0.86rem !important;
  font-weight: 600 !important;
  color: #71717A !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}
.luxe-cart-totals-continue:hover {
  color: #D5AA6D !important;
}
.luxe-drawer-continue-btn:hover {
  color: #C4985B !important;
}

/* Cart Collaterals & Totals Summary */
.cart-collaterals {
  background: #ffffff !important;
  border: 1px solid var(--pv-border) !important;
  border-radius: 20px !important;
  padding: 24px 22px !important;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05) !important;
  width: 100% !important;
  float: none !important;
  box-sizing: border-box !important;
  position: relative !important;
  z-index: 10 !important;
}

@media (min-width: 992px) {
  .petvixa-cart-layout .cart-collaterals {
    position: static !important;
    top: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }
}

.cart_totals {
  width: 100% !important;
  float: none !important;
}

.cart_totals h2 {
  font-size: 1.2rem !important;
  font-weight: 800 !important;
  margin-bottom: 16px !important;
  border-bottom: 2px solid var(--pv-border) !important;
  padding-bottom: 10px !important;
  color: var(--pv-secondary) !important;
}

.cart_totals table.shop_table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-bottom: 20px !important;
  border: none !important;
}

.cart_totals table.shop_table th,
.cart_totals table.shop_table td {
  padding: 12px 0 !important;
  border-bottom: 1px solid var(--pv-border) !important;
  font-size: 0.925rem !important;
  vertical-align: top !important;
}

.cart_totals table.shop_table th {
  font-weight: 700 !important;
  color: var(--pv-secondary) !important;
  text-align: left !important;
  width: 35% !important;
  white-space: nowrap !important;
}

.cart_totals table.shop_table td {
  text-align: right !important;
  font-weight: 600 !important;
  color: var(--pv-text) !important;
}

.cart_totals tr.order-total td strong {
  font-size: 1.35rem !important;
  color: var(--pv-primary) !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  display: inline-block !important;
}

/* ==========================================================================
   SHIPPING ROW & SHIPPING CALCULATOR / CHANGE ADDRESS FORM (LUXE REDESIGN)
   ========================================================================== */

/* ==========================================================================
   SHIPPING ROW & SHIPPING CALCULATOR / CHANGE ADDRESS FORM (LUXE REDESIGN)
   ========================================================================== */

/* Shipping Row & Full Width Cell (Takes 100% width across both Cart Totals & Checkout Order Summary) */
.cart_totals table.shop_table td::before,
table.woocommerce-checkout-review-order-table td::before,
td.luxe-shipping-full-cell::before {
  display: none !important;
  content: none !important;
}

.cart_totals table.shop_table tr.woocommerce-shipping-totals,
.cart_totals table.shop_table tr.shipping,
table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals,
table.woocommerce-checkout-review-order-table tr.shipping {
  width: 100% !important;
  border-bottom: 1.5px solid #E7DFD5 !important;
}

.cart_totals table.shop_table tr.woocommerce-shipping-totals > td.luxe-shipping-full-cell,
.cart_totals table.shop_table tr.shipping > td.luxe-shipping-full-cell,
.cart_totals table.shop_table tr.woocommerce-shipping-totals > td[colspan="2"],
.cart_totals table.shop_table tr.shipping > td[colspan="2"],
.cart_totals table.shop_table td.luxe-shipping-full-cell,
table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > td.luxe-shipping-full-cell,
table.woocommerce-checkout-review-order-table tr.shipping > td.luxe-shipping-full-cell,
table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > td[colspan="2"],
table.woocommerce-checkout-review-order-table tr.shipping > td[colspan="2"],
table.woocommerce-checkout-review-order-table td.luxe-shipping-full-cell {
  display: table-cell !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: left !important;
  white-space: normal !important;
  padding: 18px 0 16px !important;
  border-bottom: none !important;
  box-sizing: border-box !important;
}

/* Fallback if WooCommerce outputs th + td side-by-side */
.cart_totals table.shop_table tr.woocommerce-shipping-totals > th,
.cart_totals table.shop_table tr.shipping > th,
table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > th,
table.woocommerce-checkout-review-order-table tr.shipping > th {
  display: none !important; /* Hidden in favor of inline luxe-shipping-header-row to prevent narrow column split */
}

.cart_totals table.shop_table tr.woocommerce-shipping-totals > td,
.cart_totals table.shop_table tr.shipping > td,
table.woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals > td,
table.woocommerce-checkout-review-order-table tr.shipping > td {
  width: 100% !important;
  text-align: left !important;
  white-space: normal !important;
  padding: 16px 0 !important;
  box-sizing: border-box !important;
}

.luxe-shipping-header-row {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  margin-bottom: 12px !important;
  width: 100% !important;
  gap: 8px !important;
}

.luxe-shipping-title {
  display: block !important;
  width: 100% !important;
  font-size: 1.02rem !important;
  font-weight: 800 !important;
  color: #18181B !important;
  letter-spacing: -0.01em !important;
  line-height: 1.35 !important;
  white-space: normal !important;
}

.luxe-shipping-dest-tag {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 0.84rem !important;
  font-weight: 600 !important;
  color: #854D0E !important;
  background: #FEFCE8 !important;
  border: 1px solid #DEB887 !important;
  padding: 6px 12px !important;
  border-radius: 10px !important;
  white-space: normal !important;
  word-break: break-word !important;
  overflow-wrap: anywhere !important;
  max-width: 100% !important;
  line-height: 1.4 !important;
  box-sizing: border-box !important;
}

/* Shipping Destination Badge */
.woocommerce-shipping-destination {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #FAF8F5 !important;
  border: 1px solid #E7DFD5 !important;
  border-radius: 10px !important;
  padding: 8px 14px !important;
  font-size: 0.92rem !important;
  color: #52525B !important;
  margin: 6px 0 14px 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  line-height: 1.4 !important;
  text-align: left !important;
}

.woocommerce-shipping-destination strong {
  color: #18181B !important;
  font-weight: 700 !important;
}

.woocommerce-shipping-notice {
  font-size: 0.88rem !important;
  color: #71717A !important;
  margin: 6px 0 14px 0 !important;
  line-height: 1.5 !important;
  text-align: left !important;
}

/* Shipping Methods Selectable Cards */
ul#shipping_method,
.woocommerce-shipping-methods {
  list-style: none !important;
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.woocommerce-shipping-methods li {
  display: flex !important;
  align-items: center !important;
  background: #FFFFFF !important;
  border: 1.5px solid #E7DFD5 !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  margin: 0 !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.02) !important;
  box-sizing: border-box !important;
}

.woocommerce-shipping-methods li:hover,
.woocommerce-shipping-methods li.is-selected,
.woocommerce-shipping-methods li:has(input:checked) {
  border-color: #D5AA6D !important;
  background: #FDFBF8 !important;
  box-shadow: 0 4px 12px rgba(213, 170, 109, 0.15) !important;
}

.woocommerce-shipping-methods li input[type="radio"] {
  accent-color: #D5AA6D !important;
  margin: 0 12px 0 0 !important;
  width: 18px !important;
  height: 18px !important;
  flex-shrink: 0 !important;
  cursor: pointer !important;
}

.woocommerce-shipping-methods li label {
  font-size: 0.94rem !important;
  font-weight: 700 !important;
  color: #18181B !important;
  cursor: pointer !important;
  flex: 1 !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin: 0 !important;
}

/* "Change Address" Luxury Trigger Button */
.woocommerce-shipping-calculator {
  margin-top: 14px !important;
  width: 100% !important;
  text-align: left !important;
  display: block !important;
  box-sizing: border-box !important;
}

.luxe-shipping-calc-btn-wrap {
  width: 100% !important;
  margin-bottom: 8px !important;
  display: block !important;
  text-align: left !important;
}

.shipping-calculator-button,
.luxe-btn-calc-trigger {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  font-size: 0.94rem !important;
  font-weight: 700 !important;
  color: #854D0E !important;
  background: #FEFCE8 !important;
  border: 1.5px solid #DEB887 !important;
  border-radius: 30px !important;
  padding: 10px 22px !important;
  text-decoration: none !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 2px 8px rgba(213, 170, 109, 0.2) !important;
  width: auto !important;
  white-space: nowrap !important;
  line-height: 1.2 !important;
}

.shipping-calculator-button:hover,
.luxe-btn-calc-trigger:hover {
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  border-color: #C4985B !important;
  box-shadow: 0 6px 18px rgba(196, 152, 91, 0.35) !important;
  transform: translateY(-1px) !important;
  text-decoration: none !important;
}

.luxe-calc-pin {
  font-size: 1.05rem !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
}

.luxe-calc-btn-text {
  white-space: nowrap !important;
  font-weight: 700 !important;
}

.luxe-calc-arrow {
  font-size: 0.85rem !important;
  transition: transform 0.2s ease !important;
  line-height: 1 !important;
  flex-shrink: 0 !important;
}

/* Expanded Shipping Calculator Form */
.shipping-calculator-form {
  background: #FAF8F5 !important;
  border: 1.5px solid #E7DFD5 !important;
  border-radius: 20px !important;
  padding: 24px 22px !important;
  margin-top: 14px !important;
  text-align: left !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  box-shadow: 0 10px 30px -8px rgba(0, 0, 0, 0.07) !important;
}

.luxe-calc-form-header {
  margin-bottom: 18px !important;
  border-bottom: 1px solid #E7DFD5 !important;
  padding-bottom: 12px !important;
}

.luxe-calc-form-title {
  font-size: 1.08rem !important;
  font-weight: 800 !important;
  color: #18181B !important;
  margin: 0 0 4px 0 !important;
  letter-spacing: -0.01em !important;
}

.luxe-calc-form-sub {
  font-size: 0.84rem !important;
  color: #71717A !important;
  margin: 0 !important;
  line-height: 1.4 !important;
}

.shipping-calculator-form p.form-row {
  margin: 0 0 16px 0 !important;
  padding: 0 !important;
  width: 100% !important;
  float: none !important;
  box-sizing: border-box !important;
  clear: both !important;
}

.shipping-calculator-form label,
.shipping-calculator-form .luxe-calc-label {
  display: block !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  color: #18181B !important;
  margin-bottom: 6px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  text-align: left !important;
}

.shipping-calculator-form select,
.shipping-calculator-form input.input-text,
.shipping-calculator-form .select2-container .select2-selection--single {
  width: 100% !important;
  height: 48px !important;
  padding: 0 16px !important;
  border-radius: 12px !important;
  border: 1.5px solid #E4E4E7 !important;
  background-color: #FFFFFF !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: #18181B !important;
  outline: none !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  transition: all 0.2s ease !important;
}

.shipping-calculator-form .select2-container .select2-selection--single .select2-selection__arrow {
  height: 46px !important;
  right: 14px !important;
}

.shipping-calculator-form .select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0 !important;
  line-height: normal !important;
  color: #18181B !important;
  font-weight: 600 !important;
}

.shipping-calculator-form input.input-text:focus,
.shipping-calculator-form select:focus,
.shipping-calculator-form .select2-container--open .select2-selection--single {
  border-color: #D5AA6D !important;
  box-shadow: 0 0 0 4px rgba(213, 170, 109, 0.2) !important;
}

/* 2-Column Responsive Split for City and Postcode */
.luxe-calc-row-split {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  clear: both !important;
}

.luxe-calc-row-split p.form-row {
  margin-bottom: 16px !important;
  width: 100% !important;
}

@media (max-width: 540px) {
  .luxe-calc-row-split {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
}

.luxe-calc-actions {
  margin-top: 18px !important;
  width: 100% !important;
  clear: both !important;
}

.shipping-calculator-form button.button[name="calc_shipping"],
.luxe-calc-submit-btn {
  width: 100% !important;
  height: 50px !important;
  border-radius: 30px !important;
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  font-weight: 700 !important;
  font-size: 0.98rem !important;
  border: none !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 6px 18px rgba(196, 152, 91, 0.3) !important;
  transition: all 0.25s ease !important;
  white-space: nowrap !important;
}

.shipping-calculator-form button.button[name="calc_shipping"]:hover,
.luxe-calc-submit-btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 24px rgba(196, 152, 91, 0.4) !important;
  background: linear-gradient(135deg, #E5C497 0%, #BA8A4C 100%) !important;
}

.wc-proceed-to-checkout a.checkout-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  width: 100% !important;
  height: 52px !important;
  padding: 0 24px !important;
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  border-radius: 9999px !important;
  font-weight: 800 !important;
  font-size: 0.95rem !important;
  text-align: center !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 4px 14px rgba(213, 170, 109, 0.35) !important;
  box-sizing: border-box !important;
}

.wc-proceed-to-checkout a.checkout-button:hover {
  background-color: var(--pv-primary-hover) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 20px rgba(213, 170, 109, 0.45) !important;
}

/* Mobile Responsive Cart Table */
@media (max-width: 768px) {
  .woocommerce-cart-form {
    padding: 16px 12px !important;
    border-radius: 16px !important;
  }

  table.shop_table.cart thead {
    display: none !important;
  }

  table.shop_table.cart tbody tr.woocommerce-cart-form__cart-item,
  table.shop_table.cart tbody tr.cart_item {
    display: grid !important;
    grid-template-columns: 72px 1fr 30px !important;
    grid-template-rows: auto auto !important;
    gap: 8px 12px !important;
    position: relative !important;
    padding: 16px 0 !important;
    border-bottom: 1px solid var(--pv-border, #EDE6DE) !important;
    align-items: center !important;
  }

  table.shop_table.cart td {
    padding: 0 !important;
    border: none !important;
    white-space: normal !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  table.shop_table.cart td::before {
    display: none !important;
  }

  table.shop_table.cart td.product-thumbnail,
  table.shop_table.cart td.luxe-cart-thumb-cell {
    grid-column: 1 !important;
    grid-row: 1 / span 2 !important;
    width: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  table.shop_table.cart td.product-thumbnail a,
  table.shop_table.cart .luxe-cart-thumb-wrap {
    display: block !important;
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 8px !important;
    overflow: hidden !important;
  }

  table.shop_table.cart td.product-thumbnail img,
  table.shop_table.cart .luxe-cart-thumb-wrap img {
    width: 72px !important;
    height: 72px !important;
    min-width: 72px !important;
    max-width: 72px !important;
    aspect-ratio: 1 / 1 !important;
    border-radius: 8px !important;
    object-fit: cover !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid var(--luxe-border, #EDE6DE) !important;
    background: #FAF8F5 !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;
    outline: none !important;
  }

  table.shop_table.cart td.product-name {
    grid-column: 2 !important;
    grid-row: 1 !important;
    padding: 0 !important;
    border: none !important;
  }

  table.shop_table.cart td.product-name a {
    font-size: 0.92rem !important;
    font-weight: 700 !important;
    color: var(--luxe-dark, #18181B) !important;
    line-height: 1.3 !important;
    display: block !important;
  }

  table.shop_table.cart td.product-remove {
    position: static !important;
    grid-column: 3 !important;
    grid-row: 1 !important;
    padding: 0 !important;
    border: none !important;
    text-align: right !important;
    display: flex !important;
    justify-content: flex-end !important;
  }

  table.shop_table.cart td.product-price {
    display: none !important;
  }

  table.shop_table.cart td.product-quantity {
    grid-column: 2 !important;
    grid-row: 2 !important;
    padding: 0 !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
  }

  table.shop_table.cart td.product-subtotal {
    grid-column: 3 !important;
    grid-row: 2 !important;
    padding: 0 !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    color: var(--luxe-gold, #C4985B) !important;
  }

  .pv-cart-actions-row {
    flex-direction: column !important;
    gap: 8px !important;
    padding: 0 !important;
    margin: 10px 0 !important;
  }

  table.shop_table.cart td.actions {
    padding: 10px 0 0 0 !important;
    border: none !important;
  }

  .pv-cart-actions-left {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  .pv-cart-actions-left .luxe-continue-shopping-btn {
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  .luxe-coupon-box-wrap {
    width: 100% !important;
    max-width: 100% !important;
  }

  .luxe-coupon-box-wrap .coupon,
  .pv-cart-actions-row .coupon {
    width: 100% !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 8px !important;
  }

  .luxe-coupon-box-wrap .coupon input.input-text,
  .pv-cart-actions-row .coupon input.input-text {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    height: 42px !important;
    padding: 0 12px !important;
    font-size: 0.82rem !important;
  }

  .luxe-coupon-box-wrap .coupon button[name="apply_coupon"],
  .pv-cart-actions-row .coupon button {
    flex: 0 0 auto !important;
    height: 42px !important;
    padding: 0 14px !important;
    font-size: 0.82rem !important;
  }

  .luxe-coupon-suggest-bar {
    width: 100% !important;
    padding: 6px 10px !important;
    box-sizing: border-box !important;
  }

  .pv-cart-actions-row button[name="update_cart"] {
    width: 100% !important;
  }

  .cart-collaterals {
    padding: 20px 16px !important;
    border-radius: 16px !important;
  }

  .cart_totals table.shop_table tr {
    display: flex !important;
    flex-direction: column !important;
    padding: 12px 0 !important;
    border-bottom: 1px solid var(--pv-border) !important;
  }

  .cart_totals table.shop_table tr:last-child {
    border-bottom: none !important;
  }

  .cart_totals table.shop_table th {
    width: 100% !important;
    padding: 0 0 8px 0 !important;
    border: none !important;
    text-align: left !important;
    font-size: 0.85rem !important;
    white-space: normal !important;
  }

  .cart_totals table.shop_table td {
    width: 100% !important;
    padding: 0 !important;
    border: none !important;
    text-align: left !important;
  }

  .cart_totals tr.order-total td strong {
    font-size: 1.5rem !important;
  }
}


/* Mini Cart Drawer */
.widget_shopping_cart_content {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
}

/* ==========================================================================
   Luxe Mini-Cart Drawer Elements & Typography
   ========================================================================== */
ul.woocommerce-mini-cart {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}

li.woocommerce-mini-cart-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 14px !important;
  padding: 16px 0 !important;
  border-bottom: 1px solid #EFEAE3 !important;
  position: relative !important;
}

/* Mini-Cart Item Single Thumbnail Container */
.cart-drawer-body li.woocommerce-mini-cart-item .mini-cart-thumb,
li.woocommerce-mini-cart-item .mini-cart-thumb,
.mini-cart-thumb {
  width: 68px !important;
  height: 68px !important;
  min-width: 68px !important;
  max-width: 68px !important;
  border-radius: 8px !important;
  border: 1px solid #E8E2D9 !important;
  background: #FAF8F5 !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  flex-shrink: 0 !important;
  text-decoration: none !important;
}

/* Image Inside Thumbnail: ZERO border, ZERO outline, completely eliminates double box */
.cart-drawer-body li.woocommerce-mini-cart-item .mini-cart-thumb img,
li.woocommerce-mini-cart-item .mini-cart-thumb img,
li.woocommerce-mini-cart-item img,
.mini-cart-thumb img,
ul.woocommerce-mini-cart li.woocommerce-mini-cart-item img {
  border: none !important;
  border-width: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  background: transparent !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  border-radius: 0 !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}

.mini-cart-thumb::before,
.mini-cart-thumb::after,
li.woocommerce-mini-cart-item .mini-cart-thumb::before,
li.woocommerce-mini-cart-item .mini-cart-thumb::after {
  display: none !important;
  content: none !important;
}


.mini-cart-item-details {
  flex: 1 !important;
  min-width: 0 !important;
  padding-right: 0 !important;
  display: flex !important;
  flex-direction: column !important;
}

.mini-cart-item-header {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 10px !important;
  margin-bottom: 4px !important;
}

.mini-cart-item-title,
.mini-cart-item-details a.mini-cart-item-title,
.mini-cart-item-details a {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-weight: 600 !important;
  font-size: 0.92rem !important;
  color: #0C0C0E !important;
  text-decoration: none !important;
  line-height: 1.35 !important;
  display: block !important;
  word-break: break-word !important;
}

.mini-cart-item-details a:hover {
  color: #D5AA6D !important;
}

li.woocommerce-mini-cart-item a.remove,
li.woocommerce-mini-cart-item button.remove {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  border-radius: 50% !important;
  background: #F4EFEA !important;
  color: #8A857D !important;
  font-size: 1.15rem !important;
  line-height: 1 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  position: static !important;
  border: none !important;
  cursor: pointer !important;
  padding: 0 !important;
}

li.woocommerce-mini-cart-item a.remove:hover,
li.woocommerce-mini-cart-item button.remove:hover {
  background: #E5989B !important;
  color: #ffffff !important;
  transform: scale(1.08) !important;
}

.mini-cart-item-meta,
.mini-cart-item-details dl.variation {
  margin: 4px 0 !important;
  font-size: 0.78rem !important;
  color: #7A7A85 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
}

.mini-cart-item-bottom {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-top: 8px !important;
}

.mini-cart-qty-badge {
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  background: #F5F2ED !important;
  color: #555048 !important;
  padding: 2px 8px !important;
  border-radius: 4px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
}

.mini-cart-item-price,
.mini-cart-item-details .quantity {
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  color: #D5AA6D !important;
}

.woocommerce-mini-cart__total {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  padding: 14px 0 !important;
  border-top: 1px solid #E8E2D9 !important;
  margin: 0 !important;
}

.woocommerce-mini-cart__total strong {
  color: #0C0C0E !important;
}

.woocommerce-mini-cart__total .amount {
  color: #D5AA6D !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.2rem !important;
}

/* ==========================================================================
   4. CHECKOUT PAGE OVERHAUL (Shopify Style & 100% Mobile Responsive Wide Layout)
   ========================================================================== */
.pv-checkout-container {
  width: 100% !important;
  max-width: 1380px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 36px 20px 80px !important;
  box-sizing: border-box !important;
}

.petvixa-checkout-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.45fr) minmax(380px, 1fr) !important;
  gap: 32px !important;
  align-items: start !important;
  width: 100% !important;
}

.pv-checkout-card {
  background: #ffffff !important;
  border: 1px solid var(--pv-border) !important;
  border-radius: 22px !important;
  padding: 32px 28px !important;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05) !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

.pv-checkout-heading {
  font-size: 1.25rem !important;
  font-weight: 800 !important;
  margin-bottom: 20px !important;
  border-bottom: 2px solid var(--pv-border) !important;
  padding-bottom: 12px !important;
  color: var(--pv-secondary) !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

/* Vertical Stack for Customer Details: Billing on Top, Shipping on Bottom (Oper / Nichy) */
.woocommerce .col2-set#customer_details,
.woocommerce-page .col2-set#customer_details,
.col2-set#customer_details,
#customer_details {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  gap: 32px !important;
  float: none !important;
}

.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1,
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2,
.col2-set .col-1,
.col2-set .col-2 {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  flex: 1 1 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.woocommerce-billing-fields,
.woocommerce-shipping-fields,
.woocommerce-additional-fields {
  width: 100% !important;
}

.woocommerce-billing-fields > h3,
.woocommerce-shipping-fields > h3:not(#ship-to-different-address),
.woocommerce-additional-fields > h3 {
  font-size: 1.3rem !important;
  font-weight: 800 !important;
  color: var(--pv-secondary) !important;
  margin: 0 0 20px 0 !important;
  padding-bottom: 12px !important;
  border-bottom: 2px solid var(--pv-border) !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

/* Shipping / Ship to different address Section (Stacked Nichy) */
.pv-checkout-shipping-col {
  margin-top: 0 !important;
  padding-top: 28px !important;
  border-top: 1.5px dashed var(--pv-border) !important;
  width: 100% !important;
}

#ship-to-different-address,
.pv-ship-to-different-wrap {
  float: none !important;
  clear: both !important;
  display: block !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #0C0C0E !important;
  margin: 0 !important;
  background: #FAF8F5 !important;
  border: 1.5px solid rgba(213, 170, 109, 0.35) !important;
  border-radius: 14px !important;
  padding: 16px 20px !important;
  transition: all 0.25s ease !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
}

#ship-to-different-address:hover,
.pv-ship-to-different-wrap:hover,
#ship-to-different-address.is-open,
#ship-to-different-address:has(input:checked) {
  background: #ffffff !important;
  border-color: #D5AA6D !important;
  box-shadow: 0 4px 14px rgba(213, 170, 109, 0.15) !important;
}

#ship-to-different-address label,
.pv-ship-to-different-wrap label,
.pv-ship-dropdown-toggle {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  cursor: pointer !important;
  margin: 0 !important;
  font-weight: 700 !important;
  font-size: 1.02rem !important;
  color: #0C0C0E !important;
  white-space: normal !important;
  word-break: break-word !important;
}

.pv-ship-dropdown-left {
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.pv-ship-dropdown-arrow {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  background: #FAF5EE !important;
  border: 1px solid rgba(213, 170, 109, 0.4) !important;
  color: #9C7238 !important;
  font-size: 0.95rem !important;
  line-height: 1 !important;
  transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease !important;
  flex-shrink: 0 !important;
}

#ship-to-different-address.is-open .pv-ship-dropdown-arrow,
#ship-to-different-address:has(input:checked) .pv-ship-dropdown-arrow {
  transform: rotate(180deg) !important;
  background: #0C0C0E !important;
  color: #D5AA6D !important;
  border-color: #D5AA6D !important;
}

#ship-to-different-address input[type="checkbox"],
.pv-ship-to-different-wrap input[type="checkbox"] {
  width: 20px !important;
  height: 20px !important;
  accent-color: #D5AA6D !important;
  cursor: pointer !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
}

.pv-checkout-shipping-fields,
.woocommerce-shipping-fields {
  float: none !important;
  clear: both !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.shipping_address,
.pv-checkout-shipping-address {
  float: none !important;
  clear: both !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-top: 16px !important;
  padding: 20px !important;
  background: #FAF8F5 !important;
  border: 1.5px solid rgba(213, 170, 109, 0.3) !important;
  border-radius: 14px !important;
  box-sizing: border-box !important;
}

.woocommerce-additional-fields,
.pv-checkout-additional-wrap {
  float: none !important;
  clear: both !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin-top: 26px !important;
  padding-top: 8px !important;
  box-sizing: border-box !important;
}

.woocommerce-additional-fields > h3,
.pv-additional-notes-heading {
  float: none !important;
  clear: both !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 16px 0 !important;
  font-family: var(--luxe-font-serif, 'Playfair Display', Georgia, serif) !important;
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  color: #0C0C0E !important;
  border-bottom: 1.5px solid rgba(213, 170, 109, 0.25) !important;
  padding-bottom: 10px !important;
  white-space: normal !important;
  box-sizing: border-box !important;
}

#order_comments_field,
.woocommerce-additional-fields .form-row {
  float: none !important;
  clear: both !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

#order_comments {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  border-radius: 12px !important;
  border: 1.5px solid rgba(213, 170, 109, 0.3) !important;
  background: #ffffff !important;
  min-height: 90px !important;
}

.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper,
.woocommerce-address-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px 22px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.woocommerce-billing-fields__field-wrapper .form-row-wide,
.woocommerce-shipping-fields__field-wrapper .form-row-wide,
.woocommerce-address-fields__field-wrapper .form-row-wide,
.woocommerce form .form-row-wide,
#billing_address_1_field,
#billing_address_2_field,
#billing_country_field,
#billing_company_field,
#shipping_address_1_field,
#shipping_address_2_field,
#shipping_country_field,
#shipping_company_field {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}

.woocommerce-checkout .form-row {
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
}

.woocommerce-checkout .form-row label {
  display: block !important;
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  margin-bottom: 6px !important;
  color: var(--pv-secondary) !important;
}

.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea {
  width: 100% !important;
  height: 52px !important;
  padding: 12px 18px !important;
  border-radius: 12px !important;
  border: 1.5px solid var(--pv-border) !important;
  outline: none !important;
  font-size: 0.95rem !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
  color: var(--pv-secondary) !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.woocommerce-checkout textarea {
  height: 110px !important;
  padding: 14px 18px !important;
  resize: vertical !important;
}

.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
  border-color: var(--pv-primary) !important;
  box-shadow: 0 0 0 3px rgba(213, 170, 109, 0.12) !important;
}

/* Order Review Table & Amounts (Fixing broken prices and wrapping) */
table.woocommerce-checkout-review-order-table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin-bottom: 20px !important;
  table-layout: auto !important;
}

table.woocommerce-checkout-review-order-table th,
table.woocommerce-checkout-review-order-table td {
  padding: 12px 8px !important;
  border-bottom: 1px solid var(--pv-border) !important;
  font-size: 0.925rem !important;
  vertical-align: middle !important;
}

table.woocommerce-checkout-review-order-table th {
  font-weight: 700 !important;
  color: var(--pv-secondary) !important;
  text-align: left !important;
}

table.woocommerce-checkout-review-order-table td.product-name {
  text-align: left !important;
  font-weight: 600 !important;
  color: var(--pv-secondary) !important;
  line-height: 1.45 !important;
  padding-right: 12px !important;
  word-break: break-word !important;
}

table.woocommerce-checkout-review-order-table td.product-name .product-quantity {
  font-weight: 700 !important;
  color: var(--pv-muted) !important;
  white-space: nowrap !important;
}

table.woocommerce-checkout-review-order-table td.product-total,
table.woocommerce-checkout-review-order-table th.product-total,
table.woocommerce-checkout-review-order-table tr.cart-subtotal td,
table.woocommerce-checkout-review-order-table tr.order-total td,
table.woocommerce-checkout-review-order-table .woocommerce-Price-amount,
table.woocommerce-checkout-review-order-table .amount {
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 700 !important;
  color: var(--pv-secondary) !important;
  min-width: 95px !important;
}

table.woocommerce-checkout-review-order-table tr.cart-subtotal th,
table.woocommerce-checkout-review-order-table tr.shipping th {
  text-align: left !important;
  font-weight: 700 !important;
  color: var(--pv-secondary) !important;
}

table.woocommerce-checkout-review-order-table tr.order-total th {
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  color: var(--pv-secondary) !important;
  padding-top: 16px !important;
  border-bottom: none !important;
}

table.woocommerce-checkout-review-order-table tr.order-total td {
  padding-top: 16px !important;
  border-bottom: none !important;
  text-align: right !important;
  white-space: nowrap !important;
}

table.woocommerce-checkout-review-order-table tr.order-total td strong,
table.woocommerce-checkout-review-order-table tr.order-total td .woocommerce-Price-amount {
  font-size: 1.35rem !important;
  font-weight: 800 !important;
  color: var(--pv-primary) !important;
  white-space: nowrap !important;
  letter-spacing: -0.01em !important;
}

/* Payment Box & Card Fields Overhaul (Ultra-Modern Luxury Shopify/Stripe Grade) */
/* Payment Box & Card Fields Overhaul (Ultra-Modern Compact Luxury) */
#payment {
  background: transparent !important;
  border-radius: 0 !important;
  margin-top: 12px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#payment ul.payment_methods {
  padding: 0 !important;
  margin: 0 0 12px 0 !important;
  list-style: none !important;
  border: none !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#payment ul.payment_methods li {
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 14px !important;
  padding: 15px 16px !important;
  margin-bottom: 10px !important;
  font-weight: 600 !important;
  color: #334155 !important;
  transition: all 0.25s ease !important;
  width: 100% !important;
  box-sizing: border-box !important;
  box-shadow: 0 2px 8px -2px rgba(15, 23, 42, 0.04) !important;
}

#payment ul.payment_methods li:hover,
#payment ul.payment_methods li.is-selected {
  border-color: var(--pv-primary) !important;
  box-shadow: 0 4px 16px -2px rgba(213, 170, 109, 0.12) !important;
}

#payment ul.payment_methods li label {
  cursor: pointer !important;
  font-weight: 700 !important;
  font-size: 0.925rem !important;
  color: #334155 !important;
  margin-left: 6px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  letter-spacing: -0.01em !important;
}

#payment ul.payment_methods li label img {
  max-height: 20px !important;
  margin-left: auto !important;
}

/* Seamless Full-Width Payment Form (No Awkward Nested Box / Arrow) */
#payment div.payment_box {
  background: transparent !important;
  border: none !important;
  border-top: 1px solid #f1f5f9 !important;
  border-radius: 0 !important;
  padding: 12px 0 2px 0 !important;
  margin: 10px 0 0 0 !important;
  font-size: 0.85rem !important;
  color: var(--pv-muted) !important;
  line-height: 1.5 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
}

#payment div.payment_box::before,
#payment div.payment_box::after {
  display: none !important;
  content: none !important;
}

#payment div.payment_box p:first-child {
  color: #94a3b8 !important;
  font-size: 0.775rem !important;
  font-weight: 400 !important;
  margin: 0 0 10px 0 !important;
  line-height: 1.4 !important;
}

#payment div.payment_box fieldset,
#payment div.payment_box .wc-credit-card-form,
#payment div.payment_box .wc-payment-form {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#payment div.payment_box .form-row {
  position: relative !important;
  width: 100% !important;
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  float: none !important;
  box-sizing: border-box !important;
}

#payment div.payment_box .form-row label,
#payment div.payment_box label {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  font-size: 0.725rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #64748b !important;
  margin-bottom: 4px !important;
}

#payment div.payment_box .form-row label img,
#payment div.payment_box .form-row .card-brands,
#payment div.payment_box .form-row .payment-icons {
  max-height: 18px !important;
  margin-left: auto !important;
  vertical-align: middle !important;
}

/* Icon positioning fix: prevents overlapping with placeholder and text */
#payment div.payment_box .form-row i,
#payment div.payment_box .form-row .icon,
#payment div.payment_box .form-row svg,
#payment div.payment_box .form-row span[class*="icon"],
#payment div.payment_box .form-row .input-icon {
  position: absolute !important;
  left: 14px !important;
  bottom: 13px !important;
  z-index: 3 !important;
  color: #94a3b8 !important;
  font-size: 1.05rem !important;
  pointer-events: none !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* 2-Column Row for Expiration and CVC */
#payment div.payment_box .form-row-first,
#payment div.payment_box .form-row-last {
  width: calc(50% - 5px) !important;
  display: inline-block !important;
  vertical-align: top !important;
  box-sizing: border-box !important;
}

#payment div.payment_box .form-row-first {
  margin-right: 6px !important;
}

#payment div.payment_box .form-row-last {
  margin-right: 0 !important;
}

/* Compact Premium Input Fields with Clean Left Icon Padding */
#payment div.payment_box input.input-text,
#payment div.payment_box .wc-stripe-elements-field,
#payment div.payment_box iframe,
#stripe-card-element,
.wc-stripe-elements-field,
#payment div.payment_box input[type="text"],
#payment div.payment_box input[type="tel"],
#payment div.payment_box input[type="password"] {
  width: 100% !important;
  min-height: 46px !important;
  height: 46px !important;
  padding-left: 40px !important;
  padding-right: 12px !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
  border-radius: 10px !important;
  border: 1.5px solid #e2e8f0 !important;
  box-sizing: border-box !important;
  background-color: #ffffff !important;
  font-size: 14.5px !important;
  font-weight: 500 !important;
  color: #0f172a !important;
  outline: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

#payment div.payment_box input.input-text::placeholder,
#payment div.payment_box input[type="text"]::placeholder,
#payment div.payment_box input[type="tel"]::placeholder,
#payment div.payment_box input[type="password"]::placeholder {
  color: #94a3b8 !important;
  font-weight: 400 !important;
}

#payment div.payment_box input.input-text:focus,
#payment div.payment_box .wc-stripe-elements-field:focus {
  border-color: var(--pv-primary) !important;
  box-shadow: 0 0 0 3px rgba(213, 170, 109, 0.12) !important;
}

#place_order {
  width: 100% !important;
  height: 52px !important;
  padding: 0 24px !important;
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  border-radius: 9999px !important;
  font-weight: 800 !important;
  font-size: 1rem !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  border: none !important;
  cursor: pointer !important;
  box-shadow: 0 4px 16px rgba(196, 152, 91, 0.35) !important;
  transition: all 0.25s ease !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 16px !important;
}

#place_order:hover {
  background: linear-gradient(135deg, #E5C396 0%, #D5AA6D 100%) !important;
  color: #0C0C0E !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(196, 152, 91, 0.45) !important;
}

.pv-checkout-guarantee {
  background: #FAF8F5 !important;
  border: 1.5px solid rgba(213, 170, 109, 0.35) !important;
  border-radius: 16px !important;
  padding: 20px 22px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  box-shadow: 0 4px 18px rgba(12, 12, 14, 0.04) !important;
}

/* ==========================================================================
   MOBILE RESPONSIVE RULES (Full-Width Edge-to-Edge Checkout Experience)
   ========================================================================== */
@media (max-width: 991px) {
  .petvixa-checkout-layout {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
}

@media (max-width: 768px) {
  .pv-checkout-container,
  .woocommerce-checkout .pv-container,
  .woocommerce-page.woocommerce-checkout .pv-container {
    padding-left: 4px !important;
    padding-right: 4px !important;
    padding-top: 12px !important;
    padding-bottom: 30px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .pv-checkout-header {
    margin-bottom: 14px !important;
  }

  .pv-checkout-header .pv-section-title {
    font-size: 1.45rem !important;
  }

  .pv-checkout-card {
    padding: 16px 12px !important;
    border-radius: 16px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
    margin-bottom: 12px !important;
  }

  .petvixa-checkout-layout {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
  }

  /* Force vertical stack & zero side overflow for all checkout elements on mobile */
  #customer_details,
  .col2-set#customer_details,
  .col-1,
  .col-2,
  .pv-checkout-shipping-col,
  .pv-checkout-shipping-fields,
  .woocommerce-shipping-fields,
  #ship-to-different-address,
  .pv-ship-to-different-wrap,
  .woocommerce-additional-fields,
  .pv-checkout-additional-wrap,
  .pv-additional-notes-heading,
  #order_comments_field {
    float: none !important;
    clear: both !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-wrap: break-word !important;
  }

  .woocommerce-billing-fields__field-wrapper,
  .woocommerce-shipping-fields__field-wrapper,
  .woocommerce-address-fields__field-wrapper {
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .woocommerce-billing-fields__field-wrapper .form-row,
  .woocommerce-shipping-fields__field-wrapper .form-row,
  .woocommerce-address-fields__field-wrapper .form-row {
    width: 100% !important;
    margin: 0 !important;
  }

  .woocommerce-checkout input.input-text,
  .woocommerce-checkout select,
  .woocommerce-checkout textarea {
    height: 46px !important;
    padding: 8px 12px !important;
    font-size: 15px !important;
    border-radius: 10px !important;
    width: 100% !important;
  }

  .woocommerce-checkout textarea#order_comments {
    height: 90px !important;
    min-height: 90px !important;
  }

  #payment ul.payment_methods li {
    padding: 13px 12px !important;
    border-radius: 12px !important;
    width: 100% !important;
  }

  #payment div.payment_box {
    padding: 10px 0 0 0 !important;
    width: 100% !important;
  }

  #payment div.payment_box .form-row-first,
  #payment div.payment_box .form-row-last {
    width: calc(50% - 4px) !important;
    display: inline-block !important;
  }

  #payment div.payment_box .form-row-first {
    margin-right: 5px !important;
  }

  #payment div.payment_box input.input-text,
  #payment div.payment_box .wc-stripe-elements-field,
  #payment div.payment_box iframe {
    font-size: 14.5px !important;
    height: 46px !important;
    min-height: 46px !important;
    padding-left: 40px !important;
    width: 100% !important;
  }

  #place_order {
    height: 50px !important;
    font-size: 0.98rem !important;
  }
}

@media (min-width: 992px) {
  .petvixa-checkout-layout > div:last-child {
    position: static !important;
    top: auto !important;
  }
}

/* ==========================================================================
   5. MY ACCOUNT PORTAL & AUTH CARDS (Item 2 Fix)
   ========================================================================== */
.woocommerce-account .woocommerce {
  display: block !important;
  width: 100% !important;
  padding: 20px 0 60px !important;
  box-sizing: border-box !important;
}

/* Logged-in Customer Portal: 2-Column Sidebar + Content Layout */
.woocommerce-account.logged-in .woocommerce,
.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
  display: grid !important;
  grid-template-columns: 280px 1fr !important;
  gap: 36px !important;
  align-items: start !important;
}

@media (max-width: 860px) {
  .woocommerce-account.logged-in .woocommerce,
  .woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
}

.pv-account-navigation {
  background: #ffffff !important;
  border: 1px solid var(--pv-border) !important;
  border-radius: 20px !important;
  padding: 24px !important;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05) !important;
  box-sizing: border-box !important;
}

.pv-account-user-card {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding-bottom: 18px !important;
  border-bottom: 1px solid var(--pv-border) !important;
  margin-bottom: 16px !important;
}

.pv-account-avatar img {
  border-radius: 9999px !important;
  width: 50px !important;
  height: 50px !important;
  object-fit: cover !important;
  border: 2px solid var(--pv-primary-light) !important;
}

.pv-account-user-info h4 {
  margin: 0 0 2px 0 !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
  color: var(--pv-secondary) !important;
}

.pv-account-user-info span {
  font-size: 0.8rem !important;
  color: var(--pv-muted) !important;
}

.pv-account-nav-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.pv-account-nav-list li {
  margin-bottom: 4px !important;
}

.pv-account-nav-list a {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 10px 14px !important;
  border-radius: 10px !important;
  color: var(--pv-text) !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.pv-account-nav-list a:hover,
.pv-account-nav-list li.is-active a {
  background-color: var(--pv-primary-light) !important;
  color: var(--pv-primary) !important;
}

.woocommerce-MyAccount-content {
  background: #ffffff !important;
  border: 1px solid var(--pv-border) !important;
  border-radius: 20px !important;
  padding: 32px !important;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05) !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

@media (max-width: 768px) {
  .woocommerce-MyAccount-content {
    padding: 20px 16px !important;
    border-radius: 16px !important;
  }
}

/* Centered Luxury Auth Wrapper for Login & Register */
.pv-auth-wrapper {
  max-width: 920px !important;
  margin: 0 auto !important;
  padding: 10px 0 40px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.pv-auth-wrapper.single-card {
  max-width: 480px !important;
}

.pv-auth-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 28px !important;
  align-items: start !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.pv-auth-wrapper.single-card .pv-auth-grid {
  grid-template-columns: 1fr !important;
}

@media (max-width: 768px) {
  .pv-auth-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
}

.pv-auth-card {
  background: #ffffff !important;
  border: 1px solid var(--pv-border) !important;
  border-radius: 20px !important;
  padding: 28px 24px !important;
  box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.05) !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

.pv-auth-card-header {
  margin-bottom: 20px !important;
  border-bottom: 1px solid var(--pv-border) !important;
  padding-bottom: 14px !important;
}

.pv-auth-card-header h2 {
  font-size: 1.3rem !important;
  font-weight: 800 !important;
  margin: 0 0 4px 0 !important;
  color: var(--pv-secondary) !important;
}

.pv-auth-card-header p {
  font-size: 0.85rem !important;
  color: var(--pv-muted) !important;
  margin: 0 !important;
}

.pv-auth-card .form-row {
  margin-bottom: 14px !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
}

.pv-auth-card label {
  display: block !important;
  font-size: 0.825rem !important;
  font-weight: 700 !important;
  color: var(--pv-secondary) !important;
  margin-bottom: 6px !important;
}

.pv-auth-card input.input-text {
  width: 100% !important;
  height: 48px !important;
  padding: 10px 16px !important;
  border-radius: 12px !important;
  border: 1.5px solid var(--pv-border) !important;
  outline: none !important;
  font-size: 0.925rem !important;
  box-sizing: border-box !important;
  background-color: #ffffff !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.pv-auth-card input.input-text:focus {
  border-color: var(--pv-primary) !important;
  box-shadow: 0 0 0 3px rgba(213, 170, 109, 0.12) !important;
}

.pv-auth-remember-row {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin: 12px 0 16px !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  font-size: 0.85rem !important;
}

.pv-auth-remember-row label {
  margin: 0 !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.pv-lost-pwd {
  font-size: 0.825rem !important;
  font-weight: 700 !important;
  color: var(--pv-primary) !important;
}

/* ==========================================================================
   6. QUICK VIEW MODAL UI OVERHAUL (Item 7 & Wide Image Fix)
   ========================================================================== */
.pv-quickview-container {
  display: grid !important;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: start !important;
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
}

@media (max-width: 768px) {
  .pv-quickview-container {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
}

.pv-quickview-gallery {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.pv-qv-main-image-wrap {
  width: 100% !important;
  height: 350px !important;
  max-height: 350px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  border: 1.5px solid var(--pv-border) !important;
  background: #f8fafc !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

.pv-qv-main-img {
  width: 100% !important;
  height: 100% !important;
  max-height: 350px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto !important;
}

@media (max-width: 768px) {
  .pv-qv-main-image-wrap {
    height: 240px !important;
    max-height: 240px !important;
  }
  .pv-qv-main-img {
    max-height: 240px !important;
  }
}

.pv-qv-thumbnails {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 12px !important;
  padding-bottom: 4px !important;
  width: 100% !important;
}

.pv-qv-thumb-btn {
  width: 52px !important;
  height: 52px !important;
  min-width: 52px !important;
  border-radius: 10px !important;
  border: 2px solid var(--pv-border) !important;
  background: #ffffff !important;
  padding: 0 !important;
  cursor: pointer !important;
  overflow: hidden !important;
  transition: all 0.2s ease !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

.pv-qv-thumb-btn img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

.pv-qv-thumb-btn.is-active,
.pv-qv-thumb-btn:hover {
  border-color: var(--pv-primary) !important;
  transform: translateY(-1px) !important;
}

.pv-quickview-details {
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  min-width: 0 !important;
  width: 100% !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.pv-qv-category {
  font-size: 0.775rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  color: var(--pv-muted) !important;
  line-height: 1.3 !important;
}

.pv-qv-title {
  font-size: clamp(1.15rem, 1.8vw, 1.45rem) !important;
  font-weight: 800 !important;
  color: var(--pv-secondary) !important;
  margin: 0 !important;
  line-height: 1.3 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.pv-qv-title a {
  color: var(--pv-secondary) !important;
  text-decoration: none !important;
}

.pv-qv-rating {
  font-size: 0.85rem !important;
  color: #f59e0b !important;
  margin: 2px 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
}

.pv-qv-price {
  font-size: 1.35rem !important;
  font-weight: 800 !important;
  color: var(--pv-primary) !important;
  margin: 4px 0 8px !important;
  display: flex !important;
  align-items: baseline !important;
  gap: 8px !important;
  flex-wrap: wrap !important;
  white-space: nowrap !important;
}

.pv-qv-price del {
  color: #94a3b8 !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
}

.pv-qv-price ins {
  text-decoration: none !important;
  color: var(--pv-primary) !important;
}

.pv-qv-excerpt {
  font-size: 0.875rem !important;
  color: var(--pv-muted) !important;
  line-height: 1.6 !important;
  margin-bottom: 12px !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
}

.pv-qv-actions form.cart {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin: 10px 0 !important;
  width: 100% !important;
}

.pv-qv-actions form.cart .quantity input.qty {
  width: 56px !important;
  height: 44px !important;
  border-radius: 9999px !important;
  border: 1.5px solid var(--pv-border) !important;
  text-align: center !important;
  font-weight: 700 !important;
  box-sizing: border-box !important;
}

.pv-qv-actions form.cart .single_add_to_cart_button {
  flex: 1 1 140px !important;
  height: 44px !important;
  border-radius: 9999px !important;
  background-color: var(--pv-primary) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  border: none !important;
  cursor: pointer !important;
  padding: 0 18px !important;
  transition: all 0.2s ease !important;
}

.pv-qv-actions form.cart .single_add_to_cart_button:hover {
  background-color: var(--pv-primary-hover) !important;
}

.pv-qv-meta {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  font-size: 0.8rem !important;
  color: var(--pv-muted) !important;
  margin-top: 10px !important;
  border-top: 1px solid var(--pv-border) !important;
  padding-top: 10px !important;
  width: 100% !important;
}

.pv-qv-meta strong {
  color: var(--pv-secondary) !important;
}

/* Responsive Fixes - Customer details strictly stacked vertically */
.pv-checkout-shipping-col {
  margin-top: 0 !important;
  padding-top: 28px !important;
  border-top: 1.5px dashed var(--pv-border) !important;
}

@media (min-width: 769px) {
  .col2-set#customer_details {
    display: flex !important;
    flex-direction: column !important;
    gap: 32px !important;
  }
  .col2-set#customer_details .col-1,
  .col2-set#customer_details .col-2 {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
  }
}

/* Global Fix for WooCommerce Select2 Dropdowns (Country/State) */
.select2-container {
  z-index: 20 !important;
}
.select2-container--default .select2-dropdown {
  z-index: 9000 !important;
  border: 1px solid var(--pv-border) !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 40px rgba(0,0,0,0.15) !important;
  overflow: hidden !important;
  background-color: #ffffff !important;
}
.select2-container--open {
  z-index: 9000 !important;
}
/* Ensure the form wrapper doesn't clip the dropdown if appended inside */
.woocommerce-checkout .select2-container,
.woocommerce-cart .select2-container {
  width: 100% !important;
}
.woocommerce form .form-row {
  overflow: visible !important;
}
.select2-search__field {
  outline: none !important;
  border: 1px solid var(--pv-border) !important;
  border-radius: 8px !important;
}

/* Fix Coupon form globally in WooCommerce Cart & Checkout */
.woocommerce-cart .coupon,
.woocommerce-checkout .checkout_coupon,
.cart_totals .coupon {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}
.woocommerce-cart .coupon input.input-text,
.woocommerce-checkout .checkout_coupon input.input-text,
.cart_totals .coupon input.input-text {
  flex: 1 1 auto !important;
  width: 100% !important;
  min-width: 100px !important;
  height: 44px !important;
  padding: 0 16px !important;
  border-radius: 9999px !important;
  border: 1.5px solid var(--pv-border) !important;
  outline: none !important;
  box-sizing: border-box !important;
}
.woocommerce-cart .coupon button,
.woocommerce-checkout .checkout_coupon button,
.cart_totals .coupon button {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 110px !important;
  height: 44px !important;
  padding: 0 20px !important;
  border-radius: 9999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  word-break: keep-all !important;
  overflow: visible !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  background: var(--pv-primary) !important;
  color: #ffffff !important;
  border: none !important;
  transition: all 0.3s ease !important;
}
.woocommerce-cart .coupon button:hover,
.woocommerce-checkout .checkout_coupon button:hover,
.cart_totals .coupon button:hover {
  background: var(--pv-primary-hover) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1) !important;
}
@media (max-width: 480px) {
  .woocommerce-cart .coupon,
  .cart_totals .coupon {
    flex-direction: row !important;
    gap: 8px !important;
    margin-bottom: 0 !important;
  }
}

/* Hide all compare buttons (Theme built-in and YITH Compare Plugin) */
a.compare.button,
.yith-woocompare-widget,
.woocommerce-product-compare,
.pv-compare-btn,
.compare-button,
.product .compare {
  display: none !important;
}

/* Completely hide View Cart notice, Returning customer, Coupon form, and Privacy policy text on Checkout */
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-message a.button.wc-forward,
.woocommerce-checkout .woocommerce-form-login-toggle,
.woocommerce-checkout form.woocommerce-form-login,
.woocommerce-checkout form.login,
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout form.checkout_coupon,
.woocommerce-checkout form.woocommerce-form-coupon,
.woocommerce-checkout .checkout_coupon,
.woocommerce-checkout .woocommerce-privacy-policy-text,
.woocommerce-privacy-policy-text {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  height: 0 !important;
  visibility: hidden !important;
}

/* ==========================================================================
   24. ULTRA-CLEAN & MODERN SHOP PAGINATION
   ========================================================================== */
.woocommerce nav.woocommerce-pagination,
.woocommerce .woocommerce-pagination,
nav.woocommerce-pagination,
.pv-pagination {
  margin: 50px auto 20px auto !important;
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  width: 100% !important;
  clear: both !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Strip WooCommerce core list container styling */
.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul.page-numbers,
.woocommerce .woocommerce-pagination ul,
.woocommerce .woocommerce-pagination ul.page-numbers,
nav.woocommerce-pagination ul.page-numbers,
.pv-pagination ul.page-numbers,
.pv-pagination .nav-links {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 auto !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  white-space: nowrap !important;
  float: none !important;
}

/* Strip WooCommerce core border-right and float from each li */
.woocommerce nav.woocommerce-pagination ul li,
.woocommerce nav.woocommerce-pagination ul.page-numbers li,
.woocommerce .woocommerce-pagination ul li,
.woocommerce .woocommerce-pagination ul.page-numbers li,
nav.woocommerce-pagination ul li,
.pv-pagination ul li {
  border: none !important;
  border-right: none !important;
  border-left: none !important;
  border-top: none !important;
  border-bottom: none !important;
  background: transparent !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  display: inline-flex !important;
  overflow: visible !important;
  list-style: none !important;
}

/* Standalone Button Styling for Every Number & Arrow */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce nav.woocommerce-pagination ul li .page-numbers,
.woocommerce .woocommerce-pagination ul li a,
.woocommerce .woocommerce-pagination ul li span,
.woocommerce .woocommerce-pagination ul li .page-numbers,
nav.woocommerce-pagination ul li .page-numbers,
.pv-pagination ul li .page-numbers,
.pv-pagination .nav-links .page-numbers {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 12px !important;
  border: 1.5px solid #e2e8f0 !important;
  background: #ffffff !important;
  color: #334155 !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04) !important;
  transition: all 0.22s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
  line-height: 1 !important;
  box-sizing: border-box !important;
}

/* SVG Arrow Icon inside Prev/Next buttons */
.woocommerce nav.woocommerce-pagination ul li a svg,
.woocommerce .woocommerce-pagination ul li a svg,
nav.woocommerce-pagination ul li a svg,
.pv-pagination ul li a svg {
  display: inline-block !important;
  width: 18px !important;
  height: 18px !important;
  stroke: currentColor !important;
  vertical-align: middle !important;
  transition: transform 0.2s ease !important;
}

/* Hover state on unselected buttons */
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus,
.woocommerce .woocommerce-pagination ul li a:hover,
.woocommerce .woocommerce-pagination ul li a:focus,
nav.woocommerce-pagination ul li a:hover,
.pv-pagination ul li a:hover,
.pv-pagination .nav-links a:hover {
  background: #FAF5F3 !important;
  border-color: #D5AA6D !important;
  color: #D5AA6D !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 12px rgba(213, 170, 109, 0.18) !important;
}

.woocommerce nav.woocommerce-pagination ul li a.next:hover svg,
.woocommerce .woocommerce-pagination ul li a.next:hover svg {
  transform: translateX(2px) !important;
}

.woocommerce nav.woocommerce-pagination ul li a.prev:hover svg,
.woocommerce .woocommerce-pagination ul li a.prev:hover svg {
  transform: translateX(-2px) !important;
}

/* ACTIVE / CURRENT PAGE BUTTON (Completely kills WC core gray background) */
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul.page-numbers li span.current,
.woocommerce .woocommerce-pagination ul li span.current,
.woocommerce .woocommerce-pagination ul.page-numbers li span.current,
nav.woocommerce-pagination ul.page-numbers li span.current,
.pv-pagination ul.page-numbers li span.current,
.pv-pagination .nav-links span.current {
  background: #D5AA6D !important;
  background-color: #D5AA6D !important;
  border: 1.5px solid #D5AA6D !important;
  border-color: #D5AA6D !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 14px rgba(213, 170, 109, 0.4) !important;
  transform: translateY(-1px) !important;
  cursor: default !important;
  pointer-events: none !important;
}

/* Ellipsis (...) */
.woocommerce nav.woocommerce-pagination ul li span.dots,
.woocommerce .woocommerce-pagination ul li span.dots,
nav.woocommerce-pagination ul li span.dots,
.pv-pagination ul li span.dots,
.pv-pagination .nav-links span.dots {
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #94a3b8 !important;
  width: 28px !important;
  min-width: 28px !important;
  font-size: 1.1rem !important;
  letter-spacing: 2px !important;
  cursor: default !important;
  pointer-events: none !important;
}

/* Mobile screens */
@media (max-width: 576px) {
  .woocommerce nav.woocommerce-pagination ul,
  .woocommerce nav.woocommerce-pagination ul.page-numbers,
  nav.woocommerce-pagination ul.page-numbers {
    gap: 6px !important;
  }
  .woocommerce nav.woocommerce-pagination ul li a,
  .woocommerce nav.woocommerce-pagination ul li span,
  .woocommerce nav.woocommerce-pagination ul li .page-numbers {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    font-size: 0.88rem !important;
    border-radius: 10px !important;
  }
}

/* ==========================================================================
   26. SOCIAL PROOF & LIVE URGENCY BADGES (LIVE VIEWERS & UNITS SOLD)
   ========================================================================== */
.pv-social-proof-wrap {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 14px 0 18px 0 !important;
  width: 100% !important;
}

.pv-proof-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 8px 16px !important;
  border-radius: 9999px !important;
  font-size: 0.85rem !important;
  line-height: 1 !important;
  font-weight: 500 !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03) !important;
  transition: all 0.25s ease !important;
}

/* Live Viewers Badge */
.pv-proof-badge.pv-proof-live {
  background: #ecfdf5 !important;
  border: 1px solid rgba(16, 185, 129, 0.3) !important;
  color: #065f46 !important;
}

.pv-live-pulse-dot {
  width: 9px !important;
  height: 9px !important;
  min-width: 9px !important;
  background-color: #10b981 !important;
  border-radius: 50% !important;
  display: inline-block !important;
  flex-shrink: 0 !important;
  box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.75) !important;
  animation: pv-live-pulse 1.8s infinite cubic-bezier(0.4, 0, 0.6, 1) !important;
}

.pv-live-pulse-dot::after {
  display: none !important;
}

@keyframes pv-live-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.8);
  }
  70% {
    box-shadow: 0 0 0 7px rgba(16, 185, 129, 0);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(16, 185, 129, 0);
  }
}

/* Sold Count Badge */
.pv-proof-badge.pv-proof-sold {
  background: #FAF5F3 !important;
  border: 1px solid rgba(249, 115, 22, 0.3) !important;
  color: #9a3412 !important;
}

.pv-fire-icon {
  font-size: 1rem !important;
  display: inline-block !important;
  line-height: 1 !important;
}

.pv-proof-badge strong {
  font-weight: 700 !important;
  color: inherit !important;
}

/* Mobile responsive adjustments */
@media (max-width: 576px) {
  .pv-social-proof-wrap {
    gap: 8px !important;
    margin: 12px 0 16px 0 !important;
  }
  .pv-proof-badge {
    width: 100% !important;
    justify-content: flex-start !important;
    padding: 9px 14px !important;
    font-size: 0.82rem !important;
    border-radius: 12px !important;
  }
}

/* ==========================================================================
   27. ORDER RECEIVED / THANK YOU PAGE (DESKTOP & MOBILE FIX)
   ========================================================================== */
.pv-thankyou-container {
  max-width: 860px !important;
  margin: 40px auto 60px auto !important;
  padding: 0 16px !important;
}

/* Success / Failed Status Hero Card */
.pv-order-status-card {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 20px !important;
  padding: 36px 24px !important;
  text-align: center !important;
  margin-bottom: 24px !important;
  box-shadow: 0 4px 20px -4px rgba(0, 0, 0, 0.05) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

.pv-order-status-card.pv-order-success {
  border-top: 4px solid #10b981 !important;
}

.pv-order-status-card.pv-order-failed {
  border-top: 4px solid #ef4444 !important;
}

.pv-status-icon {
  width: 64px !important;
  height: 64px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 16px !important;
}

.pv-status-icon.pv-icon-success {
  background: #ecfdf5 !important;
  color: #10b981 !important;
  box-shadow: 0 0 0 8px rgba(16, 185, 129, 0.12) !important;
}

.pv-status-icon.pv-icon-failed {
  background: #fef2f2 !important;
  color: #ef4444 !important;
  font-size: 2rem !important;
  box-shadow: 0 0 0 8px rgba(239, 68, 68, 0.12) !important;
}

.pv-status-badge {
  display: inline-block !important;
  font-size: 0.8rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #059669 !important;
  background: #ecfdf5 !important;
  padding: 4px 12px !important;
  border-radius: 9999px !important;
  margin-bottom: 12px !important;
}

.pv-status-title {
  font-size: 1.55rem !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  margin: 0 0 10px 0 !important;
  line-height: 1.3 !important;
}

.pv-status-sub {
  font-size: 0.95rem !important;
  color: #64748b !important;
  margin: 0 !important;
  line-height: 1.5 !important;
  max-width: 540px !important;
}

/* Disable WooCommerce clearfix pseudo-elements that hijack grid slots */
.woocommerce ul.order_details::before,
.woocommerce ul.order_details::after,
.woocommerce-order-overview::before,
.woocommerce-order-overview::after,
.pv-order-overview-card::before,
.pv-order-overview-card::after,
.woocommerce ul.order_details:before,
.woocommerce ul.order_details:after,
.woocommerce-order-overview:before,
.woocommerce-order-overview:after,
.pv-order-overview-card:before,
.pv-order-overview-card:after {
  content: none !important;
  display: none !important;
}

/* Modern Receipt Overview Card (Desktop) */
.woocommerce ul.order_details,
.woocommerce-order-overview,
.pv-order-overview-card {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 14px !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 18px !important;
  padding: 24px !important;
  list-style: none !important;
  margin: 0 0 30px 0 !important;
  box-shadow: 0 4px 16px -4px rgba(0, 0, 0, 0.04) !important;
  position: relative !important;
}

/* Strip all core WooCommerce floats and dashed borders completely */
.woocommerce ul.order_details li,
.woocommerce-order-overview li,
.pv-overview-item {
  float: none !important;
  border: none !important;
  border-right: none !important;
  margin: 0 !important;
  padding: 14px 12px !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  word-break: break-word !important;
}

.pv-overview-label,
.woocommerce ul.order_details li {
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #64748b !important;
  line-height: 1.3 !important;
}

.pv-overview-value,
.woocommerce ul.order_details li strong {
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  display: block !important;
  line-height: 1.4 !important;
  text-transform: none !important;
}

.pv-overview-total,
.woocommerce ul.order_details li.total strong {
  color: var(--petvixa-primary, #D5AA6D) !important;
  font-size: 1.25rem !important;
  font-weight: 800 !important;
}

.pv-overview-email,
.woocommerce ul.order_details li.email strong {
  font-size: 0.95rem !important;
  word-break: break-all !important;
}

.woocommerce ul.order_details li.method,
.woocommerce-order-overview li.method,
.pv-overview-item.pv-overview-method {
  grid-column: span 2 !important;
}

.woocommerce ul.order_details li.method strong,
.pv-overview-method strong {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 0.92rem !important;
}

.woocommerce ul.order_details li.method img,
.pv-overview-method img {
  max-height: 22px !important;
  width: auto !important;
  display: inline-block !important;
}

/* Order Details Table & Address Cards */
.woocommerce-order-details,
.woocommerce-customer-details {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 18px !important;
  padding: 24px !important;
  margin-bottom: 24px !important;
  box-shadow: 0 4px 16px -4px rgba(0, 0, 0, 0.04) !important;
}

.woocommerce-order-details__title,
.woocommerce-customer-details__title {
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  margin-bottom: 16px !important;
}

.woocommerce table.order_details {
  border: none !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  width: 100% !important;
  margin-bottom: 0 !important;
}

.woocommerce table.order_details th,
.woocommerce table.order_details td {
  padding: 12px 14px !important;
  border-top: none !important;
  border-bottom: 1px solid #f1f5f9 !important;
  color: #334155 !important;
}

.woocommerce table.order_details thead th {
  background: #f8fafc !important;
  font-size: 0.78rem !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: #64748b !important;
  border-radius: 8px !important;
}

.woocommerce table.order_details tfoot tr:last-child th,
.woocommerce table.order_details tfoot tr:last-child td {
  border-bottom: none !important;
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  color: #0f172a !important;
}

.woocommerce-customer-details address {
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 12px !important;
  padding: 16px !important;
  font-style: normal !important;
  line-height: 1.6 !important;
  color: #334155 !important;
}

.pv-thankyou-footer-actions {
  text-align: center !important;
  margin: 32px 0 20px 0 !important;
}

.pv-thankyou-footer-actions .pv-btn {
  padding: 14px 32px !important;
  font-size: 1rem !important;
  border-radius: 9999px !important;
  box-shadow: 0 4px 16px rgba(213, 170, 109, 0.25) !important;
}

/* ==========================================================================
   MOBILE RESPONSIVE RULES FOR THANK YOU PAGE (<= 768px)
   ========================================================================== */
@media (max-width: 768px) {
  .pv-thankyou-container {
    margin: 20px auto 40px auto !important;
    padding: 0 12px !important;
  }

  .pv-order-status-card {
    padding: 24px 16px !important;
    border-radius: 16px !important;
    margin-bottom: 16px !important;
  }

  .pv-status-icon {
    width: 52px !important;
    height: 52px !important;
    margin-bottom: 12px !important;
  }

  .pv-status-icon svg {
    width: 26px !important;
    height: 26px !important;
  }

  .pv-status-title {
    font-size: 1.25rem !important;
  }

  .pv-status-sub {
    font-size: 0.85rem !important;
  }

  /* Clean 2-column & Full-Width Receipt Grid on Mobile */
  .woocommerce ul.order_details,
  .woocommerce-order-overview,
  .pv-order-overview-card {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    padding: 14px !important;
    border-radius: 16px !important;
    margin-bottom: 24px !important;
  }

  .woocommerce ul.order_details li,
  .woocommerce-order-overview li,
  .pv-overview-item {
    float: none !important;
    width: 100% !important;
    border-right: none !important;
    border-bottom: none !important;
    padding: 12px 10px !important;
    border-radius: 10px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
  }

  /* Force Order Number (Col 1) & Date (Col 2) on Row 1 */
  .woocommerce ul.order_details li.order,
  .woocommerce-order-overview li.order,
  .pv-overview-item.order {
    grid-column: 1 / 2 !important;
    grid-row: 1 !important;
  }

  .woocommerce ul.order_details li.date,
  .woocommerce-order-overview li.date,
  .pv-overview-item.date {
    grid-column: 2 / 3 !important;
    grid-row: 1 !important;
  }

  /* Email, Total & Payment Method on Rows 2, 3, and 4 (Full Width) */
  .woocommerce ul.order_details li.email,
  .woocommerce-order-overview li.email,
  .pv-overview-item.email {
    grid-column: 1 / -1 !important;
    grid-row: 2 !important;
  }

  .woocommerce ul.order_details li.total,
  .woocommerce-order-overview li.total,
  .pv-overview-item.total {
    grid-column: 1 / -1 !important;
    grid-row: 3 !important;
    background: #FAF5F3 !important;
    border: 1px solid rgba(213, 170, 109, 0.2) !important;
  }

  .woocommerce ul.order_details li.method,
  .woocommerce-order-overview li.method,
  .pv-overview-item.pv-overview-method {
    grid-column: 1 / -1 !important;
    grid-row: 4 !important;
  }

  .pv-overview-value,
  .woocommerce ul.order_details li strong {
    font-size: 0.95rem !important;
  }

  .pv-overview-total,
  .woocommerce ul.order_details li.total strong {
    font-size: 1.2rem !important;
  }

  .woocommerce-order-details,
  .woocommerce-customer-details {
    padding: 16px !important;
    border-radius: 16px !important;
  }

  .woocommerce table.order_details th,
  .woocommerce table.order_details td {
    padding: 10px 8px !important;
    font-size: 0.85rem !important;
  }
}






/* ==========================================================================
   28. LUXENAILS v5.2 MASTER REFINEMENTS:
   - Single Product Gallery Top Alignment with Title on PC View
   - Nail Shape Dropdown Selector + Separate Shape Chart & Size Guide Modals
   - Product Card & Single Product Non-Overlapping Discount Percentage Badge
   - Minimal Premium 3-Step Checkout & Non-Overlapping Fields
   ========================================================================== */

/* 1. Single Product Gallery & Summary Top-Level Alignment on PC View (Item 11) */
.luxe-single-product-wrap::before,
.luxe-single-product-wrap::after,
.petvixa-single-product-wrap::before,
.petvixa-single-product-wrap::after,
.woocommerce div.product.luxe-single-product-wrap::before,
.woocommerce div.product.luxe-single-product-wrap::after {
  display: none !important;
  content: none !important;
}

.woocommerce-product-gallery__trigger {
  display: none !important;
}

.woocommerce div.product.luxe-single-product-wrap,
.woocommerce div.product.petvixa-single-product-wrap,
.luxe-single-product-wrap,
.petvixa-single-product-wrap {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 48px !important;
  align-items: start !important;
  padding: 24px 0 60px !important;
  margin-top: 0 !important;
}

@media (min-width: 992px) {
  .woocommerce div.product.luxe-single-product-wrap,
  .woocommerce div.product.petvixa-single-product-wrap,
  .luxe-single-product-wrap,
  .petvixa-single-product-wrap {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 52px !important;
    align-items: start !important;
    padding: 24px 0 64px !important;
    margin-top: 0 !important;
  }

  /* Override sticky top: 100px that pushed the gallery box below the title on PC */
  .luxe-single-gallery-column,
  .petvixa-single-gallery-column,
  .woocommerce div.product div.images {
    position: relative !important;
    top: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    align-self: start !important;
  }

  .pv-single-main-image-wrap,
  .woocommerce-product-gallery__image {
    margin-top: 0 !important;
    padding: 0 !important;
    height: 500px !important;
    max-height: 500px !important;
    border-radius: 22px !important;
    overflow: hidden !important;
  }

  .pv-single-main-link {
    padding: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .pv-single-main-img,
  .woocommerce div.product div.images img,
  .woocommerce-product-gallery__image img {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    object-fit: cover !important;
    border-radius: 20px !important;
    margin: 0 !important;
  }
}

@media (max-width: 991px) {
  .woocommerce div.product.luxe-single-product-wrap,
  .woocommerce div.product.petvixa-single-product-wrap,
  .luxe-single-product-wrap,
  .petvixa-single-product-wrap {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    padding: 16px 0 40px !important;
  }
}

.luxe-single-gallery-column,
.petvixa-single-gallery-column,
.woocommerce div.product div.images,
.pv-single-gallery-box,
.luxe-single-gallery {
  margin-top: 0 !important;
  padding-top: 0 !important;
  align-self: start !important;
}

.luxe-single-summary-column,
.petvixa-single-summary-column,
.woocommerce div.product div.summary {
  margin-top: 0 !important;
  padding-top: 0 !important;
  align-self: start !important;
}

.woocommerce div.product .product_title,
.luxe-single-summary-column .product_title {
  margin-top: 0 !important;
  padding-top: 0 !important;
  line-height: 1.18 !important;
}

/* 2. Discount Percentage Badge — Floats Over Image in Both Product List & Single Product (Never Pushes Image Down) */
.luxe-product-thumb {
  position: relative !important;
  overflow: hidden !important;
}

.woocommerce ul.products li.product span.onsale,
.woocommerce-page ul.products li.product span.onsale,
.luxe-product-card span.onsale,
.luxe-product-thumb span.onsale,
.luxe-product-thumb > .nailpro-badge.onsale,
ul.products li.product .nailpro-badge.onsale,
span.nailpro-badge.onsale {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 10 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 4px 11px !important;
  border-radius: 9999px !important;
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
  box-shadow: 0 3px 10px rgba(196, 152, 91, 0.35) !important;
  border: 1px solid rgba(255, 255, 255, 0.45) !important;
  pointer-events: none !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

.pv-single-main-image-wrap .pv-badges-wrap.luxe-gallery-badges,
.pv-badges-wrap.luxe-gallery-badges {
  position: absolute !important;
  top: 14px !important;
  left: 14px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 15 !important;
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
}

.pv-badge.luxe-sale-badge,
.pv-badge-sale {
  position: static !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 5px 12px !important;
  border-radius: 9999px !important;
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  font-size: 0.74rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
  box-shadow: 0 4px 12px rgba(196, 152, 91, 0.35) !important;
  border: 1px solid rgba(255, 255, 255, 0.45) !important;
}

/* 3. Hide Any Duplicate Upper Variation/Swatch Selector on Product Page (Item 2) */
.woocommerce div.product form.cart table.variations,
.woocommerce div.product form.cart .reset_variations,
.woocommerce div.product form.cart .woo-variation-swatches,
.woocommerce div.product form.cart .cfvsw-swatches-container,
.woocommerce div.product form.cart .tawcvs-swatches,
.woocommerce div.product form.cart .thwvsf-wrapper-ul,
.luxe-single-urgency-box {
  display: none !important;
}

/* 4. Nail Shape Dropdown (Above Size) & Nail Size Picker (Items 12, 14, 15) */
.luxe-product-options-box {
  width: 100% !important;
  margin: 18px 0 16px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
}

.luxe-shape-picker-wrap,
.luxe-size-picker-wrap {
  width: 100% !important;
  margin: 0 !important;
}

.luxe-shape-select-wrap {
  position: relative !important;
  width: 100% !important;
}

.luxe-shape-select {
  width: 100% !important;
  height: 48px !important;
  padding: 0 42px 0 16px !important;
  border-radius: 10px !important;
  border: 1.5px solid #E5DFD5 !important;
  background-color: #FFFFFF !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230C0C0E' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 16px center !important;
  background-size: 14px 14px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  font-family: var(--luxe-font-sans, 'Montserrat', sans-serif) !important;
  font-size: 0.92rem !important;
  font-weight: 600 !important;
  color: #0C0C0E !important;
  cursor: pointer !important;
  outline: none !important;
  box-shadow: 0 2px 8px rgba(12, 12, 14, 0.03) !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
  box-sizing: border-box !important;
}

.luxe-shape-select:hover,
.luxe-shape-select:focus {
  border-color: #D5AA6D !important;
  box-shadow: 0 0 0 3px rgba(213, 170, 109, 0.16) !important;
}

/* 5. Separate Shape Chart Modal Grid (Items 13 & 15) */
.luxe-modal-shape-chart-grid {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-bottom: 8px !important;
}

@media (max-width: 600px) {
  .luxe-modal-shape-chart-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
}

.luxe-modal-shape-card {
  background: #FAF8F5 !important;
  border: 1.5px solid rgba(213, 170, 109, 0.35) !important;
  border-radius: 12px !important;
  padding: 10px 8px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: space-between !important;
  text-align: center !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.luxe-modal-shape-card:hover {
  border-color: #D5AA6D !important;
  background: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 16px rgba(213, 170, 109, 0.22) !important;
}

.luxe-modal-shape-card .modal-shape-mm {
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  color: #0C0C0E !important;
  background: #FFFFFF !important;
  border: 1px solid rgba(213, 170, 109, 0.45) !important;
  padding: 2px 8px !important;
  border-radius: 9999px !important;
  margin-bottom: 6px !important;
}

.luxe-modal-shape-card .modal-shape-img-wrap {
  width: 40px !important;
  height: 76px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: center !important;
  margin-bottom: 6px !important;
}

.luxe-modal-shape-card .modal-shape-img-wrap img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: top center !important;
}

.luxe-modal-shape-card .modal-shape-name {
  font-size: 0.74rem !important;
  font-weight: 700 !important;
  color: #18181B !important;
  line-height: 1.25 !important;
}

/* 6. Simple, Minimal & Premium 3-Step Checkout Bar & Non-Overlapping Checkout Fields (Items 7 & 16) */
.luxe-premium-checkout-wrap {
  padding-top: 24px !important;
  padding-bottom: 80px !important;
}

.luxe-checkout-steps.luxe-minimal-steps-bar {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  max-width: 620px !important;
  margin: 0 auto 32px auto !important;
  padding: 12px 24px !important;
  background: #FFFFFF !important;
  border: 1px solid rgba(213, 170, 109, 0.32) !important;
  border-radius: 9999px !important;
  box-shadow: 0 4px 18px rgba(12, 12, 14, 0.04) !important;
  gap: 10px !important;
}

.luxe-minimal-steps-bar .luxe-step {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-family: var(--luxe-font-sans, 'Montserrat', sans-serif) !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #A1A1AA !important;
  white-space: nowrap !important;
}

.luxe-minimal-steps-bar .luxe-step .luxe-step-num {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  border-radius: 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  background: #F4F4F5 !important;
  color: #A1A1AA !important;
  border: 1px solid #E4E4E7 !important;
}

.luxe-minimal-steps-bar .luxe-step.is-completed {
  color: #6B6865 !important;
}

.luxe-minimal-steps-bar .luxe-step.is-completed .luxe-step-num {
  background: #FAF5EE !important;
  color: #9C7238 !important;
  border-color: #D5AA6D !important;
}

.luxe-minimal-steps-bar .luxe-step.is-active {
  color: #0C0C0E !important;
}

.luxe-minimal-steps-bar .luxe-step.is-active .luxe-step-num {
  background: #0C0C0E !important;
  color: #D5AA6D !important;
  border-color: #0C0C0E !important;
  box-shadow: 0 2px 8px rgba(12, 12, 14, 0.2) !important;
}

.luxe-minimal-steps-bar .luxe-step-line {
  flex: 1 1 28px !important;
  height: 1.5px !important;
  background: #E4E4E7 !important;
  margin: 0 4px !important;
  min-width: 16px !important;
}

.luxe-minimal-steps-bar .luxe-step-line.is-completed {
  background: linear-gradient(90deg, #D5AA6D, #0C0C0E) !important;
}

@media (max-width: 576px) {
  .luxe-checkout-steps.luxe-minimal-steps-bar {
    padding: 10px 14px !important;
    gap: 6px !important;
    margin-bottom: 20px !important;
  }
  .luxe-minimal-steps-bar .luxe-step {
    font-size: 0.66rem !important;
    letter-spacing: 0.03em !important;
    gap: 5px !important;
  }
  .luxe-minimal-steps-bar .luxe-step .luxe-step-num {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    font-size: 0.64rem !important;
  }
  .luxe-minimal-steps-bar .luxe-step-line {
    min-width: 10px !important;
    margin: 0 2px !important;
  }
}

.luxe-checkout-details-card,
.luxe-checkout-summary-card {
  background: #FFFFFF !important;
  border: 1.5px solid rgba(213, 170, 109, 0.3) !important;
  border-radius: 22px !important;
  padding: 32px 28px !important;
  box-shadow: 0 10px 30px rgba(12, 12, 14, 0.05) !important;
}

/* Fix overlapping screen-reader-text labels on address_2 and floating labels */
.woocommerce-checkout .form-row label.screen-reader-text,
.woocommerce-billing-fields .form-row label.screen-reader-text,
.woocommerce-shipping-fields .form-row label.screen-reader-text {
  display: none !important;
}

.woocommerce-checkout .form-row label:not(.checkbox):not(.woocommerce-form__label-for-checkbox) {
  position: static !important;
  transform: none !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  margin: 0 0 7px 0 !important;
  padding: 0 !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  color: #18181B !important;
  white-space: normal !important;
  clip: auto !important;
  clip-path: none !important;
  overflow: visible !important;
}

.woocommerce-checkout .form-row label .optional {
  font-weight: 500 !important;
  color: #71717A !important;
  font-size: 0.78rem !important;
  margin-left: 4px !important;
}

/* Fix Select2 Country & State Dropdowns on Checkout */
.woocommerce-checkout .select2-container,
.woocommerce-checkout .select2-container--default {
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
}

.woocommerce-checkout .select2-container .select2-selection--single {
  width: 100% !important;
  height: 52px !important;
  min-height: 52px !important;
  padding: 0 38px 0 16px !important;
  border-radius: 12px !important;
  border: 1.5px solid var(--pv-border, #EDE6DE) !important;
  background-color: #FFFFFF !important;
  display: flex !important;
  align-items: center !important;
  box-sizing: border-box !important;
}

.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0 !important;
  line-height: 1.4 !important;
  color: #18181B !important;
  font-size: 0.94rem !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  width: 100% !important;
}

.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {
  height: 50px !important;
  top: 1px !important;
  right: 12px !important;
  width: 24px !important;
}

/* Prevent Payment Box Icons/Spans from overlapping input text */
#payment div.payment_box .form-row i,
#payment div.payment_box .form-row .icon,
#payment div.payment_box .form-row svg,
#payment div.payment_box .form-row span[class*="icon"],
#payment div.payment_box .form-row .input-icon {
  position: static !important;
  left: auto !important;
  bottom: auto !important;
  display: inline-block !important;
}

#payment div.payment_box input.input-text,
#payment div.payment_box input[type="text"],
#payment div.payment_box input[type="tel"],
#payment div.payment_box input[type="password"] {
  padding: 10px 16px !important;
}

#payment ul.payment_methods li {
  display: block !important;
  line-height: 1.5 !important;
}

#payment ul.payment_methods li > input[type="radio"] {
  display: inline-block !important;
  vertical-align: middle !important;
  margin: 0 8px 0 0 !important;
}

#payment ul.payment_methods li > label {
  display: inline-flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  vertical-align: middle !important;
  max-width: calc(100% - 32px) !important;
  line-height: 1.4 !important;
  white-space: normal !important;
}

/* Clean Variation Meta (Shape & Size) inside Cart & Checkout Tables */
table.woocommerce-checkout-review-order-table dl.variation,
table.shop_table.cart dl.variation,
.mini-cart-item-meta dl.variation {
  margin: 6px 0 0 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px 12px !important;
  font-size: 0.78rem !important;
  color: #6B6865 !important;
  line-height: 1.4 !important;
}

table.woocommerce-checkout-review-order-table dl.variation dt,
table.shop_table.cart dl.variation dt,
.mini-cart-item-meta dl.variation dt {
  float: none !important;
  clear: none !important;
  display: inline !important;
  font-weight: 700 !important;
  color: #18181B !important;
  margin: 0 3px 0 0 !important;
  padding: 0 !important;
}

table.woocommerce-checkout-review-order-table dl.variation dd,
table.shop_table.cart dl.variation dd,
.mini-cart-item-meta dl.variation dd {
  float: none !important;
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
}

table.woocommerce-checkout-review-order-table dl.variation dd p,
table.shop_table.cart dl.variation dd p,
.mini-cart-item-meta dl.variation dd p {
  display: inline !important;
  margin: 0 !important;
}

/* WooCommerce Block Checkout Fallback Anti-Overlap */
.wc-block-components-text-input label,
.wc-block-components-combobox label,
.wc-block-components-select label {
  position: static !important;
  transform: none !important;
  display: block !important;
  margin-bottom: 6px !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  color: #18181B !important;
}

.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-text-input input[type="number"] {
  padding: 12px 16px !important;
  height: 50px !important;
  border-radius: 12px !important;
}

.pv-checkout-guarantee .guarantee-title-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin-bottom: 8px !important;
}

.pv-checkout-guarantee .guarantee-icon {
  font-size: 1.3rem !important;
  color: #D5AA6D !important;
  line-height: 1 !important;
}

.pv-checkout-guarantee .guarantee-desc {
  font-size: 0.86rem !important;
  color: #52525B !important;
  margin: 0 !important;
  line-height: 1.55 !important;
}


/* ==========================================================================
   29. LUXENAILS v5.3 CHECKOUT, SHOPPING BAG DRAWER & MY ACCOUNT JOIN FIXES
   - 1. Checkout 3-Step Bar ("Cart", "Checkout", "Complete") 1-Line Mobile Fit
   - 2. Shopping Bag Drawer (#luxeCartDrawer) Full Isolation & Smooth Open on Checkout
   - 3. My Account "Sign In" + "Join / Create Account" Tabs & Dual Auth Portal
   ========================================================================== */

/* 1. Checkout 3-Step Bar ("Cart", "Checkout", "Complete") — Guaranteed Single-Line Mobile & PC Fit */
.luxe-checkout-steps.luxe-minimal-steps-bar {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 540px !important;
  margin: 0 auto 28px auto !important;
  padding: 11px 22px !important;
  background: #FFFFFF !important;
  border: 1.5px solid rgba(213, 170, 109, 0.35) !important;
  border-radius: 9999px !important;
  box-shadow: 0 4px 18px rgba(12, 12, 14, 0.04) !important;
  gap: 10px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

.luxe-minimal-steps-bar .luxe-step,
.luxe-minimal-steps-bar a.luxe-step {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  font-family: var(--luxe-font-sans, 'Montserrat', sans-serif) !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  color: #A1A1AA !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  flex-shrink: 0 !important;
  line-height: 1 !important;
}

.luxe-minimal-steps-bar a.luxe-step:hover {
  color: #0C0C0E !important;
}

@media (max-width: 768px) {
  .luxe-premium-checkout-wrap {
    padding-top: 12px !important;
    padding-bottom: 50px !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }

  .luxe-checkout-steps.luxe-minimal-steps-bar {
    width: 100% !important;
    max-width: 100% !important;
    padding: 9px 12px !important;
    margin: 0 auto 18px auto !important;
    gap: 6px !important;
    justify-content: space-between !important;
  }

  .luxe-minimal-steps-bar .luxe-step,
  .luxe-minimal-steps-bar a.luxe-step {
    font-size: 0.68rem !important;
    letter-spacing: 0.03em !important;
    gap: 5px !important;
  }

  .luxe-minimal-steps-bar .luxe-step .luxe-step-num {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    font-size: 0.64rem !important;
  }

  .luxe-minimal-steps-bar .luxe-step-line {
    flex: 1 1 12px !important;
    min-width: 8px !important;
    margin: 0 2px !important;
  }
}

/* 2. Shopping Bag Drawer (#luxeCartDrawer) — Complete Checkout & Mobile Isolation */
#luxeCartDrawer,
.luxe-cart-drawer,
.petvixa-cart-drawer {
  position: fixed !important;
  top: 0 !important;
  bottom: 0 !important;
  right: 0 !important;
  left: auto !important;
  width: 420px !important;
  max-width: 100% !important;
  height: 100vh !important;
  height: 100dvh !important;
  background: #FFFFFF !important;
  z-index: 100250 !important;
  box-shadow: -10px 0 36px rgba(0, 0, 0, 0.22) !important;
  display: flex !important;
  flex-direction: column !important;
  transform: translateX(105%) !important;
  transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.32s ease !important;
  visibility: hidden !important;
  pointer-events: none !important;
  overflow: hidden !important;
  overscroll-behavior: contain !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
}

#luxeCartDrawer.is-open,
.luxe-cart-drawer.is-open,
.petvixa-cart-drawer.is-open {
  right: 0 !important;
  left: auto !important;
  transform: translateX(0) !important;
  visibility: visible !important;
  pointer-events: auto !important;
  opacity: 1 !important;
}

@media (max-width: 768px) {
  #luxeCartDrawer,
  .luxe-cart-drawer,
  .petvixa-cart-drawer {
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    right: 0 !important;
  }
  #luxeCartDrawer.is-open,
  .luxe-cart-drawer.is-open,
  .petvixa-cart-drawer.is-open {
    left: 0 !important;
    right: 0 !important;
    transform: translateX(0) !important;
  }
}

#luxeCartBackdrop,
.luxe-cart-backdrop {
  position: fixed !important;
  inset: 0 !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100vh !important;
  height: 100dvh !important;
  background: rgba(12, 12, 14, 0.55) !important;
  backdrop-filter: blur(4px) !important;
  -webkit-backdrop-filter: blur(4px) !important;
  z-index: 100200 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transition: opacity 0.28s ease, visibility 0.28s ease !important;
}

#luxeCartBackdrop.is-visible,
.luxe-cart-backdrop.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* Protect Cart Drawer Internal Layout & Inputs on Checkout Page (body.woocommerce-checkout) */
#luxeCartDrawer .cart-drawer-header {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 18px 20px !important;
  border-bottom: 1px solid #EDE6DE !important;
  background: #FFFFFF !important;
  flex-shrink: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#luxeCartDrawer .cart-drawer-shipping-wrap {
  padding: 10px 20px !important;
  background: #FAF7F2 !important;
  border-bottom: 1px solid #EDE6DE !important;
  flex-shrink: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#luxeCartDrawer .cart-drawer-content-wrap,
#petvixa-cart-drawer-content {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  height: 100% !important;
  overflow: hidden !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#luxeCartDrawer .cart-drawer-body {
  flex: 1 1 auto !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 16px 20px !important;
  min-height: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
  -webkit-overflow-scrolling: touch !important;
}

#luxeCartDrawer .cart-drawer-footer {
  padding: 16px 20px calc(18px + env(safe-area-inset-bottom, 0px)) !important;
  border-top: 1px solid #EDE6DE !important;
  background: #FAF8F5 !important;
  flex-shrink: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Kill WooCommerce Core .woocommerce-page ul.cart_list pseudo-elements that break flex items on Checkout */
#luxeCartDrawer ul.woocommerce-mini-cart::before,
#luxeCartDrawer ul.woocommerce-mini-cart::after,
#luxeCartDrawer li.woocommerce-mini-cart-item::before,
#luxeCartDrawer li.woocommerce-mini-cart-item::after,
#luxeCartDrawer dl.variation::before,
#luxeCartDrawer dl.variation::after,
ul.woocommerce-mini-cart::before,
ul.woocommerce-mini-cart::after,
li.woocommerce-mini-cart-item::before,
li.woocommerce-mini-cart-item::after {
  display: none !important;
  content: none !important;
}

#luxeCartDrawer input.drawer-coupon-input,
.woocommerce-checkout #luxeCartDrawer input.drawer-coupon-input {
  height: 38px !important;
  padding: 0 12px !important;
  border-radius: 8px !important;
  font-size: 0.82rem !important;
  width: auto !important;
  flex: 1 1 auto !important;
}

/* Clean 2-Column Grid for Shape & Size Meta in Mini-Cart, Cart & Checkout Tables */
table.woocommerce-checkout-review-order-table dl.variation,
table.shop_table.cart dl.variation,
#luxeCartDrawer .mini-cart-item-meta dl.variation,
.mini-cart-item-meta dl.variation {
  margin: 4px 0 0 0 !important;
  padding: 0 !important;
  border: none !important;
  border-left: none !important;
  display: grid !important;
  grid-template-columns: auto 1fr !important;
  gap: 2px 6px !important;
  align-items: baseline !important;
  font-size: 0.76rem !important;
  color: #6B6865 !important;
  line-height: 1.35 !important;
  width: 100% !important;
}

/* 3. My Account Sign In & Join / Create Account Switcher Tabs & Cards */
.luxe-auth-tabs {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #FFFFFF !important;
  border: 1.5px solid rgba(213, 170, 109, 0.4) !important;
  border-radius: 9999px !important;
  padding: 5px !important;
  margin: 18px auto 6px auto !important;
  gap: 6px !important;
  box-shadow: 0 4px 16px rgba(12, 12, 14, 0.05) !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.luxe-auth-tab-btn {
  padding: 10px 22px !important;
  border-radius: 9999px !important;
  border: none !important;
  background: transparent !important;
  color: #52525B !important;
  font-family: var(--luxe-font-sans, 'Montserrat', sans-serif) !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all 0.22s ease !important;
  white-space: nowrap !important;
}

.luxe-auth-tab-btn:hover {
  color: #0C0C0E !important;
}

.luxe-auth-tab-btn.is-active {
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  box-shadow: 0 3px 12px rgba(196, 152, 91, 0.35) !important;
}

.luxe-auth-switch-prompt {
  margin-top: 18px !important;
  padding-top: 14px !important;
  border-top: 1px dashed #E5DFD5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  flex-wrap: wrap !important;
  font-size: 0.85rem !important;
  color: #6B6865 !important;
}

.luxe-auth-switch-link {
  background: none !important;
  border: none !important;
  padding: 0 !important;
  color: #B08244 !important;
  font-weight: 700 !important;
  font-size: 0.85rem !important;
  cursor: pointer !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

.luxe-auth-switch-link:hover {
  color: #0C0C0E !important;
}

@media (min-width: 769px) {
  #luxeAuthPortal .pv-auth-card.is-active-pane {
    border-color: #D5AA6D !important;
    box-shadow: 0 10px 30px rgba(213, 170, 109, 0.16) !important;
  }
}

@media (max-width: 768px) {
  .luxe-auth-tabs {
    display: flex !important;
    width: 100% !important;
    max-width: 380px !important;
  }

  .luxe-auth-tab-btn {
    flex: 1 1 50% !important;
    padding: 10px 12px !important;
    font-size: 0.75rem !important;
    text-align: center !important;
  }

  #luxeAuthPortal .pv-auth-card {
    display: none !important;
  }

  #luxeAuthPortal .pv-auth-card.is-active-pane {
    display: block !important;
  }
}


/* ==========================================================================
   30. LUXENAILS v5.5 COMPLETE MASTER FIXES (ALL 9 USER ITEMS)
   1. Checkout Page Bag Drawer (#luxeCartDrawer) & Cart Page (/cart) Full Mobile/PC Fix
   2. My Account Sign In & Join VIP Card Ultra-Luxury Redesign (Zero Broken Text)
   3. Footer Social Media Icons Removed
   4. Top Announcement Bar Continuous Auto-Playing Marquee Ticker (Mobile & PC)
   5. Uncropped / Non-Zoomed Product Images (object-fit: contain on Cards & Single Product)
   6. Default WooCommerce Category Included in All Category Grids & Stories
   7. Ultra-Premium Thank You / Order Received Page (Mobile & PC Aligned Layout)
   8. Product Page Default Size Pre-Selection Sync
   9. Haute Couture Promotional Offer / Discount Popup Modal
   ========================================================================== */

/* --- 1. Top Announcement Continuous Auto-Play Marquee Ticker (Item 4) --- */
.luxe-top-announcement-bar {
  background: #08080A !important;
  border-bottom: 1px solid rgba(213, 170, 109, 0.28) !important;
  color: var(--luxe-gold, #D5AA6D) !important;
  font-family: var(--luxe-font-sans, "Montserrat", sans-serif) !important;
  font-size: 0.74rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 8px 0 !important;
  width: 100% !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  position: relative !important;
  z-index: 10001 !important;
}

.luxe-ticker-viewport {
  width: 100% !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
}

.luxe-ticker-track {
  display: inline-flex !important;
  align-items: center !important;
  white-space: nowrap !important;
  will-change: transform !important;
  animation: luxeTickerMarquee 28s linear infinite !important;
}

.luxe-top-announcement-bar:hover .luxe-ticker-track {
  animation-play-state: paused !important;
}

.luxe-ticker-item {
  display: inline-block !important;
  padding-right: 56px !important;
  white-space: nowrap !important;
  color: #E5C396 !important;
  line-height: 1.35 !important;
}

@keyframes luxeTickerMarquee {
  0% {
    transform: translate3d(0, 0, 0);
  }
  100% {
    transform: translate3d(-50%, 0, 0);
  }
}

@media (max-width: 768px) {
  .luxe-top-announcement-bar {
    padding: 7px 0 !important;
    font-size: 0.7rem !important;
    letter-spacing: 0.05em !important;
    text-overflow: clip !important;
  }
  .luxe-ticker-track {
    animation-duration: 22s !important;
  }
  .luxe-ticker-item {
    padding-right: 40px !important;
  }
}

/* --- 2. Hide Footer Social Media Links Completely (Item 3) --- */
.luxe-site-footer .luxe-social-links,
.luxe-social-links {
  display: none !important;
}

/* --- 3. Product Images: Uncropped Full View (Zero Unwanted Zoom-In, Item 5) --- */
.luxe-product-thumb,
.luxe-product-card .luxe-product-thumb {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  background: #FAF8F5 !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.luxe-product-thumb a.luxe-thumb-link,
.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  padding: 6px !important;
  box-sizing: border-box !important;
}

.luxe-product-thumb img,
.luxe-thumb-link img,
.luxe-product-img,
.woocommerce ul.products li.product.luxe-product-card img,
.woocommerce ul.products li.product.luxe-product-card .luxe-product-thumb img,
.woocommerce ul.products li.product.luxe-product-card .luxe-thumb-link img,
.woocommerce ul.products li.product.luxe-product-card img.luxe-product-img,
.woocommerce ul.products li.product.luxe-product-card img.wp-post-image,
.woocommerce ul.products li.product img.wp-post-image,
.woocommerce ul.products li.product img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #FAF8F5 !important;
  transform: none !important;
  transition: opacity 0.25s ease !important;
  margin: 0 !important;
  padding: 0 !important;
}

.luxe-card-inner:hover .luxe-product-img,
.woocommerce ul.products li.product:hover img {
  transform: none !important;
}

/* Single Product Page Main Image: Uncropped Contain View (Zero Zoom-In) */
.pv-single-main-image-wrap,
.woocommerce-product-gallery__image {
  background: #FAF8F5 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}

.pv-single-main-link {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 8px !important;
  box-sizing: border-box !important;
}

.pv-single-main-img,
.pv-single-main-image-wrap img,
.woocommerce div.product div.images img,
.woocommerce-product-gallery__image img {
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #FAF8F5 !important;
  transform: none !important;
  border-radius: 16px !important;
  margin: 0 auto !important;
}

/* --- 4. Shopping Bag Drawer (#luxeCartDrawer) & Cart Page (/cart) Complete Fix (Item 1) --- */
#luxeCartDrawer,
.luxe-cart-drawer,
.petvixa-cart-drawer {
  position: fixed !important;
  top: 0 !important;
  bottom: 0 !important;
  right: 0 !important;
  left: auto !important;
  width: 420px !important;
  max-width: 100% !important;
  height: 100vh !important;
  height: 100dvh !important;
  background: #FFFFFF !important;
  z-index: 100250 !important;
  box-shadow: -10px 0 36px rgba(0, 0, 0, 0.22) !important;
  display: flex !important;
  flex-direction: column !important;
  transform: translate3d(105%, 0, 0) !important;
  transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.25s ease, visibility 0.32s ease !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  overflow: hidden !important;
  overscroll-behavior: contain !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 0 !important;
}

#luxeCartDrawer.is-open,
.luxe-cart-drawer.is-open,
.petvixa-cart-drawer.is-open {
  right: 0 !important;
  left: auto !important;
  transform: translate3d(0, 0, 0) !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

@media (max-width: 768px) {
  #luxeCartDrawer,
  .luxe-cart-drawer,
  .petvixa-cart-drawer {
    width: 100% !important;
    max-width: 100% !important;
    left: 0 !important;
    right: 0 !important;
  }
  #luxeCartDrawer.is-open,
  .luxe-cart-drawer.is-open,
  .petvixa-cart-drawer.is-open {
    left: 0 !important;
    right: 0 !important;
    transform: translate3d(0, 0, 0) !important;
  }
}

#luxeCartDrawer .cart-drawer-content-wrap,
#petvixa-cart-drawer-content,
#luxeCartDrawer .widget_shopping_cart_content {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 0% !important;
  min-height: 0 !important;
  max-height: 100% !important;
  height: auto !important;
  overflow: hidden !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#luxeCartDrawer .cart-drawer-body {
  flex: 1 1 0% !important;
  min-height: 0 !important;
  height: auto !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  padding: 16px 20px !important;
  width: 100% !important;
  box-sizing: border-box !important;
  -webkit-overflow-scrolling: touch !important;
}

#luxeCartDrawer .cart-drawer-footer {
  padding: 14px 20px calc(16px + env(safe-area-inset-bottom, 0px)) !important;
  border-top: 1px solid #EDE6DE !important;
  background: #FAF8F5 !important;
  flex-shrink: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Mobile Cart Page (/cart) Table Full-Width Fix (Prevents 6-column table squishing) */
@media (max-width: 768px) {
  table.shop_table.cart,
  table.shop_table.cart tbody,
  table.shop_table.cart tfoot,
  table.shop_table.cart tr:not(.cart_item) {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  table.shop_table.cart td.actions {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 14px 0 0 0 !important;
    box-sizing: border-box !important;
  }

  table.shop_table.cart tbody tr.woocommerce-cart-form__cart-item,
  table.shop_table.cart tbody tr.cart_item {
    display: grid !important;
    grid-template-columns: 72px minmax(0, 1fr) auto !important;
    grid-template-rows: auto auto !important;
    gap: 8px 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 16px 0 !important;
    border-bottom: 1px solid #EDE6DE !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }
}

/* --- 5. My Account Sign In & Join VIP Card Luxury Styling (Item 2) --- */
#luxeAuthPortal.pv-auth-wrapper {
  max-width: 980px !important;
  margin: 0 auto !important;
  padding: 16px 0 50px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#luxeAuthPortal .luxe-auth-cards-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 28px !important;
  align-items: stretch !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#luxeAuthPortal .luxe-premium-auth-card {
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  background: #FFFFFF !important;
  border: 1.5px solid rgba(213, 170, 109, 0.35) !important;
  border-radius: 22px !important;
  padding: 32px 28px !important;
  box-shadow: 0 10px 30px rgba(12, 12, 14, 0.05) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

#luxeAuthPortal .luxe-join-vip-card {
  background: linear-gradient(180deg, #FFFFFF 0%, #FDFBF7 100%) !important;
  border-color: rgba(213, 170, 109, 0.55) !important;
}

/* Fix WooCommerce Privacy Policy & Password Hint inside My Account Join Card */
#luxeAuthPortal .woocommerce-privacy-policy-text {
  display: block !important;
  visibility: visible !important;
  height: auto !important;
  font-size: 0.78rem !important;
  color: #71717A !important;
  line-height: 1.5 !important;
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
}

#luxeAuthPortal .woocommerce-password-strength {
  margin: 8px 0 4px !important;
  padding: 6px 12px !important;
  border-radius: 8px !important;
  font-size: 0.78rem !important;
  font-weight: 700 !important;
}

#luxeAuthPortal .woocommerce-password-hint {
  display: block !important;
  font-size: 0.75rem !important;
  color: #71717A !important;
  line-height: 1.45 !important;
  margin: 4px 0 12px !important;
}

@media (max-width: 820px) {
  #luxeAuthPortal .luxe-auth-cards-grid {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  #luxeAuthPortal .luxe-premium-auth-card {
    display: block !important;
    padding: 24px 18px !important;
    border-radius: 18px !important;
  }
}

/* --- 6. Thank You / Order Received Page Luxury Overhaul (Item 7) --- */
.luxe-premium-thankyou-wrap {
  max-width: 920px !important;
  margin: 24px auto 70px auto !important;
  padding: 0 16px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.luxe-thankyou-hero-card {
  background: linear-gradient(145deg, #141418 0%, #0C0C0E 100%) !important;
  border: 1.5px solid rgba(213, 170, 109, 0.45) !important;
  border-top: 4px solid #D5AA6D !important;
  border-radius: 24px !important;
  padding: 36px 28px !important;
  text-align: center !important;
  margin-bottom: 24px !important;
  box-shadow: 0 16px 40px rgba(12, 12, 14, 0.14) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  box-sizing: border-box !important;
}

.luxe-thankyou-check-badge {
  width: 60px !important;
  height: 60px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-bottom: 14px !important;
  box-shadow: 0 0 0 8px rgba(213, 170, 109, 0.16) !important;
}

.luxe-thankyou-pill-badge {
  display: inline-block !important;
  font-size: 0.72rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #D5AA6D !important;
  background: rgba(213, 170, 109, 0.14) !important;
  border: 1px solid rgba(213, 170, 109, 0.4) !important;
  padding: 5px 14px !important;
  border-radius: 9999px !important;
  margin-bottom: 12px !important;
}

.luxe-thankyou-main-title {
  font-family: var(--luxe-font-serif, "Playfair Display", Georgia, serif) !important;
  font-size: clamp(1.5rem, 3vw, 2.1rem) !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  margin: 0 0 10px 0 !important;
  line-height: 1.25 !important;
}

.luxe-thankyou-sub {
  font-size: 0.92rem !important;
  color: #D4D4D8 !important;
  margin: 0 !important;
  line-height: 1.55 !important;
  max-width: 560px !important;
  word-break: break-word !important;
}

.luxe-thankyou-sub strong {
  color: #E5C396 !important;
}

/* 4-Box Balanced Receipt Summary Grid */
.luxe-receipt-summary-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 0 0 24px 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.luxe-receipt-stat-box {
  background: #FFFFFF !important;
  border: 1.5px solid rgba(213, 170, 109, 0.3) !important;
  border-radius: 16px !important;
  padding: 18px 16px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  gap: 6px !important;
  box-shadow: 0 4px 16px rgba(12, 12, 14, 0.04) !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
}

.luxe-receipt-stat-box.is-gold-highlight {
  background: #FAF5EE !important;
  border-color: #D5AA6D !important;
}

.luxe-receipt-stat-box .receipt-stat-label {
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: #71717A !important;
  line-height: 1.2 !important;
}

.luxe-receipt-stat-box .receipt-stat-value {
  font-size: 1.02rem !important;
  font-weight: 800 !important;
  color: #0C0C0E !important;
  line-height: 1.35 !important;
  word-break: break-word !important;
}

.luxe-receipt-stat-box .receipt-total-val,
.luxe-receipt-stat-box .receipt-total-val .amount {
  color: #B08244 !important;
  font-size: 1.18rem !important;
}

/* Order Details Table & Item Meta Alignment on Thank You Page */
.woocommerce-order-details,
.woocommerce-customer-details {
  background: #FFFFFF !important;
  border: 1.5px solid rgba(213, 170, 109, 0.3) !important;
  border-radius: 20px !important;
  padding: 28px 24px !important;
  margin-bottom: 24px !important;
  box-shadow: 0 6px 24px rgba(12, 12, 14, 0.04) !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.woocommerce-order-details__title,
.woocommerce-customer-details .woocommerce-column__title {
  font-family: var(--luxe-font-serif, "Playfair Display", Georgia, serif) !important;
  font-size: 1.35rem !important;
  font-weight: 700 !important;
  color: #0C0C0E !important;
  margin: 0 0 18px 0 !important;
  padding-bottom: 12px !important;
  border-bottom: 1.5px solid #F0EAE1 !important;
  line-height: 1.3 !important;
}

.woocommerce table.shop_table.order_details,
table.woocommerce-table--order-details {
  width: 100% !important;
  border-collapse: collapse !important;
  border: none !important;
  margin: 0 !important;
  table-layout: auto !important;
}

.woocommerce table.shop_table.order_details th,
.woocommerce table.shop_table.order_details td,
table.woocommerce-table--order-details th,
table.woocommerce-table--order-details td {
  padding: 14px 10px !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  border-bottom: 1px solid #EFEAE3 !important;
  vertical-align: middle !important;
  font-size: 0.9rem !important;
  color: #18181B !important;
  line-height: 1.45 !important;
}

.woocommerce table.shop_table.order_details th:first-child,
.woocommerce table.shop_table.order_details td:first-child,
table.woocommerce-table--order-details th:first-child,
table.woocommerce-table--order-details td:first-child {
  text-align: left !important;
  padding-left: 4px !important;
}

.woocommerce table.shop_table.order_details th:last-child,
.woocommerce table.shop_table.order_details td:last-child,
table.woocommerce-table--order-details th:last-child,
table.woocommerce-table--order-details td:last-child {
  text-align: right !important;
  white-space: nowrap !important;
  font-weight: 700 !important;
  padding-right: 4px !important;
}

/* Fix wc-item-meta (Nail Shape & Nail Size) inside Thank You Order Table */
ul.wc-item-meta {
  list-style: none !important;
  margin: 8px 0 0 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

ul.wc-item-meta li {
  display: flex !important;
  align-items: baseline !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  font-size: 0.8rem !important;
  color: #6B6865 !important;
  line-height: 1.4 !important;
  margin: 0 !important;
  padding: 0 !important;
}

ul.wc-item-meta li strong.wc-item-meta-label {
  font-weight: 700 !important;
  color: #0C0C0E !important;
  display: inline !important;
  float: none !important;
}

ul.wc-item-meta li p {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #9C7238 !important;
  font-weight: 600 !important;
}

/* Customer Billing & Shipping Address Columns on Thank You Page */
.woocommerce-customer-details .woocommerce-columns--addresses,
.woocommerce-customer-details .col2-set.addresses {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 20px !important;
  width: 100% !important;
}

.woocommerce-customer-details address {
  background: #FAF8F5 !important;
  border: 1px solid #E5DFD5 !important;
  border-radius: 14px !important;
  padding: 18px !important;
  font-style: normal !important;
  font-size: 0.88rem !important;
  line-height: 1.65 !important;
  color: #3F3F46 !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

@media (max-width: 768px) {
  .luxe-premium-thankyou-wrap {
    margin: 14px auto 50px auto !important;
    padding: 0 10px !important;
  }

  .luxe-thankyou-hero-card {
    padding: 26px 18px !important;
    border-radius: 18px !important;
    margin-bottom: 16px !important;
  }

  .luxe-receipt-summary-grid {
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    margin-bottom: 18px !important;
  }

  .luxe-receipt-stat-box {
    padding: 14px 12px !important;
    border-radius: 14px !important;
  }

  .luxe-receipt-stat-box .receipt-stat-value {
    font-size: 0.92rem !important;
  }

  .woocommerce-order-details,
  .woocommerce-customer-details {
    padding: 20px 14px !important;
    border-radius: 16px !important;
    margin-bottom: 16px !important;
  }

  .woocommerce-customer-details .woocommerce-columns--addresses,
  .woocommerce-customer-details .col2-set.addresses {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }
}

/* --- 7. Haute Couture Promotional Offer / Discount Popup Modal (Item 9) --- */
#luxePromoPopupModal.luxe-promo-popup-overlay {
  z-index: 100300 !important;
  padding: 16px !important;
}

.luxe-promo-popup-box {
  max-width: 480px !important;
  width: 100% !important;
  background: linear-gradient(165deg, #16161B 0%, #0C0C0E 100%) !important;
  border: 1.5px solid rgba(213, 170, 109, 0.55) !important;
  border-radius: 26px !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-shadow: 0 28px 70px rgba(0, 0, 0, 0.65), 0 0 35px rgba(213, 170, 109, 0.18) !important;
  color: #FAF5EE !important;
  text-align: center !important;
  position: relative !important;
}

.luxe-promo-popup-close {
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(213, 170, 109, 0.4) !important;
  color: #E5C396 !important;
  font-size: 1.35rem !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 25 !important;
}

.luxe-promo-popup-close:hover {
  background: #D5AA6D !important;
  color: #0C0C0E !important;
}

.luxe-promo-popup-media {
  width: 100% !important;
  max-height: 210px !important;
  overflow: hidden !important;
  border-bottom: 1px solid rgba(213, 170, 109, 0.3) !important;
}

.luxe-promo-popup-media img {
  width: 100% !important;
  height: 210px !important;
  object-fit: cover !important;
  display: block !important;
}

.luxe-promo-popup-content {
  padding: 36px 28px 28px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

.luxe-promo-popup-badge {
  display: inline-block !important;
  font-size: 0.7rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  color: #0C0C0E !important;
  background: linear-gradient(135deg, #E5C396 0%, #D5AA6D 100%) !important;
  padding: 5px 16px !important;
  border-radius: 9999px !important;
  margin-bottom: 14px !important;
  box-shadow: 0 4px 15px rgba(213, 170, 109, 0.3) !important;
}

.luxe-promo-popup-title {
  font-family: var(--luxe-font-serif, "Playfair Display", Georgia, serif) !important;
  font-size: clamp(1.6rem, 3.5vw, 2.15rem) !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  margin: 0 0 6px 0 !important;
  line-height: 1.2 !important;
}

.luxe-promo-popup-subtitle {
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #D5AA6D !important;
  margin: 0 0 14px 0 !important;
}

.luxe-promo-popup-desc {
  font-size: 0.9rem !important;
  color: #D4D4D8 !important;
  line-height: 1.6 !important;
  margin: 0 0 20px 0 !important;
}

.luxe-promo-code-wrap {
  width: 100% !important;
  margin-bottom: 20px !important;
}

.luxe-promo-code-wrap .promo-code-label {
  display: block !important;
  font-size: 0.68rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.1em !important;
  color: #A1A1AA !important;
  margin-bottom: 6px !important;
}

.luxe-promo-code-pill {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  background: rgba(255, 255, 255, 0.06) !important;
  border: 1.5px dashed #D5AA6D !important;
  border-radius: 12px !important;
  padding: 10px 14px !important;
  gap: 10px !important;
}

.luxe-promo-code-pill strong {
  font-size: 1.15rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.12em !important;
  color: #E5C396 !important;
}

.luxe-popup-copy-btn {
  background: #D5AA6D !important;
  color: #0C0C0E !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 7px 14px !important;
  font-size: 0.74rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.luxe-popup-copy-btn:hover {
  background: #FFFFFF !important;
  color: #0C0C0E !important;
}

.luxe-promo-popup-cta {
  width: 100% !important;
  height: 50px !important;
  border-radius: 9999px !important;
  background: linear-gradient(135deg, #DEB887 0%, #C4985B 100%) !important;
  color: #0C0C0E !important;
  font-size: 0.88rem !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  text-decoration: none !important;
  box-shadow: 0 8px 24px rgba(196, 152, 91, 0.4) !important;
  margin-bottom: 12px !important;
}

.luxe-promo-popup-nothanks {
  background: none !important;
  border: none !important;
  color: #A1A1AA !important;
  font-size: 0.78rem !important;
  text-decoration: underline !important;
  cursor: pointer !important;
  padding: 4px !important;
}

.luxe-promo-popup-nothanks:hover {
  color: #FFFFFF !important;
}

/* ==========================================================================
   v5.6 Thank You Page: Top OTP Verification Slot & Hide Gateway Disclaimer
   ========================================================================== */
#luxeThankyouOtpTopSlot,
.luxe-thankyou-otp-top-wrap {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 auto 24px auto !important;
    order: -10 !important;
}
#luxeThankyouOtpTopSlot:empty,
.luxe-thankyou-otp-top-wrap:empty {
    display: none !important;
    margin: 0 !important;
}
.woocommerce-order .otp-thankyou-card,
#luxeThankyouOtpTopSlot .otp-thankyou-card,
.luxe-thankyou-otp-top-wrap .otp-thankyou-card {
    margin: 0 auto !important;
    max-width: 600px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}
.wtt-thankyou-disclaimer,
.wtt-thankyou-disclaimer .wtt-disclaimer-btn,
.woocommerce-order-received .wtt-thankyou-disclaimer,
.woocommerce-order-received .wtt-disclaimer-btn,
.luxe-premium-thankyou-wrap .wtt-thankyou-disclaimer,
.luxe-premium-thankyou-wrap .wtt-disclaimer-btn {
    display: none !important;
    visibility: hidden !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: none !important;
    pointer-events: none !important;
}
/* ==========================================================================
   v6.1 Review Image Upload, Product Gallery Video & Thank You Inline Payment
   ========================================================================== */

/* 1. Thank You Page Inline Payment Method ("Credit/Debit Card") */
.luxe-receipt-stat-box .luxe-inline-payment-val,
.woocommerce-order-details tfoot .luxe-inline-payment-val {
  white-space: nowrap !important;
  display: inline-block !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
}

/* 2. Customer Review Photo Upload Dropzone & Preview */
.luxe-review-photo-upload-wrap {
  margin: 16px 0 18px 0 !important;
  width: 100% !important;
}

.luxe-review-upload-label {
  display: block !important;
  font-size: 0.85rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: #0C0C0E !important;
  margin-bottom: 8px !important;
}

.luxe-review-photo-dropzone {
  border: 1.5px dashed #D5AA6D !important;
  background: #FAF8F5 !important;
  border-radius: 14px !important;
  padding: 16px 18px !important;
  cursor: pointer !important;
  transition: all 0.22s ease !important;
  text-align: center !important;
}

.luxe-review-photo-dropzone:hover {
  background: #F5EFE6 !important;
  border-color: #9C7238 !important;
}

.luxe-review-dropzone-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
}

.luxe-review-camera-icon {
  font-size: 1.6rem !important;
  line-height: 1 !important;
}

.luxe-review-dropzone-text {
  display: flex !important;
  flex-direction: column !important;
  text-align: left !important;
}

.luxe-review-dropzone-text strong {
  font-size: 0.92rem !important;
  color: #0C0C0E !important;
  font-weight: 700 !important;
}

.luxe-review-dropzone-text span {
  font-size: 0.78rem !important;
  color: #71717A !important;
}

.luxe-review-upload-preview {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 10px !important;
  justify-content: center !important;
}

.luxe-review-upload-preview:empty {
  display: none !important;
  margin-top: 0 !important;
}

.luxe-review-preview-item {
  width: 64px !important;
  height: 64px !important;
  border-radius: 10px !important;
  overflow: hidden !important;
  border: 1.5px solid #D5AA6D !important;
  background: #fff !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08) !important;
}

.luxe-review-preview-item img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* 3. Uploaded Customer Photos Grid inside Review Item */
.luxe-review-images-grid {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 12px !important;
}

.luxe-review-photo-item {
  width: 78px !important;
  height: 78px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  border: 1.5px solid rgba(213, 170, 109, 0.45) !important;
  display: block !important;
  background: #FAF8F5 !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.luxe-review-photo-item:hover {
  transform: translateY(-2px) scale(1.03) !important;
  border-color: #D5AA6D !important;
  box-shadow: 0 6px 14px rgba(12, 12, 14, 0.12) !important;
}

.luxe-review-photo-item img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}

/* 4. Fullscreen Review Photo Lightbox Modal */
.luxe-review-lightbox-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  background: rgba(12, 12, 14, 0.88) !important;
  backdrop-filter: blur(8px) !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
}

.luxe-review-lightbox-modal img {
  max-width: 92vw !important;
  max-height: 86vh !important;
  border-radius: 16px !important;
  border: 2px solid #D5AA6D !important;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5) !important;
  object-fit: contain !important;
}

.luxe-review-lightbox-close {
  position: absolute !important;
  top: 20px !important;
  right: 24px !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: #0C0C0E !important;
  color: #E5C396 !important;
  border: 1.5px solid #D5AA6D !important;
  font-size: 26px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
/* ==========================================================================
   v6.2 Luxury Custom Product Video Player, Fullscreen Lightbox & Hide Sticky Buy Bar
   ========================================================================== */

/* 1. Permanently hide bottom sticky mobile Buy Now bar on product pages */
.luxe-sticky-mobile-buy-bar,
#luxeStickyMobileBuyBar {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  pointer-events: none !important;
}

/* 2. Strictly hide image when video is active (and vice versa) so zero screenshot shows alongside video */
.is-hidden-media,
#pvSingleMainImageWrap .pv-single-main-link.is-hidden-media,
#pvSingleMainImageWrap.is-video-mode #pvSingleMainLink,
#pvSingleMainImageWrap:not(.is-video-mode) #pvSingleMainVideoWrap {
  display: none !important;
}

/* 3. Luxury Custom Video Player Stage inside Single Product Gallery */
.pv-single-main-video-wrap {
  width: 100% !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px !important;
  box-sizing: border-box !important;
}

.luxe-custom-video-player {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 320px !important;
  max-height: 520px !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  background: #0C0C0E !important;
  border: 1.5px solid rgba(213, 170, 109, 0.42) !important;
  box-shadow: 0 12px 32px rgba(12, 12, 14, 0.16) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.pv-single-main-video {
  width: 100% !important;
  height: 100% !important;
  max-height: 516px !important;
  object-fit: contain !important;
  display: block !important;
  background: #0C0C0E !important;
  cursor: pointer !important;
}

/* Center Glass Play Button Overlay */
.luxe-video-center-play {
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: 64px !important;
  height: 64px !important;
  border-radius: 50% !important;
  background: rgba(12, 12, 14, 0.78) !important;
  backdrop-filter: blur(10px) !important;
  -webkit-backdrop-filter: blur(10px) !important;
  border: 2px solid #D5AA6D !important;
  color: #E5C396 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 4 !important;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.45) !important;
  transition: all 0.24s ease !important;
  padding: 0 !important;
}

.luxe-video-center-play .play-icon-triangle {
  font-size: 22px !important;
  line-height: 1 !important;
  margin-left: 4px !important;
}

.luxe-video-center-play:hover {
  transform: translate(-50%, -50%) scale(1.08) !important;
  background: #0C0C0E !important;
  color: #FFFFFF !important;
}

.luxe-custom-video-player.is-playing .luxe-video-center-play {
  opacity: 0 !important;
  pointer-events: none !important;
  transform: translate(-50%, -50%) scale(0.85) !important;
}

/* Bottom Luxury Control Bar */
.luxe-video-controls-bar {
  position: absolute !important;
  left: 12px !important;
  right: 12px !important;
  bottom: 12px !important;
  height: 42px !important;
  padding: 0 12px !important;
  border-radius: 12px !important;
  background: rgba(12, 12, 14, 0.82) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid rgba(213, 170, 109, 0.38) !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  z-index: 5 !important;
}

.luxe-vctrl-btn {
  background: transparent !important;
  border: none !important;
  color: #E5C396 !important;
  font-size: 14px !important;
  width: 28px !important;
  height: 28px !important;
  padding: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  border-radius: 6px !important;
  transition: background 0.18s ease, color 0.18s ease !important;
}

.luxe-vctrl-btn:hover {
  background: rgba(213, 170, 109, 0.2) !important;
  color: #FFFFFF !important;
}

.luxe-video-progress-track {
  flex: 1 !important;
  height: 6px !important;
  background: rgba(255, 255, 255, 0.22) !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  cursor: pointer !important;
  position: relative !important;
}

.luxe-video-progress-fill {
  width: 0%;
  height: 100% !important;
  background: linear-gradient(90deg, #D5AA6D 0%, #E5C396 100%) !important;
  border-radius: 999px !important;
  transition: width 0.1s linear !important;
}

.luxe-video-time-label {
  font-size: 11.5px !important;
  font-weight: 600 !important;
  color: rgba(255, 255, 255, 0.88) !important;
  font-family: monospace !important;
  white-space: nowrap !important;
}

/* 4. Fullscreen Luxury Video & Image Lightbox Modal */
.luxe-media-lightbox-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 999999 !important;
  background: rgba(12, 12, 14, 0.92) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
  box-sizing: border-box !important;
}

.luxe-media-lightbox-inner {
  max-width: 94vw !important;
  max-height: 88vh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.luxe-lightbox-video,
.luxe-lightbox-image {
  max-width: 92vw !important;
  max-height: 86vh !important;
  width: auto !important;
  height: auto !important;
  border-radius: 16px !important;
  border: 2px solid #D5AA6D !important;
  background: #0C0C0E !important;
  box-shadow: 0 24px 64px rgba(0, 0, 0, 0.65) !important;
  object-fit: contain !important;
}

.luxe-media-lightbox-close {
  position: absolute !important;
  top: 20px !important;
  right: 24px !important;
  width: 46px !important;
  height: 46px !important;
  border-radius: 50% !important;
  background: #0C0C0E !important;
  color: #E5C396 !important;
  border: 1.5px solid #D5AA6D !important;
  font-size: 28px !important;
  line-height: 1 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 10 !important;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.4) !important;
}

.luxe-media-lightbox-close:hover {
  background: #D5AA6D !important;
  color: #0C0C0E !important;
}
/* ==========================================================================
   v6.3 Wide, Open & Spacious Checkout Boxes Overhaul ("Khuly Khuly" Layout)
   ========================================================================== */

/* 1. Expand Checkout Outer Container Width & Remove Double Nested Container Padding */
body.woocommerce-checkout .site-main > .luxe-container,
body.woocommerce-checkout .site-main > .pv-container,
body.woocommerce-checkout .pv-checkout-container,
body.woocommerce-checkout .luxe-premium-checkout-wrap {
  width: 100% !important;
  max-width: 1560px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout .site-main > .luxe-container {
  padding-left: 24px !important;
  padding-right: 24px !important;
}

body.woocommerce-checkout .pv-checkout-container.luxe-premium-checkout-wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* 2. Wide, Balanced 2-Column Checkout Grid with Generous Proportions */
body.woocommerce-checkout .petvixa-checkout-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.32fr) minmax(480px, 1.05fr) !important;
  gap: 36px !important;
  align-items: start !important;
  width: 100% !important;
  max-width: 100% !important;
}

@media (max-width: 1180px) {
  body.woocommerce-checkout .petvixa-checkout-layout {
    grid-template-columns: minmax(0, 1.2fr) minmax(420px, 1fr) !important;
    gap: 26px !important;
  }
}

@media (max-width: 991px) {
  body.woocommerce-checkout .petvixa-checkout-layout {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
}

/* 3. Spacious, Open Checkout Main Cards (Billing/Shipping Card + Order Summary Card) */
body.woocommerce-checkout .pv-checkout-card,
body.woocommerce-checkout .luxe-checkout-details-card,
body.woocommerce-checkout .luxe-checkout-summary-card {
  width: 100% !important;
  max-width: 100% !important;
  background: #FFFFFF !important;
  border: 1.5px solid rgba(213, 170, 109, 0.34) !important;
  border-radius: 24px !important;
  padding: 40px 42px !important;
  box-shadow: 0 14px 38px rgba(12, 12, 14, 0.05) !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout .luxe-checkout-sidebar-col {
  width: 100% !important;
  max-width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 22px !important;
}

/* 4. Open & Spacious Form Fields Grid inside Billing & Shipping */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-address-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px 26px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Keep key fields full-width so no field ever feels cramped */
body.woocommerce-checkout #billing_email_field,
body.woocommerce-checkout #billing_phone_field,
body.woocommerce-checkout #billing_company_field,
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #billing_state_field,
body.woocommerce-checkout #shipping_company_field,
body.woocommerce-checkout #shipping_country_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field,
body.woocommerce-checkout #shipping_state_field {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* 5. Taller, Wider, Airy Input Boxes & Dropdowns on Checkout */
body.woocommerce-checkout .woocommerce-checkout input.input-text,
body.woocommerce-checkout .woocommerce-checkout select,
body.woocommerce-checkout .select2-container .select2-selection--single {
  width: 100% !important;
  max-width: 100% !important;
  height: 56px !important;
  min-height: 56px !important;
  padding: 14px 20px !important;
  border-radius: 14px !important;
  border: 1.5px solid #E2DCD3 !important;
  background-color: #FAF9F6 !important;
  font-size: 0.98rem !important;
  font-weight: 500 !important;
  color: #0C0C0E !important;
  box-sizing: border-box !important;
  transition: all 0.2s ease !important;
}

body.woocommerce-checkout .woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout .woocommerce-checkout select:focus,
body.woocommerce-checkout .woocommerce-checkout textarea:focus,
body.woocommerce-checkout .select2-container--open .select2-selection--single {
  background-color: #FFFFFF !important;
  border-color: #D5AA6D !important;
  box-shadow: 0 0 0 4px rgba(213, 170, 109, 0.15) !important;
}

body.woocommerce-checkout .woocommerce-checkout .form-row label:not(.checkbox):not(.woocommerce-form__label-for-checkbox) {
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  margin-bottom: 8px !important;
  letter-spacing: 0.01em !important;
  color: #0C0C0E !important;
}

/* 6. Spacious Order Review Table & Payment Method Box on Right Column */
body.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
body.woocommerce-checkout table.woocommerce-checkout-review-order-table td {
  padding: 15px 10px !important;
  font-size: 0.96rem !important;
}

body.woocommerce-checkout #payment ul.payment_methods li {
  padding: 20px 22px !important;
  border-radius: 16px !important;
  margin-bottom: 14px !important;
  border: 1.5px solid rgba(213, 170, 109, 0.35) !important;
  background: #FAF9F6 !important;
}

body.woocommerce-checkout #payment div.payment_box {
  padding: 18px 0 6px 0 !important;
  margin-top: 14px !important;
}

body.woocommerce-checkout #payment div.payment_box .form-row {
  margin-bottom: 16px !important;
}

body.woocommerce-checkout #payment div.payment_box input.input-text,
body.woocommerce-checkout #payment div.payment_box input[type="text"],
body.woocommerce-checkout #payment div.payment_box input[type="tel"],
body.woocommerce-checkout #payment div.payment_box input[type="password"],
body.woocommerce-checkout #payment div.payment_box .wc-stripe-elements-field {
  height: 54px !important;
  min-height: 54px !important;
  padding: 12px 44px 12px 44px !important;
  border-radius: 12px !important;
  font-size: 0.98rem !important;
  background: #FFFFFF !important;
  border: 1.5px solid #E2DCD3 !important;
}

body.woocommerce-checkout #payment div.payment_box .form-row-first,
body.woocommerce-checkout #payment div.payment_box .form-row-last {
  width: calc(50% - 8px) !important;
}

body.woocommerce-checkout #payment div.payment_box .form-row-first {
  margin-right: 12px !important;
}

body.woocommerce-checkout #place_order {
  height: 58px !important;
  font-size: 1.04rem !important;
  margin-top: 20px !important;
  border-radius: 14px !important;
}

/* 7. Mobile Responsive Spacious Checkout Boxes */
@media (max-width: 768px) {
  body.woocommerce-checkout .site-main > .luxe-container {
    padding-left: 10px !important;
    padding-right: 10px !important;
  }

  body.woocommerce-checkout .pv-checkout-card,
  body.woocommerce-checkout .luxe-checkout-details-card,
  body.woocommerce-checkout .luxe-checkout-summary-card {
    padding: 24px 18px !important;
    border-radius: 20px !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-address-fields__field-wrapper {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }

  body.woocommerce-checkout #payment ul.payment_methods li {
    padding: 18px 16px !important;
  }
}
/* ==========================================================================
   v6.3.1 Gateway Input Icons, Prefix/Suffix & Banner Non-Overlap Fix
   ========================================================================== */
body.woocommerce-checkout #payment .wtt-input-container {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #payment .wtt-input-container .wtt-input-prefix-icon {
  position: absolute !important;
  left: 15px !important;
  top: 50% !important;
  bottom: auto !important;
  transform: translateY(-50%) !important;
  z-index: 5 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  pointer-events: none !important;
  color: #64748B !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout #payment .wtt-input-container .wtt-input-prefix-icon svg {
  position: static !important;
  width: 16px !important;
  height: 16px !important;
  display: block !important;
}

body.woocommerce-checkout #payment .wtt-input-container .wtt-input-suffix-icon {
  position: absolute !important;
  right: 14px !important;
  left: auto !important;
  top: 50% !important;
  bottom: auto !important;
  transform: translateY(-50%) !important;
  z-index: 5 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 20px !important;
  height: 20px !important;
  color: #64748B !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout #payment .wtt-input-container .wtt-input-suffix-icon svg {
  position: static !important;
  width: 15px !important;
  height: 15px !important;
  display: block !important;
}

body.woocommerce-checkout #payment .wtt-input-container .wtt-detected-brand-badge {
  position: absolute !important;
  right: 38px !important;
  left: auto !important;
  top: 50% !important;
  bottom: auto !important;
  transform: translateY(-50%) !important;
  z-index: 5 !important;
}

body.woocommerce-checkout #payment .wtt-input-container input.wtt-form-input,
body.woocommerce-checkout #payment div.payment_box .wtt-input-container input[type="text"],
body.woocommerce-checkout #payment div.payment_box .wtt-input-container input[type="tel"],
body.woocommerce-checkout #payment div.payment_box .wtt-input-container input[type="password"] {
  width: 100% !important;
  height: 54px !important;
  min-height: 54px !important;
  padding-left: 44px !important;
  padding-right: 18px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  line-height: 1.35 !important;
  font-size: 0.96rem !important;
  box-sizing: border-box !important;
}

body.woocommerce-checkout #payment .wtt-input-container input.wtt-form-input.wtt-has-suffix {
  padding-right: 46px !important;
}

body.woocommerce-checkout #payment .wtt-form-grid-2 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
  margin-bottom: 14px !important;
}

body.woocommerce-checkout #payment .wtt-powered-by-box {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  margin-top: 12px !important;
}

body.woocommerce-checkout #payment .wtt-powered-left {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

body.woocommerce-checkout #payment .wtt-shield-badge-icon,
body.woocommerce-checkout #payment .wtt-privacy-icon {
  position: static !important;
  flex-shrink: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.woocommerce-checkout #payment .wtt-shield-badge-icon svg,
body.woocommerce-checkout #payment .wtt-privacy-icon svg {
  position: static !important;
}

body.woocommerce-checkout #payment .wtt-privacy-notice {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin-top: 10px !important;
}
