.te-counter-card {
  z-index: 1;
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-gap: 60px;

  @media only screen and (min-width: 576px) and (max-width: 991px) {
    grid-template-columns: repeat(2, 1fr);
  }
  @include rmaxwd(575) {
    grid-template-columns: repeat(1, 1fr);
    grid-gap: 50px;
  }

  .te-counter-item {
    display: flex;
    gap: 20px;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: relative;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.20);
    padding: 50px 0;
    border-radius: 5px;

    &:hover {
      .icon {
          img {
            transform: rotateY(360deg);
            @include transition;
          }
      }
    }
    .icon {
      width: 100px;
      height: 100px;
      display: flex;
      align-items: center;
      justify-content: center;
      flex-shrink: 0;
      position: absolute;
      top: 0;
      transform: translateY(-50px);

      img {
        @include transition;
      }
    }
    .te-counter-title {
      display: flex;
      align-items: center;
      width: 100%;
      gap: 10px;
      flex-direction: column;

      .content {
        display: flex;
        flex-direction: column;
        gap: 10px;
      }
    }
    .number {
      font-family: $heading-font;
      font-weight: 900;
      font-size: 50px;
      line-height: 55px;
      text-align: center;
      color: $white;
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0;

      @include sm {
        font-size: 36px;
        line-height: 40px;
      }
    }
    .title {
      margin: 0;
      font-family: $heading-font;
      font-weight: 400;
      font-size: 18px;
      line-height: 24px;
      color: $white;
    }
    .text {
      margin: 0;
      color: $white;
    }
  }
}