:root {
  --impact-accent: var(--color-accent);
  --impact-text: var(--color-primary);
  --impact-muted: #4b4b4b;
  --impact-border: rgba(17, 17, 17, 0.08);
  --impact-divider: rgba(17, 17, 17, 0.05);
  --impact-bg: rgba(255, 255, 255, 0.78);

  --impact-radius: clamp(0.75rem, 1vw, 1rem);
  --impact-pad-x: clamp(1.5rem, 4vw, 4.5rem);
  --impact-pad-y: clamp(1.75rem, 3.5vw, 3rem);
  --impact-gap: clamp(1.5rem, 3vw, 3rem);
}

.impact-metrics {
  width: min(calc(100% - 2rem), 96rem);
  margin-inline: auto;

  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));

  border: 1px solid var(--impact-border);
  border-radius: var(--impact-radius);
  background: var(--impact-bg);
  overflow: hidden;

  box-shadow:
    0 1px 1px rgba(0, 0, 0, 0.01),
    0 10px 30px rgba(73, 92, 124, 0.025);

  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.impact-metric {
  position: relative;

  min-width: 0;
  padding:
    var(--impact-pad-y)
    var(--impact-pad-x);

  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
}

.impact-metric:not(:last-child)::after {
  content: "";
  position: absolute;

  top: 24%;
  right: 0;
  bottom: 24%;

  width: 1px;
  background: var(--impact-divider);
}

.impact-metric__top {
  display: flex;
  align-items: center;
  gap: clamp(0.85rem, 1.4vw, 1.25rem);
}

.impact-metric__icon {
  width: clamp(1.8rem, 2.4vw, 2.4rem);
  height: clamp(1.8rem, 2.4vw, 2.4rem);

  flex: 0 0 auto;
  color: var(--impact-accent);
}

.impact-metric__value {
  margin: 0;

  color: var(--impact-text);
  font-family:
    Inter,
    "Helvetica Neue",
    Helvetica,
    Arial,
    sans-serif;

  font-size: clamp(1.75rem, 2.25vw, 2.3rem);
  font-weight: 300;
  line-height: 1;
  letter-spacing: -0.045em;
}

.impact-metric__label {
  margin:
    clamp(1.25rem, 2vw, 1.7rem)
    0
    0;

  color: var(--impact-muted);
  font-family:
    Inter,
    "Helvetica Neue",
    Helvetica,
    Arial,
    sans-serif;

  font-size: clamp(0.95rem, 1.15vw, 1.15rem);
  font-weight: 400;
  line-height: 1.45;
  letter-spacing: -0.018em;
}

/* Medium */
@media (max-width: 1100px) {
  .impact-metrics {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .impact-metric:nth-child(2)::after {
    display: none;
  }

  .impact-metric:nth-child(-n + 2) {
    border-bottom: 1px solid var(--impact-divider);
  }
}

/* Small */
@media (max-width: 640px) {
  .impact-metrics {
    width: min(calc(100% - 1.25rem), 32rem);
    grid-template-columns: 1fr;
  }

  .impact-metric {
    padding:
      clamp(1.4rem, 6vw, 1.8rem)
      clamp(1.25rem, 6vw, 1.6rem);
  }

  .impact-metric::after {
    display: none;
  }

  .impact-metric:not(:last-child) {
    border-bottom: 1px solid var(--impact-divider);
  }

  .impact-metric__label br {
    display: none;
  }
}

/* Respect user motion/transparency preferences */
@media (prefers-reduced-transparency: reduce) {
  .impact-metrics {
    background: #ffffff;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}