/* Eternal Elixir UX audit fixes — 2026-09-25. Everything is scoped to body.ee-ux. */
body.ee-ux {
  --ee-navy: #0f172a;
  --ee-navy-2: #1e293b;
  --ee-ink: #111827;
  --ee-text: #334155;
  --ee-muted: #64748b;
  --ee-line: #e2e8f0;
  --ee-gold: #c8a24e;
  --ee-gold-dark: #8b692f;
  --ee-amber: #f7ab31;
  --ee-cream: #faf8f3;
  /* WoodMart theme tokens still held the demo green/teal/blue palette. */
  --wd-title-color: #0f172a;
  --wd-primary-color: #0f172a;
  --wd-alternative-color: #c8a24e;
  --wd-link-color: #0f172a;
  --wd-link-color-hover: #8b692f;
  --wd-entities-title-color: #0f172a;
  --wd-entities-title-color-hover: #8b692f;
  --btn-accented-bgcolor: #0f172a;
  --btn-accented-bgcolor-hover: #1e293b;
  --btn-accented-color: #ffffff;
  --btn-accented-color-hover: #ffffff;
}

/* ---------- Buttons that still used the demo cyan / indigo ---------- */
body.ee-ux .woocommerce .button.alt,
body.ee-ux .woocommerce button.button.alt,
body.ee-ux #place_order,
body.ee-ux a.checkout-button,
body.ee-ux .wc-proceed-to-checkout a.checkout-button {
  background: var(--ee-navy) !important;
  border-color: var(--ee-navy) !important;
  color: #fff !important;
}
body.ee-ux .woocommerce .button.alt:hover,
body.ee-ux #place_order:hover,
body.ee-ux a.checkout-button:hover {
  background: var(--ee-navy-2) !important;
  border-color: var(--ee-navy-2) !important;
  color: #fff !important;
}
body.ee-ux .woocommerce-cart-form button[name="update_cart"],
body.ee-ux .woocommerce-cart-form button[name="apply_coupon"],
body.ee-ux .coupon button[name="apply_coupon"] {
  background: #fff !important;
  border: 1px solid #cbd5e1 !important;
  color: var(--ee-navy) !important;
  box-shadow: none !important;
}
body.ee-ux .woocommerce-cart-form button[name="update_cart"]:hover,
body.ee-ux .woocommerce-cart-form button[name="apply_coupon"]:hover {
  border-color: var(--ee-navy) !important;
}
body.ee-ux .woocommerce-cart-form button[name="update_cart"][disabled] { opacity: .55; }

