/* Product cards must fit their container, including related products. */
#page #content ul.products { display:grid!important; grid-template-columns:repeat(4,minmax(0,1fr))!important; gap:20px!important; }
#page #content .related.products ul.products { grid-template-columns:repeat(3,minmax(0,1fr))!important; }
#page #content ul.products li.product { box-sizing:border-box!important; min-width:0!important; width:auto!important; margin:0!important; }
#page #content ul.products li.product .astra-shop-summary-wrap { min-width:0; display:flex; flex-direction:column; flex:1; }
#page #content ul.products li.product .price { display:flex!important; flex-wrap:wrap!important; align-items:baseline; gap:3px 8px; width:100%; max-width:100%; margin:12px 0 16px!important; line-height:1.35!important; }
#page #content ul.products li.product .price del { display:inline-block!important; font-size:13px!important; opacity:.7; }
#page #content ul.products li.product .price ins { display:inline-block!important; font-size:19px!important; background:transparent!important; text-decoration:none!important; }
#page #content ul.products li.product .price .amount,#page #content ul.products li.product .price bdi { font-size:inherit!important; white-space:nowrap!important; }
#page #content ul.products li.product .button { box-sizing:border-box!important; max-width:100%; width:100%; padding:12px 10px!important; text-align:center!important; justify-content:center!important; white-space:nowrap!important; min-height:46px; }
#page #content ul.products .astra-shop-thumbnail-wrap>.ast-onsale-card~.ast-onsale-card { display:none!important; }
#page #content ul.products li.product .astra-shop-thumbnail-wrap { min-width:0; }
#page #content ul.products li.product .astra-shop-thumbnail-wrap img { width:100%; height:auto; }
@media(max-width:921px) {
 #page #content ul.products,#page #content .related.products ul.products { grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:16px!important; }
}
@media(max-width:600px) {
 #page #content ul.products,#page #content .related.products ul.products { grid-template-columns:minmax(0,1fr)!important; gap:14px!important; }
 #page #content ul.products li.product { display:grid!important; grid-template-columns:minmax(88px,32%) minmax(0,1fr); gap:14px!important; padding:14px!important; align-items:start; }
 #page #content ul.products li.product .astra-shop-thumbnail-wrap { grid-column:1; margin:0!important; position:relative; }
 #page #content ul.products li.product .astra-shop-summary-wrap { grid-column:2; padding:0!important; margin:0!important; }
 #page #content ul.products li.product .ast-woo-product-category { display:none!important; }
 #page #content ul.products li.product .woocommerce-loop-product__title { font-size:17px!important; line-height:1.35!important; min-height:0!important; margin:0 0 4px!important; padding:0!important; overflow-wrap:normal; }
 #page #content ul.products li.product .price { margin:7px 0 12px!important; gap:3px 7px; }
 #page #content ul.products li.product .price ins { font-size:18px!important; }
 #page #content ul.products li.product .price del { font-size:12px!important; }
 #page #content ul.products li.product .button { font-size:14px!important; min-height:44px; padding:11px 8px!important; margin:0!important; }
 #page #content ul.products li.product .astra-shop-thumbnail-wrap .ast-select-options-trigger { display:none!important; }
 #page #content ul.products li.product .ast-onsale-card { font-size:11px!important; padding:4px 8px!important; top:6px!important; left:6px!important; }
 #page #content div.product .related.products { padding:20px 14px!important; margin-top:28px!important; }
 #page #content div.product .related.products>h2 { font-size:24px!important; line-height:1.3!important; margin-bottom:18px!important; }
 #page #content div.product .woocommerce-tabs ul.tabs { display:flex!important; flex-wrap:wrap!important; gap:6px 14px; padding:0!important; margin-bottom:18px!important; }
 #page #content div.product .woocommerce-tabs ul.tabs li { float:none!important; margin:0!important; padding:0!important; }
 #page #content .woocommerce-form-login,#page #content .woocommerce-form-register { padding:20px 16px!important; }
 #page #content .woocommerce .woocommerce-notices-wrapper .button { float:none!important; margin:8px 0!important; }
}
@media(max-width:360px) {
 #page #content ul.products li.product { grid-template-columns:80px minmax(0,1fr); gap:11px!important; padding:11px!important; }
 #page #content ul.products li.product .woocommerce-loop-product__title { font-size:16px!important; }
}
