/**
* Theme Name: Blocksy Child
* Description: Blocksy Child theme
* Author: Creative Themes
* Template: blocksy
* Text Domain: blocksy
*/

/* ==== SALL2SPORT — Product card style: "Bold Sport" (concept 2) ==== */
:root{
  --s2s-navy:#1c2b3a;
  --s2s-navy-dark:#121c26;
  --s2s-orange:#ff6b35;
}

/* --- Classic WooCommerce loop (related/upsell/shop archive) --- */
ul.products li.product,
.products .product {
  position:relative;
  background:#fff;
  border:none;
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 10px 26px rgba(18,28,38,.10);
  transition:box-shadow .3s ease, transform .3s ease;
}
ul.products li.product:hover,
.products .product:hover {
  box-shadow:0 18px 38px rgba(18,28,38,.18);
  transform:translateY(-4px);
}

ul.products li.product figure.ct-media-container,
.products .product figure.ct-media-container {
  aspect-ratio:1/1;
  background:linear-gradient(160deg, #26374a 0%, var(--s2s-navy-dark) 100%);
  margin:0;
  overflow:hidden;
  position:relative;
}
ul.products li.product figure.ct-media-container img,
.products .product figure.ct-media-container img {
  width:100%;
  height:100%;
  object-fit:contain;
  padding:26px;
  mix-blend-mode:multiply;
  transition:transform .35s ease;
}
ul.products li.product:hover figure.ct-media-container img,
.products .product:hover figure.ct-media-container img {
  transform:scale(1.06);
}

ul.products li.product .woocommerce-loop-product__title,
.products .product .woocommerce-loop-product__title {
  font-size:15px;
  font-weight:800;
  color:var(--s2s-navy);
  padding:0 20px;
  margin:14px 0 12px;
  line-height:1.3;
  transition:color .2s ease;
}

ul.products li.product .entry-meta,
.products .product .entry-meta {
  padding:14px 20px 0;
  margin:0;
  list-style:none;
}
ul.products li.product .entry-meta .meta-categories,
.products .product .entry-meta .meta-categories {
  font-size:10.5px;
  text-transform:uppercase;
  letter-spacing:.6px;
  color:var(--s2s-orange);
  font-weight:800;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  display:block;
}
ul.products li.product .entry-meta .meta-categories a,
.products .product .entry-meta .meta-categories a {
  color:inherit;
  text-decoration:none;
}

ul.products li.product .price,
.products .product .price {
  padding:0 20px;
  margin:0 0 14px;
  font-size:20px;
  font-weight:900;
  color:var(--s2s-navy);
  display:block;
}
ul.products li.product .price del,
.products .product .price del {
  font-size:13px;
  color:#aeb4bc;
  font-weight:500;
  margin-right:8px;
  opacity:1;
  text-decoration:line-through;
}
ul.products li.product .price ins,
.products .product .price ins {
  text-decoration:none;
}

ul.products li.product .ct-woo-card-actions,
.products .product .ct-woo-card-actions {
  padding:0 20px 20px;
}
ul.products li.product .ct-woo-card-actions .button,
.products .product .ct-woo-card-actions .button,
ul.products li.product a.add_to_cart_button,
.products .product a.add_to_cart_button {
  width:100%;
  background:var(--s2s-navy) !important;
  color:#fff !important;
  font-weight:800;
  padding:12px !important;
  border-radius:6px;
  text-align:center;
  justify-content:center;
  font-size:13px;
  letter-spacing:.3px;
  text-transform:uppercase;
  border:none;
  transition:background .2s ease;
}
ul.products li.product .ct-woo-card-actions .button:hover,
.products .product .ct-woo-card-actions .button:hover {
  background:var(--s2s-orange) !important;
  color:#fff !important;
}

ul.products li.product span.onsale,
.products .product span.onsale {
  position:absolute;
  top:0;
  left:0;
  z-index:3;
  background:var(--s2s-orange);
  color:#fff;
  font-size:10.5px;
  font-weight:900;
  letter-spacing:.4px;
  border-radius:0 0 8px 0;
  padding:6px 14px 6px 12px;
  line-height:1.4;
  text-transform:uppercase;
  min-height:unset;
  min-width:unset;
}

/* --- WooCommerce Gutenberg block grid (homepage "Nouveautés" etc.) --- */
.wc-block-grid__product {
  position:relative;
  background:#fff;
  border:none;
  border-radius:10px;
  overflow:hidden;
  box-shadow:0 10px 26px rgba(18,28,38,.10);
  transition:box-shadow .3s ease, transform .3s ease;
  padding:0 !important;
}
.wc-block-grid__product:hover {
  box-shadow:0 18px 38px rgba(18,28,38,.18);
  transform:translateY(-4px);
}
.wc-block-grid__product-link {
  text-decoration:none;
  display:block;
}
.wc-block-grid__product-image {
  aspect-ratio:1/1;
  background:linear-gradient(160deg, #26374a 0%, var(--s2s-navy-dark) 100%);
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  margin:0 !important;
  position:relative;
}
.wc-block-grid__product-image img {
  width:100%;
  height:100%;
  object-fit:contain;
  padding:26px;
  mix-blend-mode:multiply;
  transition:transform .35s ease;
}
.wc-block-grid__product:hover .wc-block-grid__product-image img {
  transform:scale(1.06);
}
.wc-block-grid__product-title {
  font-size:15px;
  font-weight:800;
  color:var(--s2s-navy) !important;
  padding:14px 20px 0;
  margin:0 0 12px;
  line-height:1.3;
}
.wc-block-grid__product-price.price {
  padding:0 20px;
  margin:0 0 14px;
  font-size:20px;
  font-weight:900;
  color:var(--s2s-navy);
  display:block;
}
.wc-block-grid__product-price del {
  font-size:13px;
  color:#aeb4bc;
  font-weight:500;
  margin-right:8px;
  opacity:1;
}
.wc-block-grid__product-price ins {
  text-decoration:none;
}
.wc-block-grid__product-add-to-cart {
  padding:0 20px 20px;
  margin:0 !important;
}
.wc-block-grid__product .wp-block-button__link.add_to_cart_button {
  width:100%;
  background:var(--s2s-navy) !important;
  color:#fff !important;
  font-weight:800;
  padding:12px !important;
  border-radius:6px !important;
  text-align:center;
  justify-content:center;
  font-size:13px;
  letter-spacing:.3px;
  text-transform:uppercase;
  border:none;
}
.wc-block-grid__product .wp-block-button__link.add_to_cart_button:hover {
  background:var(--s2s-orange) !important;
  color:#fff !important;
}
.wc-block-grid__product-onsale {
  position:absolute;
  top:0;
  left:0;
  z-index:3;
}
.wc-block-grid__product-onsale span:first-child {
  background:var(--s2s-orange);
  color:#fff;
  font-size:10.5px;
  font-weight:900;
  letter-spacing:.4px;
  border-radius:0 0 8px 0;
  padding:6px 14px 6px 12px;
  text-transform:uppercase;
  display:inline-block;
}
