.pj{max-width:1240px;margin:0 auto;padding:26px 16px 70px;color:#16181c}
.pj h1{font-size:30px;margin:0 0 8px;letter-spacing:-.01em}
.pj-head p{max-width:720px;color:#4a5058;margin:0 0 20px;line-height:1.55}
.pj-filter{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;background:#fff;border:1px solid #e3e6ea;border-radius:16px;padding:14px 16px;margin-bottom:18px}
.pj-filter label{display:block;font-size:13px;font-weight:650;color:#3b424a;flex:1 1 140px;min-width:0}
.pj-filter select,.pj-filter input{display:block;width:100%;margin-top:5px;padding:10px 12px;border:1px solid #d9dde3;border-radius:11px;font:inherit;font-size:15px;background:#fff;color:#16181c;box-sizing:border-box}
.pj-btn{display:inline-block;appearance:none;border:0;background:#0f7b3d;color:#fff;border-radius:12px;padding:11px 20px;font:inherit;font-weight:750;font-size:15px;cursor:pointer;text-decoration:none;white-space:nowrap}
.pj-btn:hover{background:#0b6932}
.pj-reset{align-self:center;font-size:14px;color:#4a5058}
.pj-count{font-size:14px;color:#69717a;margin:0 0 12px}
.pj-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:16px}
.pj-card{background:#fff;border:1px solid #e3e6ea;border-radius:16px;overflow:hidden;transition:box-shadow .15s,transform .15s}
.pj-card:hover{box-shadow:0 8px 26px rgba(20,30,40,.1);transform:translateY(-2px)}
.pj-card a{display:block;color:inherit;text-decoration:none}
.pj-pic{display:block;background:#f4f5f7;border-bottom:1px solid #eef0f2;aspect-ratio:4/3}
.pj-pic img{display:block;width:100%;height:100%;object-fit:contain}
.pj-body{display:block;padding:12px 14px 14px}
.pj-title{display:block;font-size:16px;line-height:1.3;margin-bottom:6px}
.pj-meta{display:flex;gap:6px 12px;flex-wrap:wrap;font-size:13px;color:#4a5058}
.pj-foot{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-top:10px;font-size:13px}
.pj-cost{font-weight:750;color:#0b6932;font-size:15px}
.pj-views{color:#69717a}
.pj-empty{text-align:center;background:#fff;border:1px dashed #cfd5db;border-radius:18px;padding:40px 18px}
.pj-empty h2{margin:0 0 8px;font-size:20px}
.pj-empty p{margin:0 0 18px;color:#4a5058}
.pj-pages{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;margin:26px 0 8px}
.pj-pages a,.pj-pages span{min-width:38px;padding:8px 12px;border:1px solid #dfe3e8;border-radius:10px;background:#fff;color:#16181c;text-align:center;text-decoration:none;font-size:14px;font-weight:650;box-sizing:border-box}
.pj-pages .is-on{background:#16181c;border-color:#16181c;color:#fff}
.pj-cta{display:flex;gap:14px 20px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:30px;padding:18px 20px;background:#f6f7f9;border-radius:16px}
.pj-cta p{margin:0;color:#3b424a;max-width:600px}
@media (min-width:600px){.pj-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:960px){.pj-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:1360px){.pj{max-width:1480px}.pj-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:599px){.pj h1{font-size:26px}.pj-filter label{flex:1 1 100%}.pj-btn{width:100%;text-align:center}}
