/* Catalog content follows the existing Figma grid, typography and square controls. */
.catalog{height:auto;overflow:visible}
.catalog [hidden]{display:none!important}
.catalog-head{align-items:flex-start;gap:32px;flex-wrap:wrap;margin-bottom:32px}
.filters{max-width:100%;flex-wrap:wrap}
.catalog-facets{display:grid;grid-template-columns:2fr repeat(4,minmax(100px,1fr));align-items:end;gap:16px;margin-bottom:20px}
.catalog-facets label{display:flex;flex-direction:column;gap:8px;min-width:0;font-size:12px;color:var(--muted)}
.catalog-facets input,.catalog-facets select{width:100%;min-width:0;height:48px;padding:0 12px;border:1px solid var(--line);border-radius:0;background:#fff;color:var(--ink);font:inherit;font-size:16px}
.catalog-reset{min-height:48px;padding:0 12px;border:0;background:transparent;text-decoration:underline;color:var(--muted);cursor:pointer}
.catalog-reset{grid-column:1/-1;justify-self:start;padding-left:0}
.catalog-status{margin:0 0 24px;color:var(--muted);font-size:14px}
.product-grid{row-gap:40px}
.catalog .product{display:flex;flex-direction:column}
.catalog .product-image{flex-shrink:0}
.catalog .product h3{flex:1}
.product-image img{object-fit:contain}
.product-image:hover img{transform:none}
.catalog-empty{padding:32px 0;max-width:560px;line-height:1.5}
.catalog-more{width:100%;margin-top:32px}
.catalog-product .product-gallery img{object-fit:contain}
.catalog-product .product-summary,.catalog-product .product-details{height:auto;min-height:629px;gap:40px}
.catalog-product .product-choices{width:100%;max-width:366px}
.product-availability{margin:0;font-size:12px;line-height:1.5;color:rgba(255,255,255,.56)}
.catalog-product h1,.catalog-product .product-details p{overflow-wrap:anywhere}
.catalog-product .product-details{min-width:0}
.gallery-controls{display:none}
.category-list a{grid-template-columns:40px minmax(0,1fr) 130px 24px;gap:8px}
.category-list strong{font-size:clamp(26px,3vw,44px);overflow-wrap:anywhere}
@media(max-width:700px){.category-list a{grid-template-columns:28px minmax(0,1fr) 44px}.category-list strong{font-size:26px}.category-list small{grid-column:2}}
/* Keep the five-column desktop rhythm while fitting intermediate viewports. */
@media(min-width:1101px) and (max-width:1439px){.catalog-product .product-layout{width:100%;grid-template-columns:minmax(0,1fr) 32px minmax(0,1.37fr) 24px minmax(0,1fr)}.catalog-product .product-gallery,.catalog-product .product-gallery figure{width:100%}.catalog-product .product-gallery figure{height:auto;aspect-ratio:5/7}}
@media(max-width:1100px){.catalog-facets{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-search{grid-column:1/-1}.catalog-reset{grid-column:1/-1;justify-self:start;padding-left:0}.catalog-product .product-details{min-height:0}}
@media(max-width:700px){.catalog-head{margin-bottom:24px}.filters{flex-wrap:nowrap;width:100%;margin-top:28px}.catalog-facets{grid-template-columns:1fr 1fr;gap:14px 12px}.catalog-facets label:first-child{grid-column:1/-1}.catalog-reset{grid-column:1/-1;text-align:left}.catalog-product .product-summary{min-height:0}.catalog-product .product-order{margin-top:16px}.catalog-product .product-details{min-height:0}.product-grid{row-gap:32px}.catalog-product .product-gallery{position:relative;display:flex;flex-flow:row wrap;overflow:visible;gap:0}.catalog-product .product-gallery figure{display:none;flex:0 0 100%;scroll-snap-align:none}.catalog-product .product-gallery figure.is-current{display:block}.gallery-controls{display:flex;align-items:center;justify-content:space-between;width:100%;padding-top:12px}.gallery-controls button{width:48px;height:48px;border:1px solid rgba(255,255,255,.24);background:transparent;color:#fff;cursor:pointer}.gallery-counter{font-size:13px;color:rgba(255,255,255,.56)}}
@media(prefers-reduced-motion:reduce){.catalog-product .product-gallery{scroll-behavior:auto}}
