/* Shared typography safeguards: larger copy must wrap rather than clip. */
html{font-size:16px;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{font-size:17px;line-height:1.6}
button,input,select,textarea{font-size:16px}
button,a,input,select,textarea,summary{touch-action:manipulation}
p,small,label,dt,dd{overflow-wrap:break-word}
button,summary{min-height:44px;white-space:normal}
input:not([type=checkbox]):not([type=radio]),select{min-height:44px}
@media(max-width:700px){
 .catalog-search-row,.catalog-title,.results-toolbar,.dialog-head,.cart-tools{flex-wrap:wrap;gap:12px}
 .storefront .catalog-discovery .filter-panel{flex-basis:100%;margin-top:4px}
 .storefront .catalog-discovery .filter-panel>summary{min-height:48px}
 .storefront .header-search-shortcut{min-width:0}
 .storefront .header-search-shortcut span{white-space:normal;line-height:1.3}
 .storefront .header-actions{flex-wrap:wrap}
 .storefront .store-assurances{flex-wrap:wrap;line-height:1.6}
 .storefront .product-card .name-btn{height:auto;min-height:3.2em;line-height:1.5}
 .storefront .product-card .add-btn{height:auto;min-height:48px;padding:10px 8px;line-height:1.4}
 .storefront .product-grid{gap:14px}
 .storefront .promotion-product{flex-basis:75%}
 .cart-total{flex-wrap:wrap;gap:8px}
 .cart-checkout-footer{max-height:45dvh;overflow-y:auto}
 .combo-pricebar{flex-wrap:wrap;gap:10px;height:auto}
 .combo-video-controls{flex-wrap:wrap}
 .admin-toolbar,.filters,.toolbar,.actions{flex-wrap:wrap}
}
/* The equipment caption participates in layout as its text grows. */
.equipment-label{position:static;grid-column:1/-1}
