/* Sourced project stories, distinct from visual style references. */
.case-intro,.case-style-heading p{max-width:800px;color:#555d63;font-size:17px;margin:20px 0 28px}
.case-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.case-card{min-width:0;display:flex;flex-direction:column;border:1px solid #d8e0e7;border-radius:14px;overflow:hidden;background:#fff}
.case-card-image{display:block;aspect-ratio:4/3;overflow:hidden}
.case-card-image img{width:100%;height:100%;object-fit:cover}
.case-card>div{padding:24px;display:flex;flex-direction:column;flex:1}
.case-card h3{font-size:24px;line-height:1.2;margin:12px 0}
.case-card p{color:#555d63;font-size:15px;margin-bottom:20px}
.case-card .text-link{margin-top:auto;min-height:44px;display:inline-flex;align-items:center}
.case-style-heading{padding-top:48px;border-top:1px solid #d8e0e7}
.case-style-heading h2{font-size:clamp(28px,4vw,44px);line-height:1.15}
.case-hero{padding:40px 0 0;background:#f4f1ea}
.case-hero .breadcrumbs{margin-bottom:28px}
.case-hero h1{max-width:1040px;font-size:clamp(32px,4.3vw,56px);line-height:1.12;margin:18px 0}
.case-hero .lead{max-width:840px;font-size:18px;color:#3b4d5c}
.case-credit{font-size:14px;color:#475b6b;margin:18px 0 30px}
.case-credit a,.case-summary a{text-decoration:underline;text-underline-offset:4px}
.case-cover{margin:0}
.case-cover img{width:100%;max-height:620px;object-fit:cover;display:block;border-radius:14px}
.case-cover figcaption{font-size:14px;line-height:1.6;padding:14px 0;color:#475b6b}
.case-body{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(240px,1fr);gap:64px}
.case-body h2,.case-next h2{font-size:clamp(27px,3vw,38px);line-height:1.2;margin:18px 0}
.case-body p,.case-body li,.case-next p{font-size:17px;line-height:1.75;color:#475b6b}
.case-body ul{padding-left:22px;margin:20px 0}
.case-body li{padding:6px 0}
.case-insight{padding:24px;border-left:4px solid #b94716;background:#f4f1ea;margin:30px 0}
.case-insight h3{font-size:24px;margin-bottom:10px}
.case-summary{align-self:start;border:1px solid #d8e0e7;border-radius:14px;padding:26px;background:#fff}
.case-summary h2{font-size:24px;margin-top:0}
.case-summary dt{font-size:13px;color:#596777;margin-top:18px}
.case-summary dd{margin:4px 0 18px;font-size:17px}
.case-summary p{font-size:14px;margin:22px 0 0}
.case-photos{padding-bottom:30px}
.case-photos>.shell{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.case-photos figure{margin:0;min-width:0}
.case-photos img{width:100%;height:auto;max-height:720px;object-fit:contain;border-radius:12px;background:#f0f3f5}
.case-photos figcaption{font-size:14px;line-height:1.6;margin-top:12px;color:#475b6b}
.case-next{background:#edf1f4}
.case-next p{max-width:820px}
@media(max-width:900px){.case-card-grid{grid-template-columns:1fr}.case-body{grid-template-columns:1fr;gap:28px}.case-card{display:grid;grid-template-columns:1fr 1fr}.case-card-image{aspect-ratio:auto;height:100%;min-height:260px}}
@media(max-width:600px){.case-hero{padding-top:30px}.case-card{display:flex}.case-card-image{height:220px;min-height:0}.case-card>div{padding:22px}.case-cover img{max-height:440px}.case-photos>.shell{grid-template-columns:1fr}.case-hero .lead{font-size:17px}.case-summary{padding:22px}.case-hero h1{font-size:32px}.case-body,.case-card-grid{gap:22px}}
.case-hero .breadcrumbs{color:#475b6b}
