/* ================================================================
   KNOWLEDGE BASE STYLES
   ================================================================ */
.kb-breadcrumb{
  padding:18px 0 0;font-family:var(--mono);font-size:.72rem;
  color:var(--muted);letter-spacing:.12em;text-transform:uppercase;
}
.kb-breadcrumb a{color:var(--muted);text-decoration:none;}
.kb-breadcrumb a:hover{color:var(--red);}
.kb-breadcrumb .sep{margin:0 8px;color:var(--muted-2);}
.kb-breadcrumb .current{color:#fff;}

/* INDEX */
.kb-index-hero{padding:54px 0 30px;}
.kb-index-hero .eyebrow{
  display:inline-block;font-family:var(--mono);font-size:.7rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--red);padding:6px 12px;
  border:1px solid rgba(214,31,38,.4);border-radius:4px;margin-bottom:18px;
}
.kb-index-hero h1{
  font-family:var(--display);font-size:clamp(2.6rem,5.4vw,4.4rem);
  line-height:.95;letter-spacing:-.025em;text-transform:uppercase;
  margin-bottom:18px;
}
.kb-index-hero h1 .accent{color:var(--red);}
.kb-index-hero .lede{
  font-size:1.14rem;color:var(--text-2);max-width:820px;line-height:1.55;
}

.kb-cat-head{
  margin:42px 0 16px;
  display:flex;align-items:center;gap:18px;
}
.kb-cat-head h2{
  font-family:var(--display);font-size:1.45rem;
  text-transform:uppercase;letter-spacing:-.01em;margin:0;color:#fff;
}
.kb-cat-head .line{flex:1;height:1px;background:var(--line);}
.kb-cat-head .count{
  font-family:var(--mono);font-size:.72rem;
  color:var(--muted);letter-spacing:.14em;
}

.kb-list{
  display:grid;grid-template-columns:1fr 1fr;
  gap:10px;margin-bottom:24px;
}
@media (max-width:760px){.kb-list{grid-template-columns:1fr;}}
.kb-item{
  background:var(--panel);border:1px solid var(--line);
  border-radius:10px;padding:16px 20px;
  text-decoration:none;color:inherit;
  transition:all .15s;display:block;
}
.kb-item:hover{
  border-color:var(--red);background:var(--panel-2);
  transform:translateX(2px);
}
.kb-item h3{
  font-family:var(--body);font-size:.96rem;font-weight:600;
  color:#fff;margin:0 0 4px;line-height:1.4;
}
.kb-item .tag{
  font-family:var(--mono);font-size:.62rem;letter-spacing:.16em;
  color:var(--muted);text-transform:uppercase;
}

/* SINGLE Q&A page */
.kb-hero{
  padding:46px 0 24px;border-bottom:1px solid var(--line);margin-bottom:36px;
}
.kb-hero .category-tag{
  display:inline-block;font-family:var(--mono);font-size:.7rem;letter-spacing:.18em;
  text-transform:uppercase;color:var(--red);padding:6px 12px;
  border:1px solid rgba(214,31,38,.4);border-radius:4px;margin-bottom:18px;
}
.kb-hero h1{
  font-family:var(--display);font-size:clamp(2rem,4.4vw,3.4rem);
  line-height:1.0;letter-spacing:-.018em;text-transform:none;
  margin-bottom:18px;color:#fff;
}
.kb-hero .tldr{
  background:linear-gradient(135deg, rgba(214,31,38,.10), rgba(0,0,0,0));
  border-left:3px solid var(--red);
  padding:16px 22px;border-radius:0 8px 8px 0;
  margin-top:14px;
}
.kb-hero .tldr .label{
  font-family:var(--mono);font-size:.66rem;letter-spacing:.2em;
  color:var(--red);font-weight:700;text-transform:uppercase;
  display:block;margin-bottom:6px;
}
.kb-hero .tldr p{color:#fff;font-size:1.05rem;line-height:1.55;margin:0;}

.kb-body{padding-bottom:60px;}
.kb-body p{
  color:var(--text-2);font-size:1.04rem;line-height:1.75;margin-bottom:16px;
}
.kb-body p strong{color:#fff;}
.kb-body h2{
  font-family:var(--display);font-size:1.3rem;text-transform:uppercase;
  letter-spacing:-.012em;color:#fff;margin:30px 0 12px;
}
.kb-body ul, .kb-body ol{margin:8px 0 18px 22px;color:var(--text-2);}
.kb-body li{margin-bottom:8px;line-height:1.65;}
.kb-body li strong{color:#fff;}

.kb-related-section{
  margin-top:40px;padding-top:28px;border-top:1px solid var(--line);
}
.kb-related-section h2{
  font-family:var(--display);font-size:1.2rem;text-transform:uppercase;
  letter-spacing:-.012em;color:#fff;margin-bottom:14px;
}
.kb-related{display:flex;flex-direction:column;gap:8px;}
.kb-related a{
  background:var(--panel);border:1px solid var(--line);border-radius:8px;
  padding:12px 18px;color:#fff;text-decoration:none;font-size:.95rem;
  transition:all .15s;
}
.kb-related a:hover{border-color:var(--red);background:var(--panel-2);color:var(--red);}

.kb-cta{
  margin:40px 0 60px;padding:28px 26px;
  background:linear-gradient(135deg, rgba(214,31,38,.12), rgba(0,0,0,0));
  border:1px solid var(--red);border-radius:14px;text-align:center;
}
.kb-cta h3{font-family:var(--display);text-transform:uppercase;font-size:1.25rem;margin-bottom:8px;color:#fff;}
.kb-cta p{color:var(--text-2);margin-bottom:16px;}
.kb-cta .btn{margin:0 6px;}
