.impact-page { --about-space: clamp(64px,8.333333vw,160px); }
.impact-section { padding: var(--about-space); background: #f2f2f2; }
.impact-wrap { max-width: 1600px; margin: auto; }
.impact-wrap > h2 { padding: 10px 0; margin: 0 0 var(--about-space); color: #2e2e2e; font-size: 60px; line-height: 68px; font-weight: 500; font-variation-settings: "wght" 500; letter-spacing: -.025em; }
.impact-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 80px 16px; }
.impact-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border-radius: 24px; background: white; }
.impact-card-media { aspect-ratio: 792 / 388; overflow: hidden; }
.impact-card-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 700ms cubic-bezier(.2,.7,.2,1); }
/* Updated Figma exports fill the 792 × 388 image frame. */
.impact-card-media-updated { position: relative; }
.impact-card-media-updated img { object-fit: fill; object-position: bottom; }
.impact-card-media-updated::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg, transparent 50%, rgba(0,0,0,.16)); }
@media (hover: hover) { .impact-card:hover .impact-card-media img { transform: scale(1.045); } }
.impact-card-body { display: flex; flex: 1; flex-direction: column; gap: 16px; padding: 32px; min-height: 520px; }
.impact-card-header { display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.impact-card-header h3 { margin: 0; color: #2e2e2e; font-size: 24px; line-height: 32px; font-weight: 500; font-variation-settings: "wght" 500; letter-spacing: -.015em; }
.impact-card-header img { display: block; flex-shrink: 0; object-fit: contain; max-width: 25%; }
.impact-card-rule { height: 1px; background: var(--stroke-color); }
.impact-card h4,.impact-card p { margin: 0; font-size: 16px; line-height: 24px; letter-spacing: -.015em; }
.impact-card h4 { color: #2e2e2e; font-weight: 500; font-variation-settings: "wght" 500; }
.impact-card p { color: #4e4e4e; font-weight: 400; }
.impact-card-story,.impact-card-result { display: flex; flex-direction: column; gap: 8px; }
.impact-card-story p + p { margin-top: 16px; }
.impact-motion-ready .impact-reveal { opacity: 0; filter: blur(10px); transform: translateY(72px); transition: opacity 800ms cubic-bezier(.22,1,.36,1), filter 1000ms cubic-bezier(.22,1,.36,1), transform 1000ms cubic-bezier(.22,1,.36,1); transition-delay: var(--impact-reveal-delay, 0ms); }
.impact-motion-ready .impact-reveal.is-visible { opacity: 1; filter: none; transform: none; }
/* Center the content row, then align the button to the copy's bottom edge. */
@media (min-width: 1200px) {
  .impact-page .about-contact-cta-card {
    display: grid;
    grid-template-columns: minmax(0, 800fr) minmax(0, 216fr);
    column-gap: 20.625%;
    align-content: center;
    align-items: end;
  }
  .impact-page .about-contact-cta-card .contact-copy { width: 100%; }
  .impact-page .about-contact-cta-card .contact-actions { align-self: end; justify-self: end; margin: 0; }
}
@media (max-width: 1199px) { .impact-card-body { padding: 24px; } .impact-card-header { flex-wrap: wrap; } .impact-wrap > h2 { font-size: 48px; line-height: 56px; } }
@media (max-width: 760px) { .impact-section { padding: 64px 24px; } .impact-grid { grid-template-columns: 1fr; gap: 40px; } .impact-card-body { min-height: 0; } .impact-wrap > h2 { font-size: 40px; line-height: 48px; margin-bottom: 48px; } }
@media (prefers-reduced-motion: reduce) { .impact-motion-ready .impact-reveal { opacity: 1; filter: none; transform: none; transition: none; } .impact-card-media img { transform: none !important; transition: none; } }
