/* Shared project facts and draft results, using the site's existing type scale. */
.case-page .case-facts{grid-column:1;grid-row:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--grid-gap);align-self:start;min-width:0;font-size:var(--type-body);line-height:1.4}
.case-facts dl,.case-facts dd{margin:0}
.case-facts dl>div+div{margin-top:32px}
.case-facts dt{color:var(--muted);font-weight:500}
.case-facts dd{color:var(--fg)}
.case-page .case-overview .overview-copy{grid-row:1}
.case-results{margin-top:var(--section-space)}
.case-result-group h2{margin:0 0 var(--section-title-space);font-size:var(--type-section-title);font-weight:500;line-height:1.12;letter-spacing:-.025em;color:var(--fg)}
.case-result-group+.case-result-group{margin-top:64px}
.case-results-rail{display:flex;gap:var(--grid-gap);width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;cursor:grab;touch-action:pan-x pan-y;user-select:none;-webkit-user-select:none}
.case-results-rail::-webkit-scrollbar{display:none}
.case-results-rail:focus-visible{outline:2px solid var(--fg);outline-offset:8px;border-radius:var(--media-radius)}
.case-results-rail.is-dragging{cursor:grabbing;scroll-snap-type:none;scroll-behavior:auto}
.case-results-rail.is-wheel-scrubbing{scroll-snap-type:none;scroll-behavior:auto}
.results-scroll-stage{position:relative;display:flow-root;min-width:0}
.results-scroll-pin{position:sticky!important;top:var(--results-pin-top,0px)!important;align-self:start}
.result-card{flex:0 0 calc((100% - 3 * var(--grid-gap)) / 4);min-width:0;min-height:220px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;gap:48px;scroll-snap-align:start;background:var(--secondary-surface);border:0;border-radius:var(--media-radius)}
.result-value{margin:0;color:var(--fg);font-size:var(--type-page-title);font-weight:500;line-height:1.05;letter-spacing:-.035em}
.result-copy h3{margin:0;color:var(--fg);font-size:var(--type-subheading);font-weight:500;line-height:1.2;letter-spacing:-.02em}
.result-description{margin:20px 0 0;color:var(--muted);font-size:var(--type-body);line-height:1.4}
.case-result-group[aria-labelledby="impact-heading"] .result-card{min-height:360px}
@media(min-width:651px) and (max-width:1000px){.result-card{flex-basis:calc((100% - var(--grid-gap)) / 2)}}
@media(max-width:650px){
 .case-page .case-facts{grid-column:1;grid-row:auto;gap:var(--grid-gap);margin-bottom:16px}
 .case-page .case-overview .overview-copy{grid-row:auto}
 .case-facts dl>div+div{margin-top:24px}
 .case-result-group+.case-result-group{margin-top:48px}
 .result-card{flex-basis:82%;min-height:200px;padding:24px}
 .case-result-group[aria-labelledby="impact-heading"] .result-card{min-height:320px}
}

.case-result-group h2{display:flex;align-items:baseline;gap:12px}
.results-draft-label{font-size:var(--type-body);line-height:1.4;letter-spacing:0;color:var(--muted)}

.case-results{scroll-margin-top:calc(var(--header-height,80px) + 32px)}

/* Give Impact figures 1.5 times their previous top inset at every breakpoint. */
.case-results .result-card{padding-top:36px}

/* Counter numerals inherit the original Helvetica Now Display typography. */
.result-value .impact-counter-number{font:inherit;letter-spacing:inherit;font-variant-numeric:inherit;font-feature-settings:inherit}
.impact-counter-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Keep the accessible counter label inside its horizontally scrolling card. */
.result-value{position:relative}
