/* ============================================================
   NOVELSPROUT — WOOCOMMERCE DARK THEME OVERRIDES
   Targets default WooCommerce HTML output
   ============================================================ */

/* ── GLOBAL RESET on WC elements ── */
.woocommerce, .woocommerce-page {
  color: var(--text);
  font-family: var(--font-body);
}

/* ── HIDE OLD BANNER IMAGE everywhere ── */
img[src*="NOVELSPROUT_20260115"],
img[src*="768x160"],
img[src*="160x768"] {
  display: none !important;
}

/* ── REMOVE OLD INLINE NAV BARS from page content ── */
.woocommerce-breadcrumb { display: none !important; }

/* ── NOTICES ── */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  background: var(--bg2) !important;
  border-top-color: var(--green) !important;
  color: var(--text) !important;
  border-radius: 0 0 var(--radius) var(--radius) !important;
  font-size: .88rem !important;
}
.woocommerce-message::before { color: var(--green) !important; }
.woocommerce-error { border-top-color: #c0563a !important; }
.woocommerce-error::before { color: #c0563a !important; }

/* ============================================================
   SHOP / ARCHIVE PAGE
   ============================================================ */
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 18px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after { display: none !important; }

.woocommerce ul.products li.product {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  transition: var(--transition) !important;
  display: flex !important;
  flex-direction: column !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
  position: relative !important;
}
.woocommerce ul.products li.product:hover {
  border-color: var(--green) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 36px rgba(0,0,0,.5) !important;
}

/* Product image */
.woocommerce ul.products li.product a img {
  width: 100% !important;
  height: 220px !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform .4s !important;
  margin: 0 !important;
}
.woocommerce ul.products li.product:hover a img {
  transform: scale(1.04) !important;
}

/* Sale badge */
.woocommerce ul.products li.product .onsale {
  background: #c0563a !important;
  color: #fff !important;
  font-size: .65rem !important;
  font-weight: 700 !important;
  border-radius: 100px !important;
  padding: 4px 10px !important;
  top: 10px !important;
  right: 10px !important;
  left: auto !important;
  min-height: auto !important;
  min-width: auto !important;
  line-height: 1.4 !important;
  letter-spacing: .03em !important;
}

/* Product body */
.woocommerce ul.products li.product .product-inner,
.woocommerce ul.products li.product > a:not(:first-child),
.woocommerce ul.products li.product > div:not(.onsale) {
  padding: 14px 16px !important;
}

.woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
  font-family: var(--font-body) !important;
  font-size: .88rem !important;
  font-weight: 600 !important;
  color: var(--white) !important;
  margin: 12px 16px 8px !important;
  line-height: 1.35 !important;
  padding: 0 !important;
}

/* Prices */
.woocommerce ul.products li.product .price {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 16px 12px !important;
  font-size: 1rem !important;
  color: var(--white) !important;
}
.woocommerce ul.products li.product .price del,
.woocommerce ul.products li.product .price del bdi {
  color: var(--text-dim) !important;
  font-size: .78rem !important;
  opacity: 1 !important;
}
.woocommerce ul.products li.product .price ins,
.woocommerce ul.products li.product .price ins bdi {
  font-weight: 700 !important;
  color: var(--white) !important;
  text-decoration: none !important;
  background: none !important;
}

/* Add to cart button */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.button {
  display: block !important;
  width: calc(100% - 32px) !important;
  margin: 0 16px 16px !important;
  background: transparent !important;
  border: 1px solid var(--border2) !important;
  border-radius: var(--radius) !important;
  padding: 10px !important;
  color: var(--text-muted) !important;
  font-family: var(--font-body) !important;
  font-size: .8rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: var(--transition) !important;
  text-align: center !important;
  text-decoration: none !important;
  float: none !important;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product a.button:hover {
  background: var(--green) !important;
  border-color: var(--green) !important;
  color: #fff !important;
}

/* WooCommerce ordering/result count */
.woocommerce-ordering select,
.woocommerce-result-count {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  color: var(--text) !important;
  padding: 8px 12px !important;
  font-family: var(--font-body) !important;
  font-size: .82rem !important;
}
.woocommerce-result-count { border: none !important; background: none !important; color: var(--text-dim) !important; padding-left: 0 !important; }

/* Pagination */
.woocommerce nav.woocommerce-pagination ul {
  border: none !important;
  display: flex !important;
  gap: 8px !important;
  margin-top: 36px !important;
  justify-content: center !important;
}
.woocommerce nav.woocommerce-pagination ul li { border: none !important; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  color: var(--text-muted) !important;
  min-width: 38px !important;
  height: 38px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: .84rem !important;
  font-weight: 600 !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--green) !important;
  border-color: var(--green) !important;
  color: #fff !important;
}

/* ============================================================
   SINGLE PRODUCT PAGE
   ============================================================ */
.woocommerce div.product {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 52px !important;
  align-items: start !important;
}
.woocommerce div.product div.images {
  position: sticky !important;
  top: 90px !important;
}
.woocommerce div.product div.images img {
  border-radius: var(--radius-lg) !important;
  border: 1px solid var(--border) !important;
  width: 100% !important;
}
.woocommerce div.product .woocommerce-product-gallery__trigger { display: none !important; }

.woocommerce div.product .summary { padding: 0 !important; }
.woocommerce div.product .product_title {
  font-family: var(--font-display) !important;
  font-size: 2.2rem !important;
  color: var(--white) !important;
  margin-bottom: 12px !important;
  line-height: 1.15 !important;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
  color: var(--white) !important;
  font-size: 1.4rem !important;
  font-weight: 700 !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 20px !important;
}
.woocommerce div.product p.price del,
.woocommerce div.product span.price del { color: var(--text-dim) !important; font-size: .95rem !important; opacity: 1 !important; }
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins { text-decoration: none !important; background: none !important; color: var(--white) !important; }

.woocommerce div.product .woocommerce-product-details__short-description {
  color: var(--text-muted) !important;
  font-size: .9rem !important;
  line-height: 1.8 !important;
  margin-bottom: 24px !important;
}
.woocommerce div.product .woocommerce-product-details__short-description p { margin-bottom: 12px; }

/* Add to cart box */
.woocommerce div.product form.cart {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  padding: 22px !important;
  margin-top: 24px !important;
}
.woocommerce div.product form.cart .qty {
  background: var(--bg3) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  color: var(--white) !important;
  padding: 10px 14px !important;
  font-size: .95rem !important;
  width: 70px !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button {
  background: var(--green) !important;
  border: none !important;
  border-radius: 100px !important;
  color: #fff !important;
  font-size: .95rem !important;
  font-weight: 700 !important;
  padding: 13px 28px !important;
  cursor: pointer !important;
  font-family: var(--font-body) !important;
  transition: var(--transition) !important;
  flex: 1 !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button:hover {
  background: var(--green-dark) !important;
  transform: translateY(-1px) !important;
}

/* Product tabs */
.woocommerce div.product .woocommerce-tabs {
  grid-column: 1 / -1 !important;
  margin-top: 40px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
  border-bottom: 1px solid var(--border) !important;
  background: none !important;
  padding: 0 !important;
  margin: 0 0 24px !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  background: none !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  padding: 12px 20px !important;
  color: var(--text-muted) !important;
  font-weight: 600 !important;
  font-size: .88rem !important;
  background: none !important;
  text-shadow: none !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  border-bottom-color: var(--green) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a { color: var(--white) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { display: none !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display: none !important; }

.woocommerce div.product .woocommerce-tabs .panel {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  padding: 24px !important;
  color: var(--text-muted) !important;
}
.woocommerce div.product .woocommerce-tabs .panel h2 { color: var(--white) !important; font-size: 1.1rem !important; margin-bottom: 12px !important; }

/* Related products */
.related.products h2,
.upsells.products h2 {
  font-family: var(--font-display) !important;
  font-size: 1.8rem !important;
  color: var(--white) !important;
  margin-bottom: 24px !important;
}

/* ============================================================
   CART PAGE
   ============================================================ */
.woocommerce table.shop_table {
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  background: var(--bg2) !important;
  width: 100% !important;
}
.woocommerce table.shop_table thead tr {
  background: var(--bg3) !important;
}
.woocommerce table.shop_table thead th {
  color: var(--text-dim) !important;
  font-size: .72rem !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  padding: 14px 16px !important;
  border: none !important;
  border-bottom: 1px solid var(--border) !important;
}
.woocommerce table.shop_table tbody tr {
  border-bottom: 1px solid var(--border) !important;
}
.woocommerce table.shop_table tbody td {
  padding: 16px !important;
  border: none !important;
  border-bottom: 1px solid var(--border) !important;
  color: var(--text) !important;
  vertical-align: middle !important;
}
.woocommerce table.shop_table tfoot tr td,
.woocommerce table.shop_table tfoot tr th {
  border: none !important;
  border-top: 1px solid var(--border) !important;
  color: var(--text) !important;
  padding: 14px 16px !important;
}
.woocommerce table.shop_table .product-name a { color: var(--white) !important; font-weight: 600 !important; }
.woocommerce table.shop_table .product-name a:hover { color: var(--green) !important; }
.woocommerce table.shop_table .product-thumbnail img {
  border-radius: var(--radius) !important;
  border: 1px solid var(--border) !important;
  width: 60px !important;
  height: 60px !important;
  object-fit: cover !important;
}

/* Cart qty input */
.woocommerce table.shop_table .qty {
  background: var(--bg3) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  color: var(--white) !important;
  padding: 8px 10px !important;
  width: 65px !important;
  text-align: center !important;
}

/* Update cart / Coupon buttons */
.woocommerce table.shop_table .actions .button,
.woocommerce .coupon .button {
  background: var(--bg3) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  color: var(--text) !important;
  font-size: .84rem !important;
  font-weight: 600 !important;
  padding: 10px 20px !important;
  cursor: pointer !important;
  font-family: var(--font-body) !important;
  transition: var(--transition) !important;
}
.woocommerce table.shop_table .actions .button:hover,
.woocommerce .coupon .button:hover {
  background: var(--border2) !important;
  color: var(--white) !important;
  border-color: var(--border2) !important;
}
.woocommerce .coupon input {
  background: var(--bg3) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  color: var(--white) !important;
  padding: 10px 14px !important;
  font-family: var(--font-body) !important;
  font-size: .88rem !important;
}

/* Cart totals */
.woocommerce .cart_totals,
.woocommerce-cart .cart-collaterals .cart_totals {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  padding: 24px !important;
  float: none !important;
  width: 100% !important;
}
.woocommerce .cart_totals h2 {
  font-family: var(--font-body) !important;
  font-size: .75rem !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: var(--text-dim) !important;
  margin-bottom: 18px !important;
}
.woocommerce .cart_totals .shop_table tr td,
.woocommerce .cart_totals .shop_table tr th {
  border-top: 1px solid var(--border) !important;
  padding: 14px 0 !important;
  color: var(--text) !important;
}
.woocommerce .cart_totals .shop_table tr:first-child td,
.woocommerce .cart_totals .shop_table tr:first-child th { border-top: none !important; }

.woocommerce .cart_totals .order-total td bdi,
.woocommerce .cart_totals .order-total td {
  font-size: 1.2rem !important;
  font-weight: 700 !important;
  color: var(--white) !important;
}

/* Proceed to checkout */
.woocommerce a.checkout-button,
.woocommerce .wc-proceed-to-checkout a.checkout-button {
  background: var(--green) !important;
  border: none !important;
  border-radius: 100px !important;
  color: #fff !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  padding: 15px 28px !important;
  display: block !important;
  text-align: center !important;
  margin-top: 16px !important;
  cursor: pointer !important;
  transition: var(--transition) !important;
  font-family: var(--font-body) !important;
}
.woocommerce a.checkout-button:hover { background: var(--green-dark) !important; transform: translateY(-1px) !important; }

.woocommerce-cart .cart-collaterals {
  float: none !important;
  width: 100% !important;
}
.woocommerce-cart .cart-collaterals .cross-sells { display: none !important; }

/* ============================================================
   CHECKOUT PAGE
   ============================================================ */
.woocommerce-checkout #customer_details,
.woocommerce-checkout .col2-set {
  float: none !important;
  width: 100% !important;
}
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
  float: none !important;
  width: 100% !important;
}

.woocommerce form .form-row {
  margin-bottom: 16px !important;
}
.woocommerce form .form-row label {
  color: var(--text-muted) !important;
  font-size: .8rem !important;
  font-weight: 600 !important;
  margin-bottom: 6px !important;
  display: block !important;
}
.woocommerce form .form-row input,
.woocommerce form .form-row select,
.woocommerce form .form-row textarea {
  background: var(--bg3) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius) !important;
  color: var(--white) !important;
  padding: 11px 14px !important;
  font-size: .9rem !important;
  font-family: var(--font-body) !important;
  width: 100% !important;
  box-shadow: none !important;
  transition: border-color .2s !important;
}
.woocommerce form .form-row input:focus,
.woocommerce form .form-row select:focus,
.woocommerce form .form-row textarea:focus {
  border-color: var(--green) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(64,145,108,.12) !important;
}
.woocommerce form .form-row select option { background: var(--bg3) !important; color: var(--white) !important; }

/* Checkout order review */
.woocommerce-checkout #order_review_heading {
  font-family: var(--font-body) !important;
  font-size: .75rem !important;
  font-weight: 600 !important;
  letter-spacing: .1em !important;
  text-transform: uppercase !important;
  color: var(--text-dim) !important;
  margin-bottom: 16px !important;
}
.woocommerce #order_review,
.woocommerce-checkout #order_review {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  padding: 24px !important;
}

/* Payment box */
.woocommerce #payment {
  background: var(--bg2) !important;
  border-radius: var(--radius-lg) !important;
  border: 1px solid var(--border) !important;
  overflow: hidden !important;
}
.woocommerce #payment div.payment_box {
  background: var(--bg3) !important;
  color: var(--text-muted) !important;
  font-size: .86rem !important;
  border-radius: var(--radius) !important;
}
.woocommerce #payment div.payment_box::before { border-bottom-color: var(--bg3) !important; }
.woocommerce #payment ul.payment_methods {
  border-bottom: 1px solid var(--border) !important;
  padding: 16px !important;
  background: none !important;
  margin: 0 !important;
}
.woocommerce #payment ul.payment_methods li {
  color: var(--text) !important;
  font-size: .9rem !important;
}
.woocommerce #payment ul.payment_methods li label { color: var(--text) !important; }
.woocommerce #payment div.place-order { padding: 16px !important; }
.woocommerce #payment #place_order,
.woocommerce button#place_order {
  background: var(--green) !important;
  border: none !important;
  border-radius: 100px !important;
  color: #fff !important;
  font-size: 1.05rem !important;
  font-weight: 700 !important;
  padding: 16px 32px !important;
  width: 100% !important;
  cursor: pointer !important;
  font-family: var(--font-body) !important;
  transition: var(--transition) !important;
}
.woocommerce #payment #place_order:hover { background: var(--green-dark) !important; }