/* ---------- Compact order rewards ---------- */
body.ee-ux .ee-ux-rewards {
  background: #fff;
  border: 1px solid var(--ee-line);
  border-radius: 12px;
  padding: 12px 14px;
  margin: 0 0 18px;
  box-shadow: none;
  color: var(--ee-ink);
}
body.ee-ux .ee-ux-rewards-empty { display: none !important; }
body.ee-ux .ee-ux-progress-line { margin: 0; }
body.ee-ux .ee-ux-progress-msg {
  margin: 0 0 8px;
  font-size: 13.5px;
  line-height: 1.45;
  color: var(--ee-ink);
}
body.ee-ux .ee-ux-progress-msg strong { color: var(--ee-navy); font-weight: 700; }
body.ee-ux .ee-ux-progress-msg .amount { font-weight: 700; }
body.ee-ux .ee-ux-done { color: #15803d; font-weight: 600; margin-right: 6px; white-space: nowrap; }
body.ee-ux .ee-ux-progress-line.is-complete .ee-ux-progress-msg { margin: 0; }
body.ee-ux .ee-ux-meter { height: 6px; border-radius: 6px; background: #e8ebf0; overflow: hidden; }
body.ee-ux .ee-ux-meter > span { display: block; height: 100%; border-radius: 6px; background: var(--ee-gold); transition: width .3s ease; }
body.ee-ux .ee-ux-gifts { margin: 10px 0 0; border-top: 1px solid #eef1f4; padding-top: 6px; }
body.ee-ux .ee-ux-rewards--checkout .ee-ux-gifts,
body.ee-ux .ee-ux-rewards--drawer .ee-ux-gifts { border-top: 0; margin-top: 0; padding-top: 0; }
body.ee-ux .ee-ux-gifts > summary {
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-height: 40px;
  font-size: 13px;
  font-weight: 600;
  color: var(--ee-text);
}
body.ee-ux .ee-ux-gifts > summary::-webkit-details-marker { display: none; }
body.ee-ux .ee-ux-gifts > summary::after { content: "+"; font-size: 18px; line-height: 1; color: var(--ee-muted); }
body.ee-ux .ee-ux-gifts[open] > summary::after { content: "–"; }
body.ee-ux .ee-ux-gifts.is-actionable > summary { color: #15803d; }
body.ee-ux .ee-ux-gifts-body { padding-bottom: 4px; }
body.ee-ux .ee-ux-rewards .ee-gift-tier { margin-top: 8px; padding: 10px 12px; border-radius: 10px; }
body.ee-ux .ee-ux-rewards .ee-gift-feedback:empty { display: none; }
body.ee-ux .ee-ux-rewards :is(a, summary):focus-visible { outline: 3px solid var(--ee-amber); outline-offset: 2px; }

/* ---------- Mobile cart drawer: items first, brand colours ---------- */
body.ee-ux .ee-mobile-cart-drawer { background: #fff; }
body.ee-ux .ee-cart-shell { display: flex; flex-direction: column; background: #fff; padding: 14px 14px 22px; }
body.ee-ux .ee-cart-progress-stack { display: contents; }
body.ee-ux .ee-cart-header { order: 1; margin-bottom: 10px; align-items: center; }
body.ee-ux .ee-cart-progress-shipping { order: 2; }
body.ee-ux .ee-mobile-cart-content { order: 3; }
body.ee-ux .ee-cart-progress-gift { order: 4; }
body.ee-ux .ee-cart-eyebrow { display: none; }
body.ee-ux .ee-cart-header h2 { margin: 0; font-size: 20px; letter-spacing: -.01em; color: var(--ee-navy); }
body.ee-ux .ee-cart-close { border-color: var(--ee-line); box-shadow: none; color: var(--ee-navy); }
body.ee-ux .ee-cart-progress.ee-ux-progress {
  padding: 10px 12px;
  margin: 0 0 12px;
  border: 1px solid var(--ee-line);
  border-radius: 10px;
  background: var(--ee-cream);
  box-shadow: none;
}
body.ee-ux .ee-cart-progress.ee-ux-is-empty,
body.ee-ux .ee-cart-progress-gift.ee-ux-is-empty { display: none; }
body.ee-ux .ee-cart-progress-gift.ee-ux-rewards--drawer { padding: 4px 12px; margin: 12px 0 0; border-radius: 10px; }
body.ee-ux .ee-cart-item { border-color: var(--ee-line); box-shadow: none; border-radius: 12px; }
body.ee-ux .ee-cart-thumb { background: #f8fafc; border-radius: 10px; }
body.ee-ux .ee-cart-name, body.ee-ux .ee-cart-name a,
body.ee-ux .ee-cart-unit .amount, body.ee-ux .ee-cart-line-total,
body.ee-ux .ee-cart-qty-btn, body.ee-ux .ee-cart-qty-input { color: var(--ee-navy); }
body.ee-ux .ee-cart-qty { background: #f8fafc; border-color: var(--ee-line); }
body.ee-ux .ee-cart-offer { background: #fdf3dc; color: var(--ee-gold-dark); }
body.ee-ux .ee-cart-item-gift { background: #f7faf8; border-color: #cfe3d6; }
body.ee-ux .ee-cart-item-gift .ee-cart-offer, body.ee-ux .ee-cart-gift-lock { background: #e8f5ec; color: #166534; }
body.ee-ux .ee-cart-summary { background: var(--ee-navy); box-shadow: none; border-radius: 12px; }
body.ee-ux .ee-cart-button { border-radius: 10px; min-height: 48px; font-size: 15px; }
body.ee-ux .ee-cart-actions { display: flex; flex-direction: column; }
body.ee-ux .ee-cart-button-primary { order: 1; background: var(--ee-navy); box-shadow: none; }
body.ee-ux .ee-cart-button-secondary { order: 2; background: transparent; border: 1px solid var(--ee-line); color: var(--ee-navy) !important; min-height: 42px; font-size: 14px; }
body.ee-ux .ee-cart-empty-link { background: var(--ee-navy); }

/* Desktop side carts */
body.ee-ux .cart-widget-side .ee-ux-rewards,
body.ee-ux .bdt-offcanvas .ee-ux-rewards { margin: 0 0 12px; }

/* ---------- Cart page ---------- */
body.ee-ux.woocommerce-cart .ee-ux-rewards--page { margin-bottom: 20px; }

/* ---------- Checkout: focused, on-brand ---------- */
body.ee-ux.woocommerce-checkout .woocommerce-billing-fields h3,
body.ee-ux.woocommerce-checkout #order_review_heading,
body.ee-ux.woocommerce-checkout .woocommerce-additional-fields h3 { color: var(--ee-navy) !important; }
body.ee-ux.woocommerce-checkout .form-row label,
body.ee-ux.woocommerce-checkout #ship-to-different-address span,
body.ee-ux.woocommerce-checkout .woocommerce-checkout-review-order-table th { color: var(--ee-text) !important; }
body.ee-ux.woocommerce-checkout .order-total .amount { color: var(--ee-navy) !important; }
body.ee-ux.woocommerce-checkout .woocommerce-form-coupon-toggle a { color: var(--ee-gold-dark) !important; }
body.ee-ux #place_order {
  width: 100% !important;
  min-height: 54px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: .02em;
  border-radius: 10px !important;
}
body.ee-ux.woocommerce-checkout .elementor-element-e97dbdc,
body.ee-ux.woocommerce-checkout .elementor-element-d0fe356,
body.ee-ux.woocommerce-checkout .elementor-element-9dc2a73,
body.ee-ux.woocommerce-checkout .elementor-element-21a68c3 { visibility: hidden !important; pointer-events: none !important; }
body.ee-ux.woocommerce-checkout .ee-ux-notes-toggle {
  background: none; border: 0; padding: 6px 0; margin: 4px 0 8px;
  color: var(--ee-gold-dark); font-weight: 600; font-size: 14px; text-decoration: underline; cursor: pointer; min-height: 0;
  text-transform: none; letter-spacing: 0;
}
body.ee-ux.woocommerce-checkout .ee-ux-notes-collapsed #order_comments_field { display: none; }
body.ee-ux.woocommerce-checkout .ee-ux-notes-collapsed > h3 { display: none; }

/* ---------- Product pages ---------- */
body.ee-ux.single-product nav.ee-breadcrumbs {
  box-sizing: border-box;
  max-width: 1320px;
  margin: 0 auto 12px !important;
  padding: 0 20px 6px !important;
}
@media (max-width: 767px) {
  body.ee-ux.single-product nav.ee-breadcrumbs {
    padding: 0 16px !important;
    margin-bottom: 8px !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 12px !important;
  }
}
/* The FAQ from the SEO plugin now sits directly under the template FAQ. */
body.ee-ux .ee-pdp-faq.ee-ux-faq-merged { margin: 0 auto 32px !important; padding-top: 0 !important; }
body.ee-ux .ee-pdp-faq.ee-ux-faq-merged > h2 { display: none; }
body.ee-ux .ee-pdp-faq h2,
body.ee-ux #ee-fbt-heading,
body.ee-ux #reply-title { color: var(--ee-navy) !important; }
body.ee-ux .ee-pdp-faq summary { color: var(--ee-ink); font-weight: 600; cursor: pointer; }
/* One cross-sell block is enough: keep "Customers usually add these too" (it has add buttons). */
body.ee-ux .ee-related-products { display: none !important; }
body.ee-ux .ee-fbt__add.button { background: var(--ee-navy) !important; color: #fff !important; }
/* Guide link, moved to the end of the product content by script. */
body.ee-ux .ee-guide-link.ee-ux-guide-bottom { margin: 8px auto 40px !important; }
/* Review form */
body.ee-ux #review_form.ee-product-review-form label,
body.ee-ux #review_form .comment-form-cookies-consent label { color: var(--ee-text) !important; }
body.ee-ux #review_form #submit,
body.ee-ux #review_form .form-submit input[type="submit"] { background: var(--ee-navy) !important; color: #fff !important; border-radius: 8px; }
body.ee-ux #review_form p.stars { margin: 4px 0 14px; line-height: 1; }
body.ee-ux #review_form p.stars > span { display: inline-flex; gap: 4px; }
body.ee-ux #review_form p.stars a {
  position: relative;
  display: inline-block;
  width: 34px;
  height: 34px;
  overflow: hidden;
  color: transparent !important;
  font-size: 0 !important;
  text-decoration: none !important;
  white-space: nowrap;
}
body.ee-ux #review_form p.stars a::before {
  content: "\2605";
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 30px;
  line-height: 1;
  color: #d4d8de;
  transition: color .12s ease;
}
body.ee-ux #review_form p.stars:hover a::before,
body.ee-ux #review_form p.stars.selected a::before { color: #eabe12; }
body.ee-ux #review_form p.stars a:hover ~ a::before,
body.ee-ux #review_form p.stars.selected a.active ~ a::before { color: #d4d8de; }
body.ee-ux #review_form p.stars:hover a:hover::before,
body.ee-ux #review_form p.stars:hover a:not(:hover) { }
body.ee-ux #review_form p.stars a:focus-visible { outline: 3px solid var(--ee-amber); outline-offset: 2px; }
/* Per-bottle price on the quantity tiers */
body.ee-ux .mb-offer-box .ee-ux-per { display: block; margin-top: 3px; font-size: 11.5px; font-weight: 600; color: var(--ee-gold-dark); letter-spacing: 0; text-transform: none; }

@media (max-width: 767px) {
  /* Tighter phone fold: title and prices reach the first screen. */
  body.ee-ux.single-product .wd-content-area.site-content,
  body.ee-ux.single-product #main-content,
  body.ee-ux.single-product .wd-page-content { padding-top: 8px !important; margin-top: 0 !important; }
  body.ee-ux.single-product .elementor-element-4a7f5d7 { padding-top: 0 !important; margin-top: 0 !important; }
  body.ee-ux.single-product .elementor-element-4a7f5d7 > .e-con-inner { padding-top: 0 !important; }
  body.ee-ux.single-product .elementor-element-53fba09 { padding-top: 0 !important; padding-bottom: 0 !important; }
  body.ee-ux.single-product .elementor-element-1734cce { display: none !important; }
  body.ee-ux.single-product .elementor-element-38006d3 { padding-top: 8px !important; row-gap: 10px !important; }
  body.ee-ux.single-product .wd-gallery-thumb { display: none !important; }
  body.ee-ux.single-product .woocommerce-product-gallery__image,
  body.ee-ux.single-product .woocommerce-product-gallery__image img { height: 210px !important; max-height: 210px !important; }
  body.ee-ux.single-product .elementor-element-53fba09 .elementor-widget-container { padding-top: 0 !important; padding-bottom: 0 !important; }
  body.ee-ux.single-product .elementor-element-1bbae4e .product_title,
  body.ee-ux.single-product .elementor-element-1bbae4e .elementor-heading-title { font-size: 21px !important; line-height: 1.25 !important; }
}

/* ---------- Mobile header: announcement scrolls away, bar is shorter ---------- */
@media (max-width: 1024px) {
  html body.ee-ux #masthead { position: sticky; top: -34px; z-index: 1000; }
  html body.ee-ux #masthead .elementor-element.elementor-element-b382824.elementor-sticky__spacer,
  html body.ee-ux #masthead .elementor-element.elementor-element-b243654.elementor-sticky__spacer { display: none !important; }
  html body.ee-ux #masthead .elementor-element.elementor-element-b382824,
  html body.ee-ux #masthead .elementor-element.elementor-element-b243654 { position: relative !important; top: auto !important; width: auto !important; transform: none !important; margin-top: 0 !important; }
  html body.ee-ux #masthead .elementor-element.elementor-element-b243654 { min-height: 0 !important; }
  html body.ee-ux #masthead .elementor-element.elementor-element-b243654 > .e-con-inner { padding-top: 8px !important; padding-bottom: 8px !important; min-height: 0 !important; }
}

/* ---------- Home ---------- */
body.ee-ux.home .elementor-element-b5a9228 { display: none !important; }
body.ee-ux.home .elementor-element-a0b1a0a .elementor-button:hover { background-color: var(--ee-navy-2) !important; }
body.ee-ux.home :is(.elementor-element-2c26640e, .elementor-element-224316e, .elementor-element-7ea4f3a, .elementor-element-f7c4417, .elementor-element-82f8f9f, .elementor-element-9d6c4a5, .elementor-element-145b1cd, .elementor-element-546a263, .elementor-element-711249a, .elementor-element-25d0478):hover { background-color: rgba(200, 162, 78, .10) !important; }
body.ee-ux .ee-ship-note { display: none !important; }
body.ee-ux.single-product .elementor-element-4a7f5d7 .ee-ship-note,
body.ee-ux.single-product .elementor-element-780b368 .ee-ship-note { display: block !important; }

@media (max-width: 767px) {
  body.ee-ux.home .elementor-element-951d867 { min-height: 0 !important; }
  body.ee-ux.home .elementor-element-951d867 > .e-con-inner { min-height: 0 !important; padding-top: 22px !important; padding-bottom: 26px !important; row-gap: 14px !important; }
  body.ee-ux.home .elementor-element-9849be2 h1 { font-size: 26px !important; line-height: 1.2 !important; }
  body.ee-ux.home .elementor-element-eae04db p { font-size: 15px !important; line-height: 1.5 !important; }
  body.ee-ux.home .elementor-element-d3b6de6 { display: none !important; }
  body.ee-ux.home .elementor-element-186b298 { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px !important; }
  body.ee-ux.home .elementor-element-186b298 > .e-con { width: auto !important; min-height: 0 !important; }
  body.ee-ux.home .elementor-element-186b298 .elementor-icon-box-wrapper { display: flex !important; flex-direction: row !important; align-items: center; gap: 8px; text-align: left !important; }
  body.ee-ux.home .elementor-element-186b298 .elementor-widget-icon-box > .elementor-widget-container { padding: 10px !important; }
  body.ee-ux.home .elementor-element-186b298 .elementor-icon-box-icon { margin: 0 !important; }
  body.ee-ux.home .elementor-element-186b298 .elementor-icon-box-icon svg { width: 18px; height: 18px; }
  body.ee-ux.home .elementor-element-186b298 .elementor-icon-box-title { font-size: 12.5px !important; margin: 0 !important; }
  /* Collection: two columns on phones, same card rules as the shop page. */
  body.ee-ux.home .elementor-element-b900987 .elementor-loop-container { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 16px 10px !important; }
  body.ee-ux.home .elementor-element-b900987 .e-loop-item .main-product,
  body.ee-ux.home .elementor-element-b900987 .e-loop-item .main-product > .e-con-inner,
  body.ee-ux.home .elementor-element-b900987 .e-loop-item .elementor-element-ec7e438 { min-height: 0 !important; height: auto !important; }
  body.ee-ux.home .elementor-element-b900987 .e-loop-item .elementor-element-47ea8d0 { min-height: 0 !important; height: auto !important; aspect-ratio: 1 / 1; }
  body.ee-ux.home .elementor-element-b900987 .e-loop-item .p-image,
  body.ee-ux.home .elementor-element-b900987 .e-loop-item .p-image > .elementor-widget-container { display: flex !important; width: 100%; min-height: 0 !important; height: 100% !important; align-items: center; justify-content: center; }
  body.ee-ux.home .elementor-element-b900987 .e-loop-item .p-image picture { display: contents; }
  body.ee-ux.home .elementor-element-b900987 .e-loop-item .p-image img { width: 100% !important; height: 100% !important; padding: 10px; object-fit: contain !important; }
  body.ee-ux.home .elementor-element-b900987 .e-loop-item .elementor-element-8d0f1de { display: none !important; }
  body.ee-ux.home .elementor-element-b900987 .elementor-element-b93e1b4 .elementor-heading-title { min-height: 4.05em !important; display: -webkit-box; overflow: hidden; font-size: 15px !important; line-height: 1.35 !important; -webkit-box-orient: vertical; -webkit-line-clamp: 3; }
  body.ee-ux.home .elementor-element-b900987 .e-loop-item .elementor-element-5a65708,
  body.ee-ux.home .elementor-element-b900987 .e-loop-item .elementor-element-5a65708 .elementor-heading-title { min-height: 2.5em !important; height: auto !important; font-size: 17px !important; line-height: 1.25 !important; }
  body.ee-ux.home .elementor-element-b900987 .elementor-loop-container .elementor-button { width: 100%; min-height: 44px !important; padding-inline: 8px !important; }
}

/* Home stacks row */
body.ee-ux .ee-ux-home-stacks { background: var(--ee-cream); padding: 56px 20px; }
body.ee-ux .ee-ux-home-stacks-inner { max-width: 1200px; margin: 0 auto; }
body.ee-ux .ee-ux-home-stacks-head { text-align: center; max-width: 640px; margin: 0 auto 28px; }
body.ee-ux .ee-ux-eyebrow { margin: 0 0 6px; font-size: 12px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--ee-gold-dark); }
body.ee-ux .ee-ux-home-stacks-head h2 { margin: 0 0 10px; font-family: Montserrat, Arial, sans-serif; font-size: clamp(24px, 3vw, 34px); line-height: 1.2; color: var(--ee-navy); }
body.ee-ux .ee-ux-home-stacks-head p { margin: 0; color: var(--ee-muted); font-size: 15px; }
body.ee-ux .ee-ux-stacks { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
body.ee-ux .ee-ux-stack { margin: 0; }
body.ee-ux .ee-ux-stack-link { display: flex; flex-direction: column; height: 100%; background: #fff; border: 1px solid var(--ee-line); border-radius: 14px; overflow: hidden; text-decoration: none !important; color: var(--ee-ink); transition: border-color .15s ease, transform .15s ease; }
body.ee-ux .ee-ux-stack-link:hover { border-color: var(--ee-gold); transform: translateY(-2px); }
body.ee-ux .ee-ux-stack-link:focus-visible { outline: 3px solid var(--ee-amber); outline-offset: 3px; }
body.ee-ux .ee-ux-stack-media { display: block; aspect-ratio: 16 / 9; background: #f4efe4; }
body.ee-ux .ee-ux-stack-media img { display: block; width: 100%; height: 100%; object-fit: cover; }
body.ee-ux .ee-ux-stack-body { display: flex; flex-direction: column; flex: 1 1 auto; min-width: 0; }
body.ee-ux .ee-ux-stack-name { display: block; padding: 16px 18px 4px; font-family: Montserrat, Arial, sans-serif; font-weight: 700; font-size: 17px; color: var(--ee-navy); }
body.ee-ux .ee-ux-stack-price { display: block; padding: 0 18px; font-size: 17px; font-weight: 700; color: var(--ee-navy); }
body.ee-ux .ee-ux-stack-note { display: block; padding: 4px 18px 18px; font-size: 13px; color: var(--ee-muted); }
body.ee-ux .ee-ux-stack-price :is(.amount, bdi, .woocommerce-Price-currencySymbol) { color: inherit !important; }
body.ee-ux .ee-ux-stack-price del { color: var(--ee-muted) !important; font-weight: 400; margin-right: 6px; }
body.ee-ux .ee-ux-stack-price ins { text-decoration: none; }
body.ee-ux .ee-ux-stacks-all { text-align: center; margin: 24px 0 0; }
body.ee-ux .ee-ux-stacks-all a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 22px; border-radius: 8px; background: var(--ee-navy); color: #fff !important; font-weight: 600; text-decoration: none !important; }
@media (max-width: 767px) {
  body.ee-ux .ee-ux-home-stacks { padding: 40px 16px; }
  body.ee-ux .ee-ux-stacks { grid-template-columns: 1fr; gap: 14px; }
  body.ee-ux .ee-ux-stack-link { flex-direction: row; align-items: center; }
  body.ee-ux .ee-ux-stack-media { flex: 0 0 42%; aspect-ratio: 4 / 3; }
  body.ee-ux .ee-ux-stack-name { padding: 12px 12px 2px; font-size: 15px; }
  body.ee-ux .ee-ux-stack-price { padding: 0 12px; font-size: 15px; }
  body.ee-ux .ee-ux-stack-note { padding: 2px 12px 12px; font-size: 12px; }
}

/* ---------- Shop ---------- */
body.ee-ux .ee-ux-goals { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 10px; margin: 18px auto 0; max-width: 980px; }
body.ee-ux .ee-ux-goals-label { font-size: 13px; font-weight: 600; color: rgba(255, 255, 255, .75); margin-right: 4px; }
body.ee-ux .ee-ux-goals ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
body.ee-ux .ee-ux-goals li { margin: 0; }
body.ee-ux .ee-ux-goals a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border: 1px solid rgba(255, 255, 255, .35); border-radius: 999px; color: #fff !important; font-size: 13.5px; font-weight: 500; text-decoration: none !important; background: rgba(255, 255, 255, .06); }
body.ee-ux .ee-ux-goals a:hover, body.ee-ux .ee-ux-goals a:focus-visible { background: #fff; color: var(--ee-navy) !important; }
@media (max-width: 767px) {
  body.ee-ux .ee-ux-goals { justify-content: flex-start; flex-wrap: nowrap; overflow-x: auto; -webkit-overflow-scrolling: touch; padding-bottom: 4px; max-width: 100%; width: 100%; box-sizing: border-box; scrollbar-width: none; }
  body.ee-ux .ee-ux-goals::-webkit-scrollbar { display: none; }
  body.ee-ux .ee-ux-goals-label { display: none; }
  body.ee-ux .ee-ux-goals ul { flex-wrap: nowrap; }
  body.ee-ux .ee-ux-goals a { white-space: nowrap; }
}
/* One plain sort control replaces the three developer-labelled selects. */
body.ee-ux .ee-ux-sort { display: flex; align-items: center; justify-content: flex-end; gap: 10px; margin: 0 0 18px; }
body.ee-ux .ee-ux-sort label { margin: 0; font-size: 14px; font-weight: 600; color: var(--ee-text); }
body.ee-ux .ee-ux-sort select { min-width: 220px; min-height: 42px; padding: 0 36px 0 12px; border: 1px solid #cbd5e1; border-radius: 8px; background-color: #fff; color: var(--ee-ink); font-size: 14px; }
body.ee-ux.ee-ux-sort-ready #ee-shop-filter-panel,
body.ee-ux.ee-ux-sort-ready .ee-shop-filter-toggle { display: none !important; }
@media (max-width: 767px) {
  body.ee-ux .ee-ux-sort { justify-content: stretch; }
  body.ee-ux .ee-ux-sort select { flex: 1; min-width: 0; }
}

/* ---------- WoodMart product cards (Best Sellers, category archives): the title font "Micro Extend" is not loaded ---------- */
body.ee-ux .wd-product .wd-entities-title,
body.ee-ux .wd-product .wd-entities-title a,
body.ee-ux .wd-product .ee-card-name { font-family: Montserrat, Arial, Helvetica, sans-serif !important; font-weight: 700 !important; color: var(--ee-navy) !important; }
body.ee-ux .wd-product .ee-card-sub { font-family: Poppins, Arial, Helvetica, sans-serif !important; font-weight: 400 !important; color: var(--ee-muted) !important; }
body.ee-ux.page-id-33540 .wd-products-element,
body.ee-ux.tax-product_cat .wd-content-area.site-content { box-sizing: border-box; max-width: 1320px; margin-inline: auto; padding-inline: 20px; }
body.ee-ux.page-id-33540 .wd-product .star-rating,
body.ee-ux.tax-product_cat .wd-product .star-rating { margin-inline: auto; }
body.ee-ux.page-id-33540 .wd-product .wd-star-rating,
body.ee-ux.tax-product_cat .wd-product .wd-star-rating { justify-content: center; }
@media (max-width: 767px) {
  body.ee-ux.page-id-33540 .wd-products-element,
  body.ee-ux.tax-product_cat .wd-content-area.site-content { padding-inline: 12px; }
}

/* ---------- Stacks: navy and gold instead of the one-off green ---------- */
/* Scoped to the stack components only: page-wide heading rules turned the dark footer headings and the navy badge text invisible. */
body.ee-ux [class*="ee-stack"] :is(h1, h2, h3, h4),
body.ee-ux:is(.postid-33978, .postid-33980, .postid-33982) :is(.ee-fbt__title, .wd-sticky-btn .wd-entities-title) { color: var(--ee-navy) !important; }

/* ---------- About / Contact header bands (Elementor global colour was demo cyan) ---------- */
body.ee-ux.page-id-27237,
body.ee-ux.page-id-28031 {
  --e-global-color-primary: #0f172a;
  --e-global-color-8c847ba: #0f172a;
  --e-global-color-4ed4627: #0f172a;
  --e-global-color-26b4c21: #0f172a;
}
body.ee-ux.page-id-28031 .wpcf7-submit,
body.ee-ux.page-id-28031 input[type="submit"] { background: var(--ee-navy) !important; border-color: var(--ee-navy) !important; color: #fff !important; }

/* ---------- One type system: Montserrat headings, Poppins text ---------- */
body.ee-ux :is(.elementor-30661, .elementor-31002) :is(h1, h2, h3, h4, h5, h6, .elementor-heading-title, .elementor-icon-box-title) {
  font-family: Montserrat, Arial, Helvetica, sans-serif !important;
}
body.ee-ux :is(.elementor-30661, .elementor-31002) :is(p, li, .elementor-widget-text-editor, .elementor-icon-list-text, .elementor-icon-box-description, .elementor-testimonial__text, .elementor-testimonial__name, .elementor-testimonial__title, .elementor-button-text) {
  font-family: Poppins, Arial, Helvetica, sans-serif !important;
}
body.ee-ux .elementor-30750 :is(h2, .elementor-heading-title) { font-family: Montserrat, Arial, Helvetica, sans-serif !important; }

/* ---------- Sticky add to cart ---------- */
body.ee-ux .wd-sticky-btn .buy-now-button,
body.ee-ux .wd-sticky-btn a.buy-now-button { background: var(--ee-amber) !important; color: var(--ee-navy) !important; }
body.ee-ux .wd-sticky-btn .ee-pay-badges { display: none !important; }
body.ee-ux .wd-sticky-btn :is(.wc-stripe-bnpl-product-message, .wc-stripe-product-messaging, .wc-stripe-bnpl-shop-message, afterpay-placement, square-placement, [class*="bnpl"], [id*="bnpl"]) { display: none !important; }
@media (max-width: 767px) {
  body.ee-ux .wd-sticky-btn .wd-sticky-btn-cart { flex: 1 1 auto; min-width: 0; }
  body.ee-ux .wd-sticky-btn form.cart { flex: 1 1 auto; min-width: 0; }
  body.ee-ux .wd-sticky-btn { padding: 8px 12px calc(8px + env(safe-area-inset-bottom)) !important; background: #fff !important; box-shadow: 0 -6px 18px rgba(15, 23, 42, .10) !important; }
  body.ee-ux .wd-sticky-btn .wd-sticky-btn-container { padding: 0 !important; }
  body.ee-ux .wd-sticky-btn .wd-sticky-btn-cart { width: 100%; }
  body.ee-ux .wd-sticky-btn .wd-sticky-btn-cart { margin: 0 !important; }
  body.ee-ux .wd-sticky-btn form.cart { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; gap: 0 8px; width: 100%; margin: 0 !important; }
  body.ee-ux .wd-sticky-btn form.cart :is(.ee-afterpay-msg, wc-order-attribution-inputs) { display: none !important; }
  body.ee-ux .wd-sticky-btn form.cart .wc-stripe-product-checkout-container { flex: 0 0 100%; }
  body.ee-ux .wd-sticky-btn form.cart .quantity { display: none !important; }
  body.ee-ux .wd-sticky-btn form.cart .single_add_to_cart_button { flex: 1 1 calc(50% - 4px); min-width: 0; min-height: 46px !important; margin: 0 !important; padding: 0 10px !important; border-radius: 8px !important; font-size: 13px !important; }
}

/* ---------- Merged product FAQ list ---------- */
body.ee-ux .ee-pdp-faq.ee-ux-faq-merged { max-width: 1200px; }
body.ee-ux .ee-pdp-faq.ee-ux-faq-merged .ee-pdp-faq__item { border: 1px solid var(--ee-line) !important; border-radius: 12px; padding: 16px 18px !important; margin: 0 0 12px; background: #fff; }
body.ee-ux .ee-pdp-faq.ee-ux-faq-merged .ee-pdp-faq__item summary { font-size: 15px; color: var(--ee-navy); }
body.ee-ux .ee-pdp-faq.ee-ux-faq-merged .ee-pdp-faq__answer { color: var(--ee-text); font-size: 14.5px; }

/* ---------- Desktop side cart buttons: checkout is the primary action ---------- */
body.ee-ux .cart-widget-side .woocommerce-mini-cart__buttons .checkout,
body.ee-ux .bdt-offcanvas .woocommerce-mini-cart__buttons .checkout { background: var(--ee-navy) !important; color: #fff !important; border-color: var(--ee-navy) !important; }
body.ee-ux .cart-widget-side .woocommerce-mini-cart__buttons .wc-forward:not(.checkout),
body.ee-ux .bdt-offcanvas .woocommerce-mini-cart__buttons .wc-forward:not(.checkout) { background: #fff !important; color: var(--ee-navy) !important; border: 1px solid #cbd5e1 !important; }
body.ee-ux .cart-widget-side .woocommerce-mini-cart__buttons { display: flex; flex-direction: column; gap: 10px; }
body.ee-ux .cart-widget-side .woocommerce-mini-cart__buttons .checkout { order: -1; }

/* ---------- Cart and checkout tables: readable navy instead of amber text ---------- */
body.ee-ux.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name,
body.ee-ux.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name a,
body.ee-ux.woocommerce-checkout .woocommerce-checkout-review-order-table .amount,
body.ee-ux.woocommerce-cart .woocommerce-cart-form .product-name a,
body.ee-ux.woocommerce-cart .cart_totals .amount { color: var(--ee-navy) !important; }

/* Stack tip under the free-shipping bar */
body.ee-ux .ee-ux-tip { margin: 8px 0 0; font-size: 12.5px; line-height: 1.4; }
body.ee-ux .ee-ux-tip a { color: var(--ee-gold-dark) !important; font-weight: 600; text-decoration: underline; }

/* ---------- Remaining theme-token leftovers ---------- */
body.ee-ux .button.wc-backward,
body.ee-ux .return-to-shop .button { background: var(--ee-navy) !important; color: #fff !important; border-color: var(--ee-navy) !important; }
body.ee-ux .woocommerce-form-register__submit,
body.ee-ux .woocommerce-form-register .button { background: var(--ee-navy) !important; color: #fff !important; border-color: var(--ee-navy) !important; }
body.ee-ux :is(.wd-switch-to-register, .wd-switch-to-login) { background: var(--ee-navy) !important; color: #fff !important; border-color: var(--ee-navy) !important; }
body.ee-ux :is(.wd-switch-to-register, .wd-switch-to-login):hover { background: #1e293b !important; }

/* ---------- Stacks: navy and gold accents instead of the one-off green ---------- */
body.ee-ux :is(.ee-stack-eyebrow, .ee-stack-section-kicker, .ee-stack-panel-label) { color: var(--ee-gold-dark) !important; border-color: rgba(139, 105, 47, .22) !important; }
body.ee-ux .ee-stack-check { background-color: var(--ee-navy) !important; }
body.ee-ux :is(.ee-stack-value-panel, .ee-stack-price-highlight, .ee-stack-benefit-card, .ee-stack-component, .ee-stack-detail-section) { border-color: var(--ee-line) !important; }
body.ee-ux .ee-stack-secondary { color: var(--ee-navy) !important; border-color: var(--ee-navy) !important; }
body.ee-ux .ee-stack-proof-row span { background: #f1f5f9 !important; color: var(--ee-navy) !important; }
body.ee-ux .ee-stack-component a { color: var(--ee-navy) !important; }
body.ee-ux .ee-stack-component-head span { color: #64748b !important; }
body.ee-ux .ee-stack-component strong { color: var(--ee-gold-dark) !important; }
body.ee-ux .ee-stack-component p { color: var(--ee-text) !important; }
body.ee-ux .ee-stack-faq-list details { border-color: var(--ee-line) !important; }
body.ee-ux .ee-stack-faq-list summary { color: var(--ee-navy) !important; }
body.ee-ux.page-id-33983 [class*="ee-stack"] li { color: var(--ee-text); }

/* ---------- Mobile cart drawer: the theme's generic button style was overriding the drawer's own round controls ---------- */
body.ee-ux .ee-mobile-cart-drawer .ee-cart-qty { align-items: center; overflow: hidden; }
body.ee-ux .ee-mobile-cart-drawer :is(.ee-cart-qty-btn, .ee-cart-qty-input) { width: 100% !important; min-width: 0 !important; height: 28px !important; min-height: 0 !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; color: var(--ee-navy) !important; font-size: 14px !important; line-height: 1 !important; }
body.ee-ux .ee-mobile-cart-drawer .ee-cart-qty-btn { border-radius: 999px !important; }
body.ee-ux .ee-mobile-cart-drawer .ee-cart-qty-btn:is(:hover, :focus-visible) { background: #fff !important; }
body.ee-ux .ee-mobile-cart-drawer .ee-cart-remove { width: 30px !important; height: 30px !important; min-width: 0 !important; min-height: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 999px !important; background: #f1f5f9 !important; color: var(--ee-navy) !important; font-size: 18px !important; line-height: 1 !important; }
body.ee-ux .ee-mobile-cart-drawer .ee-cart-close { width: 38px !important; height: 38px !important; min-width: 0 !important; min-height: 0 !important; padding: 0 !important; border: 1px solid var(--ee-line) !important; border-radius: 999px !important; background: #fff !important; color: var(--ee-navy) !important; font-size: 24px !important; line-height: 1 !important; }
body.ee-ux .ee-mobile-cart-drawer :is(.ee-cart-remove, .ee-cart-close):is(:hover, :focus-visible) { background: #e2e8f0 !important; }

/* ---------- Content tables: header rows that set their own colour inline keep it (the theme title colour is now navy) ---------- */
body.ee-ux tr[style*="color"] > th { color: inherit; }
