.post-grid__list {
  margin-top: 48rem;
}
@media (max-width: 1024px) {
  .post-grid__list {
    margin-top: 40rem;
  }
}
@media (max-width: 640px) {
  .post-grid__list {
    margin-top: 32rem;
  }
}
.post-grid__link {
  display: block;
}
@media (hover: hover) {
  .post-grid__link:focus .post-grid__bottom::before, .post-grid__link:hover .post-grid__bottom::before {
    transform-origin: left bottom;
    transform: scaleX(1);
  }
}
.post-grid__image {
  position: relative;
  overflow: hidden;
  aspect-ratio: 1/1;
}
.post-grid__image:has(img[src=""]), .post-grid__image:not(:has(img)) {
  background: url("/uploads/media/2026/06/logo.svg") no-repeat var(--color-lg) center center/60% auto;
}
.post-grid__image-thumb {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.post-grid__bottom {
  display: flex;
  justify-content: space-between;
  gap: 20rem;
  position: relative;
  padding-top: 20rem;
  margin-top: 28rem;
}
.post-grid__bottom::before, .post-grid__bottom::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  transition: transform 0.5s;
}
.post-grid__bottom::before {
  background-color: var(--color-primary);
  transform-origin: right bottom;
  transform: scaleX(0);
  z-index: 10;
}
.post-grid__bottom::after {
  background-color: var(--color-border);
}