/* ============================================================
   MY ACCOUNT PAGE
   ============================================================ */
.woocommerce-account .woocommerce-MyAccount-navigation {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  padding: 12px !important;
  width: 220px !important;
  float: left !important;
  margin-right: 32px !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
  display: block !important;
  padding: 10px 14px !important;
  border-radius: var(--radius) !important;
  color: var(--text-muted) !important;
  font-size: .86rem !important;
  font-weight: 500 !important;
  transition: var(--transition) !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover { background: var(--bg3) !important; color: var(--white) !important; }
.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a { background: var(--green-pale) !important; color: var(--green) !important; }

.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important;
  width: calc(100% - 252px) !important;
  float: right !important;
}

/* Account: Login/Register forms */
.woocommerce-account .login,
.woocommerce-account .register {
  background: var(--bg2) !important;
  border: 1px solid var(--border) !important;
  border-radius: var(--radius-lg) !important;
  padding: 28px !important;
}
.woocommerce-account h2 { color: var(--white) !important; font-size: 1.2rem !important; margin-bottom: 20px !important; }

/* Orders table in account */
.woocommerce-orders-table { border: 1px solid var(--border) !important; border-radius: var(--radius-lg) !important; overflow: hidden !important; }
.woocommerce-orders-table__cell a { color: var(--green) !important; }
.woocommerce-orders-table__cell a:hover { color: var(--white) !important; }

