/* Uniform card grid for /blogs */
.blog-grid .col-card { margin-bottom: 1.5rem; }

.blog-card { border: 1px solid rgba(0,0,0,.06); border-radius: .5rem; overflow: hidden; transition: box-shadow .2s ease, transform .2s ease; }
.blog-card:hover { box-shadow: 0 8px 24px rgba(0,0,0,.08); transform: translateY(-2px); cursor: pointer; }

.blog-card-img { width: 100%; aspect-ratio: 16/9; object-fit: cover; background: #f8f9fa; display: block; }

.blog-card .card-body { display: flex; flex-direction: column; padding: 1rem 1rem .75rem; }
.blog-card-title { font-size: 1.125rem; font-weight: 600; margin: 0 0 .25rem; line-height: 1.2; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.blog-card-subtitle { color: #6c757d; font-size: .95rem; margin: 0 0 .75rem; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

.blog-card .card-footer { background: #fff; border-top: none; padding: 0 1rem 1rem; margin-top: auto; }
.blog-card-date { color: #6c757d; font-size: .875rem; }

@media (min-width: 992px) {
  .blog-card-title { font-size: 1.15rem; }
}

