/*
Theme Name: Apex Ecomus Child
Theme URI: https://apexloungebar.co.uk
Description: Apex Lounge design system and WooCommerce styling layered on top of the Ecomus parent theme. Preserves Ecomus functionality while applying Apex colors, backgrounds, typography, buttons, cards, forms, product/shop styling and reusable Apex utility classes.
Author: Hola Web Solutions
Template: ecomus
Version: 2.2.35
Text Domain: apex-ecomus-child
*/

/* =========================================================
   APEX TYPOGRAPHY
   Playfair Display = headings / display type
   Jost = body / UI / navigation / buttons
   ========================================================= */
:root {
  --apex-font-display: "Playfair Display", Georgia, "Times New Roman", serif;
  --apex-font-body: "Jost", Arial, Helvetica, sans-serif;
}

body,
body *,
button,
input,
select,
textarea {
  font-family: var(--apex-font-body);
}

h1, h2, h3, h4, h5, h6,
.elementor-heading-title,
.site-title,
.page-title,
.woocommerce-products-header__title,
.product_title,
.entry-title,
.woocommerce-loop-product__title,
.woocommerce div.product .related h2,
.woocommerce div.product .upsells h2,
.woocommerce div.product .woocommerce-tabs .woocommerce-Tabs-panel h2 {
  font-family: var(--apex-font-display) !important;
}

/* Keep paragraphs, descriptions, metadata and interface copy in Jost. */
p,
li,
label,
small,
figcaption,
.entry-content,
.woocommerce-product-details__short-description,
.woocommerce-page,
.woocommerce,
.elementor-widget-text-editor,
.elementor-button,
button,
input,
select,
textarea {
  font-family: var(--apex-font-body) !important;
}

/* =========================================================
   APEX DESIGN SYSTEM
   ========================================================= */
:root {
  --apex-bg: oklch(0.155 0.006 60);
  --apex-bg-alt: oklch(0.2 0.008 60);
  --apex-ink: oklch(0.115 0.005 60);
  --apex-gold: oklch(0.8 0.135 82);
  --apex-gold-light: oklch(0.88 0.07 88);
  --apex-purple: oklch(0.42 0.14 305);
  --apex-purple-glow: oklch(0.58 0.2 305);
  --apex-purple-glow-a: color-mix(in oklab, oklch(0.58 0.2 305) 35%, transparent);
  --apex-text: oklch(0.95 0.008 90);
  --apex-text-muted: oklch(0.72 0.015 90);
  --apex-border: color-mix(in oklab, oklch(0.8 0.135 82) 18%, transparent);
  --apex-radius: 4px;
  --apex-ease-lux: cubic-bezier(0.22, 1, 0.36, 1);
  --apex-gradient-gold: linear-gradient(100deg, oklch(0.72 0.11 70), oklch(0.92 0.09 92), oklch(0.76 0.13 78));
  --apex-shadow-lux: 0 30px 70px -30px color-mix(in oklab, var(--apex-ink) 90%, transparent);
  --apex-shadow-glow: 0 0 60px -12px var(--apex-purple-glow-a);

  /* Ecomus variable bridge */
  --em-font__main: var(--apex-font-body);
  --em-color__base: var(--apex-text-muted);
  --em-color__dark: var(--apex-text);
  --em-color__light: var(--apex-bg);
  --em-color__primary: var(--apex-gold);
  --em-text-color-on-primary: var(--apex-bg);
  --em-link-color: var(--apex-gold);
  --em-link-color-hover: var(--apex-gold-light);
  --em-header-color: var(--apex-text);
  --em-color-price-sale: var(--apex-gold);
  --em-border-color: var(--apex-border);
  --em-image-rounded: var(--apex-radius);
  --em-image-rounded-product-card: var(--apex-radius);
  --em-image-rounded-product-gallery: var(--apex-radius);
  --em-image-rounded-product-thumbnail: var(--apex-radius);
  --em-heading-font: var(--apex-font-display);
  --em-heading-color: var(--apex-text);
  --em-heading-font-weight: 400;
  --em-button-color: var(--apex-gold);
  --em-button-bg-color: transparent;
  --em-button-border-color: var(--apex-gold);
  --em-button-color-hover: var(--apex-bg);
  --em-button-bg-color-hover: var(--apex-gold);
  --em-button-border-color-hover: var(--apex-gold);
  --em-input-color: var(--apex-text);
  --em-input-border-color: var(--apex-border);
  --em-input-border-color-hover: var(--apex-gold);
  --em-input-bg-color: var(--apex-bg-alt);
  --em-loading-color: var(--apex-gold);
}

/* =========================================================
   GLOBAL APEX LOOK
   ========================================================= */
html { background: var(--apex-bg); }
body {
  background: var(--apex-bg) !important;
  color: var(--apex-text) !important;
  font-family: var(--apex-font-body) !important;
}

h1,h2,h3,h4,h5,h6,
.elementor-heading-title,
.site-title,
.page-title,
.woocommerce-products-header__title,
.product_title,
.entry-title {
  font-family: var(--apex-font-display) !important;
  color: var(--apex-text) !important;
  letter-spacing: .02em;
  font-weight: 400;
}

a { color: var(--apex-gold); }
a:hover { color: var(--apex-gold-light); }

/* Header / navigation */
.site-header,
.header-main,
.header-bottom,
.header-sticky,
.site-navigation,
.main-navigation,
.header-mobile {
  background: var(--apex-ink) !important;
  color: var(--apex-text) !important;
  border-color: var(--apex-border) !important;
}
.site-header a,
.main-navigation a,
.header-main a,
.header-mobile a { color: var(--apex-text) !important; }
.site-header a:hover,
.main-navigation a:hover,
.header-main a:hover { color: var(--apex-gold) !important; }

/* Footer */
.site-footer,
.footer-main,
.footer-widgets,
.footer-bottom {
  background: var(--apex-ink) !important;
  color: var(--apex-text-muted) !important;
  border-color: var(--apex-border) !important;
}
.site-footer a { color: var(--apex-gold) !important; }

/* =========================================================
   APEX UTILITY CLASSES
   ========================================================= */
.apex-eyebrow {
  font-family: var(--apex-font-body);
  font-size: .7rem;
  font-weight: 400;
  letter-spacing: .42em;
  text-transform: uppercase;
  color: var(--apex-gold);
}
.apex-gold-gradient {
  background-image: var(--apex-gradient-gold);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
.apex-surface-card {
  background: linear-gradient(160deg,
    color-mix(in oklab, var(--apex-bg-alt) 92%, transparent),
    color-mix(in oklab, var(--apex-ink) 70%, transparent));
  border: 1px solid var(--apex-border);
  box-shadow: var(--apex-shadow-lux);
  border-radius: var(--apex-radius);
}
.apex-lift { transition: transform .5s var(--apex-ease-lux), box-shadow .5s var(--apex-ease-lux), border-color .5s var(--apex-ease-lux); }
.apex-lift:hover { transform: translateY(-6px); box-shadow: var(--apex-shadow-lux), var(--apex-shadow-glow); border-color: color-mix(in oklab, var(--apex-gold) 45%, transparent); }
.apex-hairline { background: linear-gradient(90deg, transparent, color-mix(in oklab, var(--apex-gold) 55%, transparent), transparent); height: 1px; width: 100%; }
.apex-ambient-plum { position: relative; }
.apex-ambient-plum::before { content:""; position:absolute; inset:-20% -10% auto; height:60%; background:radial-gradient(ellipse at 50% 0%, color-mix(in oklab, var(--apex-purple-glow) 28%, transparent), transparent 70%); pointer-events:none; z-index:0; }
.apex-glow { position:relative; }
.apex-glow::before { content:""; position:absolute; inset:0; pointer-events:none; background:radial-gradient(circle at 80% 20%, var(--apex-purple-glow-a), transparent 60%); z-index:0; }
.apex-ornament { position:relative; }
.apex-ornament::after { content:""; position:absolute; width:90px; height:90px; right:16px; bottom:16px; background:url('images/floral-corner.svg') center/contain no-repeat; opacity:.35; pointer-events:none; }

/* =========================================================
   BUTTONS / FORMS
   ========================================================= */
button,
input[type="submit"],
input[type="button"],
.wp-block-button__link,
.elementor-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.em-button,
button[type="submit"] {
  background: transparent !important;
  color: var(--apex-gold) !important;
  border: 1px solid var(--apex-gold) !important;
  border-radius: var(--apex-radius) !important;
  font-family: var(--apex-font-body) !important;
  letter-spacing: .08em;
  text-transform: uppercase;
  transition: all .25s ease;
}
button:hover,
input[type="submit"]:hover,
input[type="button"]:hover,
.wp-block-button__link:hover,
.elementor-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover {
  background: var(--apex-gold) !important;
  color: var(--apex-bg) !important;
  border-color: var(--apex-gold) !important;
  box-shadow: 0 0 24px var(--apex-purple-glow);
}
input, select, textarea {
  background: var(--apex-bg-alt) !important;
  color: var(--apex-text) !important;
  border-color: var(--apex-border) !important;
  border-radius: var(--apex-radius) !important;
}
input:focus, select:focus, textarea:focus { border-color: var(--apex-gold) !important; box-shadow: 0 0 0 1px var(--apex-gold) !important; outline: none; }

/* =========================================================
   SHOP / PRODUCT ARCHIVES
   ========================================================= */
.woocommerce-page main,
.woocommerce main,
.woocommerce-shop main { background: var(--apex-bg); }
/* Let Ecomus control product-loop geometry. Its native mobile-col-*
 * classes and 7.5px mobile gutters are the source of truth. */
.woocommerce ul.products,
.woocommerce-page ul.products {
  gap: 0 !important;
}
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
  background: var(--apex-bg-alt) !important;
  border: 1px solid var(--apex-border) !important;
  border-radius: var(--apex-radius) !important;
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}
.woocommerce ul.products li.product:hover { border-color: var(--apex-gold) !important; box-shadow: 0 8px 30px rgba(0,0,0,.4); transform: translateY(-2px); }
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 { font-family: var(--apex-font-display) !important; color: var(--apex-text) !important; font-size: 20px; }
.woocommerce ul.products li.product .price { color: var(--apex-gold) !important; font-weight: 600; }
.woocommerce span.onsale { background: var(--apex-purple) !important; color: var(--apex-text) !important; border-radius: var(--apex-radius) !important; }
.woocommerce-products-header__title,.page-title { color: var(--apex-gold) !important; }

/* Ecomus product-card hover slider: keep the image slider itself, but
 * remove only its left/right navigation arrows. These selectors are
 * scoped to product-card sliders and do not affect the single-product
 * gallery arrows. */
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button-prev,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button-next {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Keep the product card's visual border on Ecomus's inner card rather than
 * changing the width of the native li.product column. */
.woocommerce ul.products li.product > .product-inner,
.woocommerce-page ul.products li.product > .product-inner {
  width: 100%;
  box-sizing: border-box;
  background: var(--apex-bg-alt) !important;
  border: 1px solid var(--apex-border) !important;
  border-radius: var(--apex-radius) !important;
  transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.woocommerce ul.products li.product:hover > .product-inner,
.woocommerce-page ul.products li.product:hover > .product-inner {
  border-color: var(--apex-gold) !important;
  box-shadow: 0 8px 30px rgba(0,0,0,.4);
  transform: translateY(-2px);
}

/* =========================================================
   SINGLE PRODUCT — APEX FINISH, ECOMUS STRUCTURE
   ========================================================= */
.single-product div.product,
.single-product .product,
.woocommerce div.product {
  color: var(--apex-text);
}
.woocommerce div.product .product_title { font-size: clamp(2rem, 4vw, 4rem); }
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: var(--apex-gold) !important; font-family: var(--apex-font-display); }
.woocommerce div.product .woocommerce-product-details__short-description { color: var(--apex-text-muted); line-height: 1.7; }
.woocommerce div.product .stock { color: var(--apex-gold-light) !important; }
.woocommerce div.product div.images,
.woocommerce div.product div.summary { background: transparent; }
.woocommerce div.product div.images img { border-radius: var(--apex-radius); }
.woocommerce div.product div.images .flex-control-thumbs img { border: 1px solid transparent; border-radius: var(--apex-radius); }
.woocommerce div.product div.images .flex-control-thumbs .flex-active { border-color: var(--apex-gold); }
.woocommerce div.product .woocommerce-tabs { border-top: 1px solid var(--apex-border); padding-top: 28px; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background: transparent !important; border-color: var(--apex-border) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color: var(--apex-text-muted); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover { color: var(--apex-gold); }
.woocommerce div.product .related h2,
.woocommerce div.product .upsells h2 { font-family: var(--apex-font-display); color: var(--apex-text); }

/* Product options used by Apex */
.apex-short-description { color: var(--apex-text-muted); font-size:14px; line-height:1.6; max-width:46ch; margin-bottom:22px; }
.apex-options-wrap { border-top:1px solid var(--apex-border); padding-top:28px; margin-top:28px; }
.apex-option-group { margin-bottom:30px; }
.apex-option-label { display:block; color:var(--apex-text-muted); font-size:.75rem; letter-spacing:.16em; text-transform:uppercase; margin-bottom:12px; }
.apex-option-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.apex-option-card { background:var(--apex-bg-alt); border:1px solid var(--apex-border); border-radius:var(--apex-radius); color:var(--apex-text); padding:14px 16px; cursor:pointer; transition:.25s ease; }
.apex-option-card:hover,.apex-option-card.is-selected { border-color:var(--apex-gold); box-shadow:0 0 24px var(--apex-purple-glow-a); }
.apex-option-card .apex-option-price { color:var(--apex-gold); }

/* =========================================================
   CART / CHECKOUT / ACCOUNT
   ========================================================= */
.woocommerce-cart .cart-collaterals,
.woocommerce-checkout #order_review,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-checkout form.checkout { color:var(--apex-text); }
.woocommerce-cart table.shop_table,
.woocommerce-checkout table.shop_table,
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce form.login,
.woocommerce form.register,
.woocommerce form.checkout_coupon {
  background:var(--apex-bg-alt) !important;
  border:1px solid var(--apex-border) !important;
  border-radius:var(--apex-radius) !important;
}
.woocommerce table.shop_table th,
.woocommerce table.shop_table td { border-color:var(--apex-border) !important; color:var(--apex-text); }
.woocommerce-message,
.woocommerce-info,
.woocommerce-error { background:var(--apex-bg-alt) !important; color:var(--apex-text) !important; border-top-color:var(--apex-gold) !important; }

/* =========================================================
   PAGE GUTTERS
   ========================================================= */
.woocommerce-page .site-main,
.woocommerce-shop .site-main,
.single-product .site-main {
  padding-left:80px;
  padding-right:80px;
}

/* Keep full-width headers/footers full bleed */
.woocommerce-page .site-header,
.woocommerce-page .site-footer,
.woocommerce-shop .site-header,
.woocommerce-shop .site-footer,
.single-product .site-header,
.single-product .site-footer { margin-left:-80px; margin-right:-80px; }

@media (max-width: 767px) {
  .woocommerce-page .site-main,
  .woocommerce-shop .site-main,
  .single-product .site-main { padding-left:30px; padding-right:30px; }
  .woocommerce-page .site-header,
  .woocommerce-page .site-footer,
  .woocommerce-shop .site-header,
  .woocommerce-shop .site-footer,
  .single-product .site-header,
  .single-product .site-footer { margin-left:-30px; margin-right:-30px; }
  .apex-option-grid { grid-template-columns:1fr; }
}

/* Accessibility / reduced motion */
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important; scroll-behavior:auto !important; }
}



/* =========================================================
   SHOP / MENU HEADING + CATEGORY FILTER
   ========================================================= */
.woocommerce-shop .woocommerce-products-header__title,
.woocommerce-shop .page-title {
  color: var(--apex-text) !important;
  font-family: var(--apex-font-display) !important;
  font-size: clamp(2.4rem, 5vw, 4.8rem) !important;
  text-align: left;
  margin-bottom: 22px !important;
}
.apex-menu-filter {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin: 0 0 34px;
  padding: 0 0 18px;
  border-bottom: 1px solid var(--apex-border);
}
.apex-menu-filter a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 8px 17px;
  border: 1px solid var(--apex-border);
  border-radius: 999px;
  color: var(--apex-text) !important;
  background: transparent;
  text-decoration: none;
  font-size: .78rem;
  letter-spacing: .11em;
  text-transform: uppercase;
  transition: .2s ease;
}
.apex-menu-filter a:hover,
.apex-menu-filter a.is-active {
  color: var(--apex-bg) !important;
  background: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
}

/* =========================================================
   APEX SHOP / MENU HERO
   Shared by Shop + Product Category archives.
   ========================================================= */
.woocommerce-shop #page-header.page-header--shop,
.tax-product_cat #page-header.page-header--shop {
  position: relative;
  overflow: hidden;
  min-height: 520px;
  margin: 0 !important;
  padding: 0 !important;
  background: #0d0b0a !important;
  color: var(--apex-text) !important;
  border: 0 !important;
}

.woocommerce-shop #page-header.page-header--shop::before,
.tax-product_cat #page-header.page-header--shop::before {
  display: none !important;
}

.woocommerce-shop #page-header.page-header--shop .em-container,
.tax-product_cat #page-header.page-header--shop .em-container {
  width: min(1180px, calc(100% - 80px));
  min-height: 520px;
  padding: 0 !important;
  margin: 0 auto;
  position: relative;
}

.woocommerce-shop #page-header.page-header--shop .page-header__content,
.tax-product_cat #page-header.page-header--shop .page-header__content {
  min-height: 520px;
  padding: 58px 0 72px;
  position: relative;
  justify-content: flex-start;
}

.woocommerce-shop .apex-shop-hero,
.post-type-archive-product .apex-shop-hero,
.tax-product_cat .apex-shop-hero {
  width: 100vw;
  max-width: none;
  margin-left: calc(50% - 50vw);
  position: relative;
  z-index: 2;
  text-align: center;
}

.woocommerce-shop .apex-shop-hero__ornament,
.post-type-archive-product .apex-shop-hero__ornament,
.tax-product_cat .apex-shop-hero__ornament {
  position: absolute;
  top: 2px;
  right: -8px;
  width: 150px;
  height: 150px;
  background: url('images/floral-corner.svg') center / contain no-repeat;
  opacity: .38;
  pointer-events: none;
  transform: rotate(2deg);
}

.woocommerce-shop .apex-shop-hero__eyebrow,
.post-type-archive-product .apex-shop-hero__eyebrow,
.tax-product_cat .apex-shop-hero__eyebrow {
  position: relative;
  z-index: 1;
  margin: 0 0 25px;
  font-family: var(--apex-font-body);
  font-size: 11px;
  font-weight: 500;
  letter-spacing: .42em;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--apex-gold);
}

.woocommerce-shop .apex-shop-hero__title,
.post-type-archive-product .apex-shop-hero__title,
.tax-product_cat .apex-shop-hero__title {
  position: relative;
  z-index: 1;
  margin: 0;
  font-family: var(--apex-font-display) !important;
  font-size: clamp(54px, 6vw, 76px) !important;
  font-weight: 500 !important;
  line-height: .98 !important;
  letter-spacing: -.025em;
  color: var(--apex-text) !important;
}

.woocommerce-shop .apex-shop-hero__title span,
.post-type-archive-product .apex-shop-hero__title span,
.tax-product_cat .apex-shop-hero__title span {
  color: var(--apex-text);
}

.woocommerce-shop .apex-shop-hero__title em,
.post-type-archive-product .apex-shop-hero__title em,
.tax-product_cat .apex-shop-hero__title em {
  color: var(--apex-gold);
  font-style: normal;
}

.woocommerce-shop .apex-shop-hero__divider,
.post-type-archive-product .apex-shop-hero__divider,
.tax-product_cat .apex-shop-hero__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  width: min(300px, 70%);
  margin: 31px auto 35px;
}

.woocommerce-shop .apex-shop-hero__divider span,
.post-type-archive-product .apex-shop-hero__divider span,
.tax-product_cat .apex-shop-hero__divider span {
  height: 1px;
  flex: 1;
  background: linear-gradient(90deg, transparent, color-mix(in oklab, var(--apex-gold) 35%, transparent));
}

.woocommerce-shop .apex-shop-hero__divider span:last-child,
.post-type-archive-product .apex-shop-hero__divider span:last-child,
.tax-product_cat .apex-shop-hero__divider span:last-child {
  background: linear-gradient(90deg, color-mix(in oklab, var(--apex-gold) 35%, transparent), transparent);
}

.woocommerce-shop .apex-shop-hero__divider b,
.post-type-archive-product .apex-shop-hero__divider b,
.tax-product_cat .apex-shop-hero__divider b {
  color: var(--apex-gold);
  font-size: 13px;
  font-weight: 400;
}

.woocommerce-shop .apex-shop-hero__description,
.post-type-archive-product .apex-shop-hero__description,
.tax-product_cat .apex-shop-hero__description {
  width: min(700px, 100%);
  margin: 0 auto;
  font-family: var(--apex-font-body) !important;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: .02em;
  color: var(--apex-text-muted) !important;
}

.woocommerce-shop .apex-shop-hero__categories,
.post-type-archive-product .apex-shop-hero__categories,
.tax-product_cat .apex-shop-hero__categories {
  position: relative;
  z-index: 3;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
  width: min(1000px, 100%);
  margin: 56px auto 0;
}

.woocommerce-shop .apex-shop-hero__categories a,
.post-type-archive-product .apex-shop-hero__categories a,
.tax-product_cat .apex-shop-hero__categories a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  padding: 7px 20px;
  border: 1px solid rgba(150, 112, 184, .22);
  border-radius: 999px;
  background: transparent;
  color: var(--apex-text-muted) !important;
  text-decoration: none !important;
  font-family: var(--apex-font-body) !important;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: .19em;
  line-height: 1;
  text-transform: uppercase;
  transition: color .25s ease, border-color .25s ease, background .25s ease, transform .25s ease;
}

.woocommerce-shop .apex-shop-hero__categories a:hover,
.post-type-archive-product .apex-shop-hero__categories a:hover,
.woocommerce-shop .apex-shop-hero__categories a.is-active,
.post-type-archive-product .apex-shop-hero__categories a.is-active,
.tax-product_cat .apex-shop-hero__categories a:hover,
.tax-product_cat .apex-shop-hero__categories a.is-active {
  color: var(--apex-gold) !important;
  border-color: color-mix(in oklab, var(--apex-gold) 45%, transparent) !important;
  background: color-mix(in oklab, var(--apex-gold) 4%, transparent);
  transform: translateY(-1px);
}

.woocommerce-shop .apex-shop-hero__categories a.is-active,
.post-type-archive-product .apex-shop-hero__categories a.is-active,
.tax-product_cat .apex-shop-hero__categories a.is-active {
  color: var(--apex-gold) !important;
}

.woocommerce-shop .woocommerce-before-shop-loop .apex-menu-filter,
.tax-product_cat .woocommerce-before-shop-loop .apex-menu-filter,
.woocommerce-shop .apex-menu-filter,
.tax-product_cat .apex-menu-filter {
  display: none !important;
}

@media (max-width: 767px) {
  .woocommerce-shop #page-header.page-header--shop,
  .woocommerce-shop #page-header.page-header--shop .em-container,
  .woocommerce-shop #page-header.page-header--shop .page-header__content,
  .tax-product_cat #page-header.page-header--shop,
  .tax-product_cat #page-header.page-header--shop .em-container,
  .tax-product_cat #page-header.page-header--shop .page-header__content {
    min-height: 0;
  }

  .woocommerce-shop #page-header.page-header--shop .em-container,
  .tax-product_cat #page-header.page-header--shop .em-container {
    width: calc(100% - 40px);
  }

  .woocommerce-shop #page-header.page-header--shop .page-header__content,
  .tax-product_cat #page-header.page-header--shop .page-header__content {
    padding: 48px 0 58px;
  }

  .woocommerce-shop .apex-shop-hero__ornament,
  .post-type-archive-product .apex-shop-hero__ornament,
  .tax-product_cat .apex-shop-hero__ornament {
    top: -10px;
    right: -20px;
    width: 105px;
    height: 105px;
    opacity: .25;
  }

  .woocommerce-shop .apex-shop-hero__eyebrow,
  .post-type-archive-product .apex-shop-hero__eyebrow,
  .tax-product_cat .apex-shop-hero__eyebrow {
    font-size: 9px;
    letter-spacing: .32em;
    margin-bottom: 20px;
  }

  .woocommerce-shop .apex-shop-hero__title,
  .post-type-archive-product .apex-shop-hero__title,
  .tax-product_cat .apex-shop-hero__title {
    font-size: clamp(46px, 15vw, 62px) !important;
  }

  .woocommerce-shop .apex-shop-hero__divider,
  .post-type-archive-product .apex-shop-hero__divider,
  .tax-product_cat .apex-shop-hero__divider {
    margin: 24px auto 28px;
  }

  .woocommerce-shop .apex-shop-hero__description,
  .post-type-archive-product .apex-shop-hero__description,
  .tax-product_cat .apex-shop-hero__description {
    font-size: 13px;
    line-height: 1.75;
  }

  .woocommerce-shop .apex-shop-hero__categories,
  .post-type-archive-product .apex-shop-hero__categories,
  .tax-product_cat .apex-shop-hero__categories {
    gap: 9px;
    margin-top: 38px;
  }

  .woocommerce-shop .apex-shop-hero__categories a,
  .post-type-archive-product .apex-shop-hero__categories a,
  .tax-product_cat .apex-shop-hero__categories a {
    min-height: 36px;
    padding: 7px 14px;
    font-size: 8px;
    letter-spacing: .14em;
  }
}
/* =========================================================
   PAGINATION — WHITE, GOLD ON HOVER/ACTIVE
   ========================================================= */