/* Download buttons */
.woocommerce-table--order-downloads .woocommerce-orders-table__cell a.button,
.woocommerce .button.woocommerce-button {
  background: var(--green) !important;
  color: #fff !important;
  border-radius: 100px !important;
  padding: 8px 18px !important;
  font-size: .82rem !important;
  font-weight: 600 !important;
  border: none !important;
}

/* ============================================================
   GLOBAL WC BUTTON OVERRIDES
   ============================================================ */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  font-family: var(--font-body) !important;
  border-radius: var(--radius) !important;
  font-weight: 600 !important;
  transition: var(--transition) !important;
}
.woocommerce a.button.alt,
.woocommerce button.button.alt {
  background: var(--green) !important;
  color: #fff !important;
  border: none !important;
}
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover { background: var(--green-dark) !important; }

/* ============================================================
   RESPONSIVE — WC MOBILE
   ============================================================ */
@media (max-width: 768px) {
  .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
  .woocommerce div.product {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
  }
  .woocommerce div.product div.images { position: static !important; }
  .woocommerce-account .woocommerce-MyAccount-navigation { width: 100% !important; float: none !important; margin-right: 0 !important; margin-bottom: 20px !important; }
  .woocommerce-account .woocommerce-MyAccount-content { width: 100% !important; float: none !important; }
}
@media (max-width: 420px) {
  .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 10px !important; }
  .woocommerce ul.products li.product a img { height: 160px !important; }
}

