/* Scoped to WooCommerce screens; no template or checkout replacement. */
body.mls-studio { background:var(--mls-background); color:var(--mls-text); }
.mls-studio :where(.woocommerce,.woocommerce-page main,.wp-block-woocommerce-product-collection,.wp-block-woocommerce-cart,.wp-block-woocommerce-checkout), .mls-banner { font-family:var(--mls-font); font-size:var(--mls-font-size); line-height:1.6; }
.mls-studio.mls-width-override :where(main,.site-main) { max-width:var(--mls-width); margin-inline:auto; }
.mls-studio :where(.woocommerce h1,.woocommerce h2,.woocommerce h3,.product_title,.wc-block-components-product-name,.wp-block-post-title),.mls-banner h2 { font-family:var(--mls-heading-font); color:var(--mls-text); }
.mls-studio :where(.woocommerce a:not(.button),.woocommerce .price,.woocommerce ul.products:not(.avia-content-slider ul.products):not(.avia-product-slider ul.products) li.product .price) { color:var(--mls-primary); }
:is(.mls-studio.woocommerce,.mls-studio .woocommerce) ul.products:not(.avia-content-slider ul.products):not(.avia-product-slider ul.products) { display:grid; grid-template-columns:repeat(var(--mls-columns),minmax(0,1fr)); gap:var(--mls-gap); padding:0; }
:is(.mls-studio.woocommerce,.mls-studio .woocommerce) ul.products:not(.avia-content-slider ul.products):not(.avia-product-slider ul.products)::before,:is(.mls-studio.woocommerce,.mls-studio .woocommerce) ul.products:not(.avia-content-slider ul.products):not(.avia-product-slider ul.products)::after { display:none; }
:is(.mls-studio.woocommerce,.mls-studio .woocommerce) ul.products:not(.avia-content-slider ul.products):not(.avia-product-slider ul.products) li.product { float:none; width:auto; margin:0; padding:20px; background:var(--mls-surface); border:1px solid var(--mls-border); border-radius:var(--mls-radius); box-shadow:var(--mls-shadow); }
:is(.mls-studio.woocommerce,.mls-studio .woocommerce) ul.products:not(.avia-content-slider ul.products):not(.avia-product-slider ul.products) li.product a img { aspect-ratio:1; object-fit:contain; border-radius:var(--mls-radius); background:var(--mls-background); }
:is(.mls-studio.woocommerce,.mls-studio .woocommerce) ul.products:not(.avia-content-slider ul.products):not(.avia-product-slider ul.products) li.product .woocommerce-loop-product__title { font-size:1.1em; line-height:1.4; }
:is(.mls-studio.woocommerce,.mls-studio .woocommerce) :is(a.button,button.button,input.button),.mls-studio .wc-block-components-button:not(.is-link),.mls-studio .wp-block-woocommerce-product-button .wp-block-button__link,.mls-cta { background:var(--mls-primary); color:var(--mls-button-text); border:1px solid transparent; border-radius:var(--mls-button-radius); padding:13px 22px; font:600 1em/1.4 var(--mls-font); text-decoration:none; box-shadow:none; }
:is(.mls-studio.woocommerce,.mls-studio .woocommerce) :is(a.button,button.button,input.button):hover,.mls-cta:hover { background:var(--mls-primary); color:var(--mls-button-text); filter:brightness(.9); }
.mls-studio :where(a,button,input,select,textarea):focus-visible,.mls-banner a:focus-visible { outline:3px solid var(--mls-primary); outline-offset:4px; }
:is(.mls-studio.woocommerce,.mls-studio .woocommerce) span.onsale { background:var(--mls-primary); color:var(--mls-button-text); border-radius:var(--mls-button-radius); padding:4px 12px; }
.mls-studio :where(.woocommerce-result-count,.woocommerce-breadcrumb) { color:var(--mls-muted); }
:is(.mls-studio.woocommerce,.mls-studio .woocommerce) div.product div.images img { border-radius:var(--mls-radius); }
.mls-studio .wp-block-woocommerce-product-collection .wc-block-product-template { gap:var(--mls-gap); }
.mls-studio .wp-block-woocommerce-product-collection .wc-block-product { background:var(--mls-surface); border:1px solid var(--mls-border); border-radius:var(--mls-radius); padding:20px; box-shadow:var(--mls-shadow); }
.mls-banner { display:flex; gap:40px; align-items:center; justify-content:space-between; padding:clamp(24px,5vw,64px); margin:24px auto 40px; max-width:var(--mls-width); box-sizing:border-box; border:1px solid var(--mls-border); border-radius:var(--mls-radius); background:var(--mls-surface); color:var(--mls-text); }
.mls-banner-copy { flex:1; min-width:0; }
.mls-banner .mls-eyebrow { font-size:.75em; font-weight:700; letter-spacing:.18em; color:var(--mls-primary); margin:0 0 20px; }
.mls-banner h2 { font-size:clamp(32px,5vw,64px); line-height:1.08; letter-spacing:-.035em; margin:0 0 24px; overflow-wrap:anywhere; }
.mls-description { color:var(--mls-muted); max-width:48ch; white-space:pre-line; margin:0 0 28px; }
.mls-cta { display:inline-flex; align-items:center; gap:24px; }
.mls-banner-image { width:42%; max-height:400px; aspect-ratio:5/4; object-fit:cover; border-radius:var(--mls-radius); }
#mls-collection { scroll-margin-top:30px; }
@media(max-width:900px) { :is(.mls-studio.woocommerce,.mls-studio .woocommerce) ul.products:not(.avia-content-slider ul.products):not(.avia-product-slider ul.products) { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .mls-banner { flex-direction:column; gap:24px; } .mls-banner-image { width:100%; } :is(.mls-studio.woocommerce,.mls-studio .woocommerce) ul.products:not(.avia-content-slider ul.products):not(.avia-product-slider ul.products) { grid-template-columns:1fr; } }
