/* ═══════════════════════════════════════════════════════════════════════
   ⚠️  CE FICHIER N'EST CHARGE SUR AUCUNE PAGE  —  constate le 2026-08-16
   ═══════════════════════════════════════════════════════════════════════
   Il est enqueue dans functions.php avec `woocommerce-general` en DEPENDANCE :

       wp_enqueue_style('weedn-woocommerce', …, ['weedn-design-system', 'woocommerce-general'], …);

   Or le theme retire les styles WooCommerce par defaut (functions.php:106,
   filtre `woocommerce_enqueue_styles`). La dependance n'existant pas, WordPress
   refuse SILENCIEUSEMENT d'imprimer cette feuille. Verifie sur l'accueil, la
   boutique, une fiche produit, le panier et une categorie : chargee zero fois.

   NE PAS y ecrire de correctif : il ne s'appliquera pas. Utiliser
   weedn-components.css (chargee partout) ou weedn-v2-product.css (fiches).

   NE PAS la rallumer sans arbitrage : mesure du 2026-08-16, si on l'applique,
   0 element change sur la boutique, 1 sur le panier, 1 sur une categorie —
   mais 79 sur la FICHE PRODUIT (15 % des elements). Elle contient des regles
   que le design V2 a remplacees ; la rallumer casserait la fiche produit.
   ═══════════════════════════════════════════════════════════════════════ */

/* ============================================================
   WEEDN WOOCOMMERCE — Premium Dark Theme UX
   Inspired by Supreme, Kith, SSENSE
   ============================================================ */

/* === GLOBAL WC === */
.woocommerce .price, .woocommerce .amount {
  font-family: 'JetBrains Mono', monospace;
  color: var(--weedn-green-neon);
}
.woocommerce del .amount { color: #52525b; text-decoration: line-through; }
.woocommerce ins { text-decoration: none; }

/* === ADD TO CART BUTTON (MAIN CTA) === */
.woocommerce .single_add_to_cart_button,
.woocommerce .button.alt,
.woocommerce .checkout-button {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 56px;
  font-family: 'Bebas Neue', sans-serif !important;
  font-size: 20px !important;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  background: var(--weedn-green-neon) !important;
  color: var(--weedn-bg) !important;
  border: none !important;
  border-radius: 4px !important;
  padding: 16px 32px !important;
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
}
.woocommerce .single_add_to_cart_button:hover,
.woocommerce .button.alt:hover,
.woocommerce .checkout-button:hover {
  background: var(--weedn-text) !important;
  color: var(--weedn-bg) !important;
  transform: scale(1.02);
  box-shadow: 0 0 24px rgba(34, 197, 94, 0.3);
}
.woocommerce .single_add_to_cart_button:active,
.woocommerce .button.alt:active {
  transform: scale(0.98);
}

/* Pulse animation on load */
@keyframes pulse-glow {
  0%, 100% { box-shadow: 0 0 0 rgba(34, 197, 94, 0); }
  50% { box-shadow: 0 0 20px rgba(34, 197, 94, 0.25); }
}
.woocommerce .single_add_to_cart_button { animation: pulse-glow 3s ease-in-out infinite; }
.woocommerce .single_add_to_cart_button:hover { animation: none; }

/* Secondary buttons */
.woocommerce .button {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 16px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: transparent;
  color: var(--weedn-text);
  border: 1px solid var(--weedn-border);
  border-radius: 4px;
  padding: 12px 24px;
  min-height: 48px;
  transition: all 0.2s;
  cursor: pointer;
}
.woocommerce .button:hover {
  border-color: var(--weedn-green-neon);
  color: var(--weedn-green-neon);
}

/* === QUANTITY INPUT === */
.woocommerce .quantity {
  display: inline-flex;
  align-items: center;
  border: 1px solid var(--weedn-border);
  border-radius: 4px;
  overflow: hidden;
  background: var(--weedn-bg-card);
}
.woocommerce .quantity .qty {
  font-family: 'JetBrains Mono', monospace;
  font-size: 16px;
  color: var(--weedn-text);
  background: var(--weedn-bg-card);
  border: none;
  text-align: center;
  width: 56px;
  height: 48px;
  -moz-appearance: textfield;
}
.woocommerce .quantity .qty::-webkit-inner-spin-button,
.woocommerce .quantity .qty::-webkit-outer-spin-button { -webkit-appearance: none; }

/* === VARIATION SELECTORS — PILL STYLE === */
.woocommerce .variations {
  width: 100%;
  margin-bottom: 24px;
  border: none;
}
.woocommerce .variations td,
.woocommerce .variations th {
  display: block;
  width: 100%;
  padding: 0;
  border: none;
  background: none;
}
.woocommerce .variations tr {
  display: block;
  margin-bottom: 16px;
}
.woocommerce .variations .label label {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 16px;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: var(--weedn-text-muted);
  margin-bottom: 10px;
  display: block;
}

/* Select dropdown styled */
.woocommerce .variations select {
  width: 100%;
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  font-weight: 500;
  color: var(--weedn-text);
  background: var(--weedn-bg-card);
  border: 2px solid var(--weedn-border);
  border-radius: 4px;
  padding: 14px 16px;
  min-height: 52px;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2322c55e' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  transition: border-color 0.15s;
}
.woocommerce .variations select:focus {
  outline: none;
  border-color: var(--weedn-green-neon);
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.15);
}
.woocommerce .variations select:hover {
  border-color: var(--weedn-border-hover);
}
.woocommerce .variations select option {
  background: var(--weedn-bg-card);
  color: var(--weedn-text);
  padding: 12px;
}

