.catalog-page{padding:calc(var(--nav-h) + 48px) 0 96px}.catalog-page .cat-head{margin-bottom:36px}.catalog-page .cat-head .crumb{letter-spacing:.06em;color:var(--color-ink-faint);margin-bottom:16px;font-size:12.5px;display:block}.catalog-page .cat-head .crumb a:hover{color:var(--color-brass)}.catalog-page .cat-head h1{margin-bottom:14px;font-size:clamp(40px,5.6vw,68px)}.catalog-page .cat-head .sub{color:var(--color-ink-soft);margin:0;font-size:15px}.catalog-page .filters{border-top:1px solid var(--color-line);border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:center;gap:24px;margin-bottom:40px;padding-block:20px;display:flex}.catalog-page .filter-groups{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.catalog-page .filter-chip{border:1px solid var(--color-line-strong);color:var(--color-ink-soft);transition:border-color .25s var(--ease), background .25s var(--ease), color .25s var(--ease);border-radius:999px;align-items:center;gap:7px;padding:9px 16px;font-size:13px;display:inline-flex}.catalog-page .filter-chip .n{color:var(--color-ink-faint);transition:color .25s var(--ease);font-size:11px}.catalog-page .filter-chip:hover{border-color:var(--color-ink);color:var(--color-ink)}.catalog-page .filter-chip.active{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-cream)}.catalog-page .filter-chip.active .n{color:var(--color-brass-hi)}.catalog-page .sort{flex-shrink:0;align-items:center;gap:10px;display:flex}.catalog-page .sort .lbl{letter-spacing:.1em;text-transform:uppercase;color:var(--color-ink-faint);font-size:12px}.catalog-page .sort select{border:1px solid var(--color-line-strong);font-family:var(--font-body);color:var(--color-ink);cursor:pointer;background:0 0;border-radius:999px;padding:9px 14px;font-size:13px}.catalog-page .sort select:focus{border-color:var(--color-brass);outline:none}.catalog-page .grid{grid-template-columns:repeat(4,1fr);gap:28px 20px;display:grid}.catalog-page .empty{text-align:center;color:var(--color-ink-faint);grid-column:1/-1;padding:64px 0;font-size:15px}.catalog-page .card{flex-direction:column;display:flex}.catalog-page .photo{aspect-ratio:3/4;background:linear-gradient(165deg, var(--color-surface), var(--color-paper-warm));border:1px solid var(--color-line);transition:box-shadow .45s var(--ease), transform .45s var(--ease), border-color .45s var(--ease);border-radius:8px;position:relative;overflow:hidden}.catalog-page .photo img{object-fit:contain;transition:transform .6s var(--ease);padding:18px}.catalog-page .photo.scene svg{width:100%;height:100%;position:absolute;inset:0}.catalog-page .photo .hint{white-space:nowrap;background:var(--color-ink);color:var(--color-cream);letter-spacing:.03em;opacity:0;transition:opacity .35s var(--ease), transform .35s var(--ease);border-radius:999px;padding:8px 16px;font-size:12px;position:absolute;bottom:14px;left:50%;transform:translate(-50%,8px)}.catalog-page .photo:hover{border-color:var(--color-line-strong);box-shadow:var(--shadow-lift);transform:translateY(-4px)}.catalog-page .photo:hover img{transform:scale(1.04)}.catalog-page .photo:hover .hint{opacity:1;transform:translate(-50%)}.catalog-page .info{padding:14px 4px 0}.catalog-page .info .name{font-family:var(--font-display);margin:0 0 4px;font-size:20px;font-weight:500;line-height:1.2}.catalog-page .info .row2{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.catalog-page .info .meta{color:var(--color-ink-faint);font-size:12.5px}.catalog-page .info .price{color:var(--color-brass);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:14px;font-weight:500}.catalog-page .cat-foot{border-top:1px solid var(--color-line);color:var(--color-ink-faint);margin-top:56px;padding-top:20px;font-size:13.5px}.catalog-page .cat-foot a{color:var(--color-brass);text-underline-offset:3px;text-decoration:underline}@media (max-width:1280px){.catalog-page .grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:1023px){.catalog-page .filters{flex-direction:column;align-items:flex-start}.catalog-page .grid{grid-template-columns:repeat(2,1fr);gap:24px 14px}}@media (max-width:640px){.catalog-page{padding-top:calc(var(--nav-h) + 28px)}.catalog-page .photo img{padding:10px}.catalog-page .info .name{font-size:17px}}
