.pieces .catalog-intro{font-size:10px;letter-spacing:1.5px;line-height:1.9;margin-top:32px;color:#777}
.pieces .product-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:5%;row-gap:70px;margin:65px 0 65px;padding:0;overflow:visible}
.pieces .product-card:nth-child(n){grid-column:auto;min-width:0}
.product-picture{position:relative;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in;display:block;aspect-ratio:3/4}
.catalog-art{position:absolute;inset:0;display:block}
.catalog-art>.garment-image{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;transition:opacity .18s}
.catalog-label{position:absolute;width:var(--label-width,9%);height:auto;left:var(--label-x,50%);top:var(--label-y,80%);transform:translate(-50%,-50%);filter:brightness(.95);pointer-events:none}
.catalog-label[hidden]{display:none}
.product-state{font-size:9px;color:var(--red);letter-spacing:1.6px;height:13px;margin:12px 0 0}
.pieces .product-options{margin-top:7px;gap:23px}
.pieces .product-options button{font-size:11px;min-height:40px}
.pieces .turn-product{font-size:11px;padding:10px 18px;min-height:40px}
.catalog-help{font-size:9px;letter-spacing:.5px;line-height:1.8;color:#777;margin-bottom:12px}
.catalog-dialog{border:0;padding:0;background:#fff;width:min(94vw,1000px);max-width:none;max-height:95svh;overflow:auto;color:#201d1b}
.catalog-dialog::backdrop{background:#fffE;backdrop-filter:blur(5px)}
.catalog-dialog .dialog-inner{position:relative;min-height:70svh;display:flex;flex-direction:column;align-items:center;padding:35px 30px 25px}
.catalog-close{position:absolute;right:15px;top:12px;z-index:2;border:0;background:white;width:42px;height:42px;font-size:30px;color:var(--red)}
.catalog-dialog .product-picture{width:min(100%,520px);height:min(70svh,700px);aspect-ratio:3/4;cursor:default}
.catalog-dialog .product-options{display:flex;gap:28px;margin-top:10px}
.catalog-dialog .product-options button{border:0;border-bottom:1px solid transparent;background:white;padding:10px 0;color:#777}
.catalog-dialog .product-options button[aria-pressed=true]{color:var(--red);border-color:var(--red)}
.catalog-dialog .turn-product{border:0;background:white;color:var(--red);padding:15px}
body.catalog-open{overflow:hidden}
.dialog-product{display:flex;flex-direction:column;align-items:center;width:100%;max-width:650px}
@media(max-width:700px){.pieces .product-cards{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px;row-gap:38px;margin:40px 0 45px;scroll-snap-type:none}.pieces .product-card{flex-basis:auto}.pieces .product-options{gap:18px;margin-top:2px}.pieces .product-options button,.pieces .turn-product{font-size:10px}.product-state{font-size:8px;margin-top:8px}.pieces .catalog-intro{font-size:8px;margin-top:25px;letter-spacing:1px}.catalog-help{font-size:8px}.catalog-dialog .dialog-inner{padding:50px 10px 20px}.catalog-dialog .product-picture{height:65svh;width:100%}}
@media(prefers-reduced-motion:reduce){.catalog-art>.garment-image{transition:none}}
