.post-list {
  max-width: 900px;
  margin: 2rem auto;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.5rem;
}

.post {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 2px 10px rgba(0,0,0,0.1);
  overflow: hidden;
  transition: transform 0.2s;
}

.post:hover { transform: translateY(-4px); }

.post img {
  width: 100%;
  height: 180px;
  object-fit: cover;
}

.post-content { padding: 1rem; }

.post-content h2 {
  font-size: 1.2rem;
  color: #222;
  margin: 0 0 0.5rem;
}

.post-content p {
  color: #666;
  font-size: 0.9rem;
}