/* ============================================================
   FIX: PRODUCT IMAGE SHOWING TWICE
   WooCommerce shows featured image + gallery image — hide duplicate
   ============================================================ */
.woocommerce ul.products li.product .woocommerce-loop-product__link img + img,
.woocommerce ul.products li.product a > img ~ img,
.woocommerce-product-gallery .flex-viewport + .flex-control-nav { /* keep thumbs */ }

/* Fix: on product cards, only show first image */
.woocommerce ul.products li.product a img:not(:first-of-type) { display: none !important; }

/* Fix: WC sometimes duplicates the product image with attachment */
.woocommerce ul.products li.product .attachment-woocommerce_thumbnail ~ img { display: none !important; }
.woocommerce ul.products li.product img.entered.lazyloaded ~ img { display: none !important; }

/* ============================================================
   FIX: LOGO IN OLD PAGE CONTENT — hide all instances
   ============================================================ */
.entry-content img[src*="logo"],
.post-body img[src*="logo.webp"],
.woocommerce-page img[src*="logo.webp"]:not(#site-header img) {
  display: none !important;
}

/* Floating cart pushed up when on mobile to avoid overlap with bottom bar */
@media(max-width:768px) {
  .floating-cart { bottom: 20px; right: 16px; width: 52px; height: 52px; font-size: 1.3rem; }
}

