.home-blog-section { background: #fff; }
.home-blog-heading { margin-bottom: 18px; }
.home-blog-carousel { display: grid; grid-auto-columns: minmax(260px, 31.5%); grid-auto-flow: column; gap: 16px; overflow-x: auto; padding: 2px; scroll-snap-type: x mandatory; -ms-overflow-style: none; scrollbar-width: none; }
.home-blog-carousel::-webkit-scrollbar { display: none; }
.home-blog-card { display: flex; min-width: 0; flex-direction: column; overflow: hidden; border: 1px solid #e4e4e7; border-radius: 13px; background: #fff; box-shadow: 0 4px 14px rgb(24 24 27 / .04); scroll-snap-align: start; }
.home-blog-card-media { display: block; height: 168px; overflow: hidden; background: #f4f4f5; }
.home-blog-card-media img { width: 100%; height: 100%; object-fit: cover; transition: transform .24s ease; }
.home-blog-card:hover .home-blog-card-media img { transform: scale(1.035); }
.home-blog-card-media > span { display: grid; width: 100%; height: 100%; place-items: center; color: #a1a1aa; }
.home-blog-card-media .lucide-menu-icon { width: 28px; height: 28px; }
.home-blog-card-content { display: flex; min-height: 0; padding: 15px; flex: 1; flex-direction: column; }
.home-blog-card-meta { display: flex; gap: 8px; color: #71717a; font-size: .68rem; font-weight: 700; }
.home-blog-card-meta span + span::before { margin-right: 8px; color: #d4d4d8; content: '•'; }
.home-blog-card-content h3 { margin: 9px 0 0; color: #27272a; font-size: .95rem; line-height: 1.35; }
.home-blog-card-content h3 a { color: inherit; text-decoration: none; }
.home-blog-card-content h3 a:hover { color: var(--brand-primary); }
.home-blog-card-content p { display: -webkit-box; margin: 7px 0 0; overflow: hidden; color: #71717a; font-size: .75rem; line-height: 1.55; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.home-blog-card-link { display: inline-flex; margin-top: 10px; align-items: center; gap: 6px; color: var(--brand-primary); font-size: .75rem; font-weight: 800; text-decoration: none; }
.home-blog-card-link .lucide-menu-icon { width: 14px; height: 14px; }
@media (max-width: 899px) { .home-blog-carousel { grid-auto-columns: minmax(255px, 82vw); margin-right: -16px; padding-right: 16px; } .home-blog-card-media { height: 158px; } }
@media (prefers-reduced-motion: reduce) { .home-blog-card-media img { transition: none; } }
