/* Ajustes restritos ao blog: escala tipografica e alinhamento. */
.blog-grid{align-items:stretch}
.blog-grid .blog-card{display:flex;flex-direction:column;height:100%}
.blog-grid .blog-card .content{display:flex;flex-direction:column;align-items:flex-start;flex:1}
.blog-grid .blog-card h2{font-size:clamp(1.08rem,1.45vw,1.3rem);line-height:1.35;letter-spacing:-.01em;margin:10px 0 9px}
.blog-grid .blog-card p{font-size:.92rem;line-height:1.65;margin-bottom:0}
.blog-grid .blog-meta{margin-top:auto;padding-top:14px;line-height:1.45;flex-wrap:wrap}
.post-header{max-width:820px}
.post-header h1{font-size:clamp(1.65rem,2.6vw,2.2rem)!important;line-height:1.2;letter-spacing:-.015em;text-wrap:balance}
.post-header .blog-meta{line-height:1.5;flex-wrap:wrap;row-gap:5px}
article.post{max-width:820px;font-size:1rem;line-height:1.75}
article.post h2{font-size:clamp(1.35rem,1.9vw,1.65rem);line-height:1.3;margin-top:38px;margin-bottom:13px;text-wrap:balance}
article.post h3{font-size:clamp(1.08rem,1.45vw,1.25rem);line-height:1.35;margin-top:26px}
article.post p,article.post li{line-height:1.75}
@media (max-width:640px){
  .blog-grid{grid-template-columns:1fr;gap:20px}
  .blog-grid .blog-card h2{font-size:1.12rem}
  .post-header h1{font-size:clamp(1.5rem,7vw,1.85rem)!important}
  .post-header .blog-meta{justify-content:center;gap:6px 12px}
  article.post{font-size:.97rem;line-height:1.7}
  article.post h2{font-size:1.32rem;margin-top:32px}
  article.post h3{font-size:1.08rem}
}
