.catalog-layout{grid-template-columns:270px minmax(0,1fr);align-items:start}
.catalog-filters{position:sticky;top:106px;max-height:calc(100svh - 126px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px}
.filter-heading{padding-bottom:18px;border-bottom:1px solid var(--line);margin-bottom:10px}
.filter-heading .eyebrow{font-size:9px;margin:0 0 8px}
.catalog-filters .filter-heading h2{font:28px var(--serif);margin:0}
.catalog-filters a{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 10px;border-radius:5px;font-size:13px}
.catalog-filters a:hover{background:#f6f0e8}
.catalog-filters a[aria-current]{background:#7b1f2d;color:white;font-weight:bold}
.catalog-filters small{background:#eadfd5;color:#64222b;border-radius:12px;min-width:25px;text-align:center;padding:1px 6px}
.filter-parent{display:flex;align-items:center}.filter-parent>a{flex:1}
.filter-group{border-bottom:1px solid #eee6dc;padding:4px 0}
.filter-expand{border:1px solid var(--line);background:#fbf8f2;color:var(--wine);border-radius:4px;width:32px;height:32px;cursor:pointer;margin-left:5px}
.filter-children{padding:4px 0 8px 14px;border-left:2px solid #d7bc98;margin-left:12px}
.filter-children a{font-size:12px}
.catalog-filters .filter-reset{margin-top:20px;border:1px solid var(--wine);color:var(--wine);justify-content:center;font-size:11px}
.catalog-layout>.title h2,.catalog-layout #catalog-title{font-size:36px;margin:6px 0}
.catalog-products .product[hidden],.catalog-empty[hidden],.filter-children[hidden]{display:none!important}
.catalog-products .product{padding:14px;background:#fff;border:1px solid var(--line);border-radius:6px;display:flex;flex-direction:column}
.catalog-products .book{height:330px}
.catalog-products .product h3{min-height:54px}
.catalog-products .product>div{margin-top:auto;padding-top:16px;gap:12px;flex-wrap:wrap;align-items:center}
.catalog-products .product>p{margin-bottom:15px}
.catalog-products strong{font:24px var(--serif);color:var(--wine)}
.catalog-products .product button,.catalog-products .product>div>a{background:var(--wine);color:white;border:0;border-radius:4px;min-height:42px;padding:10px 15px;cursor:pointer}
.catalog-empty{padding:50px 25px;background:#f1e8da;border:1px solid var(--line);text-align:center;border-radius:8px}
.catalog-empty h3{font:30px var(--serif)}
@media(max-width:1100px){.catalog-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.catalog-layout{grid-template-columns:1fr}.catalog-filters{position:static;max-height:none}}
@media(max-width:550px){.catalog-products{grid-template-columns:1fr}}
