/* sf-fixer.css - critical overrides to force full width layout and consistent product cards */
:root{--primary:#0d5ea8;--card-bg:#fff;--text:#111;--muted:#777;}
html,body{width:100%;height:100%;margin:0;padding:0;}
/* container full-width */
.container, .site-main, main.container, main#main-content { width:100% !important; max-width:1400px !important; padding:0 18px !important; box-sizing:border-box !important; }
/* products grid aggressive rules */
.woocommerce ul.products, ul.products, .products { display:grid !important; grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important; grid-auto-rows: 1fr !important; grid-auto-flow: row dense !important; gap: 22px !important; align-items:start !important; justify-items:stretch !important; margin:0 !important; padding:0 !important; }
/* product card */
.woocommerce ul.products li.product, ul.products li.product { min-height:520px !important; display:flex !important; flex-direction:column !important; padding:18px !important; border-radius:14px !important; box-shadow:0 20px 48px rgba(12,14,20,0.06) !important; background:var(--card-bg) !important; overflow:visible !important; }
/* image */
.product-thumb img { width:100% !important; height:380px !important; object-fit:cover !important; border-radius:12px !important; }
/* title & price & button */
.woocommerce-loop-product__title { font-size:22px !important; font-weight:900 !important; margin:14px 0 8px !important; text-align:center !important; }
.price { font-size:18px !important; margin-bottom:12px !important; }
.add_to_cart_button { padding:16px 20px !important; border-radius:14px !important; font-size:16px !important; margin-top:auto !important; background:#111 !important; color:#fff !important; }
/* badge */
.onsale { right:14px !important; top:14px !important; padding:8px 12px !important; border-radius:12px !important; background:#b0a400 !important; color:#fff !important; font-weight:800 !important; }
/* mobile tweaks */
@media (max-width:720px) {
  .woocommerce ul.products, ul.products { grid-template-columns: repeat(2,1fr) !important; gap:16px !important; }
  .product-thumb img { height:320px !important; }
  .woocommerce ul.products li.product { min-height:480px !important; }
  .site-title a{ font-size:28px !important; }
}
/* hide potential invisible placeholders */
ul.products li.product:empty{ display:none !important; }