/*
 * Blog Page Styles
 */

  
 .blog-post__grid {
    font-size: 16px;
    padding-top: 0;
    padding-bottom: 2em;
    margin-bottom:0;
  }
  
  .blog-post__article {
    display: flex;
    flex-direction: column;
    position: relative;
    font-size: 1em;
    border-top: 1px solid #dee2e6;
    padding: 1em 0;
  }
  
  .blog-post__article:first-of-type .blog-post__content {
    width: 100%;
  }
  
  .blog-post__article h2.blog-post__header__title {
    font-size: 1.8em;
    margin: 1em 0;
  }
  
  .blog-post__thumbnail {
    width: 100%;
    padding-top: 56%;
    overflow: hidden;
    position: relative;
  }
  
  .blog-post__link {
    text-decoration:none;
  }
  
  .blog-post__thumbnail img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    min-width: 100%;
    min-height: 100%;
    transition: all 0.3s ease-in-out;
  }
  
  .blog-post__header, .blog-post__summary {
    padding-top: 1em;
    padding-left: 0.3em;
    padding-right: 0.3em;
  }
  
  .blog-post__article {
    transition: all 0.3s ease-in-out;
  }
  
  .blog-post__article::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    background: #f5f5f5;
    z-index: -1;
    transition: all 0.3s ease-in-out;
  }
  
  .blog-post__article:hover::before {
    height: 100%;
  }
  
  .blog-post__header__date {
    color: #264F49;
    margin: 0;
    text-transform: uppercase;
  }
  
  h3.blog-post__header__title {
    font-size: 1.55em;
    margin-top: 0.5em;
    font-weight: 400;
  }
  
  .blog-post__header__title a,
  .blog-post__header__title a:hover,
  .blog-post__header__title a:visited,
  .blog-post__header__title a:active,
  .blog-post__header__title a:focus {
    text-decoration: none;
    color: #264F49;
  }
  
  @media screen and (max-width: 976px) {
    .teaser__content,
    .blog-post__content {
      font-size: 0.8em;
    }
  }
  
  @media screen and (max-width: 768px) {
    .teaser__content,
    .blog-post__content {
      font-size: 0.65em;
    }
  }
  
  @media screen and (min-width: 768px) {
    .blog-post__grid {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 0;
    }
    
      .blog-post__article:nth-of-type(2n + 2) {
            border-right: solid 1px #dee2e6;
            padding-right: 1em;
          }
          
          .blog-post__article:nth-of-type(2n + 1) {
            padding-left: 1em;
          }
          
          .blog-post__article:nth-last-child(1),
          .blog-post__article:nth-last-child(2) {
            border-bottom: 1px solid #dee2e6;
          }
          
  
    .blog-post__article:first-of-type {
                    position: relative;
            grid-column-start: 1;
            grid-column-end: 3;
      grid-column-start: 1;
      grid-column-end: 3;
      flex-direction: row;
                  align-items: center;
            margin-bottom: 1.5vw;
            border: 0;
            padding: 0;
    }
  
    .blog-post__article:first-of-type .blog-post__summary,
    .blog-post__article:first-of-type .blog-post__header {
      padding: 0 1.3em;
    }
  
    .blog-post__article:first-of-type .blog-post__content {
      width: 100%;
      padding: 1em 0;
    }
  
    .blog-post__article:first-of-type .blog-post__thumbnail {
      /* width: 66%;
      padding-top: 40%; */
      width: 60%;
      padding-top: 37%;
      overflow: hidden;
      position: relative;
    }
  
    .blog-post__article:first-of-type .blog-post__thumbnail a {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
    }
  
    .blog-post__article:first-of-type .blog-post__content {
      width: 40%;
    }
  
    .blog-post__article:first-of-type .blog-post__summary,
    .blog-post__article:first-of-type .blog-post__header {
      padding: 0 1em 0 2em;
    }
  }
  
  @media screen and (min-width: 1140px) {
    .blog-post__article h2.blog-post__header__title {
      font-size: 1.8em;
      margin: 1em 0;
    }
  }