/* ===== Case-study detail page (loads after main.css) ===== */
:root{--font-m:"JetBrains Mono",ui-monospace,monospace}

.cs-crumb{font-family:var(--font-m);font-size:.78rem;letter-spacing:.04em;color:var(--muted);padding:28px 0 0}
.cs-crumb a{color:var(--muted)}.cs-crumb a:hover{color:var(--blue)}
.cs-crumb .sep{margin:0 8px;opacity:.5}

.cs-hero{padding:24px 0 8px}
.cs-eyebrow{font-family:var(--font-m);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--coral)}
.cs-hero h1{font-size:clamp(2.2rem,5vw,3.6rem);letter-spacing:-.025em;line-height:1.04;margin:14px 0}
.cs-tagline{font-size:1.18rem;color:var(--muted);max-width:40ch}

.cs-cover{margin:34px 0 0;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid var(--line)}
.cs-cover img{width:100%;display:block;object-fit:cover}

/* meta bar */
.cs-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;margin:36px 0 0;padding:28px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow)}
.cs-meta .m-k{font-family:var(--font-m);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.cs-meta .m-v{font-family:var(--font-d);font-weight:700;font-size:1.02rem;line-height:1.3}
.cs-meta .chips{display:flex;flex-wrap:wrap;gap:6px}
.cs-meta .chips span{font-family:var(--font-m);font-size:.72rem;background:#eaf0ff;color:var(--blue);border-radius:var(--radius-pill);padding:4px 10px}

/* two-column narrative */
.cs-split{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.cs-block h2{font-size:1.5rem;letter-spacing:-.01em;margin-bottom:12px}
.cs-block .lbl{font-family:var(--font-m);font-size:.74rem;letter-spacing:.12em;text-transform:uppercase;color:var(--coral);margin-bottom:8px}
.cs-prose p{color:var(--muted);font-size:1.02rem;margin-bottom:14px}
.cs-prose ul{list-style:none;margin-top:6px}
.cs-prose li{position:relative;padding:6px 0 6px 26px;color:var(--ink)}
.cs-prose li::before{content:"";position:absolute;left:0;top:13px;width:12px;height:12px;border-radius:4px;background:var(--grad)}

/* impact metrics */
.impact{background:var(--ink);color:#fff;border-radius:var(--radius-lg);padding:48px;position:relative;overflow:hidden;margin-top:8px}
.impact::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 12% 18%,rgba(37,99,235,.5),transparent 52%),radial-gradient(circle at 88% 82%,rgba(229,68,122,.45),transparent 52%)}
.impact>*{position:relative}
.impact .lbl{font-family:var(--font-m);font-size:.76rem;letter-spacing:.12em;text-transform:uppercase;color:#aeb8cf}
.impact h2{font-size:clamp(1.7rem,3.4vw,2.4rem);letter-spacing:-.02em;margin:10px 0 28px}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.metric{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius);padding:24px}
.metric .m-v{font-family:var(--font-d);font-weight:800;font-size:clamp(2rem,4vw,2.8rem);line-height:1;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.metric .m-l{color:#c5cee0;font-size:.9rem;margin-top:10px}
.impact .note{font-family:var(--font-m);font-size:.74rem;color:#8b97b5;margin-top:22px}

/* gallery */
.cs-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px}
.cs-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow)}

/* prev/next + back */
.cs-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:8px}

@media(max-width:900px){
  .cs-meta{grid-template-columns:1fr 1fr;gap:20px}
  .cs-split{grid-template-columns:1fr;gap:32px}
  .metrics{grid-template-columns:1fr 1fr}
  .impact{padding:32px}
  .cs-gallery{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .cs-meta{grid-template-columns:1fr}
  .metrics{grid-template-columns:1fr}
  .cs-gallery{grid-template-columns:1fr}
}
