.cat-hero{padding:64px 0 56px;border-bottom:1px solid var(--hairline)}.cat-hero-top{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:24px}.breadcrumb{font-family:var(--font-mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);display:flex;gap:12px;align-items:center}.breadcrumb a{color:var(--muted)}.breadcrumb a:hover{color:var(--ink)}.breadcrumb .sep{color:var(--hairline-strong)}.breadcrumb .current{color:var(--ink)}.cat-hero-grid{display:grid;grid-template-columns:1fr .8fr;gap:64px;align-items:end;padding-top:32px}.cat-hero-grid .h-display{margin:16px 0 0}.cat-hero-side{display:flex;flex-direction:column;gap:24px;padding-bottom:12px}.cat-hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:24px 0;border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline)}.cat-stat .num{font-family:var(--font-serif);font-size:32px;font-weight:300;line-height:1}.cat-stat .lbl{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-top:6px}.filters{position:sticky;top:108px;z-index:30;background:#f2ece0f0;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--hairline);padding:16px 0}.filters-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:space-between}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 14px;border:1px solid var(--hairline-strong);background:transparent;font-family:var(--font-sans);font-size:13px;color:var(--ink);cursor:pointer;transition:all .2s var(--ease);border-radius:0}.chip:hover{border-color:var(--ink)}.chip.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.chip .count{font-family:var(--font-mono);font-size:11px;color:var(--muted);margin-left:4px}.chip.active .count{color:#fff9}.filters-right{display:flex;gap:12px;align-items:center}.sort{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);height:36px;padding:0 14px;border:1px solid var(--hairline-strong);background:transparent;cursor:pointer}.products{display:grid;grid-template-columns:repeat(4,1fr);gap:32px 24px;padding:56px 0 var(--s-9)}.product{display:flex;flex-direction:column;text-decoration:none;color:var(--ink);position:relative;transition:opacity .25s var(--ease)}.product-media{position:relative;aspect-ratio:4/5;background:var(--sand);overflow:hidden;border:1px solid var(--hairline)}.product-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.product:hover .product-media img{transform:scale(1.04)}.product-badges{position:absolute;left:12px;top:12px;display:flex;gap:6px;flex-wrap:wrap}.product-badges .badge{background:var(--paper);border-radius:0;height:22px}.product-num{position:absolute;right:12px;top:12px;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;color:var(--muted);background:#ffffffd9;padding:3px 7px}.product-body{padding:18px 4px 0;display:flex;flex-direction:column;gap:6px}.product-cat{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.product-title{font-family:var(--font-serif);font-size:19px;line-height:1.25;font-weight:400;color:var(--ink)}.product-foot{display:flex;justify-content:space-between;align-items:baseline;margin-top:8px}.product-price{font-family:var(--font-sans);font-size:14px;font-weight:500;color:var(--ink)}.product-meta{font-family:var(--font-mono);font-size:11px;color:var(--muted)}.editorial-banner{grid-column:span 2;grid-row:span 2;background:var(--espresso);color:var(--paper);padding:48px 40px;display:flex;flex-direction:column;justify-content:space-between;aspect-ratio:auto;position:relative;overflow:hidden}.editorial-banner .eyebrow{color:#ffffff8c}.editorial-banner .h-2{color:var(--paper);margin-top:16px;max-width:14ch}.editorial-banner .lede{color:#ffffffb3;max-width:36ch}.editorial-banner .btn-ghost{color:var(--paper);border-color:#fff6;align-self:flex-start}@media(max-width:1024px){.products{grid-template-columns:repeat(2,1fr)}.cat-hero-grid{grid-template-columns:1fr;gap:32px}.editorial-banner{grid-column:span 2;grid-row:span 1}.filters{position:relative;top:0}}@media(max-width:640px){.products{grid-template-columns:1fr}.editorial-banner{grid-column:span 1}}