.woocommerce .reset_variations {
  font-family: 'JetBrains Mono', monospace;
  font-size: 12px;
  color: var(--weedn-text-dim);
  margin-top: 8px;
  display: inline-block;
}

/* === PRICE DISPLAY === */
.woocommerce div.product p.price,
.woocommerce div.product span.price {
  font-family: 'JetBrains Mono', monospace;
  font-size: 28px;
  font-weight: 700;
  color: var(--weedn-green-neon);
  margin: 16px 0 24px;
}
.woocommerce div.product p.price del {
  font-size: 18px;
  color: #52525b;
  margin-right: 12px;
}
.woocommerce div.product .woocommerce-variation-price .price {
  font-size: 28px;
  font-weight: 700;
}

/* === PRODUCT PAGE LAYOUT === */
.woocommerce div.product {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  max-width: 1280px;
  margin: 0 auto;
  padding: 24px;
}

.woocommerce div.product .woocommerce-product-gallery {
  position: relative;
}
.woocommerce div.product .woocommerce-product-gallery img {
  width: 100%;
  border-radius: 4px;
  background: var(--weedn-bg-card);
}

.woocommerce div.product .summary {
  position: sticky;
  top: 80px;
  align-self: start;
}

.woocommerce div.product .product_title {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 40px;
  letter-spacing: 4px;
  color: var(--weedn-text);
  margin-bottom: 8px;
}

/* === ONSALE BADGE === */
.woocommerce span.onsale {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  font-weight: 700;
  background: var(--weedn-red);
  color: var(--weedn-text);
  border-radius: 4px;
  padding: 4px 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
  position: absolute;
  top: 12px;
  left: 12px;
  z-index: 2;
}

/* === CART TABLE === */
.woocommerce table.shop_table {
  background: var(--weedn-bg-card);
  border: 1px solid var(--weedn-border);
  border-radius: 4px;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
}
.woocommerce table.shop_table th {
  font-family: 'Bebas Neue', sans-serif;
  font-size: 14px;
  letter-spacing: 2px;
  color: var(--weedn-text-muted);
  background: var(--weedn-bg);
  border-bottom: 1px solid var(--weedn-border);
  padding: 16px;
}
.woocommerce table.shop_table td {
  color: var(--weedn-text);
  background: var(--weedn-bg-card);
  border-bottom: 1px solid var(--weedn-border);
  padding: 16px;
  vertical-align: middle;
}
.woocommerce table.shop_table .product-thumbnail img {
  width: 72px; height: 72px;
  object-fit: cover;
  border-radius: 4px;
}
.woocommerce table.shop_table .product-name a { color: var(--weedn-text); font-weight: 500; text-decoration: none; }
.woocommerce table.shop_table .product-remove a { color: var(--weedn-red) !important; font-size: 20px; }

/* Cart totals */
.woocommerce .cart_totals {
  background: var(--weedn-bg-card);
  border: 1px solid var(--weedn-border);
  border-radius: 4px;
  padding: 24px;
}
.woocommerce .cart_totals h2 { font-size: 24px; margin-bottom: 16px; }
.woocommerce .cart_totals table td, .woocommerce .cart_totals table th {
  background: transparent; border-color: var(--weedn-border); color: var(--weedn-text); padding: 12px 0;
}

/* === CHECKOUT === */
.woocommerce-checkout h3 { font-size: 24px; margin-bottom: 24px; }

