/* v1.5.3: narrow mobile phones, <=420px CSS viewport. Preserve wider phone/tablet layout. */
@media (max-width:420px) {
 body.wds-store-single #inner-wrap #main.site-main {padding:5px 10px 18px!important;}
 body.wds-store-single div.product {width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;row-gap:9px!important;margin:0 auto 8px!important;}
 body.wds-store-single div.product>.woocommerce-product-gallery {min-width:0!important;max-width:100%!important;overflow:hidden!important;margin:0!important;}
 /* 1.9.37: no width here. Inside .flex-viewport the wrapper is FlexSlider's slide track and
    must keep the width FlexSlider sets; forcing 100% stacked the slides and blanked the gallery. */
 body.wds-store-single div.product .woocommerce-product-gallery__wrapper {min-width:0!important;border-radius:12px!important;}
 body.wds-store-single div.product .woocommerce-product-gallery__image>a {aspect-ratio:1 / 1!important;min-height:0!important;padding:14px!important;}
 body.wds-store-single div.product .woocommerce-product-gallery__image img {display:block!important;width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;object-position:center!important;}
 body.wds-store-single div.product .flex-control-nav {box-sizing:border-box!important;width:100%!important;max-width:100%!important;display:flex!important;flex-wrap:nowrap!important;justify-content:flex-start!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important;gap:5px!important;padding:2px 0 4px!important;margin:6px 0 0!important;scroll-snap-type:x proximity;}
 body.wds-store-single div.product .flex-control-nav::-webkit-scrollbar {display:none!important;height:0!important;}
 body.wds-store-single div.product .flex-control-nav li {box-sizing:border-box!important;flex:0 0 43px!important;width:43px!important;height:43px!important;min-width:43px!important;margin:0!important;border-radius:7px!important;scroll-snap-align:start;}
 body.wds-store-single div.product .flex-control-nav li img {width:100%!important;height:100%!important;object-fit:contain!important;padding:4px!important;}
 body.wds-store-single div.product>.summary {min-width:0!important;margin:0!important;padding:0!important;}
 body.wds-store-single .summary .wds-store-brand-single {margin:0 0 5px!important;}
 body.wds-store-single .summary .wds-store-brand-single img {max-width:135px!important;max-height:28px!important;}
 body.wds-store-single div.product .product_title {font-size:23px!important;line-height:1.12!important;margin:0 0 5px!important;}
 body.wds-store-single div.product .wds-store-single-category {margin:0 0 4px!important;}
 body.wds-store-single div.product .summary>.price {font-size:20px!important;margin:0 0 8px!important;}
 body.wds-store-single div.product table.variations {margin-bottom:4px!important;}
 body.wds-store-single div.product table.variations tr {margin-bottom:6px!important;}
 body.wds-store-single div.product table.variations select {width:100%!important;min-height:44px!important;}
 body.wds-store-single .wds-color-swatches {gap:5px!important;margin-top:7px!important;}
 body.wds-store-single .wds-color-option {padding:5px 6px!important;min-height:30px!important;font-size:10px!important;}
 body.wds-store-single div.product form.cart {margin:0 0 7px!important;}
 body.wds-store-single div.product .woocommerce-variation-add-to-cart:has(.wds-qty-ready) {grid-template-columns:106px minmax(0,1fr)!important;gap:8px!important;}
 body.wds-store-single div.product form.cart .quantity.wds-qty-ready {width:106px!important;min-width:106px!important;}
 body.wds-store-single div.product .wds-store-purchase-note {margin:8px 0 4px!important;}
}
