/* ==========================================================================
   Peak — case study pages
   Self-contained content styles. Header/footer/form come from subpage.css.
   ========================================================================== */
.cs-hero{position:relative;display:flex;align-items:flex-end;min-height:60vh;overflow:hidden;background:#0a0a0a;color:#fff;isolation:isolate}
.cs-hero-bg{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover}
.cs-hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(3,4,6,.5) 0%,rgba(3,4,6,.55) 50%,rgba(2,2,2,.95) 100%)}
.cs-hero-inner{position:relative;z-index:2;width:min(1200px,100% - 48px);margin-inline:auto;padding:96px 0 56px}
.cs-eyebrow{display:inline-block;border:1px solid rgba(255,255,255,.5);background:rgba(255,255,255,.1);border-radius:999px;padding:6px 12px;font-size:12.5px;letter-spacing:.02em;margin:0 0 18px;line-height:1}
.cs-hero h1{font-size:clamp(30px,4.4vw,56px);line-height:1.05;letter-spacing:-.02em;font-weight:600;max-width:20ch;text-wrap:balance}
.cs-lead{margin-top:16px;font-size:clamp(16px,1.5vw,19px);line-height:1.6;color:#d7d9dd;max-width:60ch}

.cs-body{padding:88px 0}
.cs-wrap{width:min(1200px,100% - 48px);margin-inline:auto}
.cs-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:center}
.cs-grid+.cs-grid{margin-top:64px}
.cs-grid.rev .cs-fig{order:-1}
.cs-prose h2{font-size:clamp(22px,2.3vw,30px);letter-spacing:-.02em;font-weight:600;margin:0 0 14px;color:#0a0a0a}
.cs-prose p{color:#4b5158;font-size:16px;line-height:1.75;margin:0 0 14px}
.cs-prose ul{margin:0 0 14px;padding-left:20px;color:#4b5158;font-size:16px;line-height:1.75}
.cs-prose li{margin-bottom:6px}
.cs-prose+.cs-prose{margin-top:42px}
.cs-narrow{max-width:840px}
.cs-fig{margin:0;border-radius:14px;overflow:hidden;border:1px solid #e6e8eb;background:#f2f3f5}
.cs-fig img{display:block;width:100%;height:100%;aspect-ratio:4/3;object-fit:cover}
.cs-back{display:inline-flex;align-items:center;gap:8px;font-size:14.5px;font-weight:600;color:#0e7c86;text-decoration:none;margin-bottom:26px}
.cs-back svg{width:15px;height:15px}
.cs-cta{display:inline-flex;align-items:center;gap:8px;margin-top:22px;background:#0e7c86;color:#fff;text-decoration:none;font-weight:600;font-size:15px;line-height:1;padding:14px 20px;border-radius:999px;transition:background .15s ease}
.cs-cta:hover{background:#0c6b73}
.cs-cta svg{width:15px;height:15px}
.cs-prose .cs-cta{margin-top:6px}
.cs-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:64px;padding-top:34px;border-top:1px solid #e6e8eb}
.cs-stats b{display:block;font-size:clamp(26px,3vw,36px);font-weight:600;letter-spacing:-.02em;color:#0a0a0a;line-height:1}
.cs-stats span{display:block;margin-top:9px;font-size:13.5px;color:#5b6472;line-height:1.5}

.cs-contact{background:#0a0a0a;color:#fff;padding:84px 0}
.cs-contact .cs-wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:start}
.cs-contact h2{font-size:clamp(28px,3.4vw,46px);line-height:1.05;letter-spacing:-.02em;font-weight:600}
.cs-contact p{color:#a1a1aa;margin-top:16px;max-width:44ch;line-height:1.65;font-size:16px}

@media (max-width:900px){
  .cs-grid{grid-template-columns:1fr;gap:28px}
  .cs-grid.rev .cs-fig{order:0}
  .cs-stats{grid-template-columns:1fr}
  .cs-contact .cs-wrap{grid-template-columns:1fr;gap:34px}
  .cs-hero{min-height:52vh}
}
