/* WooCommerce skin — Mason's Auto */
.shop-main{padding-top:28px;padding-bottom:40px}
.woocommerce-breadcrumb{font:500 13px var(--f-mono);color:var(--m-steel);margin-bottom:18px}
.woocommerce-breadcrumb a{color:var(--m-steel)}
.woocommerce-products-header__title{font-size:clamp(32px,4.4vw,54px);margin:0 0 16px}
.shop-layout.has-filters{display:grid;grid-template-columns:260px 1fr;gap:32px}
.shop-filters .widget{border:1px solid var(--m-line);border-radius:var(--r-md);padding:16px;margin-bottom:16px}
.shop-filters .widget-title{font:700 13px var(--f-mono);letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px}

ul.products{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
ul.products::before,ul.products::after{display:none!important}
.woocommerce ul.products li.product,ul.products li.product{width:auto!important;margin:0!important;float:none!important;border:1px solid var(--m-line);border-radius:var(--r-lg);overflow:hidden;background:#fff;display:flex;flex-direction:column;padding:0 0 16px;position:relative;transition:box-shadow .2s,transform .2s}
ul.products li.product:hover{box-shadow:var(--shadow);transform:translateY(-2px)}
ul.products li.product a img{background:var(--m-fog);aspect-ratio:1/1;object-fit:contain;margin:0 0 12px!important;width:100%}
ul.products li.product .mas-sku{display:block;font:500 12px var(--f-mono);color:var(--m-steel);padding:0 16px}
ul.products li.product .woocommerce-loop-product__title{font:700 16px/1.3 var(--f-body)!important;color:var(--m-carbon);padding:6px 16px 8px!important;margin:0}
ul.products li.product .price{font-family:var(--f-display);font-stretch:115%;font-weight:800;font-size:22px!important;color:var(--m-carbon)!important;padding:0 16px;display:block;margin-bottom:12px}
ul.products li.product .price del{font:500 14px var(--f-body);color:var(--m-steel);opacity:1}
ul.products li.product .price ins{text-decoration:none}
ul.products li.product .button{margin:auto 16px 0!important;background:var(--m-red)!important;color:#fff!important;border-radius:var(--r-sm)!important;font:700 14px var(--f-body)!important;padding:12px!important;text-align:center}
ul.products li.product .button:hover{background:var(--m-red-deep)!important}
.onsale.badge,.woocommerce span.onsale{position:absolute;top:12px;left:12px;right:auto;min-height:0;min-width:0;line-height:1;border-radius:4px;background:var(--m-red);color:#fff;font:700 11px/1 var(--f-mono);letter-spacing:.08em;text-transform:uppercase;padding:6px 9px;margin:0;z-index:2}

/* single product */
.single-product div.product{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.single-product div.product .woocommerce-product-gallery,.single-product div.product .summary{width:auto!important;float:none!important;margin:0!important}
.single-product div.product .woocommerce-tabs,.single-product div.product .related,.single-product div.product .upsells{grid-column:1/-1}
.single-product .product_title{font-size:clamp(28px,3.4vw,44px);margin:0 0 12px}
.single-product .summary .price{font-family:var(--f-display);font-stretch:115%;font-weight:800;font-size:32px!important;color:var(--m-carbon)!important}
.single-product .product_meta{font:500 13px var(--f-mono);color:var(--m-steel);border-top:1px solid var(--m-line);padding-top:16px;margin-top:20px}
.single-product .product_meta > span{display:block;margin:4px 0}
.single-product .stock.in-stock{color:#0d6a37;font-weight:700}
.single-product .quantity .qty{width:84px;min-height:48px;text-align:center}
.single_add_to_cart_button,.woocommerce button.button.alt,.woocommerce a.button.alt,.checkout-button,#place_order{background:var(--m-red)!important;color:#fff!important;border-radius:var(--r-sm)!important;font:700 16px var(--f-body)!important;padding:16px 28px!important;min-height:48px}
.single_add_to_cart_button:hover,.woocommerce button.button.alt:hover,#place_order:hover{background:var(--m-red-deep)!important}
.woocommerce-tabs ul.tabs{display:flex;gap:6px;list-style:none;padding:0!important;margin:0 0 20px!important;border-bottom:1px solid var(--m-line)}
.woocommerce-tabs ul.tabs li{border:0!important;background:none!important;margin:0!important;padding:0!important}
.woocommerce-tabs ul.tabs li a{display:block;padding:12px 16px!important;font:700 14px var(--f-body);color:var(--m-carbon)!important;border-bottom:3px solid transparent}
.woocommerce-tabs ul.tabs li.active a{border-color:var(--m-red)}
.woocommerce-tabs ul.tabs::before,.woocommerce-tabs ul.tabs li::before,.woocommerce-tabs ul.tabs li::after{display:none!important}

/* notices */
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-top:0!important;border-left:4px solid var(--m-teal)!important;background:var(--m-wash)!important;border-radius:0 var(--r-md) var(--r-md) 0;color:var(--m-carbon)!important}
.woocommerce-error{border-left-color:var(--m-red)!important;background:#FCECEC!important}
.woocommerce-message::before,.woocommerce-info::before{color:var(--m-teal)!important}
.woocommerce a.button,.woocommerce button.button{background:var(--m-teal);color:#fff;border-radius:var(--r-sm);font-weight:700}
.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--m-teal-deep);color:#fff}

@media (max-width:1024px){ul.products{grid-template-columns:repeat(3,1fr)}}
@media (max-width:820px){
  ul.products{grid-template-columns:repeat(2,1fr);gap:12px}
  .shop-layout.has-filters{grid-template-columns:1fr}
  .single-product div.product{grid-template-columns:1fr;gap:24px}
  ul.products li.product .woocommerce-loop-product__title{font-size:14px!important}
  ul.products li.product .price{font-size:18px!important}
}
