/* =====================================================================
	BLOGS PAGE
	Editorial hero, insight cards, metadata, and empty-state presentation.
	===================================================================== */
.blog-hero { padding:96px 24px 82px; background:#0B1233; color:#fff; }
.blog-hero h1 { max-width:800px; margin:18px 0 14px; font-size:clamp(38px,5vw,64px); line-height:1.02; }
.blog-hero h1 em { color:#7FA0FF; font-style:normal; }
.blog-hero p { max-width:680px; color:#d8e7ff; font-size:17px; line-height:1.7; }
.blog-list { background:#f5f7fe; padding-top:48px; padding-bottom:52px; }
.blog-list .section-head { margin:0 auto 28px; }
.blog-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.blog-card { display:flex; flex-direction:column; overflow:hidden; border:1px solid #dfe5f0; border-radius:18px; background:#fff; box-shadow:0 14px 34px rgba(15,27,61,.07); }
.blog-card-media { height:210px; background:#e8f2fb; overflow:hidden; }
.blog-card-media img { width:100%; height:100%; object-fit:cover; }
.blog-card-placeholder { display:flex; align-items:center; justify-content:center; height:100%; color:var(--brand-blue); font-size:42px; }
.blog-card-body { display:flex; flex:1; flex-direction:column; padding:24px; }
.blog-category { margin-bottom:9px; color:#0876cc; font-size:11px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.blog-card h3 { margin:0 0 10px; color:var(--text-dark); font-size:23px; line-height:1.2; }
.blog-meta { margin-bottom:12px; color:var(--label-gray); font-size:12px; }
.blog-card p { margin:0 0 18px; color:#5d6d86; line-height:1.65; }
.blog-tags { display:flex; flex-wrap:wrap; gap:7px; margin:0; padding:0; list-style:none; }
.blog-tags li { padding:6px 9px; border-radius:7px; background:#edf3ff; color:var(--brand-blue); font-size:11px; }
.blog-card-link { display:inline-flex; gap:8px; margin-top:auto; padding-top:20px; color:var(--brand-blue); font-weight:700; }
.blog-empty { padding:48px 24px; border:1px dashed #cbd6e8; color:var(--label-gray); text-align:center; }
.blog-cta { height:auto; padding:40px 24px; }
.blog-cta .cta-inner { height:auto; }
@media (max-width:900px) { .blog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:640px) { .blog-hero { padding:70px 18px 58px; }.blog-list { padding:32px 18px 40px; }.blog-grid { grid-template-columns:1fr; gap:18px; }.blog-card-body { padding:20px; }.blog-cta { padding:28px 18px; } }

/* =====================================================================
	BLOG POST DETAIL PAGE
	Article hero, breadcrumb, rich content column, tag/CTA panel, related.
	===================================================================== */
.blog-detail-hero { padding:90px 24px; background:#0B1233; color:#fff; }
.blog-detail-hero .section-inner { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.8fr); gap:60px; align-items:center; }
.blog-detail-hero .breadcrumb { font-size:.85rem; color:rgba(255,255,255,.6); margin-bottom:18px; }
.blog-detail-hero .breadcrumb a { color:#9FB4FF; text-decoration:none; }
.blog-detail-hero .breadcrumb a:hover { color:#fff; }
.blog-detail-hero .breadcrumb .current { color:#fff; font-weight:600; }
.blog-detail-hero .breadcrumb span { margin:0 6px; }
.blog-detail-hero-copy h1 { max-width:700px; margin:18px 0 14px; font-size:clamp(32px,4.5vw,54px); line-height:1.06; }
.blog-detail-meta { color:#d8e7ff; font-size:13px; }
.blog-detail-hero-image { min-height:320px; border-radius:8px; overflow:hidden; background:#18244b; box-shadow:0 30px 70px rgba(3,19,57,.3); }
.blog-detail-hero-image img { display:block; width:100%; height:100%; min-height:320px; object-fit:cover; }
.blog-detail-body { padding-top:84px; padding-bottom:84px; }
.blog-detail-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr); gap:70px; }
.blog-rich-copy { color:#3a4a63; font-size:16px; line-height:1.85; }
.blog-rich-copy p { margin:0 0 22px; }
.blog-detail-panel { align-self:start; padding:28px; border:1px solid #dfe5f0; border-radius:16px; background:#f5f7fe; }
.blog-detail-panel .blog-tags { margin:12px 0 0; }
.blog-detail-panel-cta { margin-top:24px; padding-top:24px; border-top:1px solid #dfe5f0; }
.blog-detail-panel-cta h3 { margin:0 0 8px; font-size:19px; color:var(--text-dark); }
.blog-detail-panel-cta p { margin:0 0 16px; color:var(--label-gray); font-size:13.5px; line-height:1.6; }
.blog-related { padding-top:40px; }
@media (max-width:900px) {
	.blog-detail-hero .section-inner,.blog-detail-grid { grid-template-columns:1fr; gap:34px; }
	.blog-detail-hero-image { display:none; }
}
@media (max-width:640px) {
	.blog-detail-hero { padding:60px 18px; }
	.blog-detail-body { padding-top:54px; padding-bottom:54px; }
	.blog-detail-hero-copy h1 { font-size:clamp(28px,4vw,40px); }
}