.woocommerce form .form-row label {
  font-family: 'DM Sans', sans-serif;
  font-size: 14px;
  color: var(--weedn-text-muted);
  font-weight: 500;
  margin-bottom: 6px;
  display: block;
}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
  font-family: 'DM Sans', sans-serif;
  font-size: 16px;
  color: var(--weedn-text);
  background: var(--weedn-bg-card);
  border: 2px solid var(--weedn-border);
  border-radius: 4px;
  padding: 14px 16px;
  min-height: 52px;
  transition: border-color 0.15s;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row select:focus {
  border-color: var(--weedn-green-neon);
  outline: none;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.15);
}

/* Payment section */
.woocommerce-checkout #payment {
  background: var(--weedn-bg-card);
  border: 1px solid var(--weedn-border);
  border-radius: 4px;
}
.woocommerce-checkout #payment ul.payment_methods { list-style: none; padding: 16px; }
.woocommerce-checkout #payment ul.payment_methods li { padding: 12px 0; }
.woocommerce-checkout #payment ul.payment_methods li label { color: var(--weedn-text); font-weight: 500; }
.woocommerce-checkout #payment .payment_box { background: var(--weedn-bg); color: var(--weedn-text-muted); padding: 16px; border-radius: 4px; }
.woocommerce-checkout #payment .place-order { padding: 16px; }
#place_order { width: 100%; font-size: 20px !important; min-height: 56px; }

/* === NOTICES === */
.woocommerce-message, .woocommerce-info {
  background: var(--weedn-bg-card); border-left: 4px solid var(--weedn-green-neon); border-radius: 4px;
  color: var(--weedn-text); padding: 16px 20px; margin-bottom: 24px;
}
.woocommerce-error {
  background: var(--weedn-bg-card); border-left: 4px solid var(--weedn-red); border-radius: 4px;
  color: var(--weedn-text); padding: 16px 20px; margin-bottom: 24px;
}
.woocommerce-message::before { color: var(--weedn-green-neon); }
.woocommerce-error::before { color: var(--weedn-red); }

/* === PAGINATION === */
.woocommerce nav.woocommerce-pagination ul {
  display: flex; justify-content: center; gap: 8px; list-style: none; margin-top: 48px;
}
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  display: flex; align-items: center; justify-content: center;
  width: 48px; height: 48px;
  font-family: 'JetBrains Mono', monospace; font-size: 14px;
  color: var(--weedn-text-muted); background: var(--weedn-bg-card); border: 1px solid var(--weedn-border);
  border-radius: 4px; text-decoration: none; transition: all 0.15s;
}
.woocommerce nav.woocommerce-pagination ul li a:hover { border-color: var(--weedn-green-neon); color: var(--weedn-green-neon); }
.woocommerce nav.woocommerce-pagination ul li span.current { background: var(--weedn-green-neon); color: var(--weedn-bg); border-color: var(--weedn-green-neon); }

/* === STAR RATINGS === */
.woocommerce .star-rating { color: var(--weedn-amber); }

/* === SELECT2 === */
.select2-container--default .select2-selection--single {
  background: var(--weedn-bg-card); border: 2px solid var(--weedn-border); border-radius: 4px; height: 52px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--weedn-text); line-height: 52px; padding-left: 16px;
}
.select2-dropdown { background: var(--weedn-bg-card); border: 1px solid var(--weedn-border); }
.select2-results__option { color: var(--weedn-text); padding: 12px 16px; }
.select2-results__option--highlighted { background: var(--weedn-bg-hover) !important; color: var(--weedn-green-neon) !important; }

