.container--narrow{max-width:760px;margin-inline:auto;padding-inline:var(--container-pad)}.case-hero{position:relative;min-height:clamp(520px,68vh,760px);display:flex;align-items:center;padding:clamp(96px,12vh,140px) 0 clamp(64px,10vh,120px);color:var(--bbg-white);overflow:hidden;isolation:isolate}.case-hero__bg{position:absolute;inset:0;z-index:-2}.case-hero__bg img{width:100%;height:100%;object-fit:cover;object-position:center}.case-hero__overlay{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#0a141c59,#0a141c73,#0a141ccc 80%,#0a141ceb)}.case-hero__inner{max-width:880px;position:relative}.case-hero__crumbs{margin-bottom:var(--space-5);font-size:var(--fs-small)}.case-hero__crumbs a{color:#fffc;font-weight:500;display:inline-flex;align-items:center;gap:.4rem;transition:color var(--dur) var(--ease)}.case-hero__crumbs a:hover{color:var(--bbg-white)}.case-hero__inner .eyebrow--on-dark{display:inline-block;margin-bottom:var(--space-4);color:#9ddbf5}.case-hero__title{font-size:clamp(2.75rem,5vw + 1rem,4.75rem);line-height:1.02;letter-spacing:-.02em;color:var(--bbg-white);margin:0 0 var(--space-4);text-wrap:balance}.case-hero__tagline{font-size:var(--fs-lead);color:#ffffffeb;max-width:60ch;margin:0}.case-meta-wrap{padding:var(--space-6) 0 0}.case-meta{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-6);padding:var(--space-5) var(--space-6);background:var(--bbg-surface);border:1px solid var(--bbg-border);border-radius:var(--radius-md)}.case-meta__cell .eyebrow{display:block;margin-bottom:var(--space-2)}.case-meta__value{font-size:1.125rem;font-weight:600;color:var(--bbg-ink);margin:0}.case-meta__services{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.5rem}.case-meta__services li{font-size:.85rem;font-weight:500;padding:.4rem .8rem;background:var(--bbg-white);border:1px solid var(--bbg-border);border-radius:999px;color:var(--bbg-text)}@media(max-width:720px){.case-meta{grid-template-columns:1fr;gap:var(--space-4)}}.case-intro{padding:var(--space-7) 0 var(--space-4)}.case-intro__summary{font-size:clamp(1.25rem,1vw + 1rem,1.5rem);line-height:1.5;color:var(--bbg-ink);font-weight:500;margin:0;max-width:56ch}.case-body{padding-bottom:var(--space-8)}.prose--case h2{font-size:clamp(1.6rem,1.4vw + 1.1rem,2rem);margin:var(--space-7) 0 var(--space-3);color:var(--bbg-ink)}.prose--case h3{font-size:1.25rem;margin:var(--space-5) 0 var(--space-2);color:var(--bbg-ink)}.prose--case p{margin-bottom:var(--space-3);line-height:1.7;color:var(--bbg-text)}.prose--case ul,.prose--case ol{margin:0 0 var(--space-4) 1.5rem}.prose--case li{margin-bottom:var(--space-2);line-height:1.6;color:var(--bbg-text)}.case-gallery{padding:var(--space-8) 0;background:var(--bbg-surface)}.case-gallery__head{margin-bottom:var(--space-6);text-align:center}.case-gallery__title{font-size:clamp(1.75rem,2vw + 1rem,2.25rem);margin:var(--space-2) 0 0}.case-gallery__stack{display:grid;gap:var(--space-5);max-width:960px;margin:0 auto}.case-gallery__figure{margin:0}.case-gallery__image img{width:100%;height:auto;border-radius:var(--radius-md);display:block}.case-gallery__figure figcaption{margin-top:var(--space-2);font-size:var(--fs-small);color:var(--bbg-text-muted);text-align:center}.case-cta-wrap{padding:var(--space-8) 0}.case-cta{background:var(--bbg-ink);color:var(--bbg-white);padding:var(--space-7) var(--space-6);border-radius:var(--radius-md);text-align:center}.case-cta .eyebrow--on-dark{color:#9ddbf5;display:inline-block;margin-bottom:var(--space-3)}.case-cta__title{font-size:clamp(1.6rem,2vw + 1rem,2.25rem);color:var(--bbg-white);margin:0 0 var(--space-3)}.case-cta__lead{color:#ffffffd9;max-width:56ch;margin:0 auto var(--space-5)}.case-cta__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:center}.case-cta__btn-primary{background:var(--bbg-blue);color:var(--bbg-white);border:1px solid var(--bbg-blue)}.case-cta__btn-primary:hover{background:var(--bbg-blue-dark);border-color:var(--bbg-blue-dark)}.case-cta__btn-ghost{color:var(--bbg-white);border:1px solid rgba(255,255,255,.3)}.case-cta__btn-ghost:hover{border-color:var(--bbg-white);background:#ffffff0d}
