body{margin:0}
/* Initial HTML and React share these quiet, layout-reserving loading primitives. */
.storefront-skeleton{--loading-ink:#294f43;background:#fff;color:var(--loading-ink);min-height:100vh;font-family:system-ui,sans-serif}
.loading-sr{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.loading-topbar{height:32px;background:var(--loading-ink);opacity:.08}
.loading-header{max-width:1360px;margin:auto;padding:24px 40px;display:flex;align-items:center;gap:32px;border-bottom:1px solid #e8eae9;box-sizing:border-box}
.loading-bone{display:block;background:#e9eceb;border-radius:3px;animation:loading-breathe 1.8s ease-in-out infinite}
.loading-logo{width:180px;height:40px;flex-shrink:0}.loading-nav{height:14px;width:240px;margin-left:auto}.loading-action{height:46px;width:160px;max-width:100%}
.loading-content{max-width:1360px;margin:auto;padding:44px 40px;box-sizing:border-box}.loading-hero,.loading-detail{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center}
.loading-listing{grid-template-columns:1fr}.loading-copy{min-width:0;display:flex;flex-direction:column;gap:18px;padding:20px 0}.loading-title{height:42px;width:100%}.loading-line{height:13px;width:100%}.loading-short{width:38%}.loading-medium{width:76%}
.loading-photo{aspect-ratio:1.12;width:100%;min-width:0}.loading-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:48px}.loading-card{min-width:0;display:flex;flex-direction:column;gap:15px}.loading-card-photo{aspect-ratio:1.2;width:100%}
.loading-image.image-loading{background-color:#e9eceb;animation:loading-breathe 1.8s ease-in-out infinite}.loading-image.image-ready{animation:loading-image-in .22s ease-out both}.loading-image.image-failed{animation:none;background:#f1f3f2}
@keyframes loading-breathe{0%,100%{opacity:.65}50%{opacity:1}}@keyframes loading-image-in{from{opacity:.5}to{opacity:1}}
@media(max-width:700px){.loading-header{padding:18px 20px;gap:14px}.loading-logo{width:135px;height:34px}.loading-nav{display:none}.loading-header>.loading-action{margin-left:auto;width:70px;height:36px}.loading-content{padding:28px 20px}.loading-hero,.loading-detail{grid-template-columns:minmax(0,1fr);gap:24px}.loading-title{height:32px}.loading-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:32px}}
@media(prefers-reduced-motion:reduce){.loading-bone,.loading-image.image-loading,.loading-image.image-ready{animation:none!important;opacity:1}}
