:root{--sp-g:#133D2C;--sp-g6:#236A4D;--sp-brass:#C9A24B;--sp-cream:#FAF6EF;--sp-line:rgba(19,61,44,.13);--sp-ink:#13201A}
.sp-katalog{display:grid;grid-template-columns:repeat(var(--cols,3),1fr);gap:18px;margin:24px 0}
.sp-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--sp-line);border-radius:18px;overflow:hidden;text-decoration:none;color:var(--sp-ink);transition:transform .4s,box-shadow .4s}
.sp-card:hover{transform:translateY(-6px);box-shadow:0 22px 48px -22px rgba(9,30,22,.3)}
.sp-card-img{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--sp-cream)}
.sp-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s}
.sp-card:hover .sp-card-img img{transform:scale(1.06)}
.sp-card-noimg{display:block;width:100%;height:100%;background:linear-gradient(135deg,#e7dcc6,#c9a877)}
.sp-card-badge{position:absolute;top:12px;left:12px;background:var(--sp-brass);color:#2C2107;font-size:11px;font-weight:800;padding:5px 11px;border-radius:30px}
.sp-card-avail{position:absolute;bottom:12px;left:12px;background:rgba(255,255,255,.92);color:var(--sp-g6);font-size:11px;font-weight:700;padding:5px 10px;border-radius:30px}
.sp-card-body{padding:18px;display:flex;flex-direction:column;gap:3px}
.sp-card-prod{font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sp-brass)}
.sp-card-title{font-size:17px;font-weight:700;margin:2px 0}
.sp-card-cena{font-size:18px;color:var(--sp-g)}
.sp-card-cta{margin-top:8px;font-size:13.5px;font-weight:700;color:var(--sp-g6)}
.sp-prod{margin-top:26px}
.sp-prod-cena{font-size:20px;color:var(--sp-g)}.sp-prod-cena b{color:var(--sp-g6)}
.sp-prod-spec{width:100%;border-collapse:collapse;margin:14px 0 24px;font-size:14.5px}
.sp-prod-spec th{text-align:left;color:#3C4A42;font-weight:600;padding:9px 0;border-bottom:1px solid var(--sp-line);width:46%}
.sp-prod-spec td{padding:9px 0;border-bottom:1px solid var(--sp-line);font-weight:600}
.sp-zapytanie{background:var(--sp-cream);border:1px solid var(--sp-line);border-radius:20px;padding:24px;max-width:520px}
.sp-zap-title{margin:0 0 4px;font-size:20px;color:var(--sp-g)}
.sp-zap-sub{margin:0 0 16px;font-size:14px;color:#3C4A42}
.sp-zap-prod{font-size:13.5px;margin:0 0 12px}
.sp-zap-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.sp-zapytanie input,.sp-zapytanie textarea{width:100%;padding:13px 15px;border:1px solid var(--sp-line);border-radius:12px;font:inherit;font-size:15px;margin-bottom:10px;background:#fff;box-sizing:border-box}
.sp-zapytanie input:focus,.sp-zapytanie textarea:focus{outline:none;border-color:var(--sp-g6)}
.sp-zap-rodo{display:flex;gap:9px;align-items:flex-start;font-size:13px;color:#3C4A42;margin-bottom:14px}
.sp-zap-rodo input{width:auto;margin:2px 0 0}
.sp-hp{position:absolute!important;left:-9999px!important}
.sp-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:700;font-size:15px;padding:14px 26px;border-radius:60px;border:0;cursor:pointer;text-decoration:none}
.sp-btn-gold{background:linear-gradient(135deg,#E7CE8E,var(--sp-brass));color:#2C2107;width:100%}
.sp-btn-ghost{background:transparent;border:1.5px solid var(--sp-line);color:var(--sp-g)}
.sp-zap-msg{margin-top:12px;font-size:14px;font-weight:600}
.sp-zap-msg.ok{color:var(--sp-g6)}.sp-zap-msg.err{color:#b3261e}
@media(max-width:900px){.sp-katalog{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.sp-katalog{grid-template-columns:1fr}.sp-zap-row{grid-template-columns:1fr}}
