/* Doctora Cati — Blog Styles */
.blog-header { background: linear-gradient(135deg, var(--color-teal-dark), var(--color-teal)); padding: 4rem 0; text-align: center; color: white; }
.blog-header h1 { color: white; margin-bottom: 0.5rem; }
.blog-header p { opacity: 0.85; font-size: 1.05rem; }

.blog-layout { display: grid; grid-template-columns: 1fr 320px; gap: 3rem; padding: 4rem 0; }
.blog-posts-list { display: flex; flex-direction: column; gap: 3rem; }
.blog-post-card-lg { background: var(--color-white); border-radius: var(--radius-lg); border: 1px solid var(--color-border); overflow: hidden; }
.blog-post-lg-image { aspect-ratio: 21/9; overflow: hidden; background: var(--color-cream-dark); }
.blog-post-lg-image img { width: 100%; height: 100%; object-fit: cover; }
.blog-post-lg-body { padding: 2.5rem; }
.blog-post-lg-meta { display: flex; gap: 1.5rem; font-size: 0.88rem; color: var(--color-gray-light); margin-bottom: 1rem; }
.blog-post-lg-title { font-size: 1.8rem; margin-bottom: 1rem; }
.blog-post-lg-excerpt { font-size: 0.98rem; color: var(--color-gray); margin-bottom: 1.5rem; line-height: 1.7; }

.blog-sidebar { display: flex; flex-direction: column; gap: 2rem; }
.sidebar-widget { background: var(--color-white); padding: 1.5rem; border-radius: var(--radius-md); border: 1px solid var(--color-border); }
.sidebar-widget h3 { font-size: 1.1rem; margin-bottom: 1rem; color: var(--color-teal-dark); font-family: var(--font-heading); border-bottom: 2px solid var(--color-border); padding-bottom: 0.5rem; }
.sidebar-categories li { border-bottom: 1px solid var(--color-border); }
.sidebar-categories a { display: flex; justify-content: space-between; padding: 0.6rem 0; font-size: 0.88rem; }
.sidebar-categories a:hover { color: var(--color-teal); }
.sidebar-posts-list { display: flex; flex-direction: column; gap: 1rem; }
.sidebar-post-item { display: flex; gap: 0.75rem; align-items: center; }
.sidebar-post-img { width: 60px; height: 60px; border-radius: var(--radius-sm); object-fit: cover; background: var(--color-cream-dark); }
.sidebar-post-title { font-family: var(--font-accent); font-size: 0.92rem; line-height: 1.3; }

@media (max-width: 992px) {
  .blog-layout { grid-template-columns: 1fr; }
}