.woocommerce nav.woocommerce-pagination ul,
.woocommerce-page nav.woocommerce-pagination ul,
.woocommerce .woocommerce-pagination ul.page-numbers {
  border: 0 !important;
  display: flex;
  justify-content: center;
  gap: 8px;
  background: transparent !important;
}
.woocommerce nav.woocommerce-pagination ul li,
.woocommerce-page nav.woocommerce-pagination ul li {
  border: 0 !important;
  background: transparent !important;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span,
.woocommerce-page nav.woocommerce-pagination ul li a,
.woocommerce-page nav.woocommerce-pagination ul li span {
  min-width: 42px;
  height: 42px;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 12px !important;
  border: 1px solid var(--apex-border) !important;
  border-radius: 50%;
  color: #fff !important;
  background: transparent !important;
  text-decoration: none !important;
  transition: .2s ease;
}
.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce-page nav.woocommerce-pagination ul li a:hover,
.woocommerce-page nav.woocommerce-pagination ul li span.current {
  color: var(--apex-bg) !important;
  background: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
}

/* =========================================================
   APEX PRODUCT OPTIONS PLUGIN — DIRECT INTEGRATION
   Protein = selectable swatches/cards
   Drink = compact dropdown
   ========================================================= */
.apex-options-wrap {
  margin: 30px 0 0 !important;
  padding: 30px 0 0 !important;
  border-top: 1px solid var(--apex-border) !important;
}
.apex-option-group { margin-bottom: 30px !important; }
.apex-option-label {
  color: var(--apex-text-muted) !important;
  font-family: var(--apex-font-body) !important;
  font-size: .76rem !important;
  font-weight: 500 !important;
  letter-spacing: .17em !important;
  line-height: 1.5 !important;
  text-transform: uppercase !important;
}
.apex-required { color: var(--apex-gold) !important; }
.apex-optional { color: var(--apex-text-muted) !important; opacity: .72; }
.apex-chip-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
}
.apex-chip-label {
  position: relative !important;
  display: flex !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 0 !important;
  cursor: pointer !important;
}
.apex-chip-input {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.apex-chip-content {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  min-height: 58px !important;
  box-sizing: border-box !important;
  padding: 13px 15px !important;
  color: var(--apex-text) !important;
  background: linear-gradient(145deg, var(--apex-bg-alt), var(--apex-ink)) !important;
  border: 1px solid var(--apex-border) !important;
  border-radius: 7px !important;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease;
}
.apex-chip-label:hover .apex-chip-content {
  border-color: color-mix(in oklab, var(--apex-gold) 55%, transparent) !important;
  transform: translateY(-1px);
}
.apex-chip-input:checked + .apex-chip-content {
  background: linear-gradient(145deg, color-mix(in oklab, var(--apex-gold) 18%, var(--apex-bg-alt)), var(--apex-bg-alt)) !important;
  border-color: var(--apex-gold) !important;
  box-shadow: 0 0 0 1px color-mix(in oklab, var(--apex-gold) 25%, transparent),
              0 12px 28px -18px var(--apex-purple-glow) !important;
}
.apex-chip-input:focus-visible + .apex-chip-content {
  outline: 2px solid var(--apex-gold);
  outline-offset: 2px;
}
.apex-chip-name { color: var(--apex-text) !important; font-size: .94rem !important; line-height: 1.35 !important; }
.apex-chip-price {
  flex: 0 0 auto !important;
  margin-left: auto !important;
  color: var(--apex-gold) !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}
.apex-select-wrap { position: relative !important; }
.apex-option-select {
  width: 100% !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 0 48px 0 16px !important;
  color: var(--apex-text) !important;
  background-color: var(--apex-bg-alt) !important;
  border: 1px solid var(--apex-border) !important;
  border-radius: 7px !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  cursor: pointer !important;
  font-family: var(--apex-font-body) !important;
  font-size: .95rem !important;
}
.apex-option-select:hover,
.apex-option-select:focus {
  border-color: var(--apex-gold) !important;
  outline: none !important;
  box-shadow: 0 0 0 1px var(--apex-gold), 0 0 24px var(--apex-purple-glow-a) !important;
}
.apex-select-wrap::after {
  content: '' !important;
  position: absolute !important;
  right: 18px !important;
  top: 50% !important;
  width: 8px !important;
  height: 8px !important;
  border-right: 1px solid var(--apex-gold) !important;
  border-bottom: 1px solid var(--apex-gold) !important;
  transform: translateY(-65%) rotate(45deg) !important;
  pointer-events: none !important;
}
@media (max-width: 767px) {
  .apex-chip-grid { grid-template-columns: 1fr !important; }
  .apex-chip-content, .apex-option-select { min-height: 54px !important; }
}

/* =========================================================
   REAL WC PRODUCT ADD-ONS — FORCE CLEAN CARD/SWATCH LAYOUT
   ========================================================= */
.wc-pao-addon .wc-pao-addon-wrap {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px !important;
}
.wc-pao-addon .wc-pao-addon-wrap label.apex-addon-card {
  box-sizing: border-box !important;
  display: flex !important;
  width: 100% !important;
  align-items: center !important;
  min-height: 56px !important;
  margin: 0 !important;
  padding: 12px 15px 12px 45px !important;
  background: var(--apex-bg-alt) !important;
  border: 1px solid var(--apex-border) !important;
  border-radius: 7px !important;
  color: var(--apex-text) !important;
  cursor: pointer !important;
}
.wc-pao-addon .wc-pao-addon-wrap label.apex-addon-card:hover,
.wc-pao-addon .wc-pao-addon-wrap label.apex-addon-card.is-selected {
  color: var(--apex-text) !important;
  border-color: var(--apex-gold) !important;
  background: color-mix(in oklab, var(--apex-gold) 10%, var(--apex-bg-alt)) !important;
}
.wc-pao-addon .wc-pao-addon-wrap .wc-pao-addon-field.wc-pao-addon-radio {
  position: absolute !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.wc-pao-addon .wc-pao-addon-wrap label.apex-addon-card::before {
  content: '' !important;
  position: absolute !important;
  left: 15px !important;
  top: 50% !important;
  width: 18px !important;
  height: 18px !important;
  border: 1px solid var(--apex-gold) !important;
  border-radius: 50% !important;
  transform: translateY(-50%) !important;
}
.wc-pao-addon .wc-pao-addon-wrap label.apex-addon-card.is-selected::after {
  content: '' !important;
  position: absolute !important;
  left: 20px !important;
  top: 50% !important;
  width: 8px !important;
  height: 8px !important;
  background: var(--apex-gold) !important;
  border-radius: 50% !important;
  transform: translateY(-50%) !important;
}
.wc-pao-addon.apex-addon-has-dropdown .wc-pao-addon-wrap {
  display: none !important;
}
.wc-pao-addon .apex-addon-dropdown {
  display: block !important;
  width: 100% !important;
  min-height: 56px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  color: var(--apex-text) !important;
  background: var(--apex-bg-alt) !important;
  border: 1px solid var(--apex-border) !important;
  border-radius: 7px !important;
}
@media (max-width: 767px) {
  .wc-pao-addon .wc-pao-addon-wrap { grid-template-columns: 1fr; }
  .apex-menu-filter { overflow-x: auto; flex-wrap: nowrap; padding-bottom: 14px; }
  .apex-menu-filter a { flex: 0 0 auto; }
}

/* =========================================================
   APEX PRODUCT ADD-ONS — SWATCH/CARD UI
   Keeps the original WooCommerce add-on inputs functional,
   while presenting radio choices as premium selectable cards.
   Groups with more than 8 choices are presented as dropdowns.
   ========================================================= */
.wc-pao-addon,
.product-addon,
.wc-pao-addon-wrap {
  margin: 0 0 30px;
}

.wc-pao-addon .wc-pao-addon-name,
.wc-pao-addon > label,
.product-addon > label,
.product-addon .addon-name {
  display: block;
  margin: 0 0 14px;
  color: var(--apex-text-muted) !important;
  font-size: .78rem;
  font-weight: 500;
  letter-spacing: .18em;
  line-height: 1.5;
  text-transform: uppercase;
}

.wc-pao-addon-description,
.product-addon-description {
  color: var(--apex-text-muted) !important;
  font-size: .82rem;
  line-height: 1.6;
  margin: -6px 0 14px;
}

.wc-pao-addon .wc-pao-addon-wrap,
.product-addon .addon-options,
.product-addon .options {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

/* Card labels generated around the existing radio controls. */
.wc-pao-addon label.apex-addon-card,
.product-addon label.apex-addon-card {
  position: relative;
  display: flex !important;
  align-items: center;
  min-height: 58px;
  margin: 0 !important;
  padding: 13px 16px 13px 46px !important;
  background: linear-gradient(145deg, var(--apex-bg-alt), var(--apex-ink)) !important;
  border: 1px solid var(--apex-border) !important;
  border-radius: 7px !important;
  color: var(--apex-text) !important;
  cursor: pointer;
  font-size: .94rem !important;
  letter-spacing: .01em !important;
  line-height: 1.35 !important;
  text-transform: none !important;
  transition: border-color .2s ease, background .2s ease, box-shadow .2s ease, transform .2s ease;
}

.wc-pao-addon label.apex-addon-card:hover,
.product-addon label.apex-addon-card:hover {
  border-color: color-mix(in oklab, var(--apex-gold) 55%, transparent) !important;
  transform: translateY(-1px);
}

.wc-pao-addon label.apex-addon-card.is-selected,
.product-addon label.apex-addon-card.is-selected {
  background: linear-gradient(145deg,
    color-mix(in oklab, var(--apex-gold) 18%, var(--apex-bg-alt)),
    var(--apex-bg-alt)) !important;
  border-color: var(--apex-gold) !important;
  box-shadow: 0 0 0 1px color-mix(in oklab, var(--apex-gold) 25%, transparent),
              0 12px 28px -18px var(--apex-purple-glow);
}

.wc-pao-addon label.apex-addon-card input[type="radio"],
.product-addon label.apex-addon-card input[type="radio"] {
  position: absolute !important;
  left: 16px;
  top: 50%;
  width: 20px;
  height: 20px;
  margin: 0 !important;
  transform: translateY(-50%);
  opacity: 0;
}

.wc-pao-addon label.apex-addon-card::before,
.product-addon label.apex-addon-card::before {
  content: '';
  position: absolute;
  left: 16px;
  top: 50%;
  width: 18px;
  height: 18px;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 45%, transparent);
  border-radius: 50%;
  transform: translateY(-50%);
  box-sizing: border-box;
}

.wc-pao-addon label.apex-addon-card.is-selected::after,
.product-addon label.apex-addon-card.is-selected::after {
  content: '';
  position: absolute;
  left: 21px;
  top: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--apex-gold);
  box-shadow: 0 0 12px var(--apex-purple-glow);
  transform: translateY(-50%);
}

/* Price text inside add-on labels. */
.wc-pao-addon .wc-pao-addon-price,
.product-addon .addon-price,
.wc-pao-addon label .amount,
.product-addon label .amount {
  margin-left: auto;
  padding-left: 10px;
  color: var(--apex-gold) !important;
  white-space: nowrap;
}

/* Native select add-ons become Apex dropdowns. */
.wc-pao-addon select,
.product-addon select,
.apex-addon-dropdown {
  width: 100% !important;
  min-height: 56px;
  padding: 0 48px 0 16px !important;
  appearance: none;
  -webkit-appearance: none;
  background-color: var(--apex-bg-alt) !important;
  background-image: linear-gradient(45deg, transparent 50%, var(--apex-gold) 50%),
                    linear-gradient(135deg, var(--apex-gold) 50%, transparent 50%);
  background-position: calc(100% - 22px) 23px, calc(100% - 16px) 23px;
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  border: 1px solid var(--apex-border) !important;
  border-radius: 7px !important;
  color: var(--apex-text) !important;
  font-family: var(--apex-font-body) !important;
  font-size: .95rem;
  cursor: pointer;
}

.wc-pao-addon select:focus,
.product-addon select:focus,
.apex-addon-dropdown:focus {
  border-color: var(--apex-gold) !important;
  box-shadow: 0 0 0 1px var(--apex-gold), 0 0 24px var(--apex-purple-glow-a) !important;
}

/* Very long groups are hidden behind the dropdown while their original
   radio inputs remain in the DOM for WooCommerce/plugin validation. */
.wc-pao-addon.apex-addon-has-dropdown .wc-pao-addon-wrap,
.product-addon.apex-addon-has-dropdown .addon-options,
.product-addon.apex-addon-has-dropdown .options {
  display: none !important;
}

.apex-addon-dropdown {
  margin-bottom: 2px;
}

@media (max-width: 767px) {
  .wc-pao-addon .wc-pao-addon-wrap,
  .product-addon .addon-options,
  .product-addon .options {
    grid-template-columns: 1fr;
  }

  .wc-pao-addon label.apex-addon-card,
  .product-addon label.apex-addon-card {
    min-height: 54px;
    padding-right: 12px !important;
  }
}

/* =========================================================
   APEX DARK SURFACE OVERRIDE — REMOVE ECOMUS WHITE/INVERTED PANELS
   ========================================================= */
/* Ecomus defaults several panels/modals to hard-coded white. Apex keeps
   every site surface on the dark lounge palette instead. */
.panel__container,
.mobile-sidebar-panel__button,
.single-post.em-post-layout-icon .sidebar__container,
.sidebar-panel__button,
.single-product-sidebar-panel .sidebar__container,
.modal__wrapper,
.search-modal .modal__container,
.modal__quickview .entry-summary,
.ecomus-timeline__content,
.ecomus-image-info__summary,
.ecomus-testimonial-carousel-3__item {
  background: var(--apex-bg-alt) !important;
  color: var(--apex-text) !important;
  border-color: var(--apex-border) !important;
}

.modal__wrapper::-webkit-scrollbar-track,
.modal__wrapper::-webkit-scrollbar-track-piece {
  background: var(--apex-bg) !important;
}

.modal__quickview.images-loaded div.product .woocommerce-product-gallery .woocommerce-product-gallery__image img {
  background-color: var(--apex-bg-alt) !important;
}

/* Darken Ecomus light utility controls and replace black/white contrast. */
.em-button-light,
.ecomus-brands-filters__button,
.ecomus-lookbook-products__button-item,
.ecomus-product-price-tables-carousel .product-featured-icons .button,
.ecomus-carousel--elementor .swiper-pagination--dots-arrow .swiper-pagination--dots-arrow__wrapper,
.ecomus-carousel--elementor .swiper-pagination--dots-arrow .swiper-button,
.swiper .swiper-button,
.swiper-button,
.sidebar-panel__button,
.mobile-sidebar-panel__button,
.em-button-go-top {
  --em-button-bg-color: var(--apex-bg-alt) !important;
  --em-button-bg-color-hover: var(--apex-gold) !important;
  --em-button-color: var(--apex-gold) !important;
  --em-button-color-hover: var(--apex-bg) !important;
  --em-button-border-color: var(--apex-border) !important;
  --em-button-border-color-hover: var(--apex-gold) !important;
  --em-arrow-bg-color: var(--apex-bg-alt) !important;
  --em-arrow-color: var(--apex-gold) !important;
  --em-arrow-border-color: var(--apex-border) !important;
  --em-arrow-bg-color-hover: var(--apex-gold) !important;
  --em-arrow-color-hover: var(--apex-bg) !important;
  --em-arrow-border-color-hover: var(--apex-gold) !important;
  background-color: var(--apex-bg-alt) !important;
  color: var(--apex-gold) !important;
  border-color: var(--apex-border) !important;
}

.em-button-light:hover,
.ecomus-brands-filters__button:hover,
.ecomus-brands-filters__button.active,
.ecomus-lookbook-products__button-item:hover,
.ecomus-product-price-tables-carousel .product-featured-icons .button:hover,
.ecomus-carousel--elementor .swiper-pagination--dots-arrow .swiper-button:hover,
.swiper .swiper-button:hover,
.swiper-button:hover,
.sidebar-panel__button:hover,
.mobile-sidebar-panel__button:hover,
.em-button-go-top:hover {
  background-color: var(--apex-gold) !important;
  color: var(--apex-bg) !important;
  border-color: var(--apex-gold) !important;
}

/* Sticky header must not flip to Ecomus white when it becomes active. */
.site-header__section,
.site-header__section.minimized,
.site-header__section.headroom--not-top {
  --em-header-sticky-bg-color: var(--apex-ink) !important;
  --em-header-sticky-color: var(--apex-text) !important;
}

.site-header__section .header-sticky,
.site-header__section .header-mobile-sticky,
.site-header__section.minimized .header-sticky,
.site-header__section.minimized .header-mobile-sticky,
.site-header__section.headroom--not-top .header-sticky,
.site-header__section.headroom--not-top .header-mobile-sticky {
  background: var(--apex-ink) !important;
  color: var(--apex-text) !important;
}

/* Search, login and other modal contents. */
.search-modal .modal__container,
.login-modal .modal__container,
.modal__quickview .modal__container,
.modal__quickview .modal__wrapper,
.modal__quickview .entry-summary {
  background: var(--apex-bg-alt) !important;
  color: var(--apex-text) !important;
}

/* Replace white/light text defaults inside dark surfaces. */
.panel__container a,
.sidebar__container a,
.modal__wrapper a,
.modal__quickview a,
.ecomus-timeline__content a,
.ecomus-image-info__summary a {
  color: var(--apex-gold) !important;
}
.panel__container a:hover,
.sidebar__container a:hover,
.modal__wrapper a:hover,
.modal__quickview a:hover,
.ecomus-timeline__content a:hover,
.ecomus-image-info__summary a:hover {
  color: var(--apex-gold-light) !important;
}

/* Hard-coded Ecomus white option variables, scoped to Apex surfaces. */
.ecomus-product-price-tables-carousel__highlight {
  --em-color__base: var(--apex-text-muted) !important;
  --em-color__dark: var(--apex-text) !important;
  --em-heading-color: var(--apex-text) !important;
  --em-link-color: var(--apex-gold) !important;
  --em-border-color: var(--apex-border) !important;
  --em-color-price-sale: var(--apex-gold) !important;
  --em-variation-border-color: var(--apex-border) !important;
  --em-variation-border-color-selected: var(--apex-gold) !important;
}

/* Form controls and native option lists stay dark. */
select,
select option,
select optgroup {
  background-color: var(--apex-bg-alt) !important;
  color: var(--apex-text) !important;
}

/* Elementor/WooCommerce content wrappers should inherit Apex rather than
   exposing the parent's white page background. */
.site,
.site-content,
.content-area,
.site-main,
.page-content,
.entry-content,
.woocommerce-page,
.woocommerce,
.woocommerce-shop,
.single-product {
  background-color: var(--apex-bg) !important;
  color: var(--apex-text) !important;
}


/* =========================================================
   CHECKOUT + CART OFF-CANVAS — APEX DARK OVERRIDES
   Built by Hola Web Solutions — https://holawebsolutions.com
   ========================================================= */
/* Ecomus/WooCommerce checkout has hard-coded light surfaces. Keep every
   checkout review/order-summary layer on the Apex dark palette. */
.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading,
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout .checkout-content-form .woocommerce-checkout-review-order,
.woocommerce-checkout .checkout-order-review,
.woocommerce-checkout .checkout-review-order,
.woocommerce-checkout .checkout-sidebar,
.woocommerce-checkout .checkout-sidebar-content,
.ecomus-woocommerce-checkout-elementor .woocommerce-checkout-review-order,
.ecomus-woocommerce-checkout-elementor #order_review {
  background: var(--apex-bg-alt) !important;
  background-color: var(--apex-bg-alt) !important;
  color: var(--apex-text) !important;
  border-color: var(--apex-border) !important;
}

.woocommerce-checkout form.checkout .woocommerce-checkout-review-order,
.woocommerce-checkout form.checkout #order_review {
  background: var(--apex-bg-alt) !important;
  color: var(--apex-text) !important;
}

.woocommerce-checkout #order_review_heading,
.woocommerce-checkout .woocommerce-checkout-review-order h3,
.woocommerce-checkout .woocommerce-checkout-review-order h4,
.woocommerce-checkout .woocommerce-checkout-review-order strong,
.woocommerce-checkout .woocommerce-checkout-review-order label,
.woocommerce-checkout .woocommerce-checkout-review-order th,
.woocommerce-checkout .woocommerce-checkout-review-order td,
.woocommerce-checkout .woocommerce-checkout-review-order .product-name,
.woocommerce-checkout .woocommerce-checkout-review-order .checkout-review-product-name,
.woocommerce-checkout .woocommerce-checkout-review-order .checkout-review-product-price,
.woocommerce-checkout .woocommerce-checkout-review-order .woocommerce-Price-amount,
.woocommerce-checkout .woocommerce-checkout-review-order .woocommerce-shipping-methods,
.woocommerce-checkout .woocommerce-checkout-review-order .tax_label,
.woocommerce-checkout .woocommerce-checkout-review-order .variation,
.woocommerce-checkout .woocommerce-checkout-review-order .variation dt,
.woocommerce-checkout .woocommerce-checkout-review-order .variation dd,
.woocommerce-checkout #order_review .product-name,
.woocommerce-checkout #order_review .product-total,
.woocommerce-checkout #order_review .woocommerce-Price-amount {
  color: var(--apex-text) !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order table,
.woocommerce-checkout #order_review table,
.woocommerce-checkout form.checkout table.shop_table {
  background: transparent !important;
  color: var(--apex-text) !important;
  border-color: var(--apex-border) !important;
}

.woocommerce-checkout form.checkout table.shop_table tbody,
.woocommerce-checkout form.checkout table.shop_table tfoot tr,
.woocommerce-checkout form.checkout .woocommerce-checkout-payment {
  border-color: var(--apex-border) !important;
}

.woocommerce-checkout .checkout-review-product-image .product-quantity {
  background: var(--apex-bg-alt) !important;
  color: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order .variation dt,
.woocommerce-checkout .woocommerce-checkout-review-order .variation dd,
.woocommerce-checkout .woocommerce-checkout-review-order .variation dd p {
  color: var(--apex-text-muted) !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order .woocommerce-checkout-payment,
.woocommerce-checkout .woocommerce-checkout-review-order .payment_box,
.woocommerce-checkout .woocommerce-checkout-review-order .woocommerce-privacy-policy-text,
.woocommerce-checkout .woocommerce-checkout-review-order .woocommerce-terms-and-conditions-wrapper {
  color: var(--apex-text-muted) !important;
}

/* Catch Ecomus light backgrounds used by checkout widgets/blocks. */
.woocommerce-checkout .checkout-form-cols,
.woocommerce-checkout .checkout-form-cols > div,
.woocommerce-checkout .checkout-form-cols .col2-set,
.woocommerce-checkout .checkout-form-cols .col-1,
.woocommerce-checkout .checkout-form-cols .col-2,
.woocommerce-checkout .ecomus-content-additional {
  background: transparent !important;
  color: var(--apex-text) !important;
}

/* Header cart / mini-cart off-canvas. */
#cart-panel,
#cart-panel .panel__container,
#cart-panel .panel__header,
#cart-panel .panel__content,
#cart-panel .widget_shopping_cart_content,
#cart-panel .woocommerce-mini-cart,
#cart-panel .widget_shopping_cart_footer,
#cart-panel .ecomus-free-shipping-bar,
#cart-panel .ecomus-mini-cart__coupons,
#cart-panel .ecomus-mini-cart-coupons {
  background: var(--apex-bg-alt) !important;
  background-color: var(--apex-bg-alt) !important;
  color: var(--apex-text) !important;
}

#cart-panel .panel__container {
  border-left: 1px solid var(--apex-border) !important;
  box-shadow: -20px 0 60px rgba(0,0,0,.35) !important;
}

#cart-panel .panel__header,
#cart-panel .woocommerce-mini-cart__total,
#cart-panel .woocommerce-mini-cart-item__data,
#cart-panel .woocommerce-mini-cart-item__data .variation,
#cart-panel .woocommerce-mini-cart-item__data .variation dt,
#cart-panel .woocommerce-mini-cart-item__data .variation dd,
#cart-panel .woocommerce-mini-cart-item__data .variation dd p,
#cart-panel .woocommerce-mini-cart-item__data .woocommerce-Price-amount,
#cart-panel .woocommerce-mini-cart-item__price,
#cart-panel .woocommerce-mini-cart__total strong,
#cart-panel .woocommerce-mini-cart__total .woocommerce-Price-amount,
#cart-panel .widget_shopping_cart_content .woocommerce-mini-cart__empty-message {
  color: var(--apex-text) !important;
}

#cart-panel .woocommerce-mini-cart-item {
  border-color: var(--apex-border) !important;
}

#cart-panel .woocommerce-mini-cart-item__data .variation,
#cart-panel .woocommerce-mini-cart-item__data .variation dt,
#cart-panel .woocommerce-mini-cart-item__data .variation dd,
#cart-panel .woocommerce-mini-cart__total .tax_label {
  color: var(--apex-text-muted) !important;
}

#cart-panel .woocommerce-mini-cart__total {
  border-color: var(--apex-border) !important;
}

#cart-panel .woocommerce-mini-cart__buttons .button:not(.checkout) {
  --em-button-color: var(--apex-gold) !important;
  --em-button-color-hover: var(--apex-bg) !important;
  --em-button-bg-color: transparent !important;
  --em-button-bg-color-hover: var(--apex-gold) !important;
  --em-button-border-color: var(--apex-border) !important;
  --em-button-border-color-hover: var(--apex-gold) !important;
  color: var(--apex-gold) !important;
  background: transparent !important;
  border-color: var(--apex-border) !important;
}

#cart-panel .woocommerce-mini-cart__buttons .button.checkout {
  --em-button-bg-color: var(--apex-gold) !important;
  --em-button-color: var(--apex-bg) !important;
  --em-button-border-color: var(--apex-gold) !important;
  background: var(--apex-gold) !important;
  color: var(--apex-bg) !important;
  border-color: var(--apex-gold) !important;
}

#cart-panel .woocommerce-mini-cart__buttons .button:hover {
  background: var(--apex-gold) !important;
  color: var(--apex-bg) !important;
  border-color: var(--apex-gold) !important;
}

#cart-panel .remove_from_cart_button,
#cart-panel a {
  color: var(--apex-gold) !important;
}

#cart-panel .remove_from_cart_button:hover,
#cart-panel a:hover {
  color: var(--apex-gold-light) !important;
}

#cart-panel .panel__button-close {
  color: var(--apex-gold) !important;
}

#cart-panel .panel__backdrop {
  background: rgba(0,0,0,.72) !important;
}

/* Prevent Ecomus light modal/panel variables from leaking into the cart. */
#cart-panel,
#cart-panel .panel__container {
  --em-color__light: var(--apex-bg-alt) !important;
  --em-color__lighter: var(--apex-bg) !important;
  --em-color__dark: var(--apex-text) !important;
  --em-color__base: var(--apex-text-muted) !important;
  --em-border-color: var(--apex-border) !important;
  --em-modal-content-background-color: var(--apex-bg-alt) !important;
}

