/* ── Blog Hero ───────────────────────────────────────────── */
.blog-hero {
  background: linear-gradient(135deg, #1a4fba, #2d6cf0);
  color: #fff; padding: 3.5rem 0 2.5rem; text-align: center;
}
.blog-hero h1 { font-size: 2rem; margin-bottom: .5rem; }
.blog-hero p  { opacity: .85; margin-bottom: 1.5rem; }

/* ── Blog Layout ─────────────────────────────────────────── */
.blog-layout { display: grid; grid-template-columns: 1fr 300px; gap: 2.5rem; align-items: start; }
.blog-sidebar { position: sticky; top: calc(var(--navbar-h) + 1rem); display: flex; flex-direction: column; gap: 1.5rem; }

/* ── Featured post ───────────────────────────────────────── */
.blog-featured__img { width: 100%; aspect-ratio: 16/7; object-fit: cover; }
.blog-featured__title { font-size: 1.3rem; font-weight: 800; margin: .75rem 0 .5rem; }
.blog-featured__title a:hover { color: var(--primary); }
.blog-featured__excerpt { font-size: .93rem; color: var(--gray-600); margin-bottom: .75rem; }

/* ── Blog card extras ────────────────────────────────────── */
.blog-cat-tag {
  display: inline-block; padding: .2rem .7rem; border-radius: 2rem;
  background: var(--primary-light); color: var(--primary);
  font-size: .76rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: .05em; margin-bottom: .5rem;
  text-decoration: none;
}
.blog-cat-tag:hover { background: var(--primary); color: #fff; }
.blog-meta {
  display: flex; gap: .85rem; flex-wrap: wrap;
  font-size: .8rem; color: var(--gray-500);
}
.blog-meta i { margin-inline-end: .25rem; }

/* ── Sidebar widgets ─────────────────────────────────────── */
.blog-widget {
  background: #fff; border-radius: var(--radius-xl);
  box-shadow: var(--shadow); padding: 1.25rem;
}
.blog-widget__title {
  font-size: .88rem; font-weight: 700; text-transform: uppercase;
  letter-spacing: .06em; color: var(--gray-500);
  margin-bottom: 1rem; padding-bottom: .5rem;
  border-bottom: 2px solid var(--primary-light);
}
.blog-cat-list { display: flex; flex-direction: column; gap: .3rem; }
.blog-cat-list a {
  padding: .45rem .6rem; border-radius: var(--radius-sm);
  font-size: .9rem; color: var(--gray-700); transition: all var(--transition);
}
.blog-cat-list a:hover, .blog-cat-list a.active {
  background: var(--primary-light); color: var(--primary); padding-inline-start: 1rem;
}
.blog-recent-item { display: flex; gap: .65rem; margin-bottom: .85rem; align-items: flex-start; }
.blog-recent-item:last-child { margin-bottom: 0; }
.blog-recent-item__img { width: 58px; height: 46px; object-fit: cover; border-radius: var(--radius-sm); flex-shrink: 0; }
.blog-recent-item__title { font-size: .85rem; font-weight: 600; color: var(--gray-800); display: block; line-height: 1.3; }
.blog-recent-item__title:hover { color: var(--primary); }
.blog-recent-item__date { font-size: .75rem; color: var(--gray-400); margin-top: .2rem; display: block; }

.blog-widget--cta {
  background: linear-gradient(135deg, #1a4fba, #2d6cf0); color: #fff;
}
.blog-widget--cta .blog-widget__title { color: rgba(255,255,255,.7); border-color: rgba(255,255,255,.2); }
.blog-widget--cta h4 { font-size: 1rem; margin-bottom: .4rem; color: #fff; }
.blog-widget--cta p  { font-size: .87rem; opacity: .85; margin-bottom: 1rem; }
.blog-widget--cta .btn { background: #fff; color: var(--primary); }

/* ── Blog Post Page ──────────────────────────────────────── */
.blog-post__layout { display: grid; grid-template-columns: 1fr 280px; gap: 2.5rem; align-items: start; }
.blog-post__header { margin-bottom: 1.5rem; }
.blog-post__header h1 { font-size: 1.7rem; font-weight: 800; margin: .6rem 0 .75rem; }
.blog-post__cover { width: 100%; border-radius: var(--radius-xl); margin-bottom: 2rem; aspect-ratio: 16/8; object-fit: cover; }
.blog-post__body {
  font-size: .97rem; line-height: 1.85; color: var(--gray-800);
}
.blog-post__body h2 { font-size: 1.3rem; font-weight: 700; margin: 2rem 0 .75rem; }
.blog-post__body h3 { font-size: 1.1rem; font-weight: 700; margin: 1.5rem 0 .6rem; }
.blog-post__body p  { margin-bottom: 1.1rem; }
.blog-post__body ul, .blog-post__body ol { padding-inline-start: 1.5rem; margin-bottom: 1.1rem; }
.blog-post__body li { margin-bottom: .4rem; }
.blog-post__body a  { color: var(--primary); text-decoration: underline; }
.blog-post__body img { max-width: 100%; border-radius: var(--radius); margin: 1rem 0; }
.blog-post__body blockquote {
  border-inline-start: 4px solid var(--primary); padding: .75rem 1.25rem;
  margin: 1.5rem 0; background: var(--primary-light);
  border-radius: 0 var(--radius) var(--radius) 0; font-style: italic;
}

.blog-post__share {
  display: flex; align-items: center; gap: .6rem; flex-wrap: wrap;
  margin-top: 2.5rem; padding-top: 1.5rem;
  border-top: 2px solid var(--gray-100);
  font-size: .88rem; color: var(--gray-500); font-weight: 600;
}

/* ── Responsive ──────────────────────────────────────────── */
@media (max-width: 900px) {
  .blog-layout       { grid-template-columns: 1fr; }
  .blog-post__layout { grid-template-columns: 1fr; }
  .blog-sidebar      { position: static; }
}
