/* Katalog pojazdów */
.kp-wrap{padding-bottom:40px}
.kp-head h1{color:var(--navy);margin:0 0 .4em}
.kp-lead{font-size:1.08rem;color:var(--ink);max-width:46rem}
.kp-sub{color:var(--muted);font-size:.95rem}
.kp-filters{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:end;margin:22px 0 8px;padding:16px 18px;background:#fff;border:1px solid var(--line);border-radius:var(--r)}
.kp-filters[hidden]{display:none}
.kp-filters label{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.kp-filters select,.kp-filters input[type=search]{font:inherit;font-size:1rem;font-weight:500;letter-spacing:0;text-transform:none;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:8px 10px;min-width:12rem;background:#fff}
.kp-filters select:focus,.kp-filters input[type=search]:focus{outline:2px solid var(--amber);outline-offset:1px}
.kp-reset{background:transparent;border:0;color:var(--navy-3);font-weight:700;cursor:pointer;padding:8px 4px}
.kp-reset:hover{color:var(--amber)}
.kp-count{margin:4px 0 18px;color:var(--muted);font-size:.92rem}
.kp-count b{color:var(--navy)}
.kp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin:0;padding:0;list-style:none}
.kp-card{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:18px 18px 16px;display:flex;flex-direction:column;gap:10px;min-height:100%}
.kp-card[hidden]{display:none}
.kp-logo{height:72px;display:flex;align-items:center;justify-content:center;background:var(--bg);border-radius:10px;padding:10px 14px}
.kp-logo img{max-height:52px;max-width:100%;width:auto;height:auto;object-fit:contain}
.kp-logo.kp-logo-dark,a.kp-logo.kp-logo-dark{background:var(--navy)}
a.kp-logo{color:inherit;text-decoration:none}
a.kp-logo:hover{opacity:.92}
.kp-wordmark{font-weight:800;color:var(--navy);letter-spacing:.04em;text-align:center;font-size:1.05rem;line-height:1.2}
.kp-card h2{margin:0;font-size:1.15rem;color:var(--navy)}
.kp-meta{margin:0;font-size:.85rem;color:var(--muted)}
.kp-tags{display:flex;flex-wrap:wrap;gap:6px}
.kp-tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;background:#eef2f8;color:var(--navy);padding:3px 8px;border-radius:999px}
.kp-tag[data-t=kampery]{background:#e8eef8}
.kp-tag[data-t=campervany]{background:#fff1e3;color:#8a4b0a}
.kp-tag[data-t=przyczepy]{background:#e7f4ea;color:#1e5a2c}
.kp-card p{margin:0;font-size:.92rem;line-height:1.45;flex:1}
.kp-www{font-weight:700;font-size:.9rem;color:var(--amber);text-decoration:none;align-self:flex-start}
.kp-www:hover{color:var(--navy-3)}
.kp-dealer{margin:0;font-size:.82rem;line-height:1.4;color:var(--muted);align-self:flex-start}
.kp-dealer a{color:var(--navy-3);text-decoration:none;font-weight:600}
.kp-dealer a:hover{color:var(--amber);text-decoration:underline}
.kp-www + .kp-dealer{margin-top:-4px}

.kp-empty{display:none;background:#fff;border:1px dashed var(--line);border-radius:var(--r);padding:20px;color:var(--muted)}
.kp-empty.is-on{display:block}
.kp-note{margin-top:28px;font-size:.88rem;color:var(--muted)}
.kp-note a{color:var(--navy-3)}
@media(max-width:560px){
  .kp-filters select,.kp-filters input[type=search]{min-width:0;width:100%}
  .kp-filters label{flex:1 1 100%}
}