/* === FREE SHIPPING BAR === */
.free-shipping-notice {
  background: linear-gradient(135deg, var(--weedn-bg-card), var(--weedn-bg-hover));
  border: 1px solid var(--weedn-border); border-radius: 4px;
  padding: 16px 20px; margin-bottom: 24px; text-align: center;
}
.free-shipping-bar { height: 4px; background: var(--weedn-border); border-radius: 2px; overflow: hidden; margin-top: 8px; }
.free-shipping-bar__fill { height: 100%; background: linear-gradient(90deg, var(--weedn-green-neon), #16a34a); border-radius: 2px; transition: width 0.5s; }
.free-shipping-notice--achieved { border-color: var(--weedn-green-neon); }
.free-shipping-notice--achieved p { color: var(--weedn-green-neon); font-weight: 700; }

/* === MOBILE STICKY ADD TO CART === */
@media (max-width: 768px) {
  .woocommerce div.product {
    grid-template-columns: 1fr;
    gap: 24px;
    padding: 16px;
  }
  .woocommerce div.product .summary { position: static; }
  .woocommerce div.product .product_title { font-size: 28px; }
  .woocommerce div.product p.price, .woocommerce div.product span.price { font-size: 24px; }

  /* Sticky bottom ATC bar */
  .woocommerce div.product form.cart {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 50;
    background: rgba(10, 10, 10, 0.95);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    padding: 12px 16px;
    border-top: 1px solid var(--weedn-border);
    display: flex;
    gap: 12px;
    align-items: center;
  }
  .woocommerce div.product form.cart .quantity { flex-shrink: 0; }
  .woocommerce div.product form.cart .single_add_to_cart_button { flex: 1; min-height: 48px; }

  /* Add padding at bottom to account for sticky bar */
  .woocommerce div.product { padding-bottom: 80px; }
}

/* === ANIMATIONS === */
@media (prefers-reduced-motion: reduce) {
  .woocommerce .single_add_to_cart_button { animation: none; }
  * { transition-duration: 0.01ms !important; }
}

/* === VARIATION FORM COMPLETE RESTYLE === */
.woocommerce div.product form.cart {
  background: var(--weedn-bg-card);
  border: 1px solid var(--weedn-border);
  border-radius: 4px;
  padding: 24px;
  margin-top: 24px;
}

.woocommerce div.product form.cart .variations {
  margin-bottom: 20px;
}

.woocommerce div.product form.cart .variations tr {
  display: block;
  margin-bottom: 16px;
}

.woocommerce div.product form.cart .variations td.label,
.woocommerce div.product form.cart .variations th.label {
  display: block;
  padding: 0 0 8px 0;
}

.woocommerce div.product form.cart .variations td.label label,
.woocommerce div.product form.cart .variations th.label label {
  font-family: Bebas Neue, sans-serif !important;
  font-size: 18px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: var(--weedn-text-muted) !important;
}

.woocommerce div.product form.cart .variations td.value {
  display: block;
  padding: 0;
}

.woocommerce div.product form.cart .variations select {
  width: 100% !important;
  font-family: DM Sans, sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: var(--weedn-text) !important;
  background: var(--weedn-bg) !important;
  border: 2px solid var(--weedn-border) !important;
  border-radius: 4px !important;
  padding: 14px 40px 14px 16px !important;
  min-height: 52px !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns=http://www.w3.org/2000/svg width=14 height=14 viewBox=0 0 24 24 fill=none stroke=%2322c55e stroke-width=2.5%3E%3Cpath d=m6 9 6 6 6-6/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 16px center !important;
  transition: border-color 0.15s !important;
}

.woocommerce div.product form.cart .variations select:focus {
  border-color: var(--weedn-green-neon) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.15) !important;
}

.woocommerce div.product form.cart .variations select:hover {
  border-color: var(--weedn-border-hover) !important;
}

.woocommerce div.product form.cart .variations select option {
  background: var(--weedn-bg) !important;
  color: var(--weedn-text) !important;
  padding: 12px !important;
  font-size: 15px !important;
}

/* Reset variations link */
.woocommerce div.product form.cart .reset_variations {
  font-family: JetBrains Mono, monospace !important;
  font-size: 11px !important;
  color: var(--weedn-text-dim) !important;
  text-decoration: none !important;
  margin-top: 8px !important;
  display: inline-block !important;
}
.woocommerce div.product form.cart .reset_variations:hover {
  color: var(--weedn-green-neon) !important;
}

/* === QUANTITY SECTION === */
.woocommerce div.product form.cart .quantity-wrapper {
  margin-bottom: 20px;
}

.woocommerce div.product form.cart .quantity {
  display: flex !important;
  align-items: center;
  border: 2px solid var(--weedn-border) !important;
  border-radius: 4px !important;
  overflow: hidden;
  background: var(--weedn-bg);
  height: 52px;
}

.woocommerce div.product form.cart .quantity .qty-btn {
  width: 48px;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--weedn-bg-card);
  border: none;
  color: var(--weedn-text-muted);
  font-size: 20px;
  cursor: pointer;
  transition: all 0.15s;
  font-family: JetBrains Mono, monospace;
}

.woocommerce div.product form.cart .quantity .qty-btn:hover {
  background: var(--weedn-bg-hover);
  color: var(--weedn-green-neon);
}

.woocommerce div.product form.cart .quantity .qty {
  font-family: JetBrains Mono, monospace !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--weedn-text) !important;
  background: var(--weedn-bg) !important;
  border: none !important;
  text-align: center !important;
  width: 64px !important;
  height: 52px !important;
  -moz-appearance: textfield !important;
}

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

