.generic-product {min-height:calc(100vh - 84px);}
.product-loading-shell {display:none;}
.product-pending > :not(.product-loading-shell):not(.product-load-status),
.product-load-error > :not(.product-load-status) {display:none!important;}
.product-pending .product-loading-shell {display:block;}
.generic-product .product-load-status {max-width:none;margin:0;padding:0;}
.product-pending .product-load-status {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);}
.product-load-error .product-load-status {padding:24px 0;}
.product-load-status button {margin-left:12px;padding:8px 16px;border:1px solid #d81f26;background:#fff;color:#b61920;border-radius:6px;}
.loading-bar,.loading-photo,.loading-thumb {background:#f2f3f4;border-radius:6px;}
.loading-crumb {height:18px;width:45%;margin:3px 0 38px;}
.loading-product-grid {display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:50px;}
.loading-photo {height:487px;border:1px solid #e9e5e5;background:#fafafa;}
.loading-thumbnails {display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px;}
.loading-thumb {height:132px;}
.loading-category {width:25%;height:16px;margin-bottom:20px;}
.loading-title {width:94%;height:36px;margin-bottom:28px;}
.loading-copy {width:100%;height:14px;margin-bottom:14px;}
.loading-copy.short {width:68%;margin-bottom:32px;}
.loading-options {height:78px;margin:22px 0;}
@media(max-width:800px){.loading-product-grid{grid-template-columns:1fr;gap:25px;}}
@media(max-width:600px){.loading-photo{height:412px;}}
