/* ============================================================
   blog.css — estilos do Diário (blog)
   Usa as variáveis globais definidas em /styles.css (:root)
   ============================================================ */

.blog-wrap{max-width:980px;margin:0 auto;padding:120px var(--mx) 90px;}

/* voltar */
.blog-back{display:inline-block;margin-bottom:40px;font-size:11px;font-weight:600;
  letter-spacing:.1em;text-transform:uppercase;color:var(--muted);transition:color .2s;}
.blog-back:hover{color:var(--red);}

/* cabeçalho do índice */
.blog-head{border-bottom:1px solid var(--line-d);padding-bottom:34px;margin-bottom:14px;}
.blog-kicker{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--red);display:block;margin-bottom:14px;}
.blog-head h1{font-size:clamp(34px,7vw,68px);letter-spacing:-.03em;line-height:.98;margin:0 0 16px;}
.blog-head p{color:var(--text);opacity:.78;font-size:16px;line-height:1.6;max-width:60ch;margin:0;}

/* lista de posts */
.post-list{list-style:none;margin:0;padding:0;}
.post-list li{border-bottom:1px solid var(--line-d);}
.post-row{display:grid;grid-template-columns:88px 1fr auto;gap:24px;align-items:baseline;
  padding:30px 6px;text-decoration:none;color:inherit;transition:background .25s,padding .25s;}
.post-row:hover{background:rgba(255,255,255,.03);padding-left:18px;padding-right:18px;}
.post-row .p-idx{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--red);padding-top:6px;}
.post-row .p-main{min-width:0;}
.post-row h2{font-size:clamp(20px,3.2vw,28px);letter-spacing:-.02em;line-height:1.12;margin:0 0 8px;}
.post-row:hover h2{color:var(--red);}
.post-row .p-dek{color:var(--muted);font-size:14.5px;line-height:1.55;margin:0;max-width:62ch;}
.post-row .p-meta{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  color:var(--faint);white-space:nowrap;padding-top:6px;}
.post-row .arr{color:var(--faint);transition:transform .25s,color .25s;display:inline-block;}
.post-row:hover .arr{color:var(--red);transform:translate(3px,-3px);}

.blog-empty{color:var(--muted);padding:50px 0;font-size:15px;}

/* ============================================================
   Artigo (post individual)
   ============================================================ */
.article{max-width:720px;margin:0 auto;padding:120px var(--mx) 100px;}
.article .blog-back{margin-bottom:36px;}

.article-head{margin-bottom:46px;}
.article-tag{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
  color:var(--red);display:block;margin-bottom:16px;}
.article-head h1{font-size:clamp(30px,5.4vw,50px);letter-spacing:-.025em;line-height:1.04;margin:0 0 18px;}
.article-dek{font-size:18px;line-height:1.5;color:var(--text);opacity:.82;
  font-family:var(--serif);font-style:italic;margin:0 0 24px;}
.article-meta{display:flex;gap:18px;flex-wrap:wrap;align-items:center;
  font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--faint);
  border-top:1px solid var(--line-d);border-bottom:1px solid var(--line-d);padding:16px 0;}
.article-meta .by{color:var(--muted);font-weight:600;}

/* corpo do texto — legibilidade + bom pra GEO (estrutura clara) */
.article-body{font-size:17px;line-height:1.72;color:var(--text);opacity:.92;}
.article-body > *{opacity:1;}
.article-body p{margin:0 0 22px;}
.article-body h2{font-size:24px;letter-spacing:-.015em;line-height:1.2;margin:46px 0 16px;
  padding-top:6px;}
.article-body h3{font-size:18px;letter-spacing:-.01em;margin:34px 0 12px;color:var(--text);}
.article-body a{color:var(--red);font-weight:600;text-decoration:none;
  border-bottom:1px solid rgba(255,7,58,.4);}
.article-body a:hover{border-bottom-color:var(--red);}
.article-body strong{color:#fff;font-weight:700;}
.article-body em{color:var(--red);font-style:normal;}
.article-body ul,.article-body ol{margin:0 0 22px;padding-left:22px;}
.article-body li{margin-bottom:10px;}
.article-body blockquote{margin:30px 0;padding:6px 0 6px 24px;border-left:3px solid var(--red);
  font-family:var(--serif);font-style:italic;font-size:20px;line-height:1.45;color:var(--text);}
.article-body hr{border:none;border-top:1px solid var(--line-d);margin:44px 0;}
.article-body .lead{font-size:19px;line-height:1.6;opacity:.95;}

/* bloco FAQ — ajuda muito em SEO/GEO (rich results + citação por IAs) */
.faq{margin-top:56px;border-top:1px solid var(--line-d);padding-top:40px;}
.faq h2{font-size:24px;letter-spacing:-.015em;margin:0 0 24px;}
.faq-item{border-bottom:1px solid var(--line-d);padding:20px 0;}
.faq-item h3{font-size:17px;margin:0 0 10px;color:#fff;letter-spacing:-.005em;}
.faq-item p{margin:0;color:var(--text);opacity:.82;font-size:15.5px;line-height:1.65;}

/* CTA fim do artigo */
.article-cta{margin-top:56px;border:1px solid var(--line-d);border-radius:4px;
  padding:34px;text-align:center;background:var(--bg2);}
.article-cta p{font-size:17px;line-height:1.5;margin:0 0 20px;color:var(--text);opacity:.9;}
.article-cta a{display:inline-block;background:var(--red);color:#fff;font-weight:700;
  font-size:13px;letter-spacing:.06em;text-transform:uppercase;padding:14px 26px;
  border-radius:3px;text-decoration:none;transition:transform .18s,opacity .18s;}
.article-cta a:hover{transform:translateY(-2px);opacity:.92;}

@media (max-width:640px){
  .post-row{grid-template-columns:1fr auto;gap:14px 16px;}
  .post-row .p-idx{display:none;}
  .post-row .p-meta{grid-column:1 / -1;padding-top:2px;}
}
