
.case-process {padding-block:48px}
.case-process .section-heading {margin-bottom:12px}
.case-process > p {max-width:66ch;color:var(--muted)}
.case-process .work-list {
  list-style:none;margin:30px 0 0;padding:0;display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;counter-reset:roadmap;
}
.case-process .work-list > li {
  position:relative;counter-increment:roadmap;padding:62px 16px 16px;
  background:#edf1e8;border-radius:12px;min-width:0;
}
.case-process .work-list > li::before {
  content:counter(roadmap,decimal-leading-zero);position:absolute;z-index:1;top:12px;left:16px;
  width:36px;height:36px;display:grid;place-items:center;background:#314d39;color:white;
  border-radius:50%;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;
}
.case-process .work-list > li:not(:last-child)::after {
  content:"";position:absolute;top:29px;left:34px;width:calc(100% + 16px);height:2px;background:#94aa92;
}
.case-process .work-list h3 {font-size:19px;line-height:1.25;margin:0 0 10px}
.case-process .work-list p {font-size:14px;line-height:1.5;margin:0 0 8px}
.case-process .work-list .eyebrow {color:#314d39;font-size:12px;font-weight:700}
.historical-context {padding-block:22px}
.niche-summary {padding:20px 24px;background:#edf1e8;border:1px solid #d3ded0;border-radius:12px}
.niche-summary h2 {font-size:20px;margin:0 0 14px}
.niche-summary ul {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:10px;list-style:none;padding:0;margin:0}
.niche-summary li {display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;padding:10px 12px;background:#f8f9f5;border-radius:7px}
.niche-summary strong {color:#314d39;font-variant-numeric:tabular-nums}
.niche-summary .metric-note {margin:12px 0 0;font-size:12px}
@media(max-width:900px){
 .case-process .work-list {grid-template-columns:1fr;gap:10px}
 .case-process .work-list > li {padding:16px 16px 16px 62px}
 .case-process .work-list > li::before {left:12px;top:16px}
 .case-process .work-list > li:not(:last-child)::after {top:34px;left:29px;width:2px;height:calc(100% + 10px)}
 .case-process {padding-block:32px}
 .niche-summary {padding:16px}
}
