.portfolio-page {
  .mod-list {
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
    flex-wrap: wrap;
    margin: 0 -15px 50px;

    list-style: none;

    @media (width < 1024px) {
      margin: 0 -10px 40px;
    }
  }

  .mod-list__item {
    flex: 0 0 calc(100% / 3 - 30px);
    max-width: 370px;
    padding: 0;
    margin: 0 15px 30px;

    background-color: var(--color-grey-extra-light);
    border-bottom: 2px solid var(--color-grey-light);

    transition: border-color .15s ease;

    @media (width < 1024px) {
      flex: 0 0 calc(100% / 3 - 20px);
      margin: 0 10px 20px;
    }

    @media (width < 768px) {
      flex: 0 0 calc(100% / 2 - 20px);
      margin: 0 10px 20px;
    }

    @media (width < 480px) {
      flex: 0 0 calc(100% / 1 - 20px);
      margin: 0 auto 20px;
    }

    & img {
      width: 100%;

      opacity: .92;

      transition: opacity .15s ease;
    }

    &:hover {
      border-color: var(--color-grey);

      & img {
        opacity: 1;
      }
    }
  }

  .mod-articles-category-title {
    display: block;
    padding: 20px 25px;
    margin: 0;

    color: var(--color-black-extra-light);
    font-size: 18px;
    font-weight: 600;
    text-decoration: none;

    @media (width < 1024px) {
      padding: 15px 20px;

      font-size: 16px;
    }

    @media (width < 480px) {
      padding: 10px 15px;
    }
  }
}