/* ============================================================
   CRITICAL: PRODUCT IMAGE — SHOW ONLY ONCE, HORIZONTAL ONLY
   WC shows featured + gallery images stacked — we hide extras
   ============================================================ */

/* On product CARDS (shop/archive) - force square crop, one image only */
.woocommerce ul.products li.product {
  overflow: hidden !important;
}
.woocommerce ul.products li.product a.woocommerce-loop-product__link {
  display: block !important;
  overflow: hidden !important;
}

/* Hide ALL extra images after first one in product cards */
.woocommerce ul.products li.product a img ~ img { display: none !important; }
.woocommerce ul.products li.product img + img { display: none !important; }
/* WC adds a secondary hover image — hide it */
.woocommerce ul.products li.product .attachment-shop_catalog ~ img,
.woocommerce ul.products li.product .wp-post-image ~ img { display: none !important; }

/* Force ALL product card images to be 1:1 square, horizontal crop */
.woocommerce ul.products li.product img.wp-post-image,
.woocommerce ul.products li.product img.attachment-woocommerce_thumbnail {
  width: 100% !important;
  height: 200px !important;
  object-fit: cover !important;
  object-position: center top !important;
  aspect-ratio: 1 / 1 !important;
  display: block !important;
}

/* ============================================================
   SINGLE PRODUCT PAGE — gallery fix
   ============================================================ */
