.tft-shop {
  --tft-near-black: #14150F;
  --tft-surface: #1E2118;
  --tft-green: #6B7A4B;
  --tft-ink: #FFFFFF;
  --tft-muted: #C7C8BE;
  --tft-border: #2E3123;

  width: 100vw;
  margin-left: calc(50% - 50vw);
  background: var(--tft-near-black);
  color: var(--tft-ink);
  font-family: system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  padding: 90px min(6vw, 88px);
  text-align: center;
}

.tft-eyebrow {
  font-size: 12px; font-weight: 700; letter-spacing: 1.5px; text-transform: uppercase;
  color: var(--tft-green); margin-bottom: 14px;
}
.tft-shop__title {
  font-family: 'Bahnschrift', 'Arial Narrow', 'Segoe UI Condensed', sans-serif;
  font-weight: 700; font-size: clamp(28px, 3.6vw, 42px); text-transform: uppercase;
  margin: 0 0 14px; color: var(--tft-ink);
}
.tft-shop__sub {
  font-size: 16px; color: var(--tft-muted); max-width: 520px; margin: 0 auto 50px;
}

.tft-shop__grid { max-width: 1200px; margin: 0 auto; text-align: left; }

/* --- WooCommerce [products] shortcode override --- */
.tft-shop ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 24px !important;
  list-style: none !important;
  margin: 0 !important; padding: 0 !important;
}
.tft-shop ul.products li.product {
  background: var(--tft-surface);
  border: 1px solid var(--tft-border);
  padding: 0 0 20px;
  margin: 0 !important;
  text-align: center;
  float: none !important;
  width: auto !important;
}
.tft-shop ul.products li.product a { text-decoration: none; color: inherit; }
.tft-shop ul.products li.product img {
  width: 100% !important; height: auto !important; aspect-ratio: 1 / 1; object-fit: cover;
  display: block; margin-bottom: 16px !important; border-radius: 0 !important;
}
.tft-shop ul.products li.product .woocommerce-loop-product__title {
  font-family: 'Bahnschrift', 'Arial Narrow', 'Segoe UI Condensed', sans-serif;
  font-weight: 700; font-size: 15px; text-transform: uppercase; color: var(--tft-ink);
  padding: 0 16px; margin: 0 0 8px;
}
.tft-shop ul.products li.product .price {
  color: var(--tft-green) !important; font-size: 14px; font-weight: 600; padding: 0 16px;
}
.tft-shop ul.products li.product .price del { color: var(--tft-muted); opacity: 0.7; }
.tft-shop ul.products li.product .price ins { text-decoration: none; }
.tft-shop ul.products li.product .button {
  display: inline-block; margin-top: 14px;
  background: var(--tft-green) !important; color: var(--tft-near-black) !important;
  border: none !important; border-radius: 0 !important;
  font-weight: 700 !important; font-size: 12px !important; letter-spacing: 1px !important;
  text-transform: uppercase !important; padding: 12px 20px !important;
}
.tft-shop ul.products li.product .button:hover { opacity: 0.85; }
.tft-shop ul.products li.product .star-rating { display: none !important; }
.tft-shop ul.products li.product .onsale {
  background: var(--tft-green) !important; color: var(--tft-near-black) !important;
  border-radius: 0 !important; font-size: 11px !important; text-transform: uppercase;
}

.tft-shop__cta { margin-top: 50px; }
.tft-shop__btn {
  display: inline-block; background: transparent; color: var(--tft-ink);
  border: 1px solid var(--tft-border); font-weight: 700; font-size: 13px;
  letter-spacing: 1.5px; text-transform: uppercase; text-decoration: none;
  padding: 15px 32px; transition: border-color 150ms ease, color 150ms ease;
}
.tft-shop__btn:hover { border-color: var(--tft-green); color: var(--tft-green); }

@media (max-width: 900px) {
  .tft-shop ul.products { grid-template-columns: repeat(2, 1fr) !important; }
}
@media (max-width: 560px) {
  .tft-shop ul.products { grid-template-columns: 1fr !important; }
  .tft-shop { padding: 60px 24px; }
}

/* Stop Woostify clipping/animating the price on hover - keep it always fully visible */
@media (min-width: 992px) {
  .product-loop-meta:not(.no-transform) {
    height: auto !important;
    line-height: normal !important;
    overflow: visible !important;
  }
  .products .product:hover .product-loop-meta:not(.no-transform) .animated-meta,
  .product-loop-meta:not(.no-transform) .animated-meta:focus-within {
    transform: none !important;
  }
}
.product-loop-meta .animated-meta {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 10px !important;
}
.product-loop-meta .loop-add-to-cart-btn.button {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: auto !important;
  padding: 10px 16px !important;
}
.product-loop-meta .loop-add-to-cart-btn .woostify-svg-icon svg { fill: var(--tft-near-black) !important; }


/* Remove the quick add-to-cart button from product cards, price text set to white */
.product-loop-meta .loop-add-to-cart-btn,
ul.products li.product .button {
  display: none !important;
}
ul.products li.product .price,
ul.products li.product .price .woocommerce-Price-amount,
.product-loop-meta .price {
  color: var(--tft-ink) !important;
}
