/* ---- Blog-specific styles ---- */
.blog-hero{background:var(--vinho-dark);padding:100px 0 60px;text-align:center}
.blog-hero .eyebrow{font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--vinho-light);margin-bottom:12px}
.blog-hero h1{font-family:var(--ff-display);font-size:3rem;color:var(--white);font-weight:300}
.blog-hero h1 em{font-style:italic;color:var(--rose-mid)}

.blog-section{background:var(--rose-bg);padding:72px 0}

.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:28px}

.blog-card{background:var(--white);border-radius:2px;overflow:hidden;transition:transform .25s,box-shadow .25s;display:flex;flex-direction:column}
.blog-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(46,36,32,.12)}
.blog-card-img{aspect-ratio:16/9;overflow:hidden;background:var(--rose-mid)}
.blog-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.blog-card:hover .blog-card-img img{transform:scale(1.04)}
.blog-card-img-placeholder{width:100%;aspect-ratio:16/9;background:linear-gradient(135deg,var(--rose-mid),var(--vinho-light));display:flex;align-items:center;justify-content:center}
.blog-card-img-placeholder span{font-family:var(--ff-display);font-size:2rem;color:rgba(255,255,255,.4);font-style:italic}
.blog-card-body{padding:24px 26px 28px;flex:1;display:flex;flex-direction:column}
.blog-card-cat{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--vinho);margin-bottom:10px}
.blog-card-title{font-family:var(--ff-display);font-size:1.35rem;color:var(--neutro-dark);font-weight:400;line-height:1.35;margin-bottom:12px}
.blog-card-title a{color:inherit;text-decoration:none}
.blog-card-title a:hover{color:var(--vinho)}
.blog-card-excerpt{font-size:.88rem;color:var(--neutro-mid);line-height:1.65;flex:1;margin-bottom:16px}
.blog-card-footer{display:flex;align-items:center;justify-content:space-between}
.blog-card-date{font-size:.75rem;color:var(--neutro-light)}
.blog-card-link{font-size:.78rem;color:var(--vinho);text-decoration:none;letter-spacing:.06em}
.blog-card-link:hover{color:var(--vinho-dark)}

/* Sidebar */
.blog-sidebar{}
.sidebar-widget{background:var(--white);border-radius:2px;padding:24px;margin-bottom:20px}
.sidebar-widget h5{font-family:var(--ff-display);font-size:1.1rem;color:var(--vinho-dark);font-weight:400;margin-bottom:16px}
.cat-list{list-style:none;padding:0;margin:0}
.cat-list li{border-bottom:1px solid var(--rose-light);padding:8px 0}
.cat-list li:last-child{border-bottom:none}
.cat-list a{color:var(--neutro-mid);text-decoration:none;font-size:.88rem;display:flex;justify-content:space-between}
.cat-list a:hover{color:var(--vinho)}
.cat-list span{color:var(--neutro-light);font-size:.8rem}

/* Pagination */
.pagination-ec{display:flex;justify-content:center;gap:8px;margin-top:48px}
.page-btn{padding:8px 16px;border:1px solid var(--rose-mid);background:var(--white);color:var(--neutro-mid);text-decoration:none;font-size:.85rem;border-radius:2px;transition:all .2s}
.page-btn:hover,.page-btn.active{background:var(--vinho);color:var(--white);border-color:var(--vinho)}

.filter-bar{display:flex;align-items:center;gap:10px;margin-bottom:32px;flex-wrap:wrap}
.filter-btn{padding:7px 16px;border:1px solid var(--rose-mid);background:var(--white);color:var(--neutro-mid);text-decoration:none;font-size:.8rem;border-radius:20px;transition:all .2s}
.filter-btn:hover,.filter-btn.active{background:var(--vinho);color:var(--white);border-color:var(--vinho)}