/* Case Study page — responsive extras on top of style.css tokens */
.cs-hero{text-align:center;padding:40px 20px;max-width:900px;margin:0 auto}
.cs-kicker{display:inline-block;font-size:.74rem;font-weight:700;letter-spacing:2px;color:var(--primary-color);
  border:1px solid rgba(0,210,255,.35);background:rgba(0,210,255,.08);padding:6px 18px;border-radius:30px;margin-bottom:20px}
.cs-hero h1{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:800;font-family:var(--font-heading);line-height:1.15}
.cs-hero p{color:var(--text-muted);max-width:760px;margin:18px auto 0;font-size:.95rem}
.cs-hero p em{color:var(--accent)}
.cs-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:14px;margin-top:34px}
.cs-stats div{background:rgba(255,255,255,.02);border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:18px 10px}
.cs-stats b{display:block;font-family:var(--font-heading);font-size:1.5rem;color:var(--primary-color)}
.cs-stats span{font-size:.74rem;color:var(--text-muted)}
.cs-tag{display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:1.5px;color:var(--accent);
  background:rgba(34,211,238,.08);border:1px solid rgba(34,211,238,.25);padding:5px 14px;border-radius:20px;margin-bottom:16px}
article p, article li{font-size:.92rem;line-height:1.75}
article h3{font-size:1.02rem;color:var(--text-light);margin-bottom:8px}
article code{background:rgba(0,210,255,.1);color:var(--primary-color);padding:2px 7px;border-radius:5px;font-size:.82rem}
.cs-grid2{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:22px 0}
@media(max-width:820px){.cs-grid2{grid-template-columns:1fr}}
.cs-shot{width:100%;height:auto;border-radius:14px;border:1px solid rgba(255,255,255,.1);
  box-shadow:0 18px 50px rgba(0,0,0,.45);margin:22px 0 8px;display:block}
.cs-table-wrap{overflow-x:auto;margin:22px 0 6px}
.cs-table{width:100%;border-collapse:collapse;font-size:.85rem;min-width:520px}
.cs-table caption{caption-side:top;text-align:left;color:var(--text-muted);font-size:.78rem;padding-bottom:10px}
.cs-table th{text-align:left;padding:11px 14px;color:var(--text-light);font-weight:700;
  font-size:.8rem;border-bottom:2px solid rgba(0,210,255,.35);white-space:nowrap}
.cs-table td{padding:11px 14px;border-bottom:1px solid rgba(255,255,255,.06);color:var(--text-muted)}
.cs-table td:first-child{color:var(--accent);font-weight:600;white-space:nowrap}
.cs-table tbody:hover tr td{background:rgba(255,255,255,.02)}
.cs-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:18px}
.cs-step{background:rgba(15,23,42,.55);border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:18px}
.cs-step b{font-family:var(--font-heading);font-size:1.6rem;color:rgba(0,210,255,.3);display:block;margin-bottom:6px}
.cs-step strong{font-size:.9rem;display:block;margin-bottom:6px}
.cs-step p{font-size:.8rem;color:var(--text-muted);line-height:1.6}
details{background:var(--bg-dark);border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:14px 18px;margin-bottom:12px}
summary{cursor:pointer;color:var(--text-light);font-weight:600;font-size:.9rem}
details p{color:var(--text-muted);margin-top:8px;font-size:.86rem}