/* Generic Ecomus off-canvas panels use the same Apex treatment. */
.offscreen-panel .panel__container,
.offscreen-panel .panel__header,
.offscreen-panel .panel__content {
  background-color: var(--apex-bg-alt) !important;
  color: var(--apex-text) !important;
}

/* =========================================================
   WOOCOMMERCE BLOCK CHECKOUT — ORDER SUMMARY DARK FIX
   Built by Hola Web Solutions — https://holawebsolutions.com
   ========================================================= */
/* The screenshot uses the WooCommerce Blocks checkout sidebar/order-summary,
   not the classic #order_review markup. Ecomus gives these blocks a light
   #fbfbfc surface, so explicitly restyle the complete summary tree. */
.wp-block-woocommerce-checkout .wc-block-components-sidebar,
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block,
.wp-block-woocommerce-checkout .wc-block-components-order-summary,
.wp-block-woocommerce-checkout .wc-block-components-panel,
.wp-block-woocommerce-checkout .wc-block-components-totals-coupon,
.wp-block-woocommerce-checkout .wc-block-components-totals-item,
.wp-block-woocommerce-checkout .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout .wc-block-components-totals-footer-item {
  background: var(--apex-bg-alt) !important;
  background-color: var(--apex-bg-alt) !important;
  color: var(--apex-text) !important;
  border-color: var(--apex-border) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-sidebar {
  color: var(--apex-text) !important;
  --wc-block-components-color-text: var(--apex-text) !important;
  --wc-block-components-color-accent: var(--apex-gold) !important;
  --wc-block-components-color-background: var(--apex-bg-alt) !important;
  --wc-block-components-color-border: var(--apex-border) !important;
  --wc-block-components-color-price: var(--apex-text) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-sidebar,
.wp-block-woocommerce-checkout .wc-block-components-sidebar * {
  border-color: var(--apex-border) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-sidebar,
.wp-block-woocommerce-checkout .wc-block-components-sidebar h2,
.wp-block-woocommerce-checkout .wc-block-components-sidebar h3,
.wp-block-woocommerce-checkout .wc-block-components-sidebar h4,
.wp-block-woocommerce-checkout .wc-block-components-sidebar p,
.wp-block-woocommerce-checkout .wc-block-components-sidebar span,
.wp-block-woocommerce-checkout .wc-block-components-sidebar strong,
.wp-block-woocommerce-checkout .wc-block-components-sidebar label,
.wp-block-woocommerce-checkout .wc-block-components-sidebar a,
.wp-block-woocommerce-checkout .wc-block-components-sidebar button,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-order-summary__title,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-order-summary-item__description,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-product-name,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-product-price,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-product-price__value,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-item__label,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-item__value,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-footer-item__label,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-footer-item__value,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-item__description {
  color: var(--apex-text) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-sidebar a,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-panel__button,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-coupon__button {
  color: var(--apex-gold) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-sidebar a:hover,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-panel__button:hover,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-coupon__button:hover {
  color: var(--apex-gold-light) !important;
}

/* Product metadata is intentionally slightly muted, while remaining readable. */
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-product-metadata,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-product-metadata dt,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-product-metadata dd,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-product-details__name,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-product-details__value {
  color: var(--apex-text-muted) !important;
}

/* Quantity bubbles beside product images. */
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-order-summary-item__quantity {
  background: var(--apex-bg) !important;
  color: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
  box-shadow: none !important;
}

/* Remove the parent's light sidebar surface and preserve Apex dark layers. */
.wp-block-woocommerce-checkout .wc-block-components-sidebar,
.wp-block-woocommerce-checkout .wc-block-components-sidebar > *,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-order-summary,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-wrapper,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-coupon,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-item,
.wp-block-woocommerce-checkout .wc-block-components-sidebar .wc-block-components-totals-footer-item {
  background-image: none !important;
}

/* Coupon input/button and any expanded panel inside the summary. */
.wp-block-woocommerce-checkout .wc-block-components-sidebar input,
.wp-block-woocommerce-checkout .wc-block-components-sidebar select,
.wp-block-woocommerce-checkout .wc-block-components-sidebar textarea {
  background: var(--apex-bg) !important;
  background-color: var(--apex-bg) !important;
  color: var(--apex-text) !important;
  border-color: var(--apex-border) !important;
}

.wp-block-woocommerce-checkout .wc-block-components-sidebar input::placeholder {
  color: var(--apex-text-muted) !important;
  opacity: 1 !important;
}

/* Checkout Blocks sometimes paint the order-summary using CSS variables after
   the theme stylesheet loads; force those variables at the widget root too. */
.wp-block-woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block {
  --wc-block-components-color-text: var(--apex-text) !important;
  --wc-block-components-color-accent: var(--apex-gold) !important;
  --wc-block-components-color-background: var(--apex-bg-alt) !important;
  --wc-block-components-color-border: var(--apex-border) !important;
  --wc-block-components-color-price: var(--apex-text) !important;
}


/* =========================================================
   CART PAGE + CART TOTALS — APEX DARK OVERRIDES
   Built by Hola Web Solutions — https://holawebsolutions.com
   ========================================================= */
/* WooCommerce Cart Blocks use a separate sidebar/totals tree from checkout.
   Ecomus paints this sidebar #f5f5f5, so force every cart surface and text
   layer back to the Apex dark palette. */
.woocommerce-cart .wc-block-cart,
.woocommerce-cart .wp-block-woocommerce-cart,
.woocommerce-cart .wc-block-cart .wc-block-components-sidebar,
.woocommerce-cart .wc-block-cart .wc-block-components-sidebar-layout .wc-block-components-sidebar,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-wrapper,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-item,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-shipping,
.woocommerce-cart .wc-block-cart .wc-block-components-shipping-rates-control,
.woocommerce-cart .wc-block-cart .wc-block-components-panel,
.woocommerce-cart .wc-block-cart .wc-block-components-order-summary,
.woocommerce-cart .wc-block-cart .wc-block-cart__sidebar {
  background: var(--apex-bg-alt) !important;
  background-color: var(--apex-bg-alt) !important;
  color: var(--apex-text) !important;
  border-color: var(--apex-border) !important;
  box-shadow: none !important;
}

.woocommerce-cart .wc-block-cart .wc-block-components-sidebar {
  --wc-block-components-color-text: var(--apex-text) !important;
  --wc-block-components-color-accent: var(--apex-gold) !important;
  --wc-block-components-color-background: var(--apex-bg-alt) !important;
  --wc-block-components-color-border: var(--apex-border) !important;
  --wc-block-components-color-price: var(--apex-text) !important;
  --wc-block-components-color-primary: var(--apex-gold) !important;
  --wc-block-components-color-input-background: var(--apex-bg) !important;
  --wc-block-components-color-input-text: var(--apex-text) !important;
}

/* Cart table: headings, product names, metadata, quantities and totals. */
.woocommerce-cart .wc-block-cart table.wc-block-cart-items,
.woocommerce-cart .wc-block-cart table.wc-block-cart-items th,
.woocommerce-cart .wc-block-cart table.wc-block-cart-items td,
.woocommerce-cart .wc-block-cart table.wc-block-cart-items a,
.woocommerce-cart .wc-block-cart table.wc-block-cart-items span,
.woocommerce-cart .wc-block-cart table.wc-block-cart-items strong,
.woocommerce-cart .wc-block-cart .wc-block-components-product-name,
.woocommerce-cart .wc-block-cart .wc-block-components-product-price,
.woocommerce-cart .wc-block-cart .wc-block-formatted-money-amount,
.woocommerce-cart .wc-block-cart .wc-block-cart-item__total,
.woocommerce-cart .wc-block-cart .wc-block-cart__totals-title,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-item__label,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-item__value,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item__label,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item__value {
  color: var(--apex-text) !important;
}

.woocommerce-cart .wc-block-cart .wc-block-components-product-name,
.woocommerce-cart .wc-block-cart .wc-block-components-product-price,
.woocommerce-cart .wc-block-cart .wc-block-formatted-money-amount,
.woocommerce-cart .wc-block-cart .wc-block-cart__totals-title,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item__value {
  color: var(--apex-text) !important;
}

.woocommerce-cart .wc-block-cart .wc-block-components-product-name:hover,
.woocommerce-cart .wc-block-cart .wc-block-cart-item__quantity .wc-block-cart-item__remove-link,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-shipping__change-address__link,
.woocommerce-cart .wc-block-cart .wc-block-components-panel__button,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon__button {
  color: var(--apex-gold) !important;
}

.woocommerce-cart .wc-block-cart .wc-block-components-product-metadata,
.woocommerce-cart .wc-block-cart .wc-block-components-product-details__name,
.woocommerce-cart .wc-block-cart .wc-block-components-product-details__value,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-item__description {
  color: var(--apex-text-muted) !important;
}

/* Quantity controls must remain readable against the dark cart. */
.woocommerce-cart .wc-block-cart .wc-block-components-quantity-selector,
.woocommerce-cart .wc-block-cart .wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
  background: var(--apex-bg) !important;
  background-color: var(--apex-bg) !important;
  color: var(--apex-text) !important;
  border-color: var(--apex-gold) !important;
  box-shadow: none !important;
}

.woocommerce-cart .wc-block-cart .wc-block-components-quantity-selector .wc-block-components-quantity-selector__button {
  color: var(--apex-gold) !important;
  background: transparent !important;
  border-color: var(--apex-gold) !important;
}

/* Kill the parent's light sidebar surface and internal white layers. */
.woocommerce-cart .wc-block-cart .wc-block-components-sidebar,
.woocommerce-cart .wc-block-cart .wc-block-components-sidebar > *,
.woocommerce-cart .wc-block-cart .wc-block-components-sidebar section,
.woocommerce-cart .wc-block-cart .wc-block-components-sidebar div,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-wrapper,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-item,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item {
  background-image: none !important;
}

/* Coupon / shipping inputs and selects. */
.woocommerce-cart .wc-block-cart .wc-block-components-text-input input,
.woocommerce-cart .wc-block-cart input,
.woocommerce-cart .wc-block-cart select,
.woocommerce-cart .wc-block-cart textarea,
.woocommerce-cart .wc-block-cart .wc-block-components-combobox .components-combobox-control__input,
.woocommerce-cart .wc-block-cart .wc-block-components-select .wc-block-components-select__container {
  background: var(--apex-bg) !important;
  background-color: var(--apex-bg) !important;
  color: var(--apex-text) !important;
  border-color: var(--apex-border) !important;
  box-shadow: none !important;
}

.woocommerce-cart .wc-block-cart input::placeholder,
.woocommerce-cart .wc-block-cart textarea::placeholder {
  color: var(--apex-text-muted) !important;
  opacity: 1 !important;
}

/* Coupon row / separators. */
.woocommerce-cart .wc-block-cart .wc-block-components-totals-coupon,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-wrapper,
.woocommerce-cart .wc-block-cart .wc-block-components-totals-footer-item,
.woocommerce-cart .wc-block-cart .wc-block-cart-items__row td,
.woocommerce-cart .wc-block-cart .wc-block-cart-items__header th {
  border-color: var(--apex-border) !important;
}

/* Cart summary button: Apex gold outline with readable text. */
.woocommerce-cart .wc-block-cart .wc-block-cart__submit-button,
.woocommerce-cart .wc-block-cart .wc-block-components-button {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--apex-gold) !important;
  border: 1px solid var(--apex-gold) !important;
  box-shadow: none !important;
}

.woocommerce-cart .wc-block-cart .wc-block-cart__submit-button:hover,
.woocommerce-cart .wc-block-cart .wc-block-cart__submit-button:active,
.woocommerce-cart .wc-block-cart .wc-block-components-button:hover {
  background: var(--apex-gold) !important;
  background-color: var(--apex-gold) !important;
  color: var(--apex-ink) !important;
  border-color: var(--apex-gold) !important;
}

/* Classic WooCommerce cart fallback, so the dark treatment remains consistent
   if the site switches from Cart Blocks to the classic cart shortcode. */
.woocommerce-cart .cart_totals .cart_totals_summary,
.woocommerce-cart table.woocommerce-cart-form__contents,
.woocommerce-cart table.woocommerce-cart-form__contents tbody,
.woocommerce-cart table.woocommerce-cart-form__contents thead {
  background: var(--apex-bg-alt) !important;
  background-color: var(--apex-bg-alt) !important;
  color: var(--apex-text) !important;
}

.woocommerce-cart .cart_totals .cart_totals_summary,
.woocommerce-cart .cart_totals table.shop_table,
.woocommerce-cart table.woocommerce-cart-form__contents {
  border-color: var(--apex-border) !important;
}

.woocommerce-cart .cart_totals .cart_totals_summary h2,
.woocommerce-cart .cart_totals .cart-subtotal th,
.woocommerce-cart .cart_totals .cart-subtotal td,
.woocommerce-cart .cart_totals .woocommerce-shipping-totals,
.woocommerce-cart .cart_totals .order-total,
.woocommerce-cart table.woocommerce-cart-form__contents th,
.woocommerce-cart table.woocommerce-cart-form__contents td,
.woocommerce-cart table.woocommerce-cart-form__contents td.product-name a,
.woocommerce-cart table.woocommerce-cart-form__contents td.product-subtotal,
.woocommerce-cart table.woocommerce-cart-form__contents td.product-price {
  color: var(--apex-text) !important;
}

.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button {
  background: transparent !important;
  color: var(--apex-gold) !important;
  border: 1px solid var(--apex-gold) !important;
}

.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button:hover {
  background: var(--apex-gold) !important;
  color: var(--apex-ink) !important;
}


/* =========================================================
   TYPOGRAPHY UPDATE — v1.8.1
   Built by Hola Web Solutions — https://holawebsolutions.com
   ========================================================= */

/* Apex typography system:
 * Jost = body, navigation, UI and WooCommerce interface
 * Playfair Display = headings and display titles
 */

html,
body,
button,
input,
select,
textarea {
  font-family: "Jost", sans-serif;
}

body,
p,
li,
label,
small,
figcaption,
blockquote {
  font-family: "Jost", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.entry-title,
.page-title,
.product_title,
.woocommerce-loop-product__title {
  font-family: "Playfair Display", Georgia, serif;
}

a {
  font-family: inherit;
}

button,
.button,
input[type="button"],
input[type="submit"],
input[type="reset"],
.wp-element-button,
.wp-block-button__link {
  font-family: "Jost", sans-serif;
}

.site-header,
.site-header a,
.main-navigation,
.main-navigation a,
.primary-navigation,
.primary-navigation a {
  font-family: "Jost", sans-serif;
}

.woocommerce,
.woocommerce-page {
  font-family: "Jost", sans-serif;
}

.woocommerce h1,
.woocommerce h2,
.woocommerce h3,
.woocommerce h4,
.woocommerce h5,
.woocommerce h6,
.woocommerce .product_title,
.woocommerce .woocommerce-loop-product__title {
  font-family: "Playfair Display", Georgia, serif;
}

.woocommerce .price,
.woocommerce .product_meta,
.woocommerce .woocommerce-product-details__short-description,
.woocommerce .quantity,
.woocommerce .variations,
.woocommerce label {
  font-family: "Jost", sans-serif;
}

.woocommerce-cart,
.woocommerce-cart table,
.woocommerce-cart .cart_totals,
.wc-block-cart,
.woocommerce-checkout,
.wc-block-checkout {
  font-family: "Jost", sans-serif;
}

.woocommerce-cart .cart_totals h2,
.wc-block-cart h2,
.wc-block-cart h3,
.woocommerce-checkout h1,
.woocommerce-checkout h2,
.woocommerce-checkout h3,
.woocommerce-checkout h4,
.wc-block-checkout h1,
.wc-block-checkout h2,
.wc-block-checkout h3,
.wc-block-checkout h4 {
  font-family: "Playfair Display", Georgia, serif;
}

.apex-events,
.apex-events p,
.apex-events span,
.apex-events a,
.apex-events button {
  font-family: "Jost", sans-serif;
}

.apex-event-title,
.apex-events h1,
.apex-events h2,
.apex-events h3,
.apex-events h4 {
  font-family: "Playfair Display", Georgia, serif;
}

.elementor,
.elementor-widget-text-editor,
.elementor-widget-button,
.elementor-widget-icon-list {
  font-family: "Jost", sans-serif;
}

.elementor-widget-heading .elementor-heading-title {
  font-family: "Playfair Display", Georgia, serif;
}

input,
textarea,
select,
option {
  font-family: "Jost", sans-serif;
}



/* =========================================================
   APEX CATALOG FINISH — v1.9.5
   Ecomus icons, soft separators, stock treatment and
   archive Order Now buttons.
   ========================================================= */

/* Restore / reinforce Ecomus inline SVG icons.
 * Ecomus renders these as inline SVGs; keep them visible
 * against the Apex dark palette. */
.woocommerce .ecomus-svg-icon,
.woocommerce-page .ecomus-svg-icon,
.apex-woocommerce .ecomus-svg-icon {
  display: inline-block !important;
  line-height: 1 !important;
  color: var(--apex-gold) !important;
  visibility: visible !important;
  opacity: 1 !important;
  flex: 0 0 auto;
}

.woocommerce .ecomus-svg-icon svg,
.woocommerce-page .ecomus-svg-icon svg,
.apex-woocommerce .ecomus-svg-icon svg {
  display: inline-block !important;
  width: 1em !important;
  height: 1em !important;
  fill: currentColor !important;
  color: currentColor !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Product action icon buttons: keep Ecomus icons gold and
 * remove any accidental white/light icon surface. */
.woocommerce ul.products .product-loop-button,
.woocommerce-page ul.products .product-loop-button {
  color: var(--apex-gold) !important;
  background: transparent !important;
  background-color: transparent !important;
  border-color: var(--apex-gold) !important;
}

.woocommerce ul.products .product-loop-button:hover,
.woocommerce-page ul.products .product-loop-button:hover {
  color: var(--apex-ink) !important;
  background: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
}

.woocommerce ul.products .product-loop-button:hover .ecomus-svg-icon,
.woocommerce-page ul.products .product-loop-button:hover .ecomus-svg-icon {
  color: var(--apex-ink) !important;
}

.woocommerce ul.products .product-loop-button:hover .ecomus-svg-icon svg,
.woocommerce-page ul.products .product-loop-button:hover .ecomus-svg-icon svg {
  fill: currentColor !important;
}

/* Soft horizontal rule across the catalog, matching the
 * understated gold line in the Apex hero. */
.woocommerce-shop .apex-shop-hero,
.tax-product_cat .apex-shop-hero,
.post-type-archive-product .apex-shop-hero {
  border-bottom: 1px solid color-mix(in oklab, var(--apex-gold) 16%, transparent) !important;
  box-sizing: border-box;
}

.woocommerce-shop ul.products,
.tax-product_cat ul.products,
.post-type-archive-product ul.products {
  border-top: 1px solid color-mix(in oklab, var(--apex-gold) 10%, transparent);
  padding-top: 34px !important;
}

/* Individual product cards get a very soft divider without
 * making the grid look boxed in. */
.woocommerce-shop ul.products li.product,
.tax-product_cat ul.products li.product,
.post-type-archive-product ul.products li.product {
  border-bottom: 0;
}

/* Remove the white/light stock surface on product pages.
 * Keep "In stock" as simple gold text. */
.woocommerce div.product .stock,
.woocommerce div.product p.stock,
.woocommerce div.product .stock.in-stock,
.woocommerce-page div.product .stock,
.woocommerce-page div.product p.stock,
.woocommerce-page div.product .stock.in-stock {
  display: inline-block !important;
  width: auto !important;
  min-height: 0 !important;
  margin: 10px 0 18px !important;
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  color: var(--apex-gold-light) !important;
  font-family: var(--apex-font-body) !important;
  font-size: 13px !important;
  letter-spacing: .05em;
}

/* "In stock" dot/marker, if Ecomus/WooCommerce adds one. */
.woocommerce div.product .stock::before,
.woocommerce-page div.product .stock::before {
  background: var(--apex-gold) !important;
}

/* Archive Order Now CTA. */
.woocommerce ul.products .product-loop-button-atc,
.woocommerce-page ul.products .product-loop-button-atc,
.woocommerce ul.products .apex-order-now,
.woocommerce-page ul.products .apex-order-now {
  min-height: 44px !important;
  padding: 9px 20px !important;
  border: 1px solid var(--apex-gold) !important;
  border-radius: var(--apex-radius) !important;
  background: transparent !important;
  color: var(--apex-gold) !important;
  box-shadow: none !important;
  font-family: var(--apex-font-body) !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: .14em !important;
  line-height: 1.2 !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease !important;
}

.woocommerce ul.products .product-loop-button-atc:hover,
.woocommerce-page ul.products .product-loop-button-atc:hover,
.woocommerce ul.products .apex-order-now:hover,
.woocommerce-page ul.products .apex-order-now:hover {
  background: var(--apex-gold) !important;
  color: var(--apex-ink) !important;
  border-color: var(--apex-gold) !important;
  transform: translateY(-1px);
}

.woocommerce ul.products .product-loop-button-atc:hover .ecomus-svg-icon,
.woocommerce-page ul.products .product-loop-button-atc:hover .ecomus-svg-icon {
  color: var(--apex-ink) !important;
}

/* Keep the product title / price area separated from the CTA
 * without adding a heavy box. */
.woocommerce ul.products li.product .product-summary,
.woocommerce ul.products li.product .product-summary-content {
  border-top-color: color-mix(in oklab, var(--apex-gold) 9%, transparent) !important;
}

/* Single-product wishlist/compare controls: white labels and
 * visible inline SVGs on the transparent gold-outline buttons. */
.single-product form.cart .product-featured-icons .product-loop-button,
.single-product form.cart .product-featured-icons .wcboost-wishlist-button,
.single-product form.cart .product-featured-icons .wcboost-products-compare-button {
  color: #fff !important;
  background: transparent !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 72%, transparent) !important;
  box-shadow: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.single-product form.cart .product-featured-icons .ecomus-svg-icon,
.single-product form.cart .product-featured-icons .wcboost-wishlist-button__icon,
.single-product form.cart .product-featured-icons .wcboost-products-compare-button__icon,
.single-product form.cart .product-featured-icons svg {
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: inline-block !important;
}

.single-product form.cart .product-featured-icons .wcboost-wishlist-button__text,
.single-product form.cart .product-featured-icons .wcboost-products-compare-button__text {
  color: #fff !important;
}

.single-product form.cart .product-featured-icons .product-loop-button:hover,
.single-product form.cart .product-featured-icons .wcboost-wishlist-button:hover,
.single-product form.cart .product-featured-icons .wcboost-products-compare-button:hover {
  color: var(--apex-ink) !important;
  background: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
}

.single-product form.cart .product-featured-icons .product-loop-button:hover .ecomus-svg-icon,
.single-product form.cart .product-featured-icons .product-loop-button:hover svg,
.single-product form.cart .product-featured-icons .wcboost-wishlist-button:hover .wcboost-wishlist-button__icon,
.single-product form.cart .product-featured-icons .wcboost-products-compare-button:hover .wcboost-products-compare-button__icon {
  color: var(--apex-ink) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

/* Replace the generic WooCommerce/Ecomus purchase wording with
 * the Apex call-to-action while preserving the real form. */
.single-product .single_add_to_cart_button,
.single-product .em-addtocart-text-single-product--variable {
  color: var(--apex-ink) !important;
}

/* Keep any Ecomus "added to cart" follow-up link out of the
 * single-product purchase area. */
.single-product .added_to_cart.wc-forward {
  display: none !important;
}

/* Single product soft divider around the purchase information. */
.single-product div.product .summary {
  border-left: 1px solid color-mix(in oklab, var(--apex-gold) 10%, transparent);
  padding-left: 36px;
}

@media (max-width: 767px) {
  .single-product div.product .summary {
    border-left: 0;
    border-top: 1px solid color-mix(in oklab, var(--apex-gold) 10%, transparent);
    padding-left: 0;
    padding-top: 28px;
  }

  .woocommerce ul.products li.product,
  .tax-product_cat ul.products li.product,
  .post-type-archive-product ul.products li.product {
    padding-bottom: 0;
  }
}


/* =========================================================
 * APEX SINGLE PRODUCT — HARD FIX FOR WCBOOST ICON BUTTONS
 * ========================================================= */
.single-product form.cart .product-featured-icons,
.single-product .product-featured-icons.product-featured-icons--single-product {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.single-product form.cart .product-featured-icons > a,
.single-product .product-featured-icons.product-featured-icons--single-product > a,
.single-product form.cart .product-featured-icons .wcboost-wishlist-button,
.single-product form.cart .product-featured-icons .wcboost-products-compare-button {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  min-width: 48px !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #fff !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 72%, transparent) !important;
  border-radius: 3px !important;
  box-shadow: none !important;
  text-decoration: none !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.single-product form.cart .product-featured-icons a > *,
.single-product .product-featured-icons.product-featured-icons--single-product a > * {
  color: #fff !important;
}

.single-product form.cart .product-featured-icons .wcboost-wishlist-button__text,
.single-product form.cart .product-featured-icons .wcboost-products-compare-button__text,
.single-product .product-featured-icons.product-featured-icons--single-product .wcboost-wishlist-button__text,
.single-product .product-featured-icons.product-featured-icons--single-product .wcboost-products-compare-button__text {
  display: none !important;
  color: #fff !important;
}

/* The plugin/theme can return an empty icon span. JS supplies the
 * SVG, while these rules guarantee the SVG itself cannot be hidden. */
.single-product form.cart .product-featured-icons .wcboost-wishlist-button__icon,
.single-product form.cart .product-featured-icons .wcboost-products-compare-button__icon,
.single-product .product-featured-icons.product-featured-icons--single-product .wcboost-wishlist-button__icon,
.single-product .product-featured-icons.product-featured-icons--single-product .wcboost-products-compare-button__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  height: 22px !important;
  margin: 0 !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.single-product form.cart .product-featured-icons .wcboost-wishlist-button__icon svg,
.single-product form.cart .product-featured-icons .wcboost-products-compare-button__icon svg,
.single-product .product-featured-icons.product-featured-icons--single-product .wcboost-wishlist-button__icon svg,
.single-product .product-featured-icons.product-featured-icons--single-product .wcboost-products-compare-button__icon svg {
  display: block !important;
  width: 21px !important;
  height: 21px !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.single-product form.cart .product-featured-icons .wcboost-wishlist-button:hover,
.single-product form.cart .product-featured-icons .wcboost-products-compare-button:hover,
.single-product .product-featured-icons.product-featured-icons--single-product a:hover {
  color: var(--apex-ink) !important;
  background: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
}

.single-product form.cart .product-featured-icons a:hover > *,
.single-product form.cart .product-featured-icons a:hover svg {
  color: var(--apex-ink) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

/* Hide every known Ecomus sticky purchase prompt on product pages,
 * including variants injected after page load. */
.single-product .ecomus-sticky-add-to-cart,
.single-product .ecomus-atc-sticky,
.single-product .ecomus-sticky-atc,
.single-product [class*="sticky-add-to-cart"],
.single-product [class*="sticky-atc"] {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.single-product .ecomus-navigation-bar-show.ecomus-atc-sticky-height-open {
  padding-bottom: 0 !important;
}


/* =========================================================
 * APEX PRODUCT CARD — VISIBLE QUICK VIEW + ORDER NOW
 * ========================================================= */
ul.products li.product .product-featured-icons .apex-quick-view-button,
ul.products li.product .product-featured-icons .apex-order-now-button,
ul.products li.product .product-featured-icons .product-loop-button-atc {
  width: auto !important;
  min-width: 48px !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 13px !important;
  gap: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  background: color-mix(in oklab, var(--apex-ink) 94%, transparent) !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 78%, transparent) !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  visibility: visible !important;
  opacity: 1 !important;
}

ul.products li.product .product-featured-icons .apex-quick-view-button .ecomus-button__icon,
ul.products li.product .product-featured-icons .apex-order-now-button .ecomus-svg-icon,
ul.products li.product .product-featured-icons .apex-action-icon {
  width: 19px !important;
  height: 19px !important;
  min-width: 19px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  visibility: visible !important;
  opacity: 1 !important;
}

ul.products li.product .product-featured-icons .apex-quick-view-button svg,
ul.products li.product .product-featured-icons .apex-order-now-button svg,
ul.products li.product .product-featured-icons .apex-action-icon svg {
  width: 19px !important;
  height: 19px !important;
  display: block !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  visibility: visible !important;
  opacity: 1 !important;
}

ul.products li.product .product-featured-icons .apex-quick-view-button .ecomus-quickview-button__text,
ul.products li.product .product-featured-icons .apex-order-now-button .add-to-cart__text {
  display: inline !important;
  width: auto !important;
  max-width: none !important;
  overflow: visible !important;
  white-space: nowrap !important;
  color: #fff !important;
  font-family: var(--apex-font-body) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;
  visibility: visible !important;
  opacity: 1 !important;
}

ul.products li.product .product-featured-icons .apex-quick-view-button:hover,
ul.products li.product .product-featured-icons .apex-order-now-button:hover,
ul.products li.product .product-featured-icons .product-loop-button-atc:hover {
  color: var(--apex-ink) !important;
  background: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
}

ul.products li.product .product-featured-icons .apex-quick-view-button:hover svg,
ul.products li.product .product-featured-icons .apex-order-now-button:hover svg,
ul.products li.product .product-featured-icons .apex-quick-view-button:hover .ecomus-quickview-button__text,
ul.products li.product .product-featured-icons .apex-order-now-button:hover .add-to-cart__text {
  color: var(--apex-ink) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}


/* =========================================================
 * APEX SINGLE-PRODUCT LOOPS — RELATED + RECENTLY VIEWED
 *
 * Ecomus applies its icon-round/icon-only product-card layout to
 * these loops as well. Reuse the Apex labeled Quick View + Order
 * Now treatment so these cards match the Shop archive exactly.
 * ========================================================= */
.single-product section.related.products,
.single-product section.recently-viewed-products {
  margin-top: 56px !important;
  padding-top: 34px !important;
  border-top: 1px solid color-mix(in oklab, var(--apex-gold) 16%, transparent) !important;
}

.single-product section.related.products > h2,
.single-product section.recently-viewed-products > .recently-viewed-products__title {
  margin: 0 0 26px !important;
  color: var(--apex-text) !important;
  font-family: var(--apex-font-display) !important;
  font-size: clamp(25px, 3vw, 36px) !important;
  font-weight: 500 !important;
  line-height: 1.15 !important;
}

.single-product section.related.products ul.products,
.single-product section.recently-viewed-products ul.products {
  gap: 22px !important;
}

.single-product section.related.products ul.products li.product,
.single-product section.recently-viewed-products ul.products li.product {
  position: relative !important;
  overflow: visible !important;
  background: var(--apex-bg-alt) !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 22%, transparent) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  transition: border-color .25s ease, transform .25s ease, box-shadow .25s ease !important;
}

.single-product section.related.products ul.products li.product:hover,
.single-product section.recently-viewed-products ul.products li.product:hover {
  border-color: color-mix(in oklab, var(--apex-gold) 55%, transparent) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 28px rgba(0,0,0,.32) !important;
}

.single-product section.related.products ul.products li.product .product-inner,
.single-product section.recently-viewed-products ul.products li.product .product-inner {
  background: transparent !important;
}

.single-product section.related.products ul.products li.product .product-thumbnail,
.single-product section.recently-viewed-products ul.products li.product .product-thumbnail {
  border-radius: 3px 3px 0 0 !important;
  overflow: hidden !important;
}

.single-product section.related.products ul.products li.product .woocommerce-loop-product__title,
.single-product section.recently-viewed-products ul.products li.product .woocommerce-loop-product__title,
.single-product section.related.products ul.products li.product h2,
.single-product section.recently-viewed-products ul.products li.product h2 {
  color: var(--apex-gold-light) !important;
  font-family: var(--apex-font-display) !important;
  font-weight: 500 !important;
}

.single-product section.related.products ul.products li.product .price,
.single-product section.recently-viewed-products ul.products li.product .price {
  color: var(--apex-gold) !important;
  font-weight: 700 !important;
}

/* Remove Ecomus circular icon treatment in these two sections. */
.single-product section.related.products ul.products li.product .product-featured-icons,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons {
  border-radius: 0 !important;
  background: transparent !important;
}

.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button {
  width: auto !important;
  min-width: 48px !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 13px !important;
  margin: 0 !important;
  gap: 8px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 4px !important;
  color: #fff !important;
  background: color-mix(in oklab, var(--apex-ink) 94%, transparent) !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 78%, transparent) !important;
  box-shadow: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button svg,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button svg,
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button .ecomus-svg-icon,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button .ecomus-svg-icon,
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button .ecomus-button__icon,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button .ecomus-button__icon {
  display: inline-flex !important;
  width: 19px !important;
  height: 19px !important;
  min-width: 19px !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button svg,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button svg {
  display: block !important;
  width: 19px !important;
  height: 19px !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button .add-to-cart__text,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button .add-to-cart__text,
.single-product section.related.products ul.products li.product .product-featured-icons .ecomus-quickview-button__text,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .ecomus-quickview-button__text {
  display: inline !important;
  width: auto !important;
  max-width: none !important;
  overflow: visible !important;
  white-space: nowrap !important;
  color: #fff !important;
  font-family: var(--apex-font-body) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button:hover,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button:hover {
  color: var(--apex-ink) !important;
  background: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
}

.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button:hover svg,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button:hover svg,
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button:hover .add-to-cart__text,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button:hover .add-to-cart__text,
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button:hover .ecomus-quickview-button__text,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button:hover .ecomus-quickview-button__text {
  color: var(--apex-ink) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

@media (max-width: 767px) {
  .single-product section.related.products,
  .single-product section.recently-viewed-products {
    margin-top: 38px !important;
    padding-top: 26px !important;
  }

  .single-product section.related.products ul.products,
  .single-product section.recently-viewed-products ul.products {
    gap: 12px !important;
  }

  .single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button,
  .single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button {
    min-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 9px !important;
  }

  .single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button .add-to-cart__text,
  .single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button .add-to-cart__text,
  .single-product section.related.products ul.products li.product .product-featured-icons .ecomus-quickview-button__text,
  .single-product section.recently-viewed-products ul.products li.product .product-featured-icons .ecomus-quickview-button__text {
    font-size: 10px !important;
  }
}


/* =========================================================
 * APEX PRODUCT ACTIONS — FINAL WHITE ICON / HOVER TEXT FIX
 * ========================================================= */
ul.products li.product .product-featured-icons .apex-quick-view-button,
ul.products li.product .product-featured-icons .apex-order-now-button,
ul.products li.product .product-featured-icons .product-loop-button-atc,
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

ul.products li.product .product-featured-icons .apex-quick-view-button svg,
ul.products li.product .product-featured-icons .apex-order-now-button svg,
ul.products li.product .product-featured-icons .product-loop-button-atc svg,
ul.products li.product .product-featured-icons .apex-quick-view-button .ecomus-button__icon,
ul.products li.product .product-featured-icons .apex-order-now-button .ecomus-svg-icon,
ul.products li.product .product-featured-icons .apex-order-now-button .apex-action-icon {
  color: #fff !important;
  fill: currentColor !important;
  stroke: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

ul.products li.product .product-featured-icons .apex-quick-view-button .ecomus-quickview-button__text,
ul.products li.product .product-featured-icons .apex-order-now-button .add-to-cart__text,
ul.products li.product .product-featured-icons .apex-order-now-button .apex-action-label,
ul.products li.product .product-featured-icons .apex-quick-view-button .apex-action-label {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Keep BOTH the visible labels and Ecomus hover tooltip text white. */
ul.products li.product .product-featured-icons .apex-quick-view-button:hover,
ul.products li.product .product-featured-icons .apex-order-now-button:hover,
ul.products li.product .product-featured-icons .product-loop-button-atc:hover,
ul.products li.product .product-featured-icons .apex-quick-view-button:hover .ecomus-quickview-button__text,
ul.products li.product .product-featured-icons .apex-order-now-button:hover .add-to-cart__text,
ul.products li.product .product-featured-icons .apex-order-now-button:hover .apex-action-label,
ul.products li.product .product-featured-icons .apex-quick-view-button:hover .apex-action-label,
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button:hover,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button:hover,
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button:hover .add-to-cart__text,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button:hover .add-to-cart__text,
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button:hover .ecomus-quickview-button__text,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button:hover .ecomus-quickview-button__text {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

ul.products li.product .product-featured-icons .apex-quick-view-button:hover svg,
ul.products li.product .product-featured-icons .apex-order-now-button:hover svg,
ul.products li.product .product-featured-icons .product-loop-button-atc:hover svg,
ul.products li.product .product-featured-icons .apex-quick-view-button:hover .ecomus-button__icon,
ul.products li.product .product-featured-icons .apex-order-now-button:hover .ecomus-svg-icon,
ul.products li.product .product-featured-icons .apex-order-now-button:hover .apex-action-icon,
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button:hover svg,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button:hover svg {
  color: #fff !important;
  stroke: #fff !important;
  fill: none !important;
}

/* Ecomus's data-tooltip hover bubble. */
ul.products li.product .product-featured-icons .em-tooltip--data::after,
ul.products li.product .product-featured-icons .em-tooltip::after,
ul.products li.product .product-featured-icons [data-tooltip]::after {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* If Ecomus paints the tooltip on the button itself, force its text color too. */
ul.products li.product .product-featured-icons .em-tooltip--data,
ul.products li.product .product-featured-icons .em-tooltip {
  color: #fff !important;
}


/* =========================================================
 * APEX FIXED MENU ORDER SUMMARY — v2.0.3
 * The summary is deliberately output after WooCommerce's sorting
 * controls, then floated into the right-hand column. This keeps it
 * in the same content container and directly UNDER the sorting bar.
 * ========================================================= */

.apex-has-order-summary #apex-order-summary-slot {
  box-sizing: border-box;
}

@media (min-width: 992px) {
  /* The toolbar remains full width. The summary begins below it. */
  #apex-order-summary-slot {
    position: sticky !important;
    top: 96px !important;
    float: right !important;
    width: 320px !important;
    max-width: 32% !important;
    margin: 28px 0 40px 40px !important;
    padding: 0 !important;
    max-height: calc(100vh - 120px) !important;
    overflow: auto !important;
    box-sizing: border-box !important;
    z-index: 20 !important;
  }

  #apex-order-summary-slot .apex-order-summary {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Product cards use the remaining left-hand space naturally. */
  .apex-has-order-summary .woocommerce ul.products,
  .apex-has-order-summary .woocommerce .products {
    width: auto !important;
    max-width: none !important;
    clear: none !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  #apex-order-summary-slot {
    width: 292px !important;
    max-width: 31% !important;
    margin-left: 28px !important;
  }
}

@media (max-width: 991px) {
  #apex-order-summary-slot {
    position: static !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: none !important;
    margin: 20px 0 28px !important;
    padding: 0 !important;
    overflow: visible !important;
  }
}

/* =========================================================
   APEX CART SPACING + PAGE HEROES — v2.0.4
   ========================================================= */

/* Keep Cart content comfortably inside the viewport with balanced gutters. */
.woocommerce-cart .site-main,
.woocommerce-cart .content-area,
.woocommerce-cart .woocommerce,
.woocommerce-cart .woocommerce-page,
.woocommerce-checkout .site-main,
.woocommerce-checkout .content-area {
  box-sizing: border-box !important;
}

.woocommerce-cart .site-main,
.woocommerce-checkout .site-main,
.woocommerce-cart .content-area,
.woocommerce-checkout .content-area {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce {
  width: min(1320px, calc(100% - 48px)) !important;
  max-width: 1320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.woocommerce-cart .wc-block-cart,
.woocommerce-cart .wp-block-woocommerce-cart,
.woocommerce-checkout .wp-block-woocommerce-checkout {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.woocommerce-cart .wc-block-cart {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Classic cart tables and totals get consistent inner breathing room. */
.woocommerce-cart .woocommerce-cart-form,
.woocommerce-cart .cart-collaterals {
  box-sizing: border-box !important;
}

.woocommerce-cart table.woocommerce-cart-form__contents {
  margin-bottom: 28px !important;
}

.woocommerce-cart .cart_totals {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Full-width Apex hero used by Cart, Checkout and Order Received. */
.apex-page-hero {
  position: relative !important;
  width: 100vw !important;
  max-width: none !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  min-height: 300px;
  display: flex;
  align-items: center;
  overflow: hidden;
  isolation: isolate;
  background: var(--apex-bg-alt);
  border-top: 1px solid color-mix(in oklab, var(--apex-gold) 12%, transparent);
  border-bottom: 1px solid color-mix(in oklab, var(--apex-gold) 18%, transparent);
}

.apex-standard-woo-hero {
  background:
    radial-gradient(circle at 78% 35%, color-mix(in oklab, var(--apex-purple) 28%, transparent), transparent 38%),
    var(--apex-bg);
}

.apex-product-hero {
  min-height: 420px;
  background-color: var(--apex-bg);
  background-image: var(--apex-product-hero-image);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.apex-page-hero__overlay {
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(9,8,7,.88) 0%, rgba(9,8,7,.70) 48%, rgba(9,8,7,.55) 100%),
    linear-gradient(180deg, rgba(0,0,0,.30), rgba(0,0,0,.68));
}

.apex-standard-woo-hero .apex-page-hero__overlay {
  background: linear-gradient(90deg, rgba(9,8,7,.97), rgba(9,8,7,.78));
}

.apex-page-hero__inner {
  width: min(1180px, calc(100% - 64px));
  margin: 0 auto;
  padding: 72px 0;
  text-align: center;
}

.apex-page-hero__eyebrow {
  color: var(--apex-gold);
  font-family: var(--apex-font-body);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
  margin-bottom: 14px;
}

.apex-page-hero__title {
  margin: 0;
  color: #fff !important;
  font-family: var(--apex-font-display) !important;
  font-size: clamp(2.2rem, 5vw, 4.8rem);
  font-weight: 500;
  line-height: 1.04;
  text-wrap: balance;
}

.apex-page-hero__divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 13px;
  max-width: 220px;
  margin: 22px auto 18px;
}

.apex-page-hero__divider span {
  height: 1px;
  flex: 1;
  background: color-mix(in oklab, var(--apex-gold) 40%, transparent);
}

.apex-page-hero__divider b {
  color: var(--apex-gold);
  font-size: 14px;
  font-weight: 400;
}

.apex-page-hero__breadcrumb,
.apex-page-hero__breadcrumb nav {
  color: rgba(255,255,255,.78) !important;
  font-family: var(--apex-font-body) !important;
  font-size: 12px;
  letter-spacing: .04em;
}

.apex-page-hero__breadcrumb a {
  color: #fff !important;
  text-decoration: none !important;
}

.apex-page-hero__breadcrumb a:hover {
  color: var(--apex-gold) !important;
}

.apex-page-hero__breadcrumb .apex-breadcrumb-separator {
  display: inline-block;
  margin: 0 9px;
  color: var(--apex-gold) !important;
}

/* The product-page breadcrumb belongs inside the Apex hero.  Keep the
   standalone Woo/Ecomus breadcrumb row hidden so it cannot reappear below
   the hero. */
.single-product > .woocommerce-breadcrumb,
.single-product .site-main > .woocommerce-breadcrumb,
.single-product .woocommerce > .woocommerce-breadcrumb,
.single-product .ecomus-breadcrumb-navigation-wrapper {
  display: none !important;
}

/* Ecomus creates these black circular arrows OUTSIDE the product cards for
   the Related / Recently Viewed carousel.  The request is to keep the cards
   clean and remove those section-level balls; product-image gallery arrows
   inside each card are unaffected. */
.single-product section.related.products > .ecomus-swiper-button,
.single-product section.related.products .products-carousel > .ecomus-swiper-button,
.single-product section.related.products ul.products + .ecomus-swiper-button,
.single-product section.recently-viewed-products > .ecomus-swiper-button,
.single-product section.recently-viewed-products .products-carousel > .ecomus-swiper-button,
.single-product section.recently-viewed-products ul.products + .ecomus-swiper-button {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Some Ecomus builds place the controls immediately after the carousel
   wrapper rather than directly after the UL. */
.single-product section.related.products .products-carousel ~ .ecomus-swiper-button,
.single-product section.recently-viewed-products .products-carousel ~ .ecomus-swiper-button {
  display: none !important;
}

@media (max-width: 991px) {
  .woocommerce-cart .woocommerce,
  .woocommerce-checkout .woocommerce {
    width: min(100% - 36px, 760px) !important;
  }

  .apex-page-hero__inner {
    width: min(100% - 40px, 760px);
    padding: 58px 0;
  }

  .apex-product-hero {
    min-height: 340px;
  }
}

@media (max-width: 767px) {
  .woocommerce-cart .woocommerce,
  .woocommerce-checkout .woocommerce {
    width: calc(100% - 28px) !important;
  }

  .apex-page-hero {
    min-height: 260px;
  }

  .apex-product-hero {
    min-height: 290px;
  }

  .apex-page-hero__inner {
    width: calc(100% - 30px);
    padding: 48px 0;
  }

  .apex-page-hero__title {
    font-size: clamp(2rem, 10vw, 3rem);
  }
}

/* =========================================================
 * APEX MENU ORDER PANEL — v2.0.5
 * Visual treatment matched to the supplied Apex menu reference.
 * ========================================================= */
.apex-order-summary {
  box-sizing: border-box !important;
  color: #fff !important;
  background: rgba(17,15,14,.72) !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 24%, transparent) !important;
  padding: 0 !important;
  overflow: hidden !important;
  font-family: var(--apex-font-body) !important;
}

.apex-order-summary__head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  padding: 38px 42px 30px !important;
  border-bottom: 1px solid color-mix(in oklab, var(--apex-gold) 20%, transparent) !important;
}
.apex-order-summary__heading-wrap { display:flex; align-items:center; gap:18px; min-width:0; }
.apex-order-summary__bag { width:24px; height:24px; flex:0 0 24px; color:var(--apex-gold); }
.apex-order-summary__bag svg, .apex-order-summary__remove svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; display:block; }
.apex-order-summary h2 {
  margin: 0 !important;
  color: #fff !important;
  font-family: var(--apex-font-display) !important;
  font-size: 34px !important;
  line-height: 1.1 !important;
  font-weight: 500 !important;
}
.apex-order-summary__count {
  display:flex; align-items:center; justify-content:center;
  width:46px; height:46px; flex:0 0 46px;
  border:1px solid color-mix(in oklab, var(--apex-gold) 30%, transparent);
  border-radius:50%; color:var(--apex-gold) !important; font-weight:600;
}
.apex-order-summary__items { padding: 0 42px !important; }
.apex-order-summary__item { padding: 30px 0 28px !important; border-bottom:1px solid rgba(255,255,255,.10) !important; }
.apex-order-summary__name-row { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.apex-order-summary__name { color:#fff !important; font-size:19px; font-weight:500; line-height:1.35; }
.apex-order-summary__price { color:var(--apex-gold) !important; font-size:18px; font-weight:500; white-space:nowrap; }
.apex-order-summary__addon { margin-top:8px; color:rgba(255,255,255,.60) !important; font-size:15px; line-height:1.45; }
.apex-order-summary__addon span { color:rgba(255,255,255,.46) !important; }
.apex-order-summary__protein-needed { display:inline-flex; margin-top:9px; padding:6px 10px; border:1px solid color-mix(in oklab, var(--apex-gold) 35%, transparent); background:color-mix(in oklab, var(--apex-gold) 8%, transparent); color:var(--apex-gold-light) !important; font-size:12px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
.apex-order-summary__controls { display:flex; align-items:center; gap:14px; margin-top:20px; }
.apex-order-summary__qty-btn {
  width:42px !important; height:42px !important; padding:0 !important; border:1px solid rgba(255,255,255,.14) !important; border-radius:50% !important;
  background:transparent !important; color:rgba(255,255,255,.72) !important; font-size:23px !important; line-height:1 !important;
}
.apex-order-summary__qty-btn:hover { border-color:var(--apex-gold) !important; color:var(--apex-gold) !important; }
.apex-order-summary__qty { min-width:20px; text-align:center; color:#fff !important; font-size:17px; }
.apex-order-summary__remove { margin-left:4px; width:40px !important; height:40px !important; padding:8px !important; border:1px solid color-mix(in oklab, var(--apex-gold) 55%, transparent) !important; background:transparent !important; color:var(--apex-gold) !important; border-radius:3px !important; }
.apex-order-summary__remove:hover { background:var(--apex-gold) !important; color:var(--apex-ink) !important; }
.apex-order-summary__footer { padding:28px 42px 34px !important; }
.apex-order-summary__subtotal { display:flex; align-items:baseline; justify-content:space-between; gap:20px; padding:0 0 28px; }
.apex-order-summary__subtotal span { color:rgba(255,255,255,.52) !important; text-transform:uppercase; letter-spacing:.18em; font-size:12px; }
.apex-order-summary__subtotal small { font-size:11px; color:inherit; }
.apex-order-summary__subtotal strong { color:var(--apex-gold) !important; font-family:var(--apex-font-display); font-size:34px; font-weight:500; }
.apex-order-summary__note { color:rgba(255,255,255,.52) !important; font-size:12px; line-height:1.5; margin:0 0 20px !important; }
.apex-order-summary__checkout { display:flex !important; align-items:center; justify-content:center; min-height:64px; border:1px solid var(--apex-gold) !important; background:transparent !important; color:var(--apex-gold) !important; font-size:16px; font-weight:600; text-decoration:none !important; text-transform:none; transition:.2s ease; }
.apex-order-summary__checkout:hover { background:var(--apex-gold) !important; color:var(--apex-ink) !important; }
.apex-order-summary__empty { padding:55px 0; text-align:center; }
.apex-order-summary__empty strong { color:#fff; font-size:18px; }
.apex-order-summary__empty p { color:rgba(255,255,255,.55); font-size:14px; }

@media (min-width: 992px) {
  #apex-order-summary-slot { width: 440px !important; max-width: 36% !important; margin-left: 38px !important; }
  #apex-order-summary-slot .apex-order-summary { max-height: calc(100vh - 120px); overflow-y:auto !important; }
}
@media (max-width: 1199px) and (min-width: 992px) {
  #apex-order-summary-slot { width: 390px !important; max-width: 39% !important; margin-left: 26px !important; }
  .apex-order-summary__head, .apex-order-summary__items, .apex-order-summary__footer { padding-left:28px !important; padding-right:28px !important; }
}
@media (max-width: 767px) {
  .apex-order-summary__head { padding:28px 22px 24px !important; }
  .apex-order-summary__items, .apex-order-summary__footer { padding-left:22px !important; padding-right:22px !important; }
  .apex-order-summary h2 { font-size:28px !important; }
}


/* =========================================================
 * APEX PRODUCT CARDS — FINAL ACTION LAYOUT v2.0.7
 * Keep the Shop/category grid clean: no order-summary column.
 * The two product actions are contained neatly inside the image
 * and never allow their labels to overlap or get clipped.
 * ========================================================= */
.woocommerce-shop ul.products li.product .product-featured-icons--primary,
.post-type-archive-product ul.products li.product .product-featured-icons--primary,
.tax-product_cat ul.products li.product .product-featured-icons--primary,
.single-product section.related.products ul.products li.product .product-featured-icons--primary,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary {
  position: absolute !important;
  left: 12px !important;
  right: 12px !important;
  bottom: 12px !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: stretch !important;
  gap: 8px !important;
  box-sizing: border-box !important;
  transform: none !important;
  z-index: 8 !important;
  background: transparent !important;
  border: 0 !important;
}

.woocommerce-shop ul.products li.product .product-featured-icons--primary .product-loop-button,
.post-type-archive-product ul.products li.product .product-featured-icons--primary .product-loop-button,
.tax-product_cat ul.products li.product .product-featured-icons--primary .product-loop-button,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 46px !important;
  min-height: 46px !important;
  margin: 0 !important;
  padding: 0 10px !important;
  box-sizing: border-box !important;
  display: inline-flex !important;
  flex: 1 1 auto !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  border-radius: 4px !important;
}

.woocommerce-shop ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-button__icon,
.post-type-archive-product ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-button__icon,
.tax-product_cat ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-button__icon,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-button__icon,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-button__icon,
.woocommerce-shop ul.products li.product .product-featured-icons--primary .product-loop-button .apex-action-icon,
.post-type-archive-product ul.products li.product .product-featured-icons--primary .product-loop-button .apex-action-icon,
.tax-product_cat ul.products li.product .product-featured-icons--primary .product-loop-button .apex-action-icon {
  flex: 0 0 16px !important;
  width: 16px !important;
  min-width: 16px !important;
  height: 16px !important;
  min-height: 16px !important;
}

.woocommerce-shop ul.products li.product .product-featured-icons--primary .product-loop-button svg,
.post-type-archive-product ul.products li.product .product-featured-icons--primary .product-loop-button svg,
.tax-product_cat ul.products li.product .product-featured-icons--primary .product-loop-button svg,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button svg,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button svg {
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px !important;
}

.woocommerce-shop ul.products li.product .product-featured-icons--primary .product-loop-button .add-to-cart__text,
.woocommerce-shop ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-quickview-button__text,
.post-type-archive-product ul.products li.product .product-featured-icons--primary .product-loop-button .add-to-cart__text,
.post-type-archive-product ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-quickview-button__text,
.tax-product_cat ul.products li.product .product-featured-icons--primary .product-loop-button .add-to-cart__text,
.tax-product_cat ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-quickview-button__text,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button .add-to-cart__text,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-quickview-button__text,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button .add-to-cart__text,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-quickview-button__text {
  flex: 0 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
  overflow: visible !important;
  white-space: nowrap !important;
  text-overflow: clip !important;
  font-size: 11px !important;
  line-height: 1 !important;
  letter-spacing: .035em !important;
  font-weight: 700 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Keep the secondary Ecomus wishlist/compare controls tidy and visible
 * rather than allowing an oversized blank circle to dominate the image. */
.woocommerce-shop ul.products li.product .product-featured-icons--second,
.post-type-archive-product ul.products li.product .product-featured-icons--second,
.tax-product_cat ul.products li.product .product-featured-icons--second,
.single-product section.related.products ul.products li.product .product-featured-icons--second,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--second {
  top: 12px !important;
  left: 12px !important;
  right: auto !important;
  bottom: auto !important;
  z-index: 9 !important;
}

.woocommerce-shop ul.products li.product .product-featured-icons--second .product-loop-button,
.post-type-archive-product ul.products li.product .product-featured-icons--second .product-loop-button,
.tax-product_cat ul.products li.product .product-featured-icons--second .product-loop-button,
.single-product section.related.products ul.products li.product .product-featured-icons--second .product-loop-button,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--second .product-loop-button {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 48%, transparent) !important;
  border-radius: 50% !important;
  background: rgba(10,9,8,.78) !important;
  color: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.woocommerce-shop ul.products li.product .product-featured-icons--second .product-loop-button svg,
.post-type-archive-product ul.products li.product .product-featured-icons--second .product-loop-button svg,
.tax-product_cat ul.products li.product .product-featured-icons--second .product-loop-button svg,
.single-product section.related.products ul.products li.product .product-featured-icons--second .product-loop-button svg,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--second .product-loop-button svg {
  width: 17px !important;
  height: 17px !important;
  color: #fff !important;
  fill: none !important;
  stroke: currentColor !important;
}

/* No Shop summary: restore a normal full-width WooCommerce product grid. */
.woocommerce-shop .apex-has-order-summary #apex-order-summary-slot,
.post-type-archive-product .apex-has-order-summary #apex-order-summary-slot,
.tax-product_cat .apex-has-order-summary #apex-order-summary-slot {
  display: none !important;
}

@media (max-width: 767px) {
  .woocommerce-shop ul.products li.product .product-featured-icons--primary,
  .post-type-archive-product ul.products li.product .product-featured-icons--primary,
  .tax-product_cat ul.products li.product .product-featured-icons--primary,
  .single-product section.related.products ul.products li.product .product-featured-icons--primary,
  .single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary {
    left: 8px !important;
    right: 8px !important;
    bottom: 8px !important;
    gap: 6px !important;
  }

  .woocommerce-shop ul.products li.product .product-featured-icons--primary .product-loop-button,
  .post-type-archive-product ul.products li.product .product-featured-icons--primary .product-loop-button,
  .tax-product_cat ul.products li.product .product-featured-icons--primary .product-loop-button,
  .single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button,
  .single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button {
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 7px !important;
    gap: 5px !important;
  }

  .woocommerce-shop ul.products li.product .product-featured-icons--primary .product-loop-button .add-to-cart__text,
  .woocommerce-shop ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-quickview-button__text,
  .post-type-archive-product ul.products li.product .product-featured-icons--primary .product-loop-button .add-to-cart__text,
  .post-type-archive-product ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-quickview-button__text,
  .tax-product_cat ul.products li.product .product-featured-icons--primary .product-loop-button .add-to-cart__text,
  .tax-product_cat ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-quickview-button__text {
    font-size: 9px !important;
    letter-spacing: .025em !important;
  }
}

/* =========================================================
 * APEX WOOCOMMERCE CONTENT WIDTH — v2.0.9
 * Desktop pages use 200px side breathing room; heroes remain full bleed.
 * ========================================================= */
@media (min-width: 1200px) {
  .woocommerce-cart .site-main,
  .woocommerce-checkout .site-main,
  .woocommerce-order-received .site-main {
    padding-left: 200px !important;
    padding-right: 200px !important;
    box-sizing: border-box !important;
  }

  /* Keep the Apex hero full viewport width despite the page gutters. */
  .woocommerce-cart .site-main > .apex-page-hero,
  .woocommerce-checkout .site-main > .apex-page-hero,
  .woocommerce-order-received .site-main > .apex-page-hero {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
  }

  .woocommerce-cart .woocommerce,
  .woocommerce-checkout .woocommerce,
  .woocommerce-order-received .woocommerce {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (min-width: 992px) and (max-width: 1199px) {
  .woocommerce-cart .site-main,
  .woocommerce-checkout .site-main,
  .woocommerce-order-received .site-main {
    padding-left: 70px !important;
    padding-right: 70px !important;
  }
}

@media (max-width: 991px) {
  .woocommerce-cart .site-main,
  .woocommerce-checkout .site-main,
  .woocommerce-order-received .site-main {
    padding-left: 30px !important;
    padding-right: 30px !important;
  }
}

/* =========================================================
 * APEX PAGE-CONTENT HERO — v2.1.0
 * Cart / Checkout / Order Received heroes belong to the page content,
 * not the Ecomus header. Keep the hero inside the main content column.
 * ========================================================= */
.apex-page-content-hero {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 56px !important;
  min-height: 300px !important;
  box-sizing: border-box !important;
}

.apex-page-content-hero .apex-page-hero__inner {
  width: min(1180px, calc(100% - 64px)) !important;
  margin: 0 auto !important;
}

/* The hero itself is inside .site-main, so never apply viewport-bleed rules. */
.woocommerce-cart .site-main > .apex-page-content-hero,
.woocommerce-checkout .site-main > .apex-page-content-hero,
.woocommerce-order-received .site-main > .apex-page-content-hero {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Page gutters apply to the WooCommerce content below the hero, not the hero. */
@media (min-width: 1200px) {
  .woocommerce-cart .site-main,
  .woocommerce-checkout .site-main,
  .woocommerce-order-received .site-main {
    padding-left: 200px !important;
    padding-right: 200px !important;
    box-sizing: border-box !important;
  }

  .woocommerce-cart .site-main > .apex-page-content-hero,
  .woocommerce-checkout .site-main > .apex-page-content-hero,
  .woocommerce-order-received .site-main > .apex-page-content-hero {
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
  }
}

@media (max-width: 1199px) {
  .apex-page-content-hero {
    min-height: 280px !important;
  }
}

@media (max-width: 767px) {
  .apex-page-content-hero {
    min-height: 240px !important;
    margin-bottom: 36px !important;
  }
  .apex-page-content-hero .apex-page-hero__inner {
    width: calc(100% - 30px) !important;
  }
}


/* =========================================================
 * APEX MINI CART — QUANTITY CONTROL FIX v2.1.0
 * Ecomus gives the native mini-cart quantity control a light
 * #F5F5F5 surface. Override that surface so the cart matches
 * the Apex dark/gold design and keep Remove aligned beside it.
 * ========================================================= */
.widget_shopping_cart_content .woocommerce-mini-cart-item__qty {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 12px !important;
  width: 100% !important;
  color: var(--apex-text) !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity,
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity.quantity {
  --em-quantity-width: 44px !important;
  --em-quantity-height: 44px !important;
  display: inline-flex !important;
  align-items: stretch !important;
  justify-content: center !important;
  width: auto !important;
  height: 44px !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--apex-bg-alt) !important;
  background-color: var(--apex-bg-alt) !important;
  border: 1px solid var(--apex-border) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  color: var(--apex-text) !important;
  overflow: hidden !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity input.qty,
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity input[type="number"],
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity input {
  width: 44px !important;
  min-width: 44px !important;
  height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-align: center !important;
  font-family: var(--apex-font-body) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  opacity: 1 !important;
  appearance: textfield !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity input.qty::-webkit-outer-spin-button,
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity input.qty::-webkit-inner-spin-button,
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity input[type="number"]::-webkit-outer-spin-button,
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity input[type="number"]::-webkit-inner-spin-button {
  margin: 0 !important;
  -webkit-appearance: none !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .ecomus-qty-button {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 42px !important;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  color: var(--apex-gold) !important;
  box-shadow: none !important;
  opacity: 1 !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .ecomus-qty-button::before {
  width: 28px !important;
  height: 28px !important;
  background: transparent !important;
  border: 1px solid transparent !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .ecomus-qty-button:hover,
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .ecomus-qty-button:focus {
  color: var(--apex-gold-light) !important;
  background: transparent !important;
  background-color: transparent !important;
  outline: none !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .ecomus-qty-button:hover::before,
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .ecomus-qty-button:focus::before {
  background: color-mix(in oklab, var(--apex-gold) 10%, transparent) !important;
  border-color: var(--apex-border) !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .ecomus-qty-button svg,
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .ecomus-qty-button .ecomus-svg-icon,
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .ecomus-qty-button .ecomus-svg-icon svg {
  position: relative !important;
  z-index: 2 !important;
  width: 14px !important;
  height: 14px !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item .remove_from_cart_button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  margin: 0 !important;
  padding: 0 4px !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--apex-gold) !important;
  font-family: var(--apex-font-body) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
  white-space: nowrap !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item .remove_from_cart_button:hover,
.widget_shopping_cart_content .woocommerce-mini-cart-item .remove_from_cart_button:focus {
  color: var(--apex-gold-light) !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Keep mini-cart product details readable on the dark panel. */
.widget_shopping_cart_content .woocommerce-mini-cart-item__data,
.widget_shopping_cart_content .woocommerce-mini-cart-item__data .variation,
.widget_shopping_cart_content .woocommerce-mini-cart-item__data .variation dd,
.widget_shopping_cart_content .woocommerce-mini-cart-item__data .variation dt {
  color: var(--apex-text) !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item__data .woocommerce-Price-amount,
.widget_shopping_cart_content .woocommerce-mini-cart-item__data .price {
  color: var(--apex-gold) !important;
}

@media (max-width: 767px) {
  .widget_shopping_cart_content .woocommerce-mini-cart-item__summary {
    padding-left: 16px !important;
  }

  .widget_shopping_cart_content .woocommerce-mini-cart-item__qty {
    gap: 8px !important;
  }

  .widget_shopping_cart_content .woocommerce-mini-cart-item .quantity {
    --em-quantity-width: 40px !important;
    width: auto !important;
    height: 40px !important;
    min-height: 40px !important;
  }

  .widget_shopping_cart_content .woocommerce-mini-cart-item .quantity input.qty,
  .widget_shopping_cart_content .woocommerce-mini-cart-item .quantity input[type="number"],
  .widget_shopping_cart_content .woocommerce-mini-cart-item .quantity input {
    width: 40px !important;
    min-width: 40px !important;
    height: 38px !important;
  }

  .widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .ecomus-qty-button {
    flex-basis: 38px !important;
    width: 38px !important;
    min-width: 38px !important;
    height: 38px !important;
  }
}

/* =========================================================
 * APEX PRODUCT CARD ACTIONS — ICON ONLY
 * Keep Ecomus Quick View + Apex Order Now as compact square
 * icon buttons. The accessible/native labels remain in markup,
 * but the visible text is hidden so only the icon is shown.
 * ========================================================= */
ul.products li.product .product-featured-icons--primary .product-loop-button,
ul.products li.product .product-featured-icons--primary .apex-order-now-button,
ul.products li.product .product-featured-icons--primary .apex-quick-view-button,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button {
  width: 52px !important;
  min-width: 52px !important;
  max-width: 52px !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  padding: 0 !important;
  margin: 0 !important;
  flex: 0 0 52px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  font-size: 0 !important;
  line-height: 0 !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Hide the visible labels completely; do not let them occupy button space. */
ul.products li.product .product-featured-icons--primary .product-loop-button .add-to-cart__text,
ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-quickview-button__text,
ul.products li.product .product-featured-icons--primary .apex-order-now-button .add-to-cart__text,
ul.products li.product .product-featured-icons--primary .apex-order-now-button .apex-action-label,
ul.products li.product .product-featured-icons--primary .apex-quick-view-button .ecomus-quickview-button__text,
ul.products li.product .product-featured-icons--primary .apex-quick-view-button .apex-action-label,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button .add-to-cart__text,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-quickview-button__text,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button .add-to-cart__text,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-quickview-button__text {
  display: none !important;
  width: 0 !important;
  max-width: 0 !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0 !important;
  white-space: nowrap !important;
}

/* Native Ecomus icons and the Apex fallback icons. */
ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-button__icon,
ul.products li.product .product-featured-icons--primary .product-loop-button .ecomus-svg-icon,
ul.products li.product .product-featured-icons--primary .product-loop-button .apex-action-icon,
ul.products li.product .product-featured-icons--primary .product-loop-button svg,
ul.products li.product .product-featured-icons--primary .apex-order-now-button .ecomus-svg-icon,
ul.products li.product .product-featured-icons--primary .apex-order-now-button .apex-action-icon,
ul.products li.product .product-featured-icons--primary .apex-order-now-button svg,
ul.products li.product .product-featured-icons--primary .apex-quick-view-button .ecomus-button__icon,
ul.products li.product .product-featured-icons--primary .apex-quick-view-button svg,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button svg,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button svg {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  max-width: 20px !important;
  max-height: 20px !important;
  flex: 0 0 20px !important;
  margin: 0 !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  -webkit-text-fill-color: #fff !important;
}

/* Ensure the eye SVG paths stay white. */
ul.products li.product .product-featured-icons--primary .apex-quick-view-button svg path,
ul.products li.product .product-featured-icons--primary .product-loop-button svg path {
  fill: currentColor !important;
  stroke: currentColor !important;
}

/* Preserve gold outline and dark glass background. */
ul.products li.product .product-featured-icons--primary .apex-order-now-button,
ul.products li.product .product-featured-icons--primary .apex-quick-view-button,
ul.products li.product .product-featured-icons--primary .product-loop-button-atc {
  background: rgba(8, 7, 6, .92) !important;
  border: 1px solid var(--apex-gold) !important;
  border-radius: 4px !important;
}

ul.products li.product .product-featured-icons--primary .apex-order-now-button:hover,
ul.products li.product .product-featured-icons--primary .apex-quick-view-button:hover,
ul.products li.product .product-featured-icons--primary .product-loop-button-atc:hover {
  background: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
}

ul.products li.product .product-featured-icons--primary .apex-order-now-button:hover svg,
ul.products li.product .product-featured-icons--primary .apex-quick-view-button:hover svg,
ul.products li.product .product-featured-icons--primary .product-loop-button-atc:hover svg,
ul.products li.product .product-featured-icons--primary .apex-order-now-button:hover .apex-action-icon {
  color: var(--apex-ink) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

/* The Ecomus tooltip itself remains white when the icon is hovered. */
ul.products li.product .product-featured-icons--primary [data-tooltip]::after,
ul.products li.product .product-featured-icons--primary .em-tooltip::after,
ul.products li.product .product-featured-icons--primary .em-tooltip--data::after {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

@media (max-width: 767px) {
  ul.products li.product .product-featured-icons--primary .product-loop-button,
  ul.products li.product .product-featured-icons--primary .apex-order-now-button,
  ul.products li.product .product-featured-icons--primary .apex-quick-view-button,
  .single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button,
  .single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button {
    width: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    height: 46px !important;
    min-height: 46px !important;
    max-height: 46px !important;
    flex-basis: 46px !important;
  }

  ul.products li.product .product-featured-icons--primary .product-loop-button svg,
  ul.products li.product .product-featured-icons--primary .apex-order-now-button svg,
  ul.products li.product .product-featured-icons--primary .apex-quick-view-button svg {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    flex-basis: 18px !important;
  }
}

/* =========================================================
 * APEX PRODUCT CARD ACTIONS — FINAL ICON-ONLY ENFORCEMENT
 * Remove Ecomus's Order Now text at the layout level. The native
 * markup is retained for accessibility, while only the icon is visible.
 * ========================================================= */
ul.products li.product .product-featured-icons .product-loop-button .add-to-cart__text,
ul.products li.product .product-featured-icons .product-loop-button .ecomus-quickview-button__text,
ul.products li.product .product-featured-icons .product-loop-button > .ecomus-quickview-button__text {
  display: none !important;
  visibility: hidden !important;
  width: 0 !important;
  max-width: 0 !important;
  min-width: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

/* Keep the action buttons visually light enough to read on the dark card. */
ul.products li.product .product-featured-icons .product-loop-button,
ul.products li.product .product-featured-icons .apex-order-now-button,
ul.products li.product .product-featured-icons .apex-quick-view-button {
  background: rgba(255,255,255,.055) !important;
  border: 1px solid var(--apex-gold) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-shadow: none !important;
}

/* Shopping-bag and eye icons are always white and visible. */
ul.products li.product .product-featured-icons .product-loop-button > .ecomus-svg-icon,
ul.products li.product .product-featured-icons .product-loop-button > .ecomus-button__icon,
ul.products li.product .product-featured-icons .product-loop-button > svg,
ul.products li.product .product-featured-icons .product-loop-button svg,
ul.products li.product .product-featured-icons .product-loop-button svg path,
ul.products li.product .product-featured-icons .product-loop-button svg circle,
ul.products li.product .product-featured-icons .product-loop-button svg line,
ul.products li.product .product-featured-icons .product-loop-button svg polyline {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  -webkit-text-fill-color: #fff !important;
}

ul.products li.product .product-featured-icons .product-loop-button:hover {
  background: var(--apex-gold) !important;
  color: var(--apex-ink) !important;
  -webkit-text-fill-color: var(--apex-ink) !important;
}

ul.products li.product .product-featured-icons .product-loop-button:hover svg,
ul.products li.product .product-featured-icons .product-loop-button:hover svg path,
ul.products li.product .product-featured-icons .product-loop-button:hover svg circle,
ul.products li.product .product-featured-icons .product-loop-button:hover svg line,
ul.products li.product .product-featured-icons .product-loop-button:hover svg polyline {
  color: var(--apex-ink) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}


/* =========================================================
 * APEX 2.1.4 — QUICK VIEW ICON CLEANUP
 * Ecomus owns the Quick View action. Keep its native click/modal
 * behavior, but force one clean eye icon and a readable white tooltip.
 * ========================================================= */
ul.products li.product .product-featured-icons .ecomus-quickview-button,
ul.products li.product .product-featured-icons .apex-quick-view-button {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 48px !important;
  min-width: 48px !important;
  max-width: 48px !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
  padding: 0 !important;
  margin: 0 !important;
  gap: 0 !important;
  overflow: visible !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: rgba(255,255,255,.055) !important;
  border: 1px solid var(--apex-gold) !important;
  border-radius: 4px !important;
  box-sizing: border-box !important;
}

/* Never let an inherited pseudo-element create a second eye/icon. */
ul.products li.product .product-featured-icons .ecomus-quickview-button::before,
ul.products li.product .product-featured-icons .ecomus-quickview-button::after,
ul.products li.product .product-featured-icons .apex-quick-view-button::before,
ul.products li.product .product-featured-icons .apex-quick-view-button::after {
  content: none !important;
  display: none !important;
}

/* The JS normalizer leaves exactly one SVG in the button. */
ul.products li.product .product-featured-icons .ecomus-quickview-button > svg,
ul.products li.product .product-featured-icons .ecomus-quickview-button > .ecomus-svg-icon,
ul.products li.product .product-featured-icons .apex-quick-view-button > svg,
ul.products li.product .product-featured-icons .apex-quick-view-button > .ecomus-svg-icon {
  display: inline-flex !important;
  width: 21px !important;
  height: 21px !important;
  min-width: 21px !important;
  min-height: 21px !important;
  max-width: 21px !important;
  max-height: 21px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  fill: none !important;
  stroke: #fff !important;
  stroke-width: 1.8 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

ul.products li.product .product-featured-icons .ecomus-quickview-button > .ecomus-svg-icon svg,
ul.products li.product .product-featured-icons .apex-quick-view-button > .ecomus-svg-icon svg,
ul.products li.product .product-featured-icons .ecomus-quickview-button > svg path,
ul.products li.product .product-featured-icons .apex-quick-view-button > svg path {
  width: 21px !important;
  height: 21px !important;
  color: #fff !important;
  fill: none !important;
  stroke: #fff !important;
  stroke-width: 1.8 !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Hide the native text span inside the Quick View button only. */
ul.products li.product .product-featured-icons .ecomus-quickview-button .ecomus-quickview-button__text,
ul.products li.product .product-featured-icons .apex-quick-view-button .ecomus-quickview-button__text,
ul.products li.product .product-featured-icons .ecomus-quickview-button .apex-action-label,
ul.products li.product .product-featured-icons .apex-quick-view-button .apex-action-label {
  display: none !important;
  width: 0 !important;
  max-width: 0 !important;
  height: 0 !important;
  max-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0 !important;
  visibility: hidden !important;
}

/* Ecomus creates this tooltip dynamically on hover/click. */
.em-tooltip--data {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: #111 !important;
  border-color: color-mix(in oklab, var(--apex-gold) 55%, transparent) !important;
  font-family: var(--apex-font-body) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: .02em !important;
  z-index: 999999 !important;
}

@media (max-width: 767px) {
  ul.products li.product .product-featured-icons .ecomus-quickview-button,
  ul.products li.product .product-featured-icons .apex-quick-view-button {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }
}


/* =========================================================
 * APEX 2.1.4 — PRODUCT CARD LAYOUT 6 QUICK VIEW
 * Use Ecomus's native icon-only Quick View exactly once. The previous
 * Apex JS normalizer could leave two visual eyes in cached/combined DOM.
 * This CSS also gives the icon button a lighter premium treatment.
 * ========================================================= */
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button,
ul.products li.product .product-featured-icons--primary .apex-quick-view-light {
  width: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  height: 58px !important;
  min-height: 58px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  overflow: hidden !important;
  background: rgba(245, 241, 232, 0.96) !important;
  border: 1px solid var(--apex-gold) !important;
  border-radius: 5px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 8px 24px rgba(0,0,0,.18) !important;
}

/* Layout 6 must contain one visual icon only. */
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button > .ecomus-quickview-button__text,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button > .ecomus-quickview-button__text,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-button__icon + .ecomus-quickview-button__text,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button .ecomus-button__icon + .ecomus-quickview-button__text {
  display: none !important;
}

ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button > svg,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button > svg,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-button__icon,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button .ecomus-button__icon,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button > svg,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button > svg {
  width: 25px !important;
  height: 25px !important;
  min-width: 25px !important;
  min-height: 25px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
}

ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-button__icon svg,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button .ecomus-button__icon svg {
  width: 25px !important;
  height: 25px !important;
  display: block !important;
  color: #fff !important;
  fill: none !important;
  stroke: #fff !important;
  stroke-width: 1.8 !important;
}

/* Tooltip remains available, but the button itself never shows Quick View text. */
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button[data-tooltip]::after,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button[data-tooltip]::after {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: #232323 !important;
}

ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button:hover,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button:hover {
  background: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
  color: #fff !important;
}

ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button:hover .ecomus-button__icon svg,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button:hover .ecomus-button__icon svg {
  color: #fff !important;
  stroke: #fff !important;
}

@media (max-width: 767px) {
  ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button,
  ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button {
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
    height: 52px !important;
    min-height: 52px !important;
  }
}


/* =========================================================
 * APEX 2.1.5 — ECOMUS PRODUCT CARD LAYOUT 6 FINAL FIX
 * Ecomus Layout 6 already renders Quick View natively. The child theme
 * must not create another eye or replace the native icon. Keep both
 * actions as clean, light-on-dark icon buttons that match Apex.
 * ========================================================= */
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button-atc {
  width: 52px !important;
  min-width: 52px !important;
  max-width: 52px !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  background: rgba(255,255,255,.07) !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 80%, transparent) !important;
  border-radius: 5px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.16) !important;
}

ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-quickview-button__text,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button-atc .add-to-cart__text,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button-atc .apex-action-label {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  max-width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

/* Ecomus native eye + native shopping-bag SVGs. */
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-svg-icon,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button-atc .ecomus-svg-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  min-height: 22px !important;
  margin: 0 !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
}

ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-svg-icon svg,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button-atc .ecomus-svg-icon svg {
  display: block !important;
  width: 22px !important;
  height: 22px !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
}

ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button::before,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button::after,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button-atc::before,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button-atc::after {
  content: none !important;
  display: none !important;
}

ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button:hover,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button-atc:hover {
  background: color-mix(in oklab, var(--apex-gold) 92%, white 8%) !important;
  border-color: var(--apex-gold) !important;
}

ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button:hover .ecomus-svg-icon,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button-atc:hover .ecomus-svg-icon,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button:hover svg,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button-atc:hover svg {
  color: var(--apex-ink) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

/* Keep Ecomus's dynamically generated tooltip readable. */
.em-tooltip--data {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: #171411 !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 45%, transparent) !important;
}

@media (max-width: 767px) {
  ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button,
  ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button-atc {
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
  }
}

/* =========================================================
 * APEX HEADER ICONS — BORDERLESS
 * Ecomus header icon links are native .em-button-icon elements.
 * Keep the icons clean with no rectangular gold border.
 * ========================================================= */
.site-header .header-items > .em-button.em-button-icon,
.site-header .header-items > a.em-button.em-button-icon,
.site-header .header-items > button.em-button.em-button-icon,
.header-main .header-items .em-button.em-button-icon,
.header-mobile .header-items .em-button.em-button-icon,
.header-search__icon,
.header-account__icon,
.header-cart__icon,
.header-wishlist__icon,
.header-compare__icon {
  border: 0 !important;
  border-color: transparent !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  background-color: transparent !important;
  border-radius: 0 !important;
}

.site-header .header-items > .em-button.em-button-icon:hover,
.site-header .header-items > .em-button.em-button-icon:focus,
.site-header .header-items > .em-button.em-button-icon:focus-visible,
.header-main .header-items .em-button.em-button-icon:hover,
.header-main .header-items .em-button.em-button-icon:focus,
.header-main .header-items .em-button.em-button-icon:focus-visible,
.header-mobile .header-items .em-button.em-button-icon:hover,
.header-mobile .header-items .em-button.em-button-icon:focus,
.header-mobile .header-items .em-button.em-button-icon:focus-visible,
.header-search__icon:hover,
.header-account__icon:hover,
.header-cart__icon:hover,
.header-wishlist__icon:hover,
.header-compare__icon:hover {
  border: 0 !important;
  border-color: transparent !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

.site-header .header-items .em-button.em-button-icon .ecomus-svg-icon,
.site-header .header-items .em-button.em-button-icon .ecomus-svg-icon svg {
  color: var(--apex-text) !important;
  fill: currentColor !important;
}

.site-header .header-items .em-button.em-button-icon:hover .ecomus-svg-icon,
.site-header .header-items .em-button.em-button-icon:hover .ecomus-svg-icon svg {
  color: var(--apex-gold) !important;
  fill: currentColor !important;
}

/* =========================================================
 * APEX 2.2.3 — SINGLE PRODUCT QUANTITY + ORDER NOW FINISH
 * Keep Ecomus quantity controls functional, but replace the
 * browser/light default surfaces with Apex dark/gold styling.
 * The Ecomus button contains .text, .divide and .price; keep
 * all three visible on hover so the live total never disappears.
 * ========================================================= */
.single-product form.cart .quantity {
  display: inline-flex !important;
  align-items: stretch !important;
  width: auto !important;
  min-width: 262px !important;
  height: 56px !important;
  margin: 0 12px 0 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 65%, transparent) !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
}

.single-product form.cart .quantity .ecomus-qty-button {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 54px !important;
  min-width: 54px !important;
  height: 54px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--apex-bg) !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--apex-gold) !important;
  cursor: pointer !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
}

.single-product form.cart .quantity .ecomus-qty-button + .qty,
.single-product form.cart .quantity .qty {
  flex: 1 1 auto !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 54px !important;
  margin: 0 !important;
  padding: 0 10px !important;
  background: var(--apex-bg) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 0 !important;
  border-left: 1px solid color-mix(in oklab, var(--apex-gold) 22%, transparent) !important;
  border-right: 1px solid color-mix(in oklab, var(--apex-gold) 22%, transparent) !important;
  border-radius: 0 !important;
  outline: none !important;
  box-shadow: none !important;
  text-align: center !important;
  font-family: "Jost", sans-serif !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  appearance: textfield !important;
  box-sizing: border-box !important;
}

.single-product form.cart .quantity .qty::-webkit-outer-spin-button,
.single-product form.cart .quantity .qty::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

.single-product form.cart .quantity .ecomus-qty-button svg,
.single-product form.cart .quantity .ecomus-qty-button .ecomus-svg-icon,
.single-product form.cart .quantity .ecomus-qty-button .ecomus-svg-icon svg {
  display: block !important;
  width: 18px !important;
  height: 18px !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.single-product form.cart .quantity .ecomus-qty-button:hover,
.single-product form.cart .quantity .ecomus-qty-button:focus-visible {
  background: var(--apex-gold) !important;
  color: var(--apex-ink) !important;
  outline: none !important;
}

.single-product form.cart .quantity .ecomus-qty-button:hover svg,
.single-product form.cart .quantity .ecomus-qty-button:focus-visible svg,
.single-product form.cart .quantity .ecomus-qty-button:hover .ecomus-svg-icon {
  color: var(--apex-ink) !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

/* Ecomus single-product purchase button: keep its live price visible
 * in normal, hover, focus and loading states. */
.single-product form.cart .single_add_to_cart_button,
.single-product .entry-summary .single_add_to_cart_button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-height: 56px !important;
  min-width: 310px !important;
  padding: 0 28px !important;
  background: transparent !important;
  border: 1px solid var(--apex-gold) !important;
  border-radius: 4px !important;
  color: var(--apex-gold) !important;
  -webkit-text-fill-color: var(--apex-gold) !important;
  opacity: 1 !important;
  visibility: visible !important;
  box-sizing: border-box !important;
  transition: background .2s ease, color .2s ease, border-color .2s ease !important;
}

.single-product form.cart .single_add_to_cart_button .text,
.single-product form.cart .single_add_to_cart_button .divide,
.single-product form.cart .single_add_to_cart_button .price,
.single-product form.cart .single_add_to_cart_button .price .amount,
.single-product form.cart .single_add_to_cart_button .price bdi {
  display: inline !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}

.single-product form.cart .single_add_to_cart_button .divide {
  margin: 0 1px !important;
}

.single-product form.cart .single_add_to_cart_button:hover,
.single-product form.cart .single_add_to_cart_button:focus,
.single-product form.cart .single_add_to_cart_button:focus-visible {
  background: var(--apex-gold) !important;
  border-color: var(--apex-gold) !important;
  color: var(--apex-ink) !important;
  -webkit-text-fill-color: var(--apex-ink) !important;
  outline: none !important;
}

.single-product form.cart .single_add_to_cart_button:hover .text,
.single-product form.cart .single_add_to_cart_button:hover .divide,
.single-product form.cart .single_add_to_cart_button:hover .price,
.single-product form.cart .single_add_to_cart_button:hover .price .amount,
.single-product form.cart .single_add_to_cart_button:hover .price bdi,
.single-product form.cart .single_add_to_cart_button:focus .text,
.single-product form.cart .single_add_to_cart_button:focus .divide,
.single-product form.cart .single_add_to_cart_button:focus .price,
.single-product form.cart .single_add_to_cart_button:focus .price .amount,
.single-product form.cart .single_add_to_cart_button:focus .price bdi {
  color: var(--apex-ink) !important;
  -webkit-text-fill-color: var(--apex-ink) !important;
  visibility: visible !important;
  opacity: 1 !important;
}

@media (max-width: 767px) {
  .single-product form.cart .quantity {
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 0 12px !important;
  }

  .single-product form.cart .single_add_to_cart_button,
  .single-product .entry-summary .single_add_to_cart_button {
    width: 100% !important;
    min-width: 0 !important;
  }
}


/* =========================================================
 * APEX RELATED + RECENTLY VIEWED — FINAL CARD SPACING
 * Keep all text comfortably inside the card and leave a clean
 * 30px breathing space at the bottom.
 * ========================================================= */
.single-product section.related.products ul.products li.product,
.single-product section.recently-viewed-products ul.products li.product {
  box-sizing: border-box !important;
  padding: 0 0 30px !important;
  min-width: 0 !important;
  overflow: hidden !important;
}

.single-product section.related.products ul.products li.product .product-summary,
.single-product section.recently-viewed-products ul.products li.product .product-summary,
.single-product section.related.products ul.products li.product .product-summary-content,
.single-product section.recently-viewed-products ul.products li.product .product-summary-content {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 20px !important;
  margin: 0 !important;
  overflow: hidden !important;
}

.single-product section.related.products ul.products li.product .woocommerce-loop-product__title,
.single-product section.recently-viewed-products ul.products li.product .woocommerce-loop-product__title,
.single-product section.related.products ul.products li.product h2,
.single-product section.recently-viewed-products ul.products li.product h2 {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
  line-height: 1.12 !important;
}

.single-product section.related.products ul.products li.product .price,
.single-product section.recently-viewed-products ul.products li.product .price {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  white-space: normal !important;
}

.single-product section.related.products ul.products li.product .star-rating,
.single-product section.recently-viewed-products ul.products li.product .star-rating,
.single-product section.related.products ul.products li.product .woocommerce-product-rating,
.single-product section.recently-viewed-products ul.products li.product .woocommerce-product-rating {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

@media (max-width: 767px) {
  .single-product section.related.products ul.products li.product,
  .single-product section.recently-viewed-products ul.products li.product {
    padding-bottom: 30px !important;
  }

  .single-product section.related.products ul.products li.product .product-summary,
  .single-product section.recently-viewed-products ul.products li.product .product-summary,
  .single-product section.related.products ul.products li.product .product-summary-content,
  .single-product section.recently-viewed-products ul.products li.product .product-summary-content {
    padding: 20px !important;
  }
}

/* =========================================================
 * APEX 2.2.11 — PRODUCT CARD ARROW NAVIGATION
 * Keep Ecomus product-image navigation visible as compact black
 * circles with clear gold chevrons. Applies to Related, Recently
 * Viewed and product-card image sliders without changing clicks.
 * ========================================================= */
ul.products li.product .swiper-button-prev,
ul.products li.product .swiper-button-next,
ul.products li.product .swiper-button-prev.swiper-button,
ul.products li.product .swiper-button-next.swiper-button,
ul.products li.product .ecomus-swiper-button-prev,
ul.products li.product .ecomus-swiper-button-next,
ul.products li.product .product-image .swiper-button,
ul.products li.product .product-featured-image .swiper-button,
ul.products li.product .product-loop-image .swiper-button,
.single-product section.related.products li.product .swiper-button-prev,
.single-product section.related.products li.product .swiper-button-next,
.single-product section.recently-viewed-products li.product .swiper-button-prev,
.single-product section.recently-viewed-products li.product .swiper-button-next {
  width: 52px !important;
  min-width: 52px !important;
  max-width: 52px !important;
  height: 52px !important;
  min-height: 52px !important;
  max-height: 52px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 50% !important;
  box-sizing: border-box !important;
  background: var(--apex-ink) !important;
  background-color: var(--apex-ink) !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 45%, transparent) !important;
  color: var(--apex-gold) !important;
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 20 !important;
  transform: none !important;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s ease !important;
}

/* Replace broken/hidden Ecomus arrow glyphs with clean chevrons. */
ul.products li.product .swiper-button-prev::after,
ul.products li.product .swiper-button-next::after,
ul.products li.product .ecomus-swiper-button-prev::after,
ul.products li.product .ecomus-swiper-button-next::after,
ul.products li.product .product-image .swiper-button::after,
ul.products li.product .product-featured-image .swiper-button::after,
ul.products li.product .product-loop-image .swiper-button::after {
  content: '' !important;
  display: block !important;
  width: 10px !important;
  height: 10px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-top: 2px solid var(--apex-gold) !important;
  border-right: 2px solid var(--apex-gold) !important;
  background: transparent !important;
  font-size: 0 !important;
  line-height: 0 !important;
  opacity: 1 !important;
}

ul.products li.product .swiper-button-prev::after,
ul.products li.product .ecomus-swiper-button-prev::after {
  transform: rotate(-135deg) translate(-1px, -1px) !important;
}

ul.products li.product .swiper-button-next::after,
ul.products li.product .ecomus-swiper-button-next::after {
  transform: rotate(45deg) translate(-1px, -1px) !important;
}

ul.products li.product .swiper-button-prev:hover,
ul.products li.product .swiper-button-next:hover,
ul.products li.product .ecomus-swiper-button-prev:hover,
ul.products li.product .ecomus-swiper-button-next:hover {
  background: var(--apex-bg-alt) !important;
  background-color: var(--apex-bg-alt) !important;
  border-color: var(--apex-gold) !important;
  color: var(--apex-gold) !important;
  transform: scale(1.04) !important;
}

/* Never fade a navigation control just because Swiper marks it disabled.
 * It remains visible so the card layout is visually consistent. */
ul.products li.product .swiper-button-disabled,
ul.products li.product .ecomus-swiper-button-disabled,
ul.products li.product .swiper-button-prev.swiper-button-disabled,
ul.products li.product .swiper-button-next.swiper-button-disabled {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  background: var(--apex-ink) !important;
  color: var(--apex-gold) !important;
  border-color: color-mix(in oklab, var(--apex-gold) 35%, transparent) !important;
}

@media (max-width: 767px) {
  ul.products li.product .swiper-button-prev,
  ul.products li.product .swiper-button-next,
  ul.products li.product .ecomus-swiper-button-prev,
  ul.products li.product .ecomus-swiper-button-next,
  ul.products li.product .product-image .swiper-button,
  ul.products li.product .product-featured-image .swiper-button,
  ul.products li.product .product-loop-image .swiper-button {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
  }

  ul.products li.product .swiper-button-prev::after,
  ul.products li.product .swiper-button-next::after,
  ul.products li.product .ecomus-swiper-button-prev::after,
  ul.products li.product .ecomus-swiper-button-next::after {
    width: 9px !important;
    height: 9px !important;
  }
}

/* =========================================================
 * APEX 2.2.12 — RESTORE ECOMUS NATIVE PURCHASE SIZING
 * Ecomus uses a compact ~98px quantity control inside the
 * .ecomus-product-atc-group and lets the Order Now button fill
 * the remaining width. Remove the oversized child-theme widths.
 * ========================================================= */
.single-product div.product .ecomus-product-atc-group,
.single-product form.cart .ecomus-product-atc-group {
  display: flex !important;
  align-items: flex-end !important;
  gap: 7px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

.single-product div.product .ecomus-product-atc-group .quantity,
.single-product form.cart .ecomus-product-atc-group .quantity {
  flex: 0 0 98px !important;
  width: 98px !important;
  min-width: 98px !important;
  max-width: 98px !important;
  height: 49px !important;
  min-height: 49px !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.single-product div.product .ecomus-product-atc-group .quantity .ecomus-qty-button,
.single-product form.cart .ecomus-product-atc-group .quantity .ecomus-qty-button {
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  height: 100% !important;
  padding: 0 13px !important;
  box-sizing: border-box !important;
}

.single-product div.product .ecomus-product-atc-group .quantity input.qty,
.single-product form.cart .ecomus-product-atc-group .quantity input.qty {
  flex: 0 0 46px !important;
  width: 46px !important;
  min-width: 46px !important;
  max-width: 46px !important;
  height: 100% !important;
  padding: 0 !important;
  box-sizing: border-box !important;
}

.single-product div.product .ecomus-product-atc-group .single_add_to_cart_button,
.single-product form.cart .ecomus-product-atc-group .single_add_to_cart_button {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 49px !important;
  min-height: 49px !important;
  margin: 0 !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
}

/* Keep the live price visible in every state without allowing the
 * button contents to overflow its column. */
.single-product div.product .ecomus-product-atc-group .single_add_to_cart_button .text,
.single-product div.product .ecomus-product-atc-group .single_add_to_cart_button .divide,
.single-product div.product .ecomus-product-atc-group .single_add_to_cart_button .price,
.single-product div.product .ecomus-product-atc-group .single_add_to_cart_button .price bdi {
  white-space: nowrap !important;
  overflow: visible !important;
}

@media (max-width: 767px) {
  .single-product div.product .ecomus-product-atc-group,
  .single-product form.cart .ecomus-product-atc-group {
    width: 100% !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
  }

  .single-product div.product .ecomus-product-atc-group .quantity,
  .single-product form.cart .ecomus-product-atc-group .quantity {
    flex: 0 0 98px !important;
    width: 98px !important;
    min-width: 98px !important;
    max-width: 98px !important;
  }

  .single-product div.product .ecomus-product-atc-group .single_add_to_cart_button,
  .single-product form.cart .ecomus-product-atc-group .single_add_to_cart_button {
    flex: 1 1 calc(100% - 108px) !important;
    width: calc(100% - 108px) !important;
    min-width: 0 !important;
    max-width: none !important;
  }
}


/* =========================================================
 * APEX 2.2.13 — ECOMUS CONSISTENCY PASS
 * Re-align the child theme with the actual Ecomus parent rules.
 * Do not replace Ecomus dimensions with arbitrary fixed widths.
 * ========================================================= */

/* Ecomus native single-product purchase group.  The parent theme
 * defines the quantity input at 98px and lets its two controls use
 * their native padding; the CTA fills the remaining group width. */
.single-product div.product .ecomus-product-atc-group,
.single-product form.cart .ecomus-product-atc-group {
  display: flex !important;
  align-items: flex-end !important;
  gap: 7px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.single-product div.product .ecomus-product-atc-group .quantity,
.single-product form.cart .ecomus-product-atc-group .quantity {
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 49px !important;
  min-height: 49px !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.single-product div.product .ecomus-product-atc-group .quantity .ecomus-qty-button,
.single-product form.cart .ecomus-product-atc-group .quantity .ecomus-qty-button {
  position: relative !important;
  display: flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 13px !important;
  color: var(--apex-gold) !important;
  background: transparent !important;
  visibility: visible !important;
  opacity: 1 !important;
  box-sizing: border-box !important;
}

.single-product div.product .ecomus-product-atc-group .quantity .ecomus-qty-button svg,
.single-product div.product .ecomus-product-atc-group .quantity .ecomus-qty-button .ecomus-svg-icon,
.single-product div.product .ecomus-product-atc-group .quantity .ecomus-qty-button .ecomus-svg-icon svg,
.single-product form.cart .ecomus-product-atc-group .quantity .ecomus-qty-button svg,
.single-product form.cart .ecomus-product-atc-group .quantity .ecomus-qty-button .ecomus-svg-icon,
.single-product form.cart .ecomus-product-atc-group .quantity .ecomus-qty-button .ecomus-svg-icon svg {
  display: block !important;
  width: 12px !important;
  height: 12px !important;
  max-width: 12px !important;
  max-height: 12px !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  stroke: none !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* The parent uses a 98px quantity input.  Preserve that exact native
 * dimension rather than forcing the entire quantity control to 98px. */
.single-product div.product .ecomus-product-atc-group .quantity input.qty,
.single-product form.cart .ecomus-product-atc-group .quantity input.qty {
  flex: 0 0 98px !important;
  width: 98px !important;
  min-width: 98px !important;
  max-width: 98px !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: #fff !important;
  border-color: transparent !important;
  border-left: 1px solid color-mix(in oklab, var(--apex-gold) 22%, transparent) !important;
  border-right: 1px solid color-mix(in oklab, var(--apex-gold) 22%, transparent) !important;
  box-sizing: border-box !important;
  text-align: center !important;
  appearance: textfield !important;
}

.single-product div.product .ecomus-product-atc-group .single_add_to_cart_button,
.single-product form.cart .ecomus-product-atc-group .single_add_to_cart_button {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 49px !important;
  min-height: 49px !important;
  margin: 0 !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
}

/* Make both quantity controls visible even when an earlier child-theme
 * rule tries to hide an Ecomus SVG. */
.single-product form.cart .quantity .ecomus-qty-button.increase,
.single-product form.cart .quantity .ecomus-qty-button.decrease {
  visibility: visible !important;
  opacity: 1 !important;
  color: var(--apex-gold) !important;
}

/* ---------------------------------------------------------
 * RELATED + RECENTLY VIEWED — use Ecomus's real card geometry.
 * Layout 6 has a 48px bottom margin and 15px side gutters on
 * desktop; the card summary itself starts with 22px top padding.
 * Apex adds a restrained 20px content box without changing the
 * product column widths. */
.single-product section.related.products ul.products,
.single-product section.recently-viewed-products ul.products {
  display: flex !important;
  flex-wrap: nowrap !important;
  overflow: hidden !important;
}

.single-product section.related.products ul.products li.product,
.single-product section.recently-viewed-products ul.products li.product {
  flex-shrink: 0 !important;
  margin-bottom: 48px !important;
  padding-left: 15px !important;
  padding-right: 15px !important;
  padding-bottom: 0 !important;
  box-sizing: border-box !important;
  background: var(--apex-bg-alt) !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 22%, transparent) !important;
  border-radius: 4px !important;
  overflow: visible !important;
}

.single-product section.related.products ul.products li.product .product-inner,
.single-product section.recently-viewed-products ul.products li.product .product-inner {
  width: 100% !important;
  background: transparent !important;
}

.single-product section.related.products ul.products li.product .product-thumbnail,
.single-product section.recently-viewed-products ul.products li.product .product-thumbnail {
  width: 100% !important;
  margin: 0 !important;
  border-radius: 3px 3px 0 0 !important;
  overflow: hidden !important;
}

.single-product section.related.products ul.products li.product .product-summary,
.single-product section.recently-viewed-products ul.products li.product .product-summary {
  box-sizing: border-box !important;
  width: 100% !important;
  padding: 20px !important;
  min-width: 0 !important;
}

.single-product section.related.products ul.products li.product .product-summary *,
.single-product section.recently-viewed-products ul.products li.product .product-summary * {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.single-product section.related.products ul.products li.product .woocommerce-loop-product__title,
.single-product section.recently-viewed-products ul.products li.product .woocommerce-loop-product__title,
.single-product section.related.products ul.products li.product .product--cat,
.single-product section.recently-viewed-products ul.products li.product .product--cat,
.single-product section.related.products ul.products li.product .price,
.single-product section.recently-viewed-products ul.products li.product .price {
  overflow-wrap: anywhere !important;
  word-break: normal !important;
}

/* Native Ecomus action size: 42px square on desktop, 36px at <=1024px. */
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button {
  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 50% !important;
  overflow: hidden !important;
}

.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button .ecomus-svg-icon,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button .ecomus-svg-icon,
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button svg,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button svg {
  width: 19px !important;
  height: 19px !important;
  min-width: 19px !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: currentColor !important;
}

/* Remove visible button labels in Related/Recently Viewed so the
 * native icon controls stay the same compact size as Ecomus. */
.single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button > span:last-child,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button > span:last-child {
  display: none !important;
}

/* ---------------------------------------------------------
 * PRODUCT IMAGE ARROWS — use the exact Ecomus arrow elements.
 * Ecomus hides these at <=1199px, so Apex explicitly restores them.
 * --------------------------------------------------------- */
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button,
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button {
  --em-arrow-width: 36px !important;
  --em-arrow-height: 36px !important;
  width: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: absolute !important;
  top: 50% !important;
  z-index: 8 !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 50% !important;
  background: var(--apex-ink) !important;
  background-color: var(--apex-ink) !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 45%, transparent) !important;
  color: var(--apex-gold) !important;
  transform: translateY(-50%) !important;
  box-sizing: border-box !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button-prev,
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button.swiper-button-prev {
  left: 10px !important;
  right: auto !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button-next,
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button.swiper-button-next {
  right: 10px !important;
  left: auto !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button svg,
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button svg {
  display: block !important;
  width: 7px !important;
  height: 11px !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Do not create a second pseudo-arrow on top of Ecomus's real SVG. */
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button::after,
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button::after {
  content: none !important;
  display: none !important;
}

/* Keep the card slider controls visible at every responsive width. */
@media (max-width: 1199px) {
  ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button,
  ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button {
    display: flex !important;
  }
}

@media (max-width: 767px) {
  .single-product section.related.products ul.products li.product,
  .single-product section.recently-viewed-products ul.products li.product {
    margin-bottom: 30px !important;
    padding-left: 7.5px !important;
    padding-right: 7.5px !important;
  }

  .single-product section.related.products ul.products li.product .product-summary,
  .single-product section.recently-viewed-products ul.products li.product .product-summary {
    padding: 20px !important;
  }

  .single-product section.related.products ul.products li.product .product-featured-icons .product-loop-button,
  .single-product section.recently-viewed-products ul.products li.product .product-featured-icons .product-loop-button {
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
  }

  ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button,
  ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button {
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
  }
}

/* Related heading: Apex wording while preserving WooCommerce's
 * native heading filter and template. */

/* Close the blank strip between the Ecomus header and Woo content.
 * Ecomus itself supplies 54px of site-content top padding; on Apex
 * Woo pages the page should begin directly under the header. */
.woocommerce-page .site-content,
.woocommerce-shop .site-content,
.single-product .site-content {
  padding-top: 0 !important;
}

/* =========================================================
 * APEX 2.2.14 — NATIVE ECOMUS ALIGNMENT / FINAL OVERRIDES
 * These rules intentionally follow the parent theme's real geometry
 * instead of creating a second card system in the child theme.
 * ========================================================= */

/* Header: let Ecomus own the viewport width and its native container.
 * The earlier negative margins made Woo pages wider than the header. */
.site-header,
.site-header__desktop,
.site-header__mobile {
  width: 100% !important;
  max-width: 100% !important;
}
.woocommerce-page .site-header,
.woocommerce-shop .site-header,
.single-product .site-header,
.woocommerce-page .site-footer,
.woocommerce-shop .site-footer,
.single-product .site-footer {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.site-header .site-header__container {
  width: 100% !important;
  max-width: 1540px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* Close the content to the header; keep Ecomus's horizontal container
 * width/padding intact rather than shifting the whole page sideways. */
.woocommerce-page .site-content,
.woocommerce-shop .site-content,
.single-product .site-content {
  padding-top: 0 !important;
}

/* Related / Recently Viewed: three Ecomus-sized cards on desktop.
 * The PHP option filter above also tells Ecomus's carousel JS to show 3. */
.single-product section.related.products > ul.products,
.single-product section.recently-viewed-products > ul.products {
  width: 100% !important;
  max-width: 100% !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 30px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.single-product section.related.products > ul.products > li.product,
.single-product section.recently-viewed-products > ul.products > li.product {
  width: calc((100% - 60px) / 3) !important;
  max-width: calc((100% - 60px) / 3) !important;
  min-width: 0 !important;
  flex: 0 0 calc((100% - 60px) / 3) !important;
  margin: 0 0 48px !important;
  padding: 0 !important;
  overflow: visible !important;
  box-sizing: border-box !important;
}

/* Native Ecomus card image: no extra child-theme padding around it. */
.single-product section.related.products > ul.products > li.product .product-inner,
.single-product section.recently-viewed-products > ul.products > li.product .product-inner {
  position: relative !important;
  width: 100% !important;
  min-height: 100% !important;
  box-sizing: border-box !important;
}

.single-product section.related.products > ul.products > li.product .product-thumbnail,
.single-product section.recently-viewed-products > ul.products > li.product .product-thumbnail {
  width: 100% !important;
  margin: 0 !important;
}

/* Give the summary enough room for the native 42px hover actions and
 * keep the 20px Apex content padding. */
.single-product section.related.products > ul.products > li.product .product-summary,
.single-product section.recently-viewed-products > ul.products > li.product .product-summary {
  width: 100% !important;
  min-height: 126px !important;
  padding: 20px !important;
  box-sizing: border-box !important;
}

/* Ecomus Layout 6 native featured actions are 42px. Keep Quick View
 * and the hover add-to-cart at that size so the card never feels cramped. */
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .product-loop-button,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .product-loop-button {
  --em-button-width: 42px !important;
  --em-button-height: 42px !important;
  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  flex: 0 0 42px !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 4px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
}

/* Related/recent Quick View: one native eye, visible on card hover. */
.single-product section.related.products ul.products li.product .product-featured-icons--primary .ecomus-quickview-button,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .ecomus-quickview-button,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .apex-quick-view-button,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .apex-quick-view-button {
  opacity: 0 !important;
  visibility: hidden !important;
  color: #fff !important;
  background: rgba(10,9,8,.92) !important;
  border: 1px solid var(--apex-gold) !important;
}
.single-product section.related.products ul.products li.product .product-inner:hover .product-featured-icons--primary .ecomus-quickview-button,
.single-product section.recently-viewed-products ul.products li.product .product-inner:hover .product-featured-icons--primary .ecomus-quickview-button,
.single-product section.related.products ul.products li.product .product-inner:hover .product-featured-icons--primary .apex-quick-view-button,
.single-product section.recently-viewed-products ul.products li.product .product-inner:hover .product-featured-icons--primary .apex-quick-view-button {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}

/* Never clip the hover action row at the bottom of the product image. */
ul.products.product-card-layout-6 li.product .product-featured-icons--primary {
  z-index: 20 !important;
  pointer-events: none;
}
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .product-loop-button {
  pointer-events: auto;
}

/* Image navigation: use Ecomus's actual .ecomus-product-card-swiper-button
 * SVGs and native 36px circle geometry. The parent hides these below 1199px;
 * Apex deliberately re-enables them because the user needs image navigation. */
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button {
  --em-arrow-width: 36px !important;
  --em-arrow-height: 36px !important;
  width: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: absolute !important;
  top: 50% !important;
  margin-top: -18px !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  z-index: 30 !important;
  border-radius: 50% !important;
  background: rgba(8,7,6,.94) !important;
  border: 1px solid var(--apex-gold) !important;
  color: var(--apex-gold) !important;
  transform: none !important;
  box-sizing: border-box !important;
}
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button.swiper-button-prev,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button-prev {
  left: 10px !important;
  right: auto !important;
}
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button.swiper-button-next,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button-next {
  right: 10px !important;
  left: auto !important;
}

/* The Ecomus SVG itself is the arrow. Do not use Swiper's font pseudo-arrow. */
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button::after,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button::after {
  content: none !important;
  display: none !important;
}
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button svg,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button svg {
  display: block !important;
  width: 9px !important;
  height: 14px !important;
  max-width: 9px !important;
  max-height: 14px !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button svg path,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button svg path {
  fill: currentColor !important;
  stroke: none !important;
}

/* Keep the image slider controls visible at all screen widths. */
@media (max-width: 1199px) {
  ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button,
  ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button {
    display: flex !important;
  }
}

@media (max-width: 767px) {
  .single-product section.related.products > ul.products,
  .single-product section.recently-viewed-products > ul.products {
    gap: 15px !important;
  }
  .single-product section.related.products > ul.products > li.product,
  .single-product section.recently-viewed-products > ul.products > li.product {
    width: calc((100% - 15px) / 2) !important;
    max-width: calc((100% - 15px) / 2) !important;
    flex-basis: calc((100% - 15px) / 2) !important;
    margin-bottom: 30px !important;
  }
  .single-product section.related.products > ul.products > li.product .product-summary,
  .single-product section.recently-viewed-products > ul.products > li.product .product-summary {
    min-height: 120px !important;
    padding: 20px !important;
  }
}



/* =========================================================
 * APEX 2.2.15 — ECOMUS PRODUCT CARD CORRECTION
 * Fix native Layout 6 Quick View visibility and keep the hover
 * Add to Cart inside the card instead of letting it overflow.
 * Ecomus's native structure is preserved.
 * ========================================================= */

/* Native Ecomus Quick View is an icon-only anchor containing a direct
 * .ecomus-svg-icon. Do not rely on the label wrapper used by text buttons. */
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .ecomus-quickview-button,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .ecomus-quickview-button {
  --em-button-width: 46px !important;
  --em-button-height: 46px !important;
  width: 46px !important;
  min-width: 46px !important;
  max-width: 46px !important;
  height: 46px !important;
  min-height: 46px !important;
  max-height: 46px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 46px !important;
  box-sizing: border-box !important;
  border: 1px solid var(--apex-gold) !important;
  border-radius: 4px !important;
  background: rgba(8,7,6,.96) !important;
  color: #fff !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(20px) !important;
  pointer-events: none !important;
  overflow: visible !important;
  line-height: 1 !important;
}

/* Ecomus's eye is a direct inline SVG wrapper, not .ecomus-button__icon. */
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button > .ecomus-svg-icon,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button > .ecomus-svg-icon,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .ecomus-quickview-button > .ecomus-svg-icon,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .ecomus-quickview-button > .ecomus-svg-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 19px !important;
  height: 12px !important;
  min-width: 19px !important;
  min-height: 12px !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #fff !important;
  fill: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
  line-height: 1 !important;
}

ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button > .ecomus-svg-icon > svg,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button > .ecomus-svg-icon > svg,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .ecomus-quickview-button > .ecomus-svg-icon > svg,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .ecomus-quickview-button > .ecomus-svg-icon > svg {
  display: block !important;
  width: 19px !important;
  height: 12px !important;
  max-width: 19px !important;
  max-height: 12px !important;
  color: #fff !important;
  fill: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
}

ul.products.product-card-layout-6 li.product .product-featured-icons--primary .ecomus-quickview-button > .ecomus-svg-icon > svg path,
ul.products.product-card-layout-6 li.product .product-featured-icons--primary .apex-quick-view-button > .ecomus-svg-icon > svg path,
.single-product section.related.products ul.products li.product .product-featured-icons--primary .ecomus-quickview-button > .ecomus-svg-icon > svg path,
.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary .ecomus-quickview-button > .ecomus-svg-icon > svg path {
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
}

/* Ecomus reveals featured icons on .product-inner:hover. */
ul.products.product-card-layout-6 li.product .product-inner:hover .product-featured-icons--primary .ecomus-quickview-button,
ul.products.product-card-layout-6 li.product .product-inner:hover .product-featured-icons--primary .apex-quick-view-button,
.single-product section.related.products ul.products li.product .product-inner:hover .product-featured-icons--primary .ecomus-quickview-button,
.single-product section.recently-viewed-products ul.products li.product .product-inner:hover .product-featured-icons--primary .ecomus-quick-view-button {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

/* Layout 6's native bottom Add to Cart is absolutely positioned 30px
 * below the product-inner edge. Increase the inner bottom space and make
 * the button itself a fixed 44px Ecomus-sized control so it stays inside
 * the bordered Apex card. */
ul.products.product-card-layout-6 li.product .product-inner {
  padding-bottom: 44px !important;
  box-sizing: border-box !important;
}

ul.products.product-card-layout-6 li.product .product-loop-button-atc {
  left: 0 !important;
  right: 0 !important;
  top: calc(100% - 44px) !important;
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 0 20px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

ul.products.product-card-layout-6 li.product .product-loop-button-atc .add-to-cart__text {
  display: inline-block !important;
  max-width: 100% !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

/* The card itself must contain the native bottom action. */
ul.products.product-card-layout-6 li.product {
  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* Related/Recently Viewed inherit the same correction. */
.single-product section.related.products ul.products li.product .product-inner,
.single-product section.recently-viewed-products ul.products li.product .product-inner {
  padding-bottom: 44px !important;
  box-sizing: border-box !important;
}

.single-product section.related.products ul.products li.product .product-loop-button-atc,
.single-product section.recently-viewed-products ul.products li.product .product-loop-button-atc {
  left: 0 !important;
  right: 0 !important;
  top: calc(100% - 44px) !important;
  width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  padding: 0 16px !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

@media (max-width: 767px) {
  ul.products.product-card-layout-6 li.product .product-inner,
  .single-product section.related.products ul.products li.product .product-inner,
  .single-product section.recently-viewed-products ul.products li.product .product-inner {
    padding-bottom: 42px !important;
  }

  ul.products.product-card-layout-6 li.product .product-loop-button-atc,
  .single-product section.related.products ul.products li.product .product-loop-button-atc,
  .single-product section.recently-viewed-products ul.products li.product .product-loop-button-atc {
    top: calc(100% - 42px) !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    padding: 0 12px !important;
  }
}


/* =========================================================
 * APEX 2.2.16 — ECOMUS NATIVE PRODUCT CARD / NAVIGATION PASS
 *
 * Based directly on Ecomus 2.4.8 product-card.scss, icon.php,
 * product-card/base.php and scripts.js:
 * - Layout 6 reserves 30px for the bottom hover ATC.
 * - Native product action buttons are 42px x 42px.
 * - Product-image slider arrows are 36px x 36px and use Ecomus's
 *   actual arrow SVG (7px x 11px).
 * - The Quick View eye is Ecomus's #eye sprite symbol, whose paths
 *   are fill-only. Never set it to fill:none/stroke-only.
 *
 * Apex adds 20px of breathing room BELOW the hover ATC so the
 * bordered card contains the entire control with a clean bottom edge.
 * ========================================================= */

/* ---------- Native Ecomus Quick View eye ---------- */
ul.products li.product .ecomus-quickview-button,
ul.products li.product .product-featured-icons .ecomus-quickview-button,
.single-product section.related.products li.product .ecomus-quickview-button,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button {
  --em-button-width: 42px !important;
  --em-button-height: 42px !important;
  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 42px !important;
  box-sizing: border-box !important;
  overflow: visible !important;
  opacity: 0 !important;
  visibility: hidden !important;
  transform: translateY(20px) !important;
  pointer-events: none !important;
  background: var(--apex-ink) !important;
  color: #fff !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 70%, transparent) !important;
  border-radius: 4px !important;
  line-height: 1 !important;
}

/* Ecomus hover trigger — do not replace its animation model. */
ul.products li.product .product-inner:hover .product-featured-icons .ecomus-quickview-button,
ul.products li.product .product-inner:hover .ecomus-quickview-button,
.single-product section.related.products li.product .product-inner:hover .ecomus-quickview-button,
.single-product section.recently-viewed-products li.product .product-inner:hover .ecomus-quickview-button {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

/* Exact Ecomus markup: span.ecomus-svg-icon--eye > svg > use. */
ul.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye,
ul.products li.product .ecomus-quickview-button > .ecomus-svg-icon,
.single-product section.related.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-svg-icon--eye {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 19px !important;
  height: 12px !important;
  min-width: 19px !important;
  min-height: 12px !important;
  max-width: 19px !important;
  max-height: 12px !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

ul.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye > svg,
ul.products li.product .ecomus-quickview-button > .ecomus-svg-icon > svg,
single-product section.related.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye > svg,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-svg-icon--eye > svg {
  display: block !important;
  width: 19px !important;
  height: 12px !important;
  max-width: 19px !important;
  max-height: 12px !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* The Ecomus eye is a fill-only <symbol>; these rules fix the exact
 * mistake that made the button look like an empty black square. */
ul.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye svg use,
ul.products li.product .ecomus-quickview-button svg use,
.single-product section.related.products li.product .ecomus-quickview-button svg use,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button svg use {
  fill: currentColor !important;
  stroke: none !important;
  color: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* ---------- Layout 6 / bottom hover Add to Cart ---------- */
ul.products.product-card-layout-6 li.product .product-inner,
ul.products.product-card-button-atc-transfrom--bottom li.product .product-inner,
.single-product section.related.products ul.products li.product .product-inner,
.single-product section.recently-viewed-products ul.products li.product .product-inner {
  position: relative !important;
  box-sizing: border-box !important;
  /* 42px native ATC + 20px clean space below it. */
  padding-bottom: 62px !important;
}

ul.products.product-card-layout-6 li.product .product-loop-button-atc,
ul.products.product-card-button-atc-transfrom--bottom li.product .product-loop-button-atc,
.single-product section.related.products ul.products li.product .product-loop-button-atc,
.single-product section.recently-viewed-products ul.products li.product .product-loop-button-atc {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 20px !important;
  top: auto !important;
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  margin: 0 !important;
  padding: 0 20px !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  transform: translateY(20px) !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  z-index: 5 !important;
}

ul.products.product-card-layout-6 li.product .product-inner:hover .product-loop-button-atc,
ul.products.product-card-button-atc-transfrom--bottom li.product .product-inner:hover .product-loop-button-atc,
.single-product section.related.products ul.products li.product .product-inner:hover .product-loop-button-atc,
.single-product section.recently-viewed-products ul.products li.product .product-inner:hover .product-loop-button-atc {
  transform: translateY(0) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/* The card border must contain the complete 20px bottom breathing room. */
ul.products.product-card-layout-6 li.product,
ul.products.product-card-button-atc-transfrom--bottom li.product,
.single-product section.related.products ul.products li.product,
.single-product section.recently-viewed-products ul.products li.product {
  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* Native Ecomus button internals. */
ul.products.product-card-layout-6 li.product .product-loop-button-atc .ecomus-svg-icon,
ul.products.product-card-layout-6 li.product .product-loop-button-atc svg,
ul.products.product-card-button-atc-transfrom--bottom li.product .product-loop-button-atc svg,
.single-product section.related.products li.product .product-loop-button-atc svg,
.single-product section.recently-viewed-products li.product .product-loop-button-atc svg {
  flex: 0 0 auto !important;
}

/* ---------- Ecomus product-image navigation ---------- */
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button {
  --em-arrow-width: 36px !important;
  --em-arrow-height: 36px !important;
  width: 36px !important;
  min-width: 36px !important;
  max-width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  max-height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  margin-top: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 10 !important;
  background: var(--apex-ink) !important;
  color: var(--apex-gold) !important;
  border: 1px solid color-mix(in oklab, var(--apex-gold) 55%, transparent) !important;
  border-radius: 50% !important;
}

/* Ecomus's PHP/JS arrow is a real inline SVG, 7 x 11. */
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button > svg,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button > svg {
  display: block !important;
  width: 7px !important;
  height: 11px !important;
  min-width: 7px !important;
  min-height: 11px !important;
  max-width: 7px !important;
  max-height: 11px !important;
  color: var(--apex-gold) !important;
  fill: none !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button > svg path,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button > svg path {
  fill: currentColor !important;
  stroke: none !important;
}

/* Never let Swiper's own font/pseudo-arrow replace Ecomus's SVG. */
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button::after,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button::after {
  content: none !important;
  display: none !important;
}

/* Keep Ecomus image arrows usable at the breakpoint where its native
 * responsive stylesheet hides them. */
@media (max-width: 1199px) {
  ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button,
  ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
}

/* ---------- Ecomus related/recent carousel arrows ---------- */
.single-product section.related.products > .swiper > .ecomus-swiper-button,
.single-product section.recently-viewed-products > .swiper > .ecomus-swiper-button,
.single-product .related.products > .ecomus-swiper-button,
.single-product .recently-viewed-products > .ecomus-swiper-button {
  opacity: 1 !important;
  visibility: visible !important;
  z-index: 20 !important;
}

.single-product section.related.products > .swiper > .ecomus-swiper-button > svg,
.single-product section.recently-viewed-products > .swiper > .ecomus-swiper-button > svg,
.single-product .related.products > .ecomus-swiper-button > svg,
.single-product .recently-viewed-products > .ecomus-swiper-button > svg {
  display: block !important;
  width: 7px !important;
  height: 11px !important;
  color: var(--apex-gold) !important;
  fill: none !important;
}

.single-product section.related.products > .swiper > .ecomus-swiper-button > svg path,
.single-product section.recently-viewed-products > .swiper > .ecomus-swiper-button > svg path,
.single-product .related.products > .ecomus-swiper-button > svg path,
.single-product .recently-viewed-products > .ecomus-swiper-button > svg path {
  fill: currentColor !important;
  stroke: none !important;
}

/* ---------- Three cards: use Ecomus's carousel settings, not a second
 * flex sizing system. The PHP option filters already set 3/3/2. ---------- */
@media (min-width: 1200px) {
  .single-product section.related.products > .swiper ul.products,
  .single-product section.recently-viewed-products > .swiper ul.products {
    gap: 0 !important;
  }
}

@media (max-width: 1199px) and (min-width: 768px) {
  .single-product section.related.products > .swiper ul.products,
  .single-product section.recently-viewed-products > .swiper ul.products {
    gap: 0 !important;
  }
}

/* =========================================================
 * APEX 2.2.18 — FINAL ECOMUS SINGLE-PRODUCT / CARD CLEANUP
 * ========================================================= */

/* 1) Remove the entire Ecomus single-product breadcrumb/navigation row.
 * This is the Home > Category > Product row and its previous/back-to-category
 * controls. It is deliberately hidden as a final safeguard in addition to
 * removing the PHP action above. */
.single-product .ecomus-breadcrumb-navigation-wrapper {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  visibility: hidden !important;
}
.single-product .ecomus-breadcrumb-navigation-wrapper .product-navigation,
.single-product .ecomus-breadcrumb-navigation-wrapper .product-navigation__button,
.single-product .ecomus-breadcrumb-navigation-wrapper .woocommerce-breadcrumb {
  display: none !important;
}

/* 2) Ecomus Quick View markup is:
 * a.ecomus-quickview-button > span.ecomus-button__icon >
 * span.ecomus-svg-icon--eye > svg > use.
 * Previous child rules targeted the wrong direct-child level. */
ul.products li.product .ecomus-quickview-button .ecomus-button__icon,
ul.products li.product .apex-quick-view-button .ecomus-button__icon,
.single-product section.related.products li.product .ecomus-quickview-button .ecomus-button__icon,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-button__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 19px !important;
  height: 19px !important;
  min-width: 19px !important;
  min-height: 19px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  opacity: 1 !important;
  visibility: visible !important;
  line-height: 1 !important;
}

ul.products li.product .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon,
ul.products li.product .apex-quick-view-button .ecomus-button__icon .ecomus-svg-icon,
.single-product section.related.products li.product .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon {
  display: inline-block !important;
  width: 19px !important;
  height: 19px !important;
  min-width: 19px !important;
  min-height: 19px !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  line-height: 1 !important;
}

ul.products li.product .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon svg,
ul.products li.product .apex-quick-view-button .ecomus-button__icon .ecomus-svg-icon svg,
.single-product section.related.products li.product .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon svg,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon svg {
  display: block !important;
  width: 19px !important;
  height: 19px !important;
  max-width: 19px !important;
  max-height: 19px !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  overflow: visible !important;
}

ul.products li.product .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon svg use,
ul.products li.product .apex-quick-view-button .ecomus-button__icon .ecomus-svg-icon svg use,
.single-product section.related.products li.product .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon svg use,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon svg use {
  color: #fff !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Related / Recently Viewed: show the native Quick View control on hover,
 * but never let a child rule make the eye itself transparent. */
.single-product section.related.products li.product .product-inner:hover .ecomus-quickview-button,
.single-product section.recently-viewed-products li.product .product-inner:hover .ecomus-quickview-button {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
  pointer-events: auto !important;
}

/* 3) Preserve Ecomus's actual product-image navigation. The arrows are
 * .ecomus-product-card-swiper-button SVG controls created by base.php and
 * wired to Swiper by scripts.js. No pseudo-arrow replacement. */
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  min-height: 36px !important;
  max-width: 36px !important;
  max-height: 36px !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  background: rgba(8,7,6,.94) !important;
  border: 1px solid var(--apex-gold) !important;
  border-radius: 50% !important;
  color: var(--apex-gold) !important;
  z-index: 30 !important;
}
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button svg,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button svg {
  display: block !important;
  width: 7px !important;
  height: 11px !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  stroke: none !important;
}
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button::after,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button::after {
  content: none !important;
  display: none !important;
}

/* 4) Keep the Layout 6 hover Add to Cart contained while retaining the
 * native Ecomus text + icon instead of the earlier icon-only override. */
ul.products.product-card-layout-6 li.product .product-inner,
.single-product section.related.products li.product .product-inner,
.single-product section.recently-viewed-products li.product .product-inner {
  position: relative !important;
  box-sizing: border-box !important;
  padding-bottom: 62px !important;
}
ul.products.product-card-layout-6 li.product .product-loop-button-atc,
.single-product section.related.products li.product .product-loop-button-atc,
.single-product section.recently-viewed-products li.product .product-loop-button-atc {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 20px !important;
  top: auto !important;
  width: 100% !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  padding: 0 20px !important;
  margin: 0 !important;
}
ul.products.product-card-layout-6 li.product .product-loop-button-atc .add-to-cart__text,
ul.products.product-card-layout-6 li.product .product-loop-button-atc .apex-action-label,
single-product section.related.products li.product .product-loop-button-atc .add-to-cart__text,
single-product section.recently-viewed-products li.product .product-loop-button-atc .add-to-cart__text {
  display: inline-block !important;
  width: auto !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  font-size: inherit !important;
  line-height: inherit !important;
  overflow: hidden !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Do not clip the product card itself: Ecomus positions the hover action
 * from the product-inner. The 62px inner allowance contains it. */
ul.products.product-card-layout-6 li.product,
ul.products.product-card-button-atc-transfrom--bottom li.product,
.single-product section.related.products li.product,
.single-product section.recently-viewed-products li.product {
  overflow: visible !important;
}


/* =========================================================
 * APEX 2.2.19 — PRODUCT IMAGE NAVIGATION: ARROW ONLY
 * Ecomus already renders the real navigation buttons and inline SVGs.
 * The previous Apex styling turned those controls into large circles.
 * Keep the native Ecomus SVG/Swiper navigation, but present only the
 * gold chevron so the control reads as a simple image-navigation arrow.
 * ========================================================= */
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button {
  --em-arrow-width: 24px !important;
  --em-arrow-height: 36px !important;
  --em-arrow-bg-color: transparent !important;
  --em-arrow-border-color: transparent !important;
  --em-arrow-color: var(--apex-gold) !important;
  --em-arrow-bg-color-hover: transparent !important;
  --em-arrow-border-color-hover: transparent !important;
  --em-arrow-color-hover: var(--apex-gold-light) !important;
  --em-arrow-rounded: 0 !important;
  width: 24px !important;
  height: 36px !important;
  min-width: 24px !important;
  min-height: 36px !important;
  max-width: 24px !important;
  max-height: 36px !important;
  padding: 0 !important;
  margin-top: 0 !important;
  border: 0 !important;
  border-color: transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--apex-gold) !important;
  opacity: 1 !important;
  visibility: visible !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: visible !important;
  transform: translateY(-50%) !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button.swiper-button-prev,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button-prev {
  left: 12px !important;
  right: auto !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button.swiper-button-next,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button-next {
  right: 12px !important;
  left: auto !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button:hover,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button:hover,
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button.swiper-button-disabled,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button.swiper-button-disabled {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  color: var(--apex-gold-light) !important;
}

/* Ecomus's real 7 x 11 SVG is the only visible navigation mark. */
ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button > svg,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button > svg {
  display: block !important;
  width: 7px !important;
  height: 11px !important;
  min-width: 7px !important;
  min-height: 11px !important;
  max-width: 7px !important;
  max-height: 11px !important;
  color: currentColor !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button > svg path,
ul.products li.product .product-thumbnail .product-thumbnails--slider .swiper-button > svg path {
  fill: currentColor !important;
  stroke: none !important;
}

/* =========================================================
 * APEX 2.2.20 — AUTHORITATIVE ECOMUS GALLERY NAVIGATION
 *
 * Ecomus 2.4.8 creates the product-card arrows in
 * base.php as real inline SVG buttons and wires them to Swiper in
 * scripts.js. It also uses .swiper-button on the product gallery.
 * Do not manufacture a second navigation system: make the real
 * Ecomus controls visible and clickable.
 * ========================================================= */

/* Product-card image navigation: Ecomus's real 36px controls. */
ul.products li.product .product-thumbnail .product-thumbnails--slider > .ecomus-product-card-swiper-button,
ul.products li.product .product-thumbnail .product-thumbnails--slider > .swiper-button {
  width: 24px !important;
  height: 36px !important;
  min-width: 24px !important;
  min-height: 36px !important;
  max-width: 24px !important;
  max-height: 36px !important;
  display: flex !important;
  position: absolute !important;
  top: 50% !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: translateY(-50%) !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--apex-gold) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  z-index: 50 !important;
  font-size: 0 !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider > .ecomus-product-card-swiper-button.swiper-button-prev,
ul.products li.product .product-thumbnail .product-thumbnails--slider > .swiper-button-prev {
  left: 12px !important;
  right: auto !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider > .ecomus-product-card-swiper-button.swiper-button-next,
ul.products li.product .product-thumbnail .product-thumbnails--slider > .swiper-button-next {
  right: 12px !important;
  left: auto !important;
}

/* The actual Ecomus SVG is 7 x 11px. */
ul.products li.product .product-thumbnail .product-thumbnails--slider > .ecomus-product-card-swiper-button > svg,
ul.products li.product .product-thumbnail .product-thumbnails--slider > .swiper-button > svg {
  display: block !important;
  width: 7px !important;
  height: 11px !important;
  min-width: 7px !important;
  min-height: 11px !important;
  max-width: 7px !important;
  max-height: 11px !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider > .ecomus-product-card-swiper-button > svg path,
ul.products li.product .product-thumbnail .product-thumbnails--slider > .swiper-button > svg path {
  fill: currentColor !important;
  stroke: none !important;
}

ul.products li.product .product-thumbnail .product-thumbnails--slider > .ecomus-product-card-swiper-button::after,
ul.products li.product .product-thumbnail .product-thumbnails--slider > .swiper-button::after {
  content: none !important;
  display: none !important;
}

/* Product gallery navigation: same Ecomus arrow, no black circle. */
.single-product .woocommerce-product-gallery .swiper-button,
.single-product .woocommerce-product-gallery .ecomus-swiper-button,
.single-product .woocommerce-product-gallery .swiper-button-prev,
.single-product .woocommerce-product-gallery .swiper-button-next {
  width: 24px !important;
  height: 36px !important;
  min-width: 24px !important;
  min-height: 36px !important;
  max-width: 24px !important;
  max-height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin-top: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--apex-gold) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  font-size: 0 !important;
  z-index: 20 !important;
}

.single-product .woocommerce-product-gallery .swiper-button-prev {
  left: 23px !important;
  right: auto !important;
}

.single-product .woocommerce-product-gallery .swiper-button-next {
  right: 23px !important;
  left: auto !important;
}

.single-product .woocommerce-product-gallery .swiper-button > svg,
.single-product .woocommerce-product-gallery .ecomus-swiper-button > svg {
  display: block !important;
  width: 7px !important;
  height: 11px !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.single-product .woocommerce-product-gallery .swiper-button > svg path,
.single-product .woocommerce-product-gallery .ecomus-swiper-button > svg path {
  fill: currentColor !important;
  stroke: none !important;
}

.single-product .woocommerce-product-gallery .swiper-button::after,
.single-product .woocommerce-product-gallery .ecomus-swiper-button::after {
  content: none !important;
  display: none !important;
}

/* Swiper's disabled class must not turn the arrow into an invisible
 * control. The first/last arrow remains visible but naturally disabled. */
ul.products li.product .product-thumbnail .product-thumbnails--slider > .swiper-button-disabled,
.single-product .woocommerce-product-gallery .swiper-button-disabled {
  opacity: .45 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  background: transparent !important;
  color: var(--apex-gold) !important;
  border: 0 !important;
}

/* Ecomus hides product-card slider arrows below 1199px; Apex keeps the
 * native controls available on touch/tablet layouts as well. */
@media (max-width: 1199px) {
  ul.products li.product .product-thumbnail .product-thumbnails--slider > .ecomus-product-card-swiper-button,
  ul.products li.product .product-thumbnail .product-thumbnails--slider > .swiper-button {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
}

/* =========================================================
 * APEX v2.2.21 — AUTHORITATIVE ECOMUS QUICK VIEW ICON
 *
 * Ecomus 2.4.8 source: quick-view.php -> quick_view_button_html()
 * emits .ecomus-button__icon > .ecomus-svg-icon--eye > svg > use.
 * The eye symbol itself is a filled 19x12 path. Do not convert it to a
 * stroked outline. This final block intentionally wins over every older
 * child-theme experiment above it.
 * ========================================================= */
body.apex-ecomus-child ul.products li.product .ecomus-quickview-button,
body.apex-ecomus-child .single-product section.related.products li.product .ecomus-quickview-button,
body.apex-ecomus-child .single-product section.recently-viewed-products li.product .ecomus-quickview-button {
  box-sizing: border-box !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  min-width: 42px !important;
  max-width: 42px !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  padding: 0 !important;
  margin: 0 !important;
  gap: 0 !important;
  overflow: visible !important;
  position: relative !important;
  color: var(--apex-gold) !important;
  -webkit-text-fill-color: var(--apex-gold) !important;
  background: rgba(15,15,15,.94) !important;
  border: 1px solid var(--apex-gold) !important;
  border-radius: 4px !important;
  box-shadow: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  z-index: 30 !important;
}

body.apex-ecomus-child ul.products li.product .ecomus-quickview-button .ecomus-button__icon,
body.apex-ecomus-child .single-product section.related.products li.product .ecomus-quickview-button .ecomus-button__icon,
body.apex-ecomus-child .single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-button__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 19px !important;
  width: 19px !important;
  min-width: 19px !important;
  max-width: 19px !important;
  height: 12px !important;
  min-height: 12px !important;
  max-height: 12px !important;
  padding: 0 !important;
  margin: 0 !important;
  line-height: 0 !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.apex-ecomus-child ul.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye,
body.apex-ecomus-child .single-product section.related.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye {
  display: inline-block !important;
  width: 19px !important;
  height: 12px !important;
  line-height: 0 !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.apex-ecomus-child ul.products li.product .ecomus-quickview-button .ecomus-button__icon svg,
body.apex-ecomus-child .single-product section.related.products li.product .ecomus-quickview-button .ecomus-button__icon svg,
body.apex-ecomus-child .single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-button__icon svg {
  display: block !important;
  width: 19px !important;
  height: 12px !important;
  max-width: 19px !important;
  max-height: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  stroke: none !important;
  stroke-width: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  overflow: visible !important;
}

body.apex-ecomus-child ul.products li.product .ecomus-quickview-button .ecomus-button__icon svg use,
body.apex-ecomus-child .single-product section.related.products li.product .ecomus-quickview-button .ecomus-button__icon svg use,
body.apex-ecomus-child .single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-button__icon svg use {
  display: inline !important;
  color: var(--apex-gold) !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Never allow old Apex rules to turn the Ecomus eye into a stroked/empty icon. */
body.apex-ecomus-child ul.products li.product .ecomus-quickview-button svg path,
body.apex-ecomus-child .single-product section.related.products li.product .ecomus-quickview-button svg path,
body.apex-ecomus-child .single-product section.recently-viewed-products li.product .ecomus-quickview-button svg path {
  fill: currentColor !important;
  stroke: none !important;
  stroke-width: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.apex-ecomus-child ul.products li.product .ecomus-quickview-button .ecomus-quickview-button__text,
body.apex-ecomus-child .single-product section.related.products li.product .ecomus-quickview-button .ecomus-quickview-button__text,
body.apex-ecomus-child .single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-quickview-button__text {
  display: none !important;
}

body.apex-ecomus-child ul.products li.product .ecomus-quickview-button::before,
body.apex-ecomus-child ul.products li.product .ecomus-quickview-button::after,
body.apex-ecomus-child .single-product section.related.products li.product .ecomus-quickview-button::before,
body.apex-ecomus-child .single-product section.related.products li.product .ecomus-quickview-button::after,
body.apex-ecomus-child .single-product section.recently-viewed-products li.product .ecomus-quickview-button::before,
body.apex-ecomus-child .single-product section.recently-viewed-products li.product .ecomus-quickview-button::after {
  display: none !important;
  content: none !important;
}

/* Related / Recently Viewed: native Quick View is visible on card hover,
 * but the eye itself is always painted. */
body.apex-ecomus-child .single-product section.related.products li.product .product-inner:hover .ecomus-quickview-button,
body.apex-ecomus-child .single-product section.recently-viewed-products li.product .product-inner:hover .ecomus-quickview-button,
body.apex-ecomus-child .single-product section.related.products li.product .ecomus-quickview-button,
body.apex-ecomus-child .single-product section.recently-viewed-products li.product .ecomus-quickview-button {
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
}

/* The 42px action has to fit inside the Ecomus Layout 6 card without
 * creating the empty/overflowing square seen in previous versions. */
body.apex-ecomus-child ul.products.product-card-layout-6 li.product .product-featured-icons--primary {
  min-height: 42px !important;
}


/* =========================================================
 * APEX v2.2.22 — ECOMUS QUICK VIEW CLICK / HIT AREA
 *
 * Ecomus binds the native Quick View click to .ecomus-quickview-button on
 * document.body. The visual button must therefore remain a real, clickable
 * anchor. Earlier Apex rules made the parent featured-icons wrapper
 * pointer-events:none, which could make the visible eye appear dead.
 * ========================================================= */
ul.products li.product .product-featured-icons--primary:has(.ecomus-quickview-button),
.single-product section.related.products li.product .product-featured-icons--primary:has(.ecomus-quickview-button),
.single-product section.recently-viewed-products li.product .product-featured-icons--primary:has(.ecomus-quickview-button) {
  pointer-events: auto !important;
  z-index: 50 !important;
}

ul.products li.product .product-featured-icons--primary .ecomus-quickview-button,
.single-product section.related.products li.product .product-featured-icons--primary .ecomus-quickview-button,
.single-product section.recently-viewed-products li.product .product-featured-icons--primary .ecomus-quickview-button {
  pointer-events: auto !important;
  cursor: pointer !important;
  position: relative !important;
  z-index: 51 !important;
  touch-action: manipulation !important;
}

/* The native Ecomus anchor remains the click target; its icon must never
 * intercept the pointer event itself. */
ul.products li.product .ecomus-quickview-button .ecomus-svg-icon,
ul.products li.product .ecomus-quickview-button .ecomus-button__icon,
ul.products li.product .ecomus-quickview-button svg,
ul.products li.product .ecomus-quickview-button svg use,
.single-product section.related.products li.product .ecomus-quickview-button .ecomus-svg-icon,
.single-product section.related.products li.product .ecomus-quickview-button .ecomus-button__icon,
.single-product section.related.products li.product .ecomus-quickview-button svg,
.single-product section.related.products li.product .ecomus-quickview-button svg use,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-svg-icon,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-button__icon,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button svg,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button svg use {
  pointer-events: none !important;
}

/* Keep the real Ecomus eye visible while retaining its native filled SVG. */
ul.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye,
ul.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye svg,
ul.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye svg use,
.single-product section.related.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye,
.single-product section.related.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye svg,
.single-product section.related.products li.product .ecomus-quickview-button .ecomus-svg-icon--eye svg use,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-svg-icon--eye,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-svg-icon--eye svg,
.single-product section.recently-viewed-products li.product .ecomus-quickview-button .ecomus-svg-icon--eye svg use {
  pointer-events: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}
/* =========================================================
 * APEX 2.2.23 — ECOMUS LAYOUT 9 QUICK VIEW: ONE NATIVE BUTTON
 * Ecomus Layout 9 registers its native Quick View on the
 * layout-specific thumbnail hook. Restore only its hit area/icon;
 * do not create a second button.
 * ========================================================= */
.woocommerce ul.products.product-card-layout-9 li.product .product-featured-icons--primary {
    z-index: 20 !important;
    pointer-events: none !important;
}
.woocommerce ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button {
    position: relative !important;
    z-index: 30 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 42px !important;
    min-height: 42px !important;
    max-height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    cursor: pointer !important;
    text-decoration: none !important;
}
.woocommerce ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-button__icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 19px !important;
    height: 19px !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none !important;
}
.woocommerce ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon.ecomus-svg-icon--eye {
    display: inline-flex !important;
    width: 19px !important;
    height: 19px !important;
    font-size: 19px !important;
    line-height: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
}
.woocommerce ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon--eye svg {
    display: block !important;
    width: 19px !important;
    height: 12px !important;
    max-width: 19px !important;
    max-height: 12px !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: none !important;
    fill: currentColor !important;
    stroke: none !important;
}
.woocommerce ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon--eye svg use {
    pointer-events: none !important;
}
.woocommerce ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-quickview-button__text,
.woocommerce ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button::before,
.woocommerce ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button::after {
    display: none !important;
    pointer-events: none !important;
}


/* =========================================================
 * APEX 2.2.24 — ECOMUS LAYOUT 9 QUICK VIEW DEFINITIVE FIX
 *
 * Ecomus 2.4.8 Layout 9 uses the same native Quick View anchor as the
 * other cards, but the parent also registers a primary-thumbnail copy.
 * Layout 9 must keep ONLY its layout-specific copy.  These rules target
 * the real Ecomus hierarchy and deliberately do not manufacture a new icon.
 * ========================================================= */
body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
  z-index: 20 !important;
}

body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  min-width: 42px !important;
  height: 42px !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  cursor: pointer !important;
  position: relative !important;
  z-index: 21 !important;
  transform: none !important;
  color: #fff !important;
  background: var(--apex-ink) !important;
  border: 1px solid var(--apex-gold) !important;
  border-radius: 4px !important;
  text-decoration: none !important;
}

body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-button__icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 19px !important;
  height: 19px !important;
  min-width: 19px !important;
  min-height: 19px !important;
  margin: 0 !important;
  padding: 0 !important;
  pointer-events: none !important;
  color: #fff !important;
}

body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-svg-icon--eye {
  display: inline-block !important;
  width: 19px !important;
  height: 12px !important;
  min-width: 19px !important;
  min-height: 12px !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: none !important;
}

body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-svg-icon--eye svg {
  display: block !important;
  width: 19px !important;
  height: 12px !important;
  min-width: 19px !important;
  min-height: 12px !important;
  max-width: 19px !important;
  max-height: 12px !important;
  color: #fff !important;
  fill: currentColor !important;
  stroke: none !important;
  overflow: visible !important;
}

body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-svg-icon--eye svg use,
body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button .ecomus-svg-icon--eye svg path {
  color: #fff !important;
  fill: currentColor !important;
  stroke: none !important;
  opacity: 1 !important;
}

/* Layout 9 is a native Ecomus icon action: never let an old Apex rule
 * hide it or replace it with pseudo-content. */
body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button::before,
body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button::after {
  content: none !important;
  display: none !important;
}

body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button:hover,
body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button:focus {
  opacity: 1 !important;
  visibility: visible !important;
  color: #fff !important;
}

/* The native button is intentionally available on touch screens too. */
@media (max-width: 1199px) {
  body.apex-ecomus-child ul.products.product-card-layout-9 li.product .product-featured-icons--primary .ecomus-quickview-button {
    display: inline-flex !important;
    opacity: 1 !important;
    visibility: visible !important;
  }
}

/* =========================================================
 * APEX v2.2.25 — DIRECT ECOMUS EYE PAINT
 * The SVG is now the exact Ecomus eye paths, not a sprite <use>.
 * ========================================================= */
body.apex-ecomus-child ul.products.product-card-layout-9 li.product .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon--eye,
body.apex-ecomus-child ul.products.product-card-layout-9 li.product .ecomus-quickview-button .ecomus-button__icon .ecomus-svg-icon--eye svg {
    display: inline-block !important;
    width: 19px !important;
    height: 12px !important;
    min-width: 19px !important;
    min-height: 12px !important;
    max-width: 19px !important;
    max-height: 12px !important;
    overflow: visible !important;
    opacity: 1 !important;
    visibility: visible !important;
    color: #fff !important;
    fill: currentColor !important;
    stroke: none !important;
    pointer-events: none !important;
}

/* =========================================================
 * APEX v2.2.26 — HIDE QUICK VIEW IN RELATED / RECENTLY VIEWED
 *
 * Quick View is intentionally removed visually from these two
 * recommendation sections. Shop/archive product cards keep their
 * native Ecomus Quick View behavior.
 * ========================================================= */
body.apex-ecomus-child.single-product section.related.products ul.products li.product .ecomus-quickview-button,
body.apex-ecomus-child.single-product section.recently-viewed-products ul.products li.product .ecomus-quickview-button,
body.apex-ecomus-child.single-product section.related.products ul.products li.product .ecomus-quickview-button.apex-quick-view-button,
body.apex-ecomus-child.single-product section.recently-viewed-products ul.products li.product .ecomus-quickview-button.apex-quick-view-button {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    min-width: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
}

/* If Ecomus leaves an otherwise-empty featured-icons wrapper behind,
 * collapse only the wrapper when it contains Quick View and no other
 * product action. */
body.apex-ecomus-child.single-product section.related.products ul.products li.product .product-featured-icons--primary:has(> .ecomus-quickview-button):not(:has(> *:not(.ecomus-quickview-button))),
body.apex-ecomus-child.single-product section.recently-viewed-products ul.products li.product .product-featured-icons--primary:has(> .ecomus-quickview-button):not(:has(> *:not(.ecomus-quickview-button))) {
    display: none !important;
}


/* =========================================================
 * APEX v2.2.32 — FINAL ECOMUS MOBILE GRID / HEADER FALLBACK
 *
 * Ecomus 2.4.8 is the source of truth:
 * - mobile-col-2 = 50% per product
 * - native mobile header = .site-header__mobile
 *
 * These rules only restore those native dimensions when another cached
 * stylesheet has overridden them. No card dimensions are recreated.
 * ========================================================= */

/* Native Ecomus mobile catalog: two equal columns, full available width.
 * Use the theme's 50% column model and its normal 42px product bottom
 * margin. The 7.5px side inset is only a gutter, not a card width rule. */
@media (max-width: 767px) {
  .ecomus-catalog-page ul.products.mobile-col-2 {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  .ecomus-catalog-page ul.products.mobile-col-2 > li.product {
    display: block !important;
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
    margin-top: 0 !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    margin-bottom: 42px !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 7.5px !important;
    padding-right: 7.5px !important;
    box-sizing: border-box !important;
  }

  .ecomus-catalog-page ul.products.mobile-col-2 > li.product .product-inner {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* Native Ecomus mobile header: make the actual Ecomus element visible and
 * hide only the desktop counterpart at the same 1199px breakpoint. */
@media (max-width: 1199px) {
  body .site-header__mobile {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body .site-header__desktop {
    display: none !important;
  }

  body .site-header__mobile .header-mobile-main {
    display: block !important;
    visibility: visible !important;
  }

  body .site-header__mobile .header-mobile-main .header-items,
  body .site-header__mobile .header-mobile-main .header-left-items,
  body .site-header__mobile .header-mobile-main .header-center-items,
  body .site-header__mobile .header-mobile-main .header-right-items {
    visibility: visible !important;
    opacity: 1 !important;
  }
}

/* Remove ONLY Ecomus product-card image-slider navigation arrows.
 * The Quick View eye remains. Single-product gallery arrows are untouched. */
.woocommerce-shop ul.products li.product .product-thumbnails--slider .swiper-button,
.woocommerce-page:not(.single-product) ul.products li.product .product-thumbnails--slider .swiper-button,
.tax-product_cat ul.products li.product .product-thumbnails--slider .swiper-button {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.woocommerce-shop ul.products li.product .product-thumbnails--slider .ecomus-product-card-swiper-button,
.woocommerce-page:not(.single-product) ul.products li.product .product-thumbnails--slider .ecomus-product-card-swiper-button,
.tax-product_cat ul.products li.product .product-thumbnails--slider .ecomus-product-card-swiper-button {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Keep the image itself full width inside the native card. */
@media (max-width: 767px) {
  .ecomus-catalog-page ul.products.mobile-col-2 > li.product .product-thumbnail,
  .ecomus-catalog-page ul.products.mobile-col-2 > li.product .product-thumbnail img {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}


/* =========================================================
   APEX SHOP — ECOMUS 2.4.8 NATIVE GRID REPAIR
   This section intentionally changes presentation only.
   WooCommerce/Ecomus catalog settings remain untouched.
   The parent theme remains the source of truth for column
   classes, responsive widths and mobile gutters.
   ========================================================= */

/* Do not let the Apex card styling change the native column box. */
.ecomus-catalog-page ul.products {
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  margin-top: 0;
  margin-bottom: 0;
  gap: 0 !important;
  overflow: visible;
}

.ecomus-catalog-page ul.products > li.product {
  box-sizing: border-box;
  min-width: 0;
  margin-top: 0;
  padding-left: 0;
  padding-right: 0;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  transform: none;
}

/* The card itself owns the visual treatment; the native li owns geometry. */
.ecomus-catalog-page ul.products > li.product > .product-inner {
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
  margin: 0;
  background: var(--apex-bg-alt) !important;
  border: 1px solid var(--apex-border) !important;
  border-radius: var(--apex-radius) !important;
  overflow: hidden;
  transform: none;
}

.ecomus-catalog-page ul.products > li.product:hover > .product-inner {
  border-color: var(--apex-gold) !important;
  box-shadow: 0 8px 30px rgba(0,0,0,.4);
  transform: translateY(-2px);
}

/* Ecomus desktop column classes. Keep their native percentages. */
@media (min-width: 768px) {
  .ecomus-catalog-page ul.products.columns-1 > li.product { width: 100%; }
  .ecomus-catalog-page ul.products.columns-2 > li.product { width: 50%; }
  .ecomus-catalog-page ul.products.columns-3 > li.product { width: 33.33%; }
  .ecomus-catalog-page ul.products.columns-4 > li.product { width: 25%; }
  .ecomus-catalog-page ul.products.columns-5 > li.product { width: 20%; }
  .ecomus-catalog-page ul.products.columns-6 > li.product { width: 16.66%; }
}

/* Ecomus tablet behavior: 4/5/6-column desktop choices become 3 columns. */
@media (min-width: 768px) and (max-width: 1199px) {
  .ecomus-catalog-page ul.products.columns-4 > li.product,
  .ecomus-catalog-page ul.products.columns-5 > li.product,
  .ecomus-catalog-page ul.products.columns-6 > li.product {
    width: 33.33%;
  }
}

/* Ecomus mobile column classes + its exact 7.5px gutters. */
@media (max-width: 767px) {
  .ecomus-catalog-page ul.products {
    margin-left: -7.5px;
    margin-right: -7.5px;
  }

  .ecomus-catalog-page ul.products > li.product {
    padding-left: 7.5px;
    padding-right: 7.5px;
    margin-bottom: 30px;
  }

  .ecomus-catalog-page ul.products.mobile-col-1 > li.product { width: 100%; }
  .ecomus-catalog-page ul.products.mobile-col-2 > li.product { width: 50%; }
  .ecomus-catalog-page ul.products.mobile-col-3 > li.product { width: 33.33%; }
  .ecomus-catalog-page ul.products.mobile-col-4 > li.product { width: 25%; }
  .ecomus-catalog-page ul.products.mobile-col-5 > li.product { width: 20%; }
  .ecomus-catalog-page ul.products.mobile-col-6 > li.product { width: 16.66%; }

  .ecomus-catalog-page ul.products > li.product > .product-inner {
    width: 100%;
  }
}

/* Keep product images inside their native card width. */
.ecomus-catalog-page ul.products .product-thumbnail,
.ecomus-catalog-page ul.products .product-thumbnail img {
  max-width: 100%;
  box-sizing: border-box;
}

/* Prevent card controls from creating an artificial horizontal overflow. */
.ecomus-catalog-page ul.products .product-summary,
.ecomus-catalog-page ul.products .product-summary > * {
  max-width: 100%;
  box-sizing: border-box;
}

/* Product-card arrows stay hidden as requested; single-product gallery is untouched. */
.ecomus-catalog-page ul.products .product-thumbnail .product-thumbnails--slider .swiper-button,
.ecomus-catalog-page ul.products .product-thumbnail .product-thumbnails--slider .ecomus-product-card-swiper-button {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* =========================================================
   APEX SHOP — PRODUCT CARD SPACING
   Visual spacing only. WooCommerce/Ecomus shop settings,
   catalog options and product counts remain untouched.
   ========================================================= */
.ecomus-catalog-page ul.products {
  column-gap: 20px !important;
  row-gap: 20px !important;
}

@media (min-width: 1200px) {
  .ecomus-catalog-page ul.products.columns-4 > li.product { width: calc((100% - 60px) / 4) !important; }
  .ecomus-catalog-page ul.products.columns-3 > li.product { width: calc((100% - 40px) / 3) !important; }
  .ecomus-catalog-page ul.products.columns-2 > li.product { width: calc((100% - 20px) / 2) !important; }
}

@media (min-width: 768px) and (max-width: 1199px) {
  .ecomus-catalog-page ul.products.columns-4 > li.product,
  .ecomus-catalog-page ul.products.columns-5 > li.product,
  .ecomus-catalog-page ul.products.columns-6 > li.product,
  .ecomus-catalog-page ul.products.columns-3 > li.product {
    width: calc((100% - 40px) / 3) !important;
  }
  .ecomus-catalog-page ul.products.columns-2 > li.product { width: calc((100% - 20px) / 2) !important; }
}

@media (max-width: 767px) {
  .ecomus-catalog-page ul.products {
    column-gap: 15px !important;
    row-gap: 20px !important;
  }
  .ecomus-catalog-page ul.products.mobile-col-2 > li.product { width: calc((100% - 15px) / 2) !important; }
  .ecomus-catalog-page ul.products.mobile-col-1 > li.product { width: 100% !important; }
  .ecomus-catalog-page ul.products.mobile-col-3 > li.product { width: calc((100% - 30px) / 3) !important; }
}


/* =========================================================
   APEX SHOP — MOBILE 2-COLUMN GRID + 100PX HERO TOP SPACE
   Keep WooCommerce/Ecomus settings untouched; presentation only.
   ========================================================= */
@media (max-width: 767px) {
  .woocommerce-shop ul.products,
  .tax-product_cat ul.products,
  .post-type-archive-product ul.products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 15px !important;
    row-gap: 20px !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .woocommerce-shop ul.products li.product,
  .tax-product_cat ul.products li.product,
  .post-type-archive-product ul.products li.product {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }
}

/* Add 100px breathing room above the Apex shop/category hero. */
.woocommerce-shop .apex-shop-hero,
.tax-product_cat .apex-shop-hero,
.post-type-archive-product .apex-shop-hero {
  padding-top: 100px !important;
}

/* If Ecomus renders its shop page-header wrapper, keep the same top spacing. */
.woocommerce-shop #page-header.page-header--shop .page-header__content,
.tax-product_cat #page-header.page-header--shop .page-header__content,
.post-type-archive-product #page-header.page-header--shop .page-header__content {
  padding-top: 100px !important;
}

/* =========================================================
 * APEX v2.2.36 — FORCE TWO PRODUCT COLUMNS ON MOBILE
 * Presentation-only fallback. Does not change WooCommerce/Ecomus
 * catalog settings. Applies to the actual archive wrappers even
 * when the mobile-col-2 class is missing or overridden by cached CSS.
 * ========================================================= */
@media (max-width: 767px) {
  body.woocommerce-shop ul.products,
  body.tax-product_cat ul.products,
  body.post-type-archive-product ul.products,
  body.woocommerce-page ul.products {
    display: flex !important;
    flex-wrap: wrap !important;
    width: calc(100% + 15px) !important;
    max-width: none !important;
    margin-left: -7.5px !important;
    margin-right: -7.5px !important;
    gap: 0 !important;
  }

  body.woocommerce-shop ul.products > li.product,
  body.tax-product_cat ul.products > li.product,
  body.post-type-archive-product ul.products > li.product,
  body.woocommerce-page ul.products > li.product {
    display: block !important;
    flex: 0 0 50% !important;
    width: 50% !important;
    max-width: 50% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 7.5px !important;
    padding-right: 7.5px !important;
  }

  body.woocommerce-shop ul.products > li.product > .product-inner,
  body.tax-product_cat ul.products > li.product > .product-inner,
  body.post-type-archive-product ul.products > li.product > .product-inner,
  body.woocommerce-page ul.products > li.product > .product-inner {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
}
