/* SMTBox Performance Boost CSS */
/* CLS locking for theme main container - scoped away from header to prevent dropdown clipping */
#main .flex-row.container,
.flex-col.show-for-medium.flex-grow,
#main {
    content-visibility: auto;
    contain-intrinsic-size: 0 1000px;
}

#header .container,
#header .flex-row.container,
#wide-nav .flex-row.container,
.header-bottom .flex-row.container {
    content-visibility: visible !important;
    contain: none !important;
}
/* Ensure product image aspect ratio to avoid CLS */
:is(.catalog-product-gallery__image, .woocommerce-product-gallery__image, .catalog-product-gallery__image--placeholder, .woocommerce-product-gallery__image--placeholder) img,
.product-small .box-image img,
.category-page-row .box-image img,
img.attachment-woocommerce_thumbnail,
img.attachment-catalog_thumbnail,
img.catalog-placeholder {
    aspect-ratio: 4 / 3;
    object-fit: contain;
}
/* Restore hero slider non-JS fallback to fix initialization and rotation */
.slider:not(.flickity-enabled) .banner:nth-child(n+2) {
    display: none;
}

/* Flickity cells are held at position:relative by an !important rule in
   https://smtbox.com/cache/autoptimize/css/autoptimize_4a5e20419a6e98450f62666f9d70536d.css. In flow they stack 500px apart and everything past the
   first slide falls outside the 500px overflow:hidden viewport, so the slider
   cannot advance. See .antigravity/PM_VERDICT_WO_v8_20260808.md. */
.flickity-enabled .flickity-slider > .banner { position: absolute !important; }
