.catalog-active{background:rgba(31,106,67,.09)!important;color:var(--accent-dark)!important}
.catalog-hero{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end;padding:38px 40px;border-radius:32px;background:linear-gradient(135deg,rgba(255,253,249,.95),rgba(230,240,233,.92));border:1px solid rgba(116,122,113,.14);box-shadow:var(--shadow);margin-bottom:24px}
.catalog-hero h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(2.5rem,5vw,4.4rem);line-height:1.04;margin:10px 0 14px;max-width:11ch}
.catalog-hero h1 em{color:var(--accent)}
.catalog-hero p{max-width:65ch;color:var(--muted);line-height:1.8}
.catalog-summary{min-width:190px;padding:20px 22px;border-radius:24px;background:#fff;border:1px solid rgba(116,122,113,.14)}
.catalog-summary strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:2.25rem;color:var(--accent)}
.catalog-summary span{display:block;color:var(--muted);margin-bottom:14px}
.catalog-summary a{color:var(--accent-dark);text-decoration:none;font-weight:700}
.catalog-tools{display:grid;grid-template-columns:1.5fr .8fr auto;gap:14px;align-items:end;margin:0 0 28px;padding:18px;border-radius:24px;background:rgba(255,253,249,.9);border:1px solid rgba(116,122,113,.14)}
.catalog-tools label span,.catalog-tool-count span{display:block;font-size:.78rem;text-transform:uppercase;letter-spacing:.09em;color:var(--muted);font-weight:700;margin-bottom:7px}
.catalog-tools input,.catalog-tools select{width:100%;padding:14px 15px;border:1px solid var(--line);border-radius:15px;background:#fff;color:var(--ink);font:inherit}
.catalog-tool-count{padding:0 8px 8px;min-width:100px}
.catalog-tool-count strong{color:var(--accent-dark)}
.catalog-card[hidden]{display:none!important}
@media(max-width:760px){.catalog-hero{grid-template-columns:1fr;padding:26px}.catalog-summary{min-width:0}.catalog-tools{grid-template-columns:1fr}.catalog-tool-count{padding:0 4px}}

.catalog-pagination{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin:28px 0 0;padding:18px;border:1px solid rgba(116,122,113,.14);border-radius:24px;background:rgba(255,253,249,.94);box-shadow:0 12px 30px rgba(40,44,38,.04)}
.catalog-pagination[hidden]{display:none!important}
.catalog-page-btn{min-height:48px;padding:12px 18px;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--accent-dark);font:inherit;font-weight:700;cursor:pointer;transition:.2s ease}
.catalog-page-btn:last-child{justify-self:end;background:var(--accent);border-color:var(--accent);color:#fff}
.catalog-page-btn:first-child{justify-self:start}
.catalog-page-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 22px rgba(31,106,67,.12)}
.catalog-page-btn:disabled{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
.catalog-page-status{text-align:center;min-width:190px}
.catalog-page-status strong{display:block;color:var(--ink);margin-bottom:4px}
.catalog-page-status span{display:block;color:var(--muted);font-size:.9rem}
@media(max-width:760px){
  .catalog-pagination{grid-template-columns:1fr 1fr;padding:14px;gap:10px}
  .catalog-page-status{grid-column:1/-1;grid-row:1;text-align:center;min-width:0}
  .catalog-page-btn{width:100%;padding:12px 10px;font-size:.9rem}
  .catalog-page-btn:first-child,.catalog-page-btn:last-child{justify-self:stretch}
}

/* Mobile-only catalog refinements */
@media(max-width:767px){
  .catalog-hero{padding:20px 16px;border-radius:22px;gap:15px;margin-bottom:14px}
  .catalog-hero h1{font-size:clamp(2rem,10vw,3rem);max-width:none;margin:7px 0 10px}
  .catalog-hero p{font-size:.88rem;line-height:1.6;margin-bottom:0}
  .catalog-summary{padding:15px 16px;border-radius:18px}
  .catalog-summary strong{font-size:1.7rem}
  .catalog-tools{padding:12px;border-radius:18px;gap:10px;margin-bottom:16px}
  .catalog-tools input,.catalog-tools select{padding:12px 13px;border-radius:12px;font-size:.9rem}
  .catalog-pagination{grid-template-columns:1fr 1fr;padding:12px 10px;border-radius:18px;margin-top:18px;gap:8px}
  .catalog-page-status{font-size:.86rem}
  .catalog-page-btn{min-height:42px;border-radius:13px;padding:10px 8px;font-size:.78rem;white-space:normal;line-height:1.25}
}

.catalog-page-btn.is-disabled{opacity:.45;pointer-events:none}.catalog-pagination a.catalog-page-btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
