/* Catalogue controls use the reading face; display serifs belong to the brand story. */
.catalog-layout{display:grid;grid-template-columns:13rem minmax(0,1fr);gap:2.5rem;align-items:start}
.catalog-layout>div{min-width:0}
.catalog-filters{position:sticky;top:7rem;align-self:start;min-width:0}
.catalog-filters h2{display:flex;align-items:center;min-height:2.75rem;margin:0 0 1rem;font-family:var(--sans);font-size:.9375rem;font-weight:600;line-height:1.4;letter-spacing:0;color:var(--ink)}
.catalog-filters .filter-buttons{display:flex;flex-direction:column;gap:.25rem;overflow:visible;padding:0;margin:0}
.catalog-filters .filter-button{display:flex;align-items:center;justify-content:space-between;gap:.75rem;width:100%;min-height:2.75rem;padding:.625rem .75rem;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--ink);font-family:var(--sans);font-size:.875rem;font-weight:400;line-height:1.4;letter-spacing:0;text-align:left;white-space:normal}
.catalog-filters .filter-button>span{min-width:0;overflow-wrap:anywhere}
.catalog-filters .filter-button small{flex-shrink:0;min-width:1.5rem;text-align:right;font-size:.75rem;font-weight:400;line-height:1.4;font-variant-numeric:tabular-nums;color:var(--muted)}
.catalog-filters .filter-button:hover{background:var(--stone);color:var(--accent)}
.catalog-filters .filter-button.active{background:var(--accent-soft);border-color:transparent;color:var(--accent);font-weight:600}
.catalog-filters .filter-button.active small{color:var(--accent);font-weight:600}
.catalog-filters .filter-note{margin-top:1.5rem;padding-top:1.25rem;font-family:var(--sans);font-size:.75rem;line-height:1.6}
.catalog-filters .filter-note a{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem}
.catalog-count{min-height:2.75rem;margin-bottom:1rem;font-family:var(--sans);font-size:.8125rem;line-height:1.4}
.catalog-count button{min-height:2.75rem;font-size:.8125rem}
@media(min-width:761px) and (max-width:1050px){.catalog-layout{grid-template-columns:11rem minmax(0,1fr);gap:1.5rem}.catalog-layout .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.catalog-layout{display:block}.catalog-filters{position:static}.catalog-filters.filters-open{padding:1rem;border:1px solid var(--line);border-radius:4px;margin-bottom:1.25rem}.catalog-filters h2{display:flex;margin-bottom:.5rem;min-height:2rem}.catalog-filters.filters-open .filter-buttons{display:flex;flex-direction:column;flex-wrap:nowrap;gap:.25rem;overflow:visible;margin:0;padding:0}.catalog-filters .filter-button{min-height:2.75rem;font-size:.9375rem}.catalog-filters .filter-note{display:none}.mobile-filter-toggle{font-family:var(--sans);font-size:.9375rem;text-align:left;justify-content:space-between;padding-inline:1rem}.mobile-filter-toggle:after{content:'+';font-size:1.25rem}.mobile-filter-toggle[aria-expanded=true]:after{content:'−'}}
