/* Keep product controls within each tile in both storefront themes. */
.product-banner,.product-banner .product-detail,.top-card{min-width:0;box-sizing:border-box}
.product-banner .product-detail .option-set{min-inline-size:0;width:100%;max-width:100%;box-sizing:border-box}
.product-banner .product-detail .option-set legend{float:none;display:block;width:100%;max-width:100%;box-sizing:border-box;white-space:normal;overflow-wrap:anywhere;line-height:1.45}
.product-banner .product-detail .selected-color{white-space:normal;overflow-wrap:anywhere}
.product-banner .swatches,.shirt-options-dialog .swatches{display:flex!important;flex-wrap:wrap;grid-template-columns:none;max-width:100%;gap:9px;padding:4px;box-sizing:border-box}
.product-banner .swatch,.shirt-options-dialog .swatch{flex:0 0 30px;width:30px;height:30px;box-sizing:border-box}
.product-banner .color-photo-views,.top-card .top-views{display:flex;flex-wrap:wrap;gap:7px;max-width:100%;min-width:0;box-sizing:border-box}
.product-banner .color-photo-views button,.top-card .top-views button{flex:0 1 auto;min-width:0;max-width:100%;padding:8px 10px;font:700 11px/1.35 monospace;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
.product-banner .shirt-options-trigger{width:100%;max-width:100%;min-width:0;padding:12px 14px;font-size:16px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
.product-banner .promotion,.product-banner .product-price{max-width:100%;box-sizing:border-box;overflow-wrap:anywhere}
.product-banner .legz-product-details{min-width:0;max-width:100%;overflow-wrap:anywhere}
.garment-categories[hidden]{display:none!important}