/* Hide PDF preview pages that WC pulls as gallery images */
.woocommerce-product-gallery .flex-control-thumbs li img {
  width: 70px !important;
  height: 70px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  border: 1px solid var(--border) !important;
  cursor: pointer !important;
}
.woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
  border-color: var(--green) !important;
}
.woocommerce-product-gallery__image {
  background: var(--bg2) !important;
}
.woocommerce-product-gallery .flex-viewport {
  border-radius: var(--radius-lg) !important;
  overflow: hidden !important;
  border: 1px solid var(--border) !important;
}

/* ============================================================
   CART — Add product thumbnail properly
   ============================================================ */
.woocommerce table.shop_table td.product-thumbnail {
  width: 72px !important;
  padding: 12px 8px !important;
}
.woocommerce table.shop_table td.product-thumbnail img {
  width: 60px !important;
  height: 60px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
  border: 1px solid var(--border) !important;
  display: block !important;
}

/* ============================================================
   CHECKOUT — Order review product thumbnails
   ============================================================ */
.woocommerce-checkout-review-order-table .product-thumbnail {
  display: table-cell !important;
  width: 52px !important;
}
.woocommerce-checkout-review-order-table .product-thumbnail img {
  width: 48px !important;
  height: 48px !important;
  object-fit: cover !important;
  border-radius: 6px !important;
  border: 1px solid var(--border) !important;
}
/* Make order review table look good */
.woocommerce-checkout-review-order-table {
  width: 100% !important;
  border-collapse: collapse !important;
}
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
  padding: 10px 8px !important;
  font-size: .88rem !important;
  border-bottom: 1px solid var(--border) !important;
  color: var(--text) !important;
  vertical-align: middle !important;
}
.woocommerce-checkout-review-order-table thead th {
  font-size: .7rem !important;
  font-weight: 600 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
  color: var(--text-dim) !important;
}
.woocommerce-checkout-review-order-table .cart_item td.product-name {
  font-weight: 600 !important;
  color: var(--white) !important;
}

/* ============================================================
   SOCIAL LINK SIZE FIX — icons need proper sizing
   ============================================================ */
.social-link {
  width: 38px !important;
  height: 38px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.social-link svg {
  width: 16px !important;
  height: 16px !important;
  flex-shrink: 0 !important;
}

/* ============================================================
   MOBILE HEADER RESPONSIVE FIXES
   ============================================================ */
@media (max-width: 768px) {
  /* Header tight on mobile */
  #site-header { height: 58px !important; }
  .site-logo img { height: 30px !important; width: 30px !important; }
  .site-logo .logo-text { font-size: 1.1rem !important; }
  .header-cart { width: 36px !important; height: 36px !important; }
  .menu-toggle { width: 36px !important; height: 36px !important; padding: 7px 8px !important; }

  /* Product images on mobile - 2 per row, square */
  .woocommerce ul.products li.product img.wp-post-image,
  .woocommerce ul.products li.product img.attachment-woocommerce_thumbnail {
    height: 160px !important;
  }
}
@media (max-width: 420px) {
  .woocommerce ul.products li.product img.wp-post-image,
  .woocommerce ul.products li.product img.attachment-woocommerce_thumbnail {
    height: 140px !important;
  }
}
