/* =========================================================
   KETHRON SITE STABILITY + CONTRAST FIX — V22
   Loaded LAST.
   Fixes:
   1) dark-section text becoming nearly invisible due to old
      global !important colour overrides;
   2) product Add to Cart controls requiring hover / clipping;
   3) footer, breadcrumb and dark CTA contrast consistency.
   ========================================================= */

:root {
  --k-v22-orange: #ef7f1a;
  --k-v22-ink: #17191e;
}

/* ---------- Dark surfaces: preserve intentional light text ---------- */
.k-shop-hero { color: #fff !important; }
.k-shop-hero h1 { color: #fff !important; }
.k-shop-hero p { color: rgba(255,255,255,.72) !important; }
.k-shop-hero .k-breadcrumb { color: rgba(255,255,255,.72) !important; }
.k-shop-hero .k-breadcrumb a { color: #fff !important; }
.k-shop-hero .k-breadcrumb i,
.k-shop-hero .k-breadcrumb span { color: rgba(255,255,255,.72) !important; }

.py.bg-darks,
.bg-darks { color: rgba(255,255,255,.82) !important; }
.py.bg-darks h1,
.py.bg-darks h2,
.py.bg-darks h3,
.py.bg-darks h4,
.py.bg-darks h5,
.py.bg-darks h6,
.bg-darks h1,
.bg-darks h2,
.bg-darks h3,
.bg-darks h4,
.bg-darks h5,
.bg-darks h6 { color: #fff !important; }
.py.bg-darks p,
.py.bg-darks small,
.bg-darks p,
.bg-darks small { color: rgba(255,255,255,.72) !important; }
.py.bg-darks a,
.bg-darks a { color: #fff !important; }

.k-about-cta-inner { color: #fff !important; }
.k-about-cta-inner h1,
.k-about-cta-inner h2,
.k-about-cta-inner h3 { color: #fff !important; }
.k-about-cta-inner p { color: rgba(255,255,255,.72) !important; }
.k-about-cta-inner > div > span { color: #ff9a41 !important; }
.k-about-cta-inner .k-btn-light { color: var(--k-v22-ink) !important; }
.k-about-cta-inner .k-btn-light:hover { color: #fff !important; }

.k-distributor-process { color: #fff !important; }
.k-distributor-process strong { color: #fff !important; }
.k-distributor-process small { color: rgba(255,255,255,.68) !important; }
.k-distributor-process span { color: var(--k-v22-orange) !important; }

/* Header top strip */
.k-announcement-bar,
.k-announcement-bar span,
.k-announcement-bar a { color: rgba(255,255,255,.92) !important; }
.k-announcement-bar strong { color: #ff9a41 !important; }

/* ---------- Footer contrast ---------- */
.k-footer { color: rgba(255,255,255,.72) !important; }
.k-footer h1,
.k-footer h2,
.k-footer h3,
.k-footer h4,
.k-footer h5,
.k-footer h6 { color: #fff !important; }
.k-footer-brand p { color: rgba(255,255,255,.62) !important; }
.k-footer li a,
.k-footer-bottom,
.k-footer-bottom p,
.k-footer-bottom a { color: rgba(255,255,255,.62) !important; }
.k-footer li a:hover,
.k-footer-bottom a:hover { color: var(--k-v22-orange) !important; }
.k-footer-trust strong,
.k-footer-contact strong,
.k-footer-stat strong { color: #fff !important; }
.k-footer-trust small,
.k-footer-stat small { color: rgba(255,255,255,.52) !important; }
.k-footer-contact .k-contact-row { color: rgba(255,255,255,.86) !important; }

/* ---------- Product actions: always visible, no hover dependency ---------- */
.vs-product.product-style1 .product-content {
  overflow: visible !important;
}

.vs-product.product-style1 .product-actions {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 44px !important;
  gap: 9px !important;
  width: 100% !important;
  min-height: 44px !important;
  margin-top: 14px !important;
  position: static !important;
  inset: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
  overflow: visible !important;
}

.vs-product.product-style1 .product-actions .vs-btn.addToCartBtn,
.vs-product.product-style1 .product-actions .addToCartBtn.vs-btn {
  display: inline-flex !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 44px !important;
  height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 11px !important;
  background: var(--k-v22-orange) !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
  box-shadow: 0 8px 18px rgba(239,127,26,.20) !important;
}

.vs-product.product-style1 .product-actions .cart-btn.addToCartBtn {
  display: inline-flex !important;
  width: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;
  min-height: 44px !important;
  height: 44px !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 11px !important;
  background: #fff1e4 !important;
  color: var(--k-v22-orange) !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  pointer-events: auto !important;
  box-shadow: none !important;
}

.vs-product.product-style1 .product-actions .vs-btn.addToCartBtn:hover,
.vs-product.product-style1 .product-actions .vs-btn.addToCartBtn:focus-visible,
.vs-product.product-style1 .product-actions .cart-btn.addToCartBtn:hover,
.vs-product.product-style1 .product-actions .cart-btn.addToCartBtn:focus-visible {
  background: #dd700f !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
}

/* Keep product text reliably readable. */
.vs-product.product-style1 .product-title,
.vs-product.product-style1 .product-title a,
.vs-product.product-style1 .product-price { color: #17191e !important; }
.vs-product.product-style1 .product-price span { color: #8b929d !important; }

/* ---------- Responsive cart controls ---------- */
@media (max-width: 767.98px) {
  .vs-product.product-style1 .product-actions {
    grid-template-columns: 1fr !important;
  }

  .vs-product.product-style1 .product-actions .cart-btn.addToCartBtn {
    display: none !important;
  }

  .vs-product.product-style1 .product-actions .vs-btn.addToCartBtn {
    min-height: 42px !important;
    height: 42px !important;
    font-size: 11px !important;
  }
}

/* ---------- Accessibility / rendering resilience ---------- */
#main-content,
#main-content [data-k-reveal] {
  visibility: visible !important;
}

@media (prefers-reduced-motion: reduce) {
  .vs-product.product-style1,
  .vs-product.product-style1 .product-actions .addToCartBtn {
    transition: none !important;
  }
}
