.soimpra-counter-grid {
  display: grid;
  grid-template-columns: repeat(var(--soimpra-columns-desktop, 4), minmax(0, 1fr));
  column-gap: 34px;
  row-gap: 110px;
  margin: 84px 0 128px;
  width: 100%;
}

.soimpra-counter-item {
  display: grid;
  grid-template-columns: 46px minmax(0, 1fr);
  align-items: start;
  min-width: 0;
}

.soimpra-counter-icon {
  box-sizing: border-box;
  width: 14px;
  height: 14px;
  margin: 15px 0 0 4px;
  border-top: 3px solid #e52b2f;
  border-right: 3px solid #e52b2f;
  transform: rotate(45deg);
}

.soimpra-counter-icon.is-hidden {
  visibility: hidden;
}

.soimpra-counter-copy,
.soimpra-counter-number,
.soimpra-counter-title,
.soimpra-counter-subtitle {
  display: block;
}

.soimpra-counter-number {
  color: #102131;
  font-family: Montserrat, Arial, sans-serif;
  font-size: clamp(32px, 2.5vw, 44px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -0.035em;
  font-variant-numeric: tabular-nums;
}

.soimpra-counter-title,
.soimpra-counter-subtitle {
  color: #777;
  font-family: Montserrat, Arial, sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.75;
  text-transform: capitalize;
}

.soimpra-counter-title {
  margin-top: 7px;
}

@media (max-width: 1024px) {
  .soimpra-counter-grid {
    grid-template-columns: repeat(var(--soimpra-columns-tablet, 2), minmax(0, 1fr));
    row-gap: 64px;
    margin: 64px 0 96px;
  }
}

@media (max-width: 640px) {
  .soimpra-counter-grid {
    grid-template-columns: repeat(var(--soimpra-columns-mobile, 1), minmax(0, 1fr));
    row-gap: 42px;
    margin: 48px 0 72px;
  }

  .soimpra-counter-item {
    grid-template-columns: 38px minmax(0, 1fr);
  }
}

@media (prefers-reduced-motion: reduce) {
  .soimpra-counter-number {
    scroll-behavior: auto;
  }
}

