/* Three panels: project details, role/story, continuation/impact. */
#projects .case-intro{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:auto;gap:clamp(24px,3vw,48px)}
#projects .case-intro .case-identity{display:flex;flex-direction:column;gap:22px;grid-column:1;grid-row:1;min-width:0}
#projects .case-intro .case-identity>*{grid-column:auto;grid-row:auto;margin:0}
#projects .case-intro .case-story{display:block;grid-column:2;grid-row:1;container-type:normal;min-width:0;max-width:none}
#projects .case-intro .case-copy{display:block;max-width:none}
#projects .case-intro .case-outcome{grid-column:3;grid-row:1;min-width:0;padding:0}
#projects .case-intro .case-role{margin:0 0 28px}
#projects .case-intro .case-outcome .case-results:first-child{margin-top:0}
@media(max-width:767px){
 #projects .case-intro{grid-template-columns:1fr;grid-template-rows:auto;gap:28px}
 #projects .case-intro .case-identity,#projects .case-intro .case-story,#projects .case-intro .case-outcome{grid-column:1;grid-row:auto}
 #projects .case-intro .case-outcome:empty{display:none}
}

/* Four results stay in two balanced columns, including narrow desktop panels. */
#projects .case-intro .results-row:has(> .result-stat:nth-child(4)){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}
#projects .case-intro .results-row .result-stat{width:auto;min-width:0}

/* Results use a fixed count-based grid and wrap inside their own cells. */
#projects .case-intro .case-outcome .case-results:first-child{border-top:0;padding-top:0;margin-top:0}
#projects .case-intro .results-row:has(> .result-stat:nth-child(3)):not(:has(> .result-stat:nth-child(4))){grid-template-columns:repeat(3,minmax(0,1fr));gap:24px 14px}
#projects .case-intro .case-copy,#projects .case-intro .case-results,#projects .case-intro .results-row{min-width:0;max-width:100%}
#projects .case-intro .case-copy p,#projects .case-intro .result-description{max-width:100%;overflow-wrap:anywhere;white-space:normal}
#projects .case-intro .result-number{max-width:100%;font-size:clamp(25px,2.5vw,42px)}
