/* Estilos específicos do blog (complementam o blog.css / design system) */

.b-header {
  position: sticky; top: 0; z-index: 50;
  background: rgba(11, 39, 35, .96); backdrop-filter: blur(8px);
  border-bottom: 1px solid rgba(255,255,255,.08);
}
.b-header-inner { display: flex; align-items: center; gap: 1.5rem; min-height: 72px; }
.b-header .brand img { height: 42px; width: auto; }
.b-nav { margin-left: auto; }
.b-nav ul { display: flex; gap: 1.6rem; list-style: none; padding: 0; margin: 0; }
.b-nav a { color: #e7efeb; font-weight: 500; font-size: .98rem; }
.b-nav a:hover, .b-nav a[aria-current="page"] { color: var(--gold-400); }
@media (max-width: 780px) { .b-nav { display: none; } }

.b-hero { background: var(--green-800); color: #fff; padding-block: clamp(2.5rem, 6vw, 4rem); }
.b-hero h1 { color: #fff; }
.b-hero .crumbs { font-size: .9rem; color: #a9c1b8; margin-bottom: 1rem; }
.b-hero .crumbs a { color: var(--gold-400); }
.b-meta { color: #cdddd6; font-size: .95rem; margin-top: .8rem; display: flex; gap: 1rem; flex-wrap: wrap; align-items: center; }
.b-cat { background: var(--gold-500); color: #241606; padding: .2rem .7rem; border-radius: 999px; font-weight: 600; font-size: .82rem; }

/* Listagem */
.b-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
@media (max-width: 900px) { .b-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px) { .b-grid { grid-template-columns: 1fr; } }
.b-card { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--line); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow-sm); transition: transform .18s ease, box-shadow .18s ease; }
.b-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-md); }
.b-card-img { aspect-ratio: 16/9; object-fit: cover; width: 100%; background: var(--gold-100); }
.b-card-body { padding: 1.3rem; display: flex; flex-direction: column; flex: 1; }
.b-card .b-cat { align-self: flex-start; margin-bottom: .6rem; }
.b-card h2 { font-size: 1.2rem; margin-bottom: .5rem; }
.b-card p { font-size: .95rem; flex: 1; }
.b-card .b-date { color: var(--ink-500); font-size: .85rem; margin-top: 1rem; }

/* Artigo */
.b-article { max-width: 760px; margin-inline: auto; }
.b-article img { border-radius: var(--radius); margin-block: 1.5rem; }
.b-article h2 { font-size: 1.6rem; margin-top: 2rem; margin-bottom: .6rem; }
.b-article h3 { font-size: 1.3rem; margin-top: 1.5rem; margin-bottom: .5rem; }
.b-article p { margin-bottom: 1.1rem; font-size: 1.05rem; }
.b-article ul, .b-article ol { margin-bottom: 1.1rem; padding-left: 1.4rem; }
.b-article li { margin-bottom: .5rem; }
.b-article a { color: var(--green-700); text-decoration: underline; }
.b-article blockquote { border-left: 4px solid var(--gold-500); padding: .5rem 1.2rem; margin: 1.5rem 0; background: var(--gold-100); border-radius: 0 8px 8px 0; }
.b-article strong { color: var(--green-800); }

.b-cta-box { background: var(--green-800); color: #fff; border-radius: var(--radius); padding: 2rem; text-align: center; margin-top: 2.5rem; }
.b-cta-box h3 { color: #fff; margin-bottom: .8rem; }
.b-cta-box p { color: #cdddd6; margin-bottom: 1.2rem; }

.b-empty { text-align: center; padding: 3rem 1rem; color: var(--ink-500); }
