.contacts {
  display: flex;
  flex-direction: column;
  margin-top: 16px;

  &__item {
    background: $white;
    padding: 16px;
    border-radius: 4px;

    & + & {
      margin-top: 16px;
    }
  }

  &__header {
    display: flex;
    align-items: center;
  }

  &__icon {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;

    .icon {
      color: $blue-satin;
      font-size: 1.35rem;
      height: auto;
    }
  }

  &__title {
    font-size: 1.125rem;
    font-style: normal;
    font-weight: 500;
    line-height: 1.5rem;
    margin-bottom: 0;
  }

  &__description {
    font-size: .875rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.375rem;
    margin-top: 8px;
    margin-bottom: 0;
  }

  &__links {
    list-style-type: none;
    padding-left: 0;
    margin-top: 16px;
    margin-bottom: 0;

    .link {
      font-weight: 500;
    }

    li + li {
      margin-top: 16px;
    }
  }

  &__link {
    margin-top: 16px;
    font-weight: 500;
    text-decoration: none;
    display: flex;
    align-items: center;
  }

  .btn {
    margin-top: 16px;
  }
}

@include media-breakpoint-up(sm) {
  .contacts {
    margin-top: 0;
  }
}

@include media-breakpoint-up(md) {
  .contacts {
    flex-direction: row;
    grid-gap: 24px;

    &__item {
      flex: 1;
      justify-content: space-between;
      display: flex;
      flex-direction: column;
      align-items: flex-start;

      & + & {
        margin-top: 0;
      }
    }

    &__description {
      margin-top: 16px;
      margin-bottom: auto;
    }

    &__icon {
      width: 48px;
      height: 48px;

      .icon {
        font-size: 2rem;
      }
    }
  }
};

@include media-breakpoint-up(lg) {
  .contacts__item {
    padding: 24px;
  }
}
