/* ============ Product catalog (category pages) ============ */
.cat-intro{max-width:760px;margin-bottom:clamp(28px,4vw,44px)}
.cat-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:26px}
.cat-count{font-size:.92rem;color:var(--slate)}
.cat-count b{color:var(--ink);font-weight:600}

.prod-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.prod-card{background:var(--paper);border:1px solid var(--line-2);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:.35s var(--ease);cursor:pointer;display:flex;flex-direction:column}
.prod-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:var(--line)}
.prod-card .pimg{aspect-ratio:1/1;background:#fff;display:flex;align-items:center;justify-content:center;padding:14px;overflow:hidden}
.prod-card .pimg img{width:100%;height:100%;object-fit:contain;transition:transform .5s var(--ease)}
.prod-card:hover .pimg img{transform:scale(1.05)}
.prod-card .pname{padding:13px 14px 16px;text-align:center;font-family:'Inter',sans-serif;font-weight:600;font-size:.86rem;letter-spacing:.03em;color:var(--ink);border-top:1px solid var(--line-2)}

/* pagination */
.pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:7px;margin-top:clamp(34px,4vw,52px)}
.pager button,.pager .pnum{min-width:42px;height:42px;padding:0 12px;border-radius:10px;border:1px solid var(--line);background:var(--paper);color:var(--ink-2);font-weight:600;font-size:.9rem;font-family:inherit;cursor:pointer;transition:.2s;display:inline-flex;align-items:center;justify-content:center}
.pager button:hover:not(:disabled),.pager .pnum:hover{border-color:var(--bronze);color:var(--bronze-deep)}
.pager .pnum.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.pager button:disabled{opacity:.4;cursor:not-allowed}
.pager .pdots{min-width:26px;text-align:center;color:var(--slate)}
.pager-jump{display:flex;align-items:center;gap:8px;margin-left:10px;font-size:.88rem;color:var(--slate)}
.pager-jump input{width:64px;height:42px;text-align:center;border:1px solid var(--line);border-radius:10px;font-family:inherit;font-size:.9rem;font-weight:600;color:var(--ink)}
.pager-jump input:focus{outline:none;border-color:var(--bronze);box-shadow:0 0 0 3px rgba(180,134,63,.14)}
.pager-jump button{background:var(--bronze);color:#fff;border-color:var(--bronze)}
.pager-jump button:hover{background:var(--bronze-deep)}
@media (max-width:900px){.pager-jump{margin-left:0;width:100%;justify-content:center;margin-top:6px}}

/* lightbox */
.lightbox{position:fixed;inset:0;z-index:300;background:rgba(18,14,9,.86);display:none;align-items:center;justify-content:center;padding:30px;backdrop-filter:blur(4px)}
.lightbox.open{display:flex}
.lightbox .lb-inner{background:#fff;border-radius:16px;max-width:640px;width:100%;padding:20px;position:relative}
.lightbox img{width:100%;max-height:74vh;object-fit:contain}
.lightbox .lb-name{text-align:center;margin-top:12px;font-weight:600;letter-spacing:.03em;color:var(--ink)}
.lightbox .lb-close{position:absolute;top:-14px;right:-14px;width:40px;height:40px;border-radius:50%;background:var(--ink);color:#fff;font-size:1.4rem;display:flex;align-items:center;justify-content:center;border:2px solid #fff}

@media (max-width:1100px){.prod-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:680px){.prod-grid{grid-template-columns:repeat(2,1fr);gap:14px}}
@media (max-width:380px){.prod-grid{grid-template-columns:1fr}}
