/* News Grid — post cards with date badge, title, excerpt, author & reading time */

.news-grid__list {
   display: grid;
   grid-template-columns: 1fr;
   gap: 24px;
}

.news-grid__item {
   display: flex;
   flex-direction: column;
   background-color: #fff;
   border: 1px solid #e5e7eb;
   border-radius: 8px;
   overflow: hidden;
   transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.news-grid__item:hover {
   box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
   transform: translateY(-2px);
}

.news-grid__media {
   position: relative;
   display: block;
   overflow: hidden;
   background-color: #ececec;
}

.news-grid__media img {
   display: block;
   width: 100%;
   height: 190px;
   object-fit: cover;
   transition: transform 0.35s ease;
}

.news-grid__item:hover .news-grid__media img {
   transform: scale(1.05);
}

.news-grid__date-badge {
   position: absolute;
   top: 12px;
   left: 12px;
   z-index: 2;
   display: inline-flex;
   align-items: center;
   gap: 6px;
   background-color: #fff;
   color: #e2231a;
   font-size: 12px;
   font-weight: 600;
   padding: 6px 10px;
   border-radius: 20px;
   box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
}

.news-grid__date-icon {
   flex: 0 0 auto;
   color: #e2231a;
}

.news-grid__date-text {
   color: #16213e;
}

.news-grid__body {
   display: flex;
   flex-direction: column;
   flex: 1;
   padding: 16px;
}

.news-grid__title {
   margin: 0 0 8px;
   font-size: 16px;
   line-height: 1.4;
   font-weight: 700;
   display: -webkit-box;
   -webkit-line-clamp: 2;
   -webkit-box-orient: vertical;
   overflow: hidden;
   text-align: left;
}

.news-grid__title a {
   color: #16213e;
   text-decoration: none;
}

.news-grid__title a:hover {
   text-decoration: underline;
}

.news-grid__excerpt {
   margin: 0 0 16px;
   font-size: 13px;
   line-height: 1.6;
   color: #6b7280;
   display: -webkit-box;
   -webkit-line-clamp: 1;
   -webkit-box-orient: vertical;
   overflow: hidden;
   text-align: left;
}

.news-grid__meta {
   display: flex;
   align-items: center;
   gap: 8px;
   margin-top: auto;
   font-size: 12px;
   color: #6b7280;
}

.news-grid__author {
   color: #16213e;
   font-weight: 600;
   text-decoration: none;
}

.news-grid__author:hover {
   text-decoration: underline;
}

.news-grid__separator {
   color: #d1d5db;
}

/* Tablet */
@media (min-width: 640px) {
   .news-grid__list--cols-2,
   .news-grid__list--cols-3,
   .news-grid__list--cols-4 {
      grid-template-columns: repeat(2, 1fr);
   }
}

/* Desktop */
@media (min-width: 1024px) {
   .news-grid__list--cols-2 {
      grid-template-columns: repeat(2, 1fr);
   }

   .news-grid__list--cols-3 {
      grid-template-columns: repeat(3, 1fr);
   }

   .news-grid__list--cols-4 {
      grid-template-columns: repeat(4, 1fr);
   }
}
