/* assets/blog.css — complementa o site.css: cards do blog + tipografia de artigo */

.blog-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:1px;
  background:var(--line);border:1px solid var(--line);border-radius:14px;overflow:hidden;
}
@media(max-width:980px){.blog-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.blog-grid{grid-template-columns:1fr}}

.blog-card{
  display:flex;flex-direction:column;background:var(--paper);
  transition:background .2s var(--ease);position:relative;
}
.blog-card::before{
  content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent);
  transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease);z-index:1;
}
.blog-card:hover{background:var(--paper-2)}
.blog-card:hover::before{transform:scaleX(1)}
.blog-card-img{display:block;aspect-ratio:16/9;overflow:hidden;border-bottom:1px solid var(--line)}
.blog-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s var(--ease)}
.blog-card:hover .blog-card-img img{transform:scale(1.03)}
.blog-card-body{display:flex;flex-direction:column;gap:10px;padding:26px 28px 28px;flex:1}
.blog-card-date{font-size:12px;color:var(--accent);letter-spacing:.04em}
.blog-card-title{
  font-family:var(--font-head);font-weight:600;font-size:19px;line-height:1.25;
  letter-spacing:-.012em;color:var(--ink);
}
.blog-card-resumo{color:var(--muted);font-size:15px;line-height:1.55}
.blog-card .link{
  margin-top:auto;display:inline-flex;align-items:center;gap:7px;
  font-weight:600;font-size:14.5px;color:var(--accent);padding-top:8px;
}
.blog-card .link svg{transition:transform .2s var(--ease)}
.blog-card:hover .link svg{transform:translateX(4px)}

.blog-pag{display:flex;gap:8px;justify-content:center;margin-top:40px;font-size:14px}
.blog-pag a,.blog-pag .atual{
  display:inline-grid;place-items:center;min-width:38px;height:38px;border-radius:9px;
  border:1px solid var(--line);
}
.blog-pag a:hover{border-color:var(--muted-2);background:var(--paper-2)}
.blog-pag .atual{background:var(--ink);color:var(--paper);border-color:var(--ink)}

/* ---- tipografia do artigo (conteúdo do TinyMCE) ---- */
.artigo{max-width:720px}
.artigo-capa{margin:0 0 36px}
.artigo-capa img{width:100%;border-radius:14px;border:1px solid var(--line)}
.artigo p{margin:0 0 1.25em;font-size:17.5px;line-height:1.7;color:#2A2A30}
.artigo h2{
  font-family:var(--font-head);font-weight:600;font-size:clamp(24px,2.8vw,30px);
  letter-spacing:-.018em;line-height:1.15;margin:1.8em 0 .6em;
}
.artigo h3{
  font-family:var(--font-head);font-weight:600;font-size:21px;
  letter-spacing:-.012em;margin:1.5em 0 .5em;
}
.artigo a{color:var(--accent);font-weight:500;text-decoration:underline;text-underline-offset:3px}
.artigo ul,.artigo ol{margin:0 0 1.25em;padding-left:1.3em}
.artigo li{margin-bottom:.4em;line-height:1.65;color:#2A2A30}
.artigo blockquote{
  margin:1.6em 0;padding:4px 0 4px 22px;border-left:3px solid var(--accent);
  font-family:var(--font-head);font-weight:600;font-size:19px;line-height:1.45;color:var(--ink);
}
.artigo img{max-width:100%;height:auto;border-radius:12px;border:1px solid var(--line);margin:1.4em 0}
.artigo table{width:100%;border-collapse:collapse;margin:1.4em 0;font-size:15.5px}
.artigo th,.artigo td{border:1px solid var(--line);padding:10px 13px;text-align:left}
.artigo th{background:var(--paper-2);font-family:var(--font-mono);font-size:12.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.artigo code{font-family:var(--font-mono);font-size:.92em;background:var(--paper-2);border:1px solid var(--line);border-radius:5px;padding:1px 6px}
