time {
  font-style: italic;
  font-size: .75rem;
  color: gray;
}

.blog-page {
  .blog-section-title {
    text-align: left;
    font-size: 1.5rem;
    margin-bottom: 10px;
    font-weight: 300;
    line-height: 1.25;
  }

  .blog-list {
    .post-item {
      margin-bottom: 14px;

      .post-description {
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        text-overflow: ellipsis;
        margin-top: 4px;
      }

      .blog-list-image-col {
        width: 100px;
      }

      .post-title {
        text-align: left;
        font-size: 1rem;
        font-weight: bold;
        line-height: 1.2;
        color: var(--color-gray-one);

        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        text-overflow: ellipsis;
      }

      .post-thumb-image {
        /*max-width: 200px;
        max-height: 100px;*/
        width: 100%;
        margin: 5px 0;
        box-shadow: 0 0 2px 1px rgba(0, 0, 0, .3);
      }

      .btn-read-more {
        display: inline-block;
        margin-top: 4px;
        color: var(--color-red-one);
      }
    }

    time {
      font-style: italic;
      font-size: .75rem;
      color: gray;
    }
  }

  .blog-related {
    display: none;

    .related-post-item {
      margin-bottom: 1.25rem;

      .post-title {
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 2;
        line-clamp: 2;
        text-overflow: ellipsis;

        a {
          color: var(--color-gray-one);
          text-decoration: underline;
        }
      }

      .post-description {
        overflow: hidden;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
        line-clamp: 3;
        text-overflow: ellipsis;
      }
    }
  }
}

.blog-post-page {
  .post-title {
    text-align: left;
    font-size: 2rem;
    line-height: 1.2;
    padding-top: 40px;
    padding-bottom: 10px;
    margin-bottom: 0;
  }

  .post-main-image {
    max-width: 680px;
    max-height: 350px;
    width: 100%;
  }

  time {
    font-style: italic;
    font-size: 1rem;
    color: gray;
  }

  .post-content {
    font-size: 1rem;
  }
}

@media (min-width: 64em) {
  .blog-page {
    .blog-list {
      .post-item {
        margin-bottom: 20px;

        .blog-list-image-col {
          width: 100px;
        }

        .post-title {
          font-size: 1.2rem;
        }

        .post-description {
          -webkit-line-clamp: 3;
          line-clamp: 3;
        }
      }
    }

    .blog-related {
      display: initial;
    }
  }
}