/* ============================================================
   MCZ — CENTRUM WIEDZY  (centrum-wiedzy.css)
   Ładowany warunkowo w header.php  ·  mobile-first
   ============================================================ */

.kb{position:relative;padding:7rem 0 5rem}

/* ---------- HERO ---------- */
.kb-hero{text-align:center;max-width:640px;margin:0 auto 3rem}
.kb-hero .eyebrow{margin-bottom:1.1rem}
.kb-hero__title{font-family:'Bricolage Grotesque',sans-serif;font-weight:800;
  letter-spacing:-.03em;font-size:clamp(2.4rem,9vw,3.8rem);line-height:1.05}
.kb-hero__title em{font-style:normal;background:var(--grad-warm);
  -webkit-background-clip:text;background-clip:text;color:transparent}
.kb-hero__sub{color:var(--muted);font-size:1.02rem;margin-top:.9rem}

/* ---------- SIATKA ---------- */
.kb-grid{display:grid;grid-template-columns:1fr;gap:1.1rem}

.kb-card{position:relative;overflow:hidden;border:1px solid var(--line-soft);
  border-radius:20px;background:var(--surface);
  transition:transform .35s var(--ease),border-color .35s}
.kb-card::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--grad-warm);transform:scaleY(0);transform-origin:top;
  transition:transform .4s var(--ease)}
.kb-card:hover{transform:translateY(-6px);border-color:var(--line)}
.kb-card:hover::before{transform:scaleY(1)}
.kb-card__link{display:flex;flex-direction:column;height:100%;padding:1.7rem}

.kb-card__cat{align-self:flex-start;font-family:'JetBrains Mono',monospace;
  font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--orange);
  border:1px solid var(--line);background:var(--surface);
  padding:.32rem .75rem;border-radius:100px;margin-bottom:1.1rem}
.kb-card__title{font-family:'Bricolage Grotesque',sans-serif;font-weight:700;
  font-size:1.32rem;letter-spacing:-.02em;line-height:1.3;margin-bottom:.6rem}
.kb-card__excerpt{color:var(--muted);font-size:.94rem;flex:1}
.kb-card__foot{display:flex;align-items:center;justify-content:space-between;gap:1rem;
  margin-top:1.5rem;padding-top:1.1rem;border-top:1px solid var(--line-soft)}
.kb-card__meta{font-family:'JetBrains Mono',monospace;font-size:.74rem;color:var(--muted)}
.kb-card__more{display:inline-flex;align-items:center;gap:.4rem;flex:none;
  font-weight:600;font-size:.88rem;color:var(--orange)}
.kb-card__more svg{width:15px;height:15px;transition:transform .3s var(--ease)}
.kb-card:hover .kb-card__more svg{transform:translateX(4px)}

/* ---------- PUSTY STAN ---------- */
.kb-empty{text-align:center;max-width:440px;margin:2rem auto;padding:3rem 1.6rem;
  border:1px solid var(--line-soft);border-radius:24px;background:var(--surface);
  display:flex;flex-direction:column;align-items:center}
.kb-empty__ico{width:72px;height:72px;border-radius:20px;display:flex;
  align-items:center;justify-content:center;background:var(--surface-2);
  border:1px solid var(--line);margin-bottom:1.2rem}
.kb-empty__ico svg{width:34px;height:34px;stroke:var(--orange)}
.kb-empty h3{font-family:'Bricolage Grotesque',sans-serif;font-weight:700;
  font-size:1.4rem;margin-bottom:.5rem}
.kb-empty p{color:var(--muted);font-size:.95rem;margin-bottom:1.5rem}

/* ---------- RESPONSIVE ---------- */
@media (min-width:640px){
  .kb-grid{grid-template-columns:1fr 1fr}
}
@media (min-width:1024px){
  .kb{padding:9rem 0 6rem}
  .kb-hero{margin-bottom:4rem}
  .kb-grid{grid-template-columns:repeat(3,1fr);gap:1.4rem}
}