/* Blog/Post cards grid */
.post-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
@media (max-width: 980px) {
  .post-cards { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .post-cards { grid-template-columns: 1fr; }
}

.post-card {
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 12px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  transition: transform 120ms ease, box-shadow 120ms ease, border-color 120ms ease;
}
.post-card:hover {
  transform: translateY(-2px);
  border-color: #d1d5db;
  box-shadow: 0 6px 20px rgba(2,6,23,0.06);
}

.post-card .thumb {
  display: block;
  width: 100%;
  background: #f8fafc;
}
.post-card .thumb img {
  display: block;
  width: 100%;
  height: 168px;
  object-fit: cover;
  background: #f1f5f9;
}

.post-card .post-info {
  padding: 12px 14px 14px;
}
.post-card .post-title {
  margin: 6px 0 6px;
  font-size: 16px;
  line-height: 1.35;
}
.post-card .post-title a {
  color: #0b1220;
  text-decoration: none;
}
.post-card .post-title a:hover {
  text-decoration: underline;
}
.post-card .post-excerpt {
  margin: 0;
  color: #475569;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* Utility: muted small text already present in theme, keep consistent */