/* Compact commerce layout. Scoped to homepage and catalog; admin is unaffected. */
.storefrontHome,.storefrontCatalog{--commerce-width:1440px;min-width:0;max-width:100%}
.storefrontHome :is(.homeHero,.categorySection,.productSection),.storefrontCatalog>section{width:min(var(--commerce-width),calc(100% - 48px));max-width:100%;margin-inline:auto;box-sizing:border-box}
.storefrontHome :is(.categorySection,.productSection){padding-block:28px;margin-block:0}
.storefrontHome .compactSectionHeader{gap:16px;flex-wrap:wrap;margin-bottom:20px}
.storefrontHome .compactSectionHeader h2{font-size:clamp(1.3rem,2.2vw,2rem);line-height:1.25;overflow-wrap:anywhere}
.storefrontHome .homeHero{display:block;margin-top:18px;border-radius:18px;overflow:hidden}
.storefrontHome .heroSlider{height:340px;border-radius:0}
.storefrontHome .heroSlide{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);grid-template-rows:1fr}
.storefrontHome .heroVisual{min-height:0}
.storefrontHome .heroContent{padding:24px 28px 56px;min-width:0;overflow:auto}
.storefrontHome .heroContent h1{font-size:clamp(1.5rem,2.4vw,2.4rem);line-height:1.2;margin-bottom:10px}
.storefrontHome .heroContent p{font-size:.875rem;margin-bottom:14px;line-height:1.5}
.storefrontHome .categoryGrid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;overflow:visible;margin:0;padding:0}
.storefrontHome .categoryImage{display:block;aspect-ratio:3/2;height:auto;max-height:155px;border-radius:12px 12px 0 0;overflow:hidden}
.storefrontHome .categoryImage img{width:100%;height:100%;object-fit:cover}
.storefrontHome .categoryCard{transform:none;min-width:0}
.storefrontHome .categoryCardHead{padding:10px;gap:6px;min-height:72px;text-align:left;grid-template-columns:minmax(0,1fr) 36px}
.storefrontHome .categoryCardHead h3{font-size:.9rem;line-height:1.3;overflow-wrap:anywhere}
.storefrontHome .categoryCardHead small{font-size:.75rem}
.storefrontHome .categoryCardHead button{width:36px;height:36px}
.storefrontHome .subcategoryDrop{position:static;max-width:100%;width:auto;overflow:auto}
.storefrontHome .categoryCard.open .subcategoryDrop{max-height:300px;padding:8px}
.storefrontHome .subcategoryDrop a{white-space:normal;overflow-wrap:anywhere;font-size:.875rem}
.storefrontHome .productGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;align-items:stretch}
.storefrontCatalog .catalogProductGrid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;align-items:stretch;padding:0;margin:0}
.storefrontCatalog .category-products .catalogProductGrid{grid-template-columns:repeat(4,minmax(0,1fr))}
:is(.storefrontHome,.storefrontCatalog) .productCard{display:flex;flex-direction:column;min-width:0;max-width:100%;border-radius:12px;transform:none;box-shadow:0 3px 12px #28332709;overflow:hidden}
:is(.storefrontHome,.storefrontCatalog) .productCard[hidden]{display:none!important}
:is(.storefrontHome,.storefrontCatalog) .productImage{aspect-ratio:1/1;height:auto;flex-shrink:0;border-radius:0}
:is(.storefrontHome,.storefrontCatalog) .productMeta{display:flex;flex-wrap:wrap;gap:4px 8px;padding:10px 10px 0;font-size:.75rem;line-height:1.4;min-width:0}
:is(.storefrontHome,.storefrontCatalog) .productMeta>*{min-width:0;overflow-wrap:anywhere;white-space:normal;font-size:inherit}
:is(.storefrontHome,.storefrontCatalog) .productCopy{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-height:0;padding:8px 10px 12px;flex:1}
:is(.storefrontHome,.storefrontCatalog) .productCopy>div{min-width:0;max-width:100%}
:is(.storefrontHome,.storefrontCatalog) .productCopy h3{font-size:.95rem;line-height:1.4;overflow-wrap:anywhere;margin:0 0 4px}
:is(.storefrontHome,.storefrontCatalog) .productCopy p{font-size:.75rem;line-height:1.45;overflow-wrap:anywhere}
:is(.storefrontHome,.storefrontCatalog) .productCardPrice{align-items:flex-start;text-align:left;margin-top:auto}
:is(.storefrontHome,.storefrontCatalog) .productCardPrice strong{font-size:.9rem;white-space:normal;overflow-wrap:anywhere}
:is(.storefrontHome,.storefrontCatalog) .productCardPrice del{font-size:.75rem;white-space:normal}
:is(.storefrontHome,.storefrontCatalog) .productActions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding:0;margin:0 8px 10px;border-radius:6px;overflow:hidden;flex-shrink:0}
:is(.storefrontHome,.storefrontCatalog) .productActions>a,:is(.storefrontHome,.storefrontCatalog) .productActions>button{padding:8px 4px;min-width:0;min-height:44px;font-size:.75rem;line-height:1.3;white-space:normal;overflow-wrap:anywhere;gap:2px;text-align:center}
:is(.storefrontHome,.storefrontCatalog) .productActions>:nth-child(2){border-top:0;border-left:1px solid var(--line)}
:is(.storefrontHome,.storefrontCatalog) .productBadge{max-width:calc(100% - 16px);left:8px;top:8px;padding:5px 7px;font-size:.7rem;white-space:normal}
.storefrontHome .productTabs{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.storefrontHome .productTabs button{min-height:42px;padding:8px 14px;font-size:.875rem}
.productShelfNav{display:none}.productShelfNav[hidden]{display:none!important}
.storefrontCatalog .page-hero{padding:24px;margin-block:22px}
.storefrontCatalog .page-hero h1{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.2;overflow-wrap:anywhere}
.storefrontCatalog :is(.all-products-toolbar,.catalog-toolbar,.all-products-group-head){display:flex;gap:14px;flex-wrap:wrap;align-items:center;padding:16px 0;min-width:0}
.storefrontCatalog .catalog-search{max-width:100%;min-width:0;flex:1 1 240px}
.storefrontCatalog .catalog-search input{min-width:0;width:100%}
.storefrontCatalog .all-products-group{padding-block:20px;border-bottom:1px solid var(--line)}
.storefrontCatalog .all-products-group-head h2{font-size:1.4rem;overflow-wrap:anywhere}
.storefrontCatalog .category-sidebar{padding:20px;min-width:0}
.storefrontCatalog .catalog-pagination{display:flex;flex-wrap:wrap;gap:8px;max-width:100%}
@media(max-width:1100px){.storefrontCatalog .catalogProductGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.storefrontCatalog .category-products .catalogProductGrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1023px){.storefrontHome .productGrid{grid-template-columns:repeat(4,minmax(0,1fr))}.storefrontHome .categoryGrid{gap:10px}.storefrontHome .heroSlider{height:300px}.storefrontCatalog .category-products .catalogProductGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){
 .storefrontHome :is(.homeHero,.categorySection,.productSection),.storefrontCatalog>section{width:calc(100% - 28px)}
 .storefrontHome :is(.categorySection,.productSection){padding-block:20px}
 .storefrontHome .heroSlider{height:420px}
 .storefrontHome .heroSlide{grid-template-columns:1fr;grid-template-rows:190px minmax(0,1fr)}
 .storefrontHome .heroContent{padding:16px 18px 50px}
 .storefrontHome .heroContent h1{font-size:1.45rem;line-height:1.25;margin-bottom:6px}
 .storefrontHome .heroContent>span{margin-bottom:6px}
 .storefrontHome .heroContent p{font-size:.875rem;line-height:1.4;margin-bottom:8px;display:block}
 .storefrontHome .heroContent>a{font-size:.8rem;flex-shrink:0;padding:8px 12px}
 .storefrontHome .categoryGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
 .storefrontHome .categoryImage{aspect-ratio:1/1}
 .storefrontHome .categoryCardHead{display:flex;flex-wrap:wrap;align-items:flex-start;padding:8px;min-height:0}
 .storefrontHome .categoryCardHead>a{flex:1 1 60px;min-width:0}
 .storefrontHome .categoryCardHead h3{font-size:.8rem}
 .storefrontHome .categoryCardHead small{display:none}
 .storefrontHome .productGrid{grid-template-columns:none;grid-template-rows:repeat(2,auto);grid-auto-flow:column;grid-auto-columns:calc((100% - 12px)/2);gap:12px;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scroll-padding-inline:0;padding-bottom:8px;scrollbar-width:thin}
 .storefrontHome .productGrid[data-single=true]{grid-template-rows:auto}
 .storefrontHome .productGrid>.productCard{scroll-snap-align:start}
 .storefrontHome .productShelfNav{display:flex;justify-content:space-between;align-items:center;gap:10px;padding-top:10px;font-size:.75rem}
 .productShelfNav>div{display:flex;gap:8px}.productShelfNav button{width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink);font-size:1.5rem}.productShelfNav button:disabled{opacity:.35}
 .storefrontCatalog .catalogProductGrid,.storefrontCatalog .category-products .catalogProductGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
 .storefrontCatalog .category-sidebar{position:static;width:100%;padding:14px}
 .storefrontCatalog .page-hero{padding:18px;margin-block:14px}
 .storefrontCatalog .all-products-group-head{align-items:flex-start}
 :is(.storefrontHome,.storefrontCatalog) .productCopy h3{font-size:.875rem}
 :is(.storefrontHome,.storefrontCatalog) .productImage{aspect-ratio:1/1}
 :is(.storefrontHome,.storefrontCatalog) .productQuickView{display:none}
}
@media(prefers-reduced-motion:reduce){.storefrontHome .productGrid{scroll-behavior:auto}}
