.atl-storefront .products { display: grid !important; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 20px !important; }
.atl-storefront .products::before, .atl-storefront .products::after { display: none !important; }
.atl-storefront .products .product { position: relative; display: flex !important; min-width: 0; padding: 12px !important; flex-direction: column; color: var(--color-text); background: var(--color-bg); border: 1px solid var(--color-border); border-radius: var(--radius-lg); box-shadow: none; overflow: hidden; transition: transform var(--transition), box-shadow var(--transition), border-color var(--transition); }
.atl-storefront .products .product:hover { border-color: rgba(255,107,87,.45); box-shadow: var(--shadow-sm); transform: translateY(-3px); }
.atl-storefront .products .product > .woocommerce-LoopProduct-link { display: flex; min-height: 100%; flex: 1; flex-direction: column; }
.atl-storefront .products .product .ct-media-container, .atl-storefront .products .product > a > img { display: block; width: 100%; aspect-ratio: 1 / 1; margin: 0 0 12px !important; overflow: hidden; background: var(--color-bg-soft); border-radius: var(--radius-md); object-fit: contain; }
.atl-storefront .products .product .ct-media-container img { width: 100%; height: 100%; object-fit: contain; transition: transform 300ms ease; }
.atl-storefront .products .product:hover .ct-media-container img { transform: scale(1.035); }
.atl-product-badges { position: absolute; z-index: 3; top: 20px; left: 20px; display: flex; max-width: calc(100% - 40px); flex-wrap: wrap; gap: 5px; }
.atl-storefront .products .product > figure > :is(.onsale, .out-of-stock-badge) { display: none !important; }
.atl-wishlist-button { position: absolute; z-index: 4; top: 19px; right: 19px; display: grid; width: 36px; height: 36px; min-height: 0 !important; padding: 0 !important; place-items: center; color: var(--color-text-muted) !important; background: rgba(255,255,255,.92) !important; border: 1px solid var(--color-border) !important; border-radius: 50% !important; box-shadow: 0 3px 10px rgba(0,0,0,.07) !important; transform: none !important; }
.atl-wishlist-button .atl-icon { width: 18px; height: 18px; }
.atl-wishlist-button:is(:hover,.is-active) { color: #fff !important; background: var(--color-primary) !important; border-color: var(--color-primary) !important; }
.atl-wishlist-button.is-active .atl-icon { fill: currentColor; }
.atl-product-brand { margin-top: 2px; color: var(--color-text-muted); font-size: .7rem; font-weight: 750; letter-spacing: .06em; text-transform: uppercase; }
.atl-storefront .products .woocommerce-loop-product__title { display: -webkit-box; min-height: 45px; margin: 6px 0 4px !important; overflow: hidden; color: var(--color-text); font-size: .92rem !important; font-weight: 650 !important; line-height: 1.45 !important; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.atl-card-rating { display: flex; margin-bottom: 4px !important; align-items: center; gap: 4px; color: #c78b05; font-size: .76rem; }
.atl-card-rating .atl-icon { width: 14px; height: 14px; fill: var(--color-warning); stroke: #c78b05; }
.atl-storefront .products .price { display: flex !important; min-height: 42px; margin: 0 0 6px !important; flex-wrap: wrap; align-content: center; align-items: baseline; gap: 4px 8px; color: var(--color-primary) !important; font-size: 1rem !important; font-weight: 800 !important; }
.atl-storefront .products .price del { color: var(--color-text-muted) !important; font-size: .76rem; font-weight: 500; opacity: .8; }
.atl-storefront .products .price ins { color: var(--color-primary) !important; text-decoration: none; }
.atl-storefront .products .product .add_to_cart_button, .atl-storefront .products .product .product_type_simple, .atl-storefront .products .product .product_type_variable { display: flex; width: 100%; min-height: 42px; margin-top: auto; padding: 8px 12px; align-items: center; justify-content: center; color: var(--color-primary); background: var(--color-primary-soft); border: 1px solid transparent; border-radius: var(--radius-md); font-size: .82rem; font-weight: 750; }
.atl-storefront .products .product :is(.add_to_cart_button, .product_type_simple, .product_type_variable):hover { color: #fff; background: var(--color-primary); }
.atl-storefront .products .added_to_cart {
  display: flex !important;
  width: 100%;
  min-height: 40px;
  margin-top: 8px !important;
  padding: 7px 12px !important;
  align-items: center;
  justify-content: center;
  color: var(--color-primary) !important;
  background: var(--color-bg) !important;
  border: 1px solid var(--color-primary) !important;
  border-radius: var(--radius-md) !important;
  text-align: center;
  font-size: .78rem;
  font-weight: 750;
}
.atl-storefront .products .added_to_cart:hover {
  color: #fff !important;
  background: var(--color-primary) !important;
}
