/* SCSS Framework boilerplate from Ristretto: https://github.com/kylelarkin/ristretto */
* {
  box-sizing: border-box;
}

body, select, input, textarea {
  color: #333;
}

::-moz-selection {
  background: #ccc;
  color: #000;
  text-shadow: none;
}

::selection {
  background: #ccc;
  color: #000;
  text-shadow: none;
}

a:link {
  -webkit-tap-highlight-color: transparent;
}

ins {
  background-color: #ccc;
  color: #000;
  text-decoration: none;
}

mark {
  background-color: #ccc;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

.post-query ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
  display: grid;
  gap: 1.5rem;
  margin-bottom: 2rem;
}
@media (min-width: 768px) {
  .post-query ul {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .post-query ul {
    grid-template-columns: repeat(3, 1fr);
  }
}
.post-query ul li {
  position: relative;
  height: 100%;
  display: grid;
  grid-template-rows: auto 1fr;
}
.post-query ul li img {
  aspect-ratio: 3/2;
  object-fit: cover;
}
.post-query ul li .post-details {
  border-top: 9px solid #2AABE2;
  background-color: #fff;
  filter: drop-shadow(0px 4px 4px rgba(0, 0, 0, 0.25));
  padding: 1rem 1.5rem 1.25rem;
  transition: all 0.5s ease;
  display: grid;
  align-content: start;
  grid-template-rows: auto auto auto 1fr auto;
}
.post-query ul li .post-details:focus-within {
  filter: none;
  filter: drop-shadow(0px 1px 1px rgba(0, 0, 0, 0.125));
}
@media (min-width: 768px) {
  .post-query ul li .post-details {
    padding: 1.8rem 2rem;
  }
}
.post-query ul li p.blog-categories {
  margin: 0 0 0.1875rem;
  grid-row: 1;
}
.post-query ul li p.blog-categories span {
  color: #2AABE2;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 1.3px;
  line-height: 1.076; /* 107.692% */
  text-transform: uppercase;
}
.post-query ul li p.blog-categories span + span:before {
  content: "| ";
}
.post-query ul li h2 {
  grid-row: 2;
  font-size: 1.375rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.2px;
  line-height: 1.4;
  margin-bottom: 0.1875rem;
  margin-top: 2rem;
}
.post-query ul li h2 a {
  text-decoration: none;
}
.post-query ul li h2 a:focus {
  outline: 0;
}
.post-query ul li .blog-categories + h2 {
  margin-top: 0;
}
.post-query ul li p.post-date {
  grid-row: 3;
  font-size: 0.8125rem;
  color: #999;
  text-transform: uppercase;
  letter-spacing: 0.65px;
  margin-bottom: 1.1875rem;
}
.post-query ul li .post-excerpt {
  grid-row: 4;
  font-size: 0.875rem;
  line-height: 1.7857142857;
  margin-bottom: 2rem;
}
.post-query ul li a.post-link {
  grid-row: 5;
  font-size: 0.875rem;
  text-transform: uppercase;
  font-weight: 700;
  text-decoration: none;
  display: flex;
  gap: 0.5rem;
  letter-spacing: 0.75px;
  align-items: center;
}
.post-query ul li a.post-link svg {
  font-size: 1rem;
  position: relative;
  left: 0px;
  transition: left 0.25s ease;
}
.post-query ul li a.post-link:hover svg {
  left: 2px;
}
.post-query ul li a.post-link:focus {
  outline: 0;
  color: #1A4D6E;
}