/* === ADD TO CART BUTTON === */
.woocommerce div.product form.cart .single_add_to_cart_button {
  width: 100% !important;
  min-height: 56px !important;
  font-family: Bebas Neue, sans-serif !important;
  font-size: 22px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  background: var(--weedn-green-neon) !important;
  color: var(--weedn-bg) !important;
  border: none !important;
  border-radius: 4px !important;
  padding: 16px 32px !important;
  cursor: pointer !important;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button:hover {
  background: var(--weedn-text) !important;
  color: var(--weedn-bg) !important;
  transform: scale(1.02) !important;
  box-shadow: 0 0 24px rgba(34, 197, 94, 0.3) !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button:active {
  transform: scale(0.98) !important;
}

/* === VARIATION PRICE DISPLAY === */
.woocommerce div.product .woocommerce-variation-price .price {
  font-family: JetBrains Mono, monospace !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  color: var(--weedn-green-neon) !important;
  padding: 12px 0 !important;
}

/* === MOBILE OVERRIDE === */
@media (max-width: 768px) {
  .woocommerce div.product form.cart {
    position: static !important;
    background: var(--weedn-bg-card) !important;
    border: 1px solid var(--weedn-border) !important;
    padding: 20px !important;
    backdrop-filter: none !important;
    border-top: none !important;
  }
}

/* === RELATED / UPSELL PRODUCTS GRID === */
.woocommerce .related.products,
.woocommerce .upsells.products,
.woocommerce .cross-sells {
  margin-top: 48px;
  padding-top: 48px;
  border-top: 1px solid var(--weedn-border);
}

.woocommerce .related.products h2,
.woocommerce .upsells.products h2,
.woocommerce .cross-sells h2 {
  font-family: "Bebas Neue", sans-serif !important;
  font-size: 32px !important;
  letter-spacing: 4px !important;
  color: var(--weedn-text) !important;
  margin-bottom: 32px !important;
}

.woocommerce .related.products ul.products,
.woocommerce .upsells.products ul.products,
.woocommerce .cross-sells ul.products,
.woocommerce ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 20px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.woocommerce ul.products li.product {
  background: var(--weedn-bg-card) !important;
  border: 1px solid var(--weedn-border) !important;
  border-radius: 4px !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
  transition: border-color 0.2s, transform 0.3s !important;
}

.woocommerce ul.products li.product:hover {
  border-color: var(--weedn-border-hover) !important;
  transform: translateY(-4px) !important;
}

.woocommerce ul.products li.product a {
  text-decoration: none !important;
}

.woocommerce ul.products li.product a img {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 0 !important;
  transition: transform 0.3s !important;
}

.woocommerce ul.products li.product:hover a img {
  transform: scale(1.05) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2 {
  font-family: "DM Sans", sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--weedn-text) !important;
  padding: 12px 14px 4px !important;
  margin: 0 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

.woocommerce ul.products li.product .price {
  font-family: "JetBrains Mono", monospace !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--weedn-green-neon) !important;
  padding: 0 14px 8px !important;
}

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product a.add_to_cart_button {
  display: block !important;
  width: calc(100% - 28px) !important;
  margin: 0 14px 14px !important;
  text-align: center !important;
  font-family: "Bebas Neue", sans-serif !important;
  font-size: 15px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  background: var(--weedn-green-neon) !important;
  color: var(--weedn-bg) !important;
  border: none !important;
  border-radius: 4px !important;
  padding: 12px 16px !important;
  cursor: pointer !important;
  transition: all 0.2s !important;
}

.woocommerce ul.products li.product .button:hover {
  background: var(--weedn-text) !important;
  color: var(--weedn-bg) !important;
  box-shadow: 0 0 16px rgba(34, 197, 94, 0.25) !important;
}

/* Hide bullet points from list */
.woocommerce ul.products li.product::marker,
.woocommerce ul.products li::marker {
  content: none !important;
  display: none !important;
}
.woocommerce ul.products li.product::before {
  content: none !important;
  display: none !important;
}

/* Responsive */
@media (max-width: 1024px) {
  .woocommerce .related.products ul.products,
  .woocommerce .upsells.products ul.products,
  .woocommerce ul.products {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}
@media (max-width: 768px) {
  .woocommerce .related.products ul.products,
  .woocommerce .upsells.products ul.products,
  .woocommerce ul.products {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 12px !important;
  }
}
