.home-blog { padding: 70px 0 80px; background: #fff; }
.home-blog .heading { text-align: center; margin-bottom: 40px; }
.home-blog .heading .pretitle { color: #0d6efd !important; font-weight: 700; font-size: 13px; letter-spacing: 1.5px; text-transform: uppercase; margin-bottom: 8px; }
.home-blog .heading h2 { font-size: 30px; font-weight: 800; color: #0d2447 !important; margin: 0 0 12px; }
.home-blog .heading p { color: #5a6878 !important; max-width: 640px; margin: 0 auto; font-size: 15.5px; line-height: 1.6; }

.home-blog .blog-row { display: grid !important; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 1200px; margin: 0 auto; }
.home-blog .b-card { background: #fff; border: 1px solid #e8edf5; border-radius: 14px; overflow: hidden; box-shadow: 0 4px 18px rgba(20,60,100,0.06); transition: 0.25s; display: flex; flex-direction: column; }
.home-blog .b-card:hover { transform: translateY(-4px); box-shadow: 0 12px 32px rgba(20,60,100,0.12); border-color: #0d6efd; }
.home-blog .b-card .b-img { aspect-ratio: 16/10; background: #f0f5ff; overflow: hidden; }
.home-blog .b-card .b-img img { width: 100%; height: 100%; object-fit: cover; transition: 0.4s; }
.home-blog .b-card:hover .b-img img { transform: scale(1.05); }
.home-blog .b-card .b-body { padding: 22px 24px 24px; flex: 1; display: flex; flex-direction: column; }
.home-blog .b-card .b-meta { font-size: 12.5px; color: #5f6b7a !important; margin-bottom: 10px; }
.home-blog .b-card h3 { font-size: 17px; font-weight: 700; color: #1a1a1a !important; line-height: 1.4; margin: 0 0 12px; }
.home-blog .b-card h3 a { color: inherit !important; text-decoration: none; }
.home-blog .b-card h3 a:hover { color: #0d6efd !important; }
.home-blog .b-card p { font-size: 14px; color: #5a6878 !important; line-height: 1.6; margin: 0 0 16px; flex: 1; }
.home-blog .b-card .b-link { color: #0d6efd !important; font-weight: 700; font-size: 14px; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; transition: 0.2s; }
.home-blog .b-card .b-link:hover { gap: 10px; }
.home-blog .all-link-row { text-align: center; margin-top: 36px; }
.home-blog .all-link-row a { display: inline-flex; align-items: center; gap: 8px; padding: 12px 26px; background: #0d6efd; color: #fff !important; border-radius: 100px; font-weight: 700; text-decoration: none; transition: 0.2s; }
.home-blog .all-link-row a:hover { background: #0a58ca; transform: translateY(-1px); }

@media (max-width: 991px) { .home-blog .blog-row { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 640px) { .home-blog .blog-row { grid-template-columns: 1fr; } }
