.catalog-page { background:#fbfbf8; }
.catalog-header-search button { min-height:34px; padding:0 13px; border:0; border-radius:7px; background:var(--ink); color:#fff; font-size:9px; font-weight:800; cursor:pointer; }
.catalog-button.active { box-shadow:inset 0 0 0 2px rgba(32,37,34,.1); }
.catalog-hero { padding:78px 0 54px; display:grid; grid-template-columns:1.25fr .75fr; align-items:end; gap:70px; border-bottom:1px solid var(--line); }
.catalog-hero h1 { max-width:820px; margin:0; font-size:clamp(48px,6vw,86px); line-height:.95; letter-spacing:-.06em; font-weight:600; }
.catalog-hero > p { max-width:510px; margin:0 0 8px; color:var(--muted); font-size:15px; line-height:1.75; }
.catalog-content { padding:44px 0 100px; }
.catalog-tools { margin-bottom:34px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.catalog-tools > p { margin:0; color:var(--muted); font-size:11px; white-space:nowrap; }.catalog-tools > p strong { color:var(--ink); }
.catalog-filters { display:flex; flex-wrap:wrap; gap:8px; }
.catalog-filter { min-height:39px; padding:0 15px; border:1px solid var(--line); border-radius:20px; background:#fff; color:#555b56; font-size:10px; font-weight:750; cursor:pointer; transition:.2s; }
.catalog-filter:hover { border-color:#bfa916; }.catalog-filter.active { border-color:var(--ink); background:var(--ink); color:#fff; }
.catalog-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.catalog-grid .product-card { min-height:520px; }
.catalog-grid .product-photo { height:280px; }
.catalog-empty { padding:90px 20px; border:1px dashed #cfd1cc; border-radius:18px; text-align:center; background:#fff; }
.catalog-empty > span { width:48px; height:48px; margin:0 auto 18px; display:grid; place-items:center; border-radius:50%; background:#fff4b8; font-size:20px; }
.catalog-empty h2 { margin:0; font-size:25px; }.catalog-empty p { color:var(--muted); font-size:11px; }
.catalog-empty button { min-height:40px; margin-top:8px; padding:0 16px; border:0; border-radius:8px; background:var(--ink); color:#fff; font-size:10px; font-weight:800; cursor:pointer; }
.catalog-cta { margin-bottom:90px; padding:55px 60px; display:flex; align-items:center; justify-content:space-between; gap:40px; border-radius:20px; background:var(--olive); color:#fff; }
.catalog-cta h2 { margin:0; font-size:clamp(32px,4vw,52px); letter-spacing:-.045em; }.catalog-cta p:not(.eyebrow) { max-width:680px; margin:14px 0 0; color:rgba(255,255,255,.65); font-size:12px; line-height:1.7; }
.catalog-cta .button { flex:0 0 auto; }
@media (max-width:1100px) { .catalog-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }.catalog-hero { gap:35px; } }
@media (max-width:800px) { .catalog-hero { padding-top:55px; grid-template-columns:1fr; gap:24px; }.catalog-tools { align-items:flex-start; flex-direction:column; }.catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.catalog-cta { padding:42px 34px; align-items:flex-start; flex-direction:column; } }
@media (max-width:520px) { .catalog-header-search button { display:none; }.catalog-hero { padding:42px 0 35px; }.catalog-hero h1 { font-size:46px; }.catalog-content { padding-top:28px; }.catalog-filters { flex-wrap:nowrap; width:calc(100vw - 12px); margin-right:-12px; overflow-x:auto; padding:0 12px 7px 0; scrollbar-width:none; }.catalog-filter { flex:0 0 auto; }.catalog-grid { grid-template-columns:1fr; }.catalog-grid .product-photo { height:290px; }.catalog-cta { margin-bottom:65px; padding:36px 24px; }.catalog-cta .button { width:100%; } }
