/* Blog Ativas — stylesheet externo (CSP: sem estilo inline). */
.blog-cats-wrap{position:relative}
.blog-f{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.blog-cats{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 48px}
.blog-cats label{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border:1px solid var(--line);border-radius:999px;font-family:var(--fh);font-size:13.5px;font-weight:600;letter-spacing:.02em;color:var(--tx);cursor:pointer;background:#fff;transition:background .15s,color .15s,border-color .15s}
.blog-cats label:hover{border-color:var(--g8);color:var(--g8)}
.blog-cats label:focus-within,.blog-f:focus-visible + .blog-cats label{outline:2px solid var(--g7);outline-offset:3px}
#bf-todos:checked ~ .blog-cats label[for="bf-todos"],
#bf-nr:checked ~ .blog-cats label[for="bf-nr"],
#bf-pgr:checked ~ .blog-cats label[for="bf-pgr"],
#bf-pcmso:checked ~ .blog-cats label[for="bf-pcmso"],
#bf-esocial:checked ~ .blog-cats label[for="bf-esocial"],
#bf-confeccao:checked ~ .blog-cats label[for="bf-confeccao"]{background:var(--g8);border-color:var(--g8);color:#fff}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
.blog-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:4px;color:var(--ink);text-decoration:none;overflow:hidden;transition:border-color .15s,box-shadow .15s}
.blog-card:hover{border-color:var(--g8);box-shadow:0 8px 28px rgba(20,58,36,.08);color:var(--ink)}
.blog-card .thumb{display:block;position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;background:var(--bg2);min-height:0;flex:0 0 auto}
.blog-card .thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.blog-card .body{display:flex;flex-direction:column;flex:1;padding:22px 22px 24px}
.blog-card .cat{font-family:var(--fh);font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--g8)}
.blog-card h2{font-size:22px;letter-spacing:var(--ls2);line-height:1.25;margin:10px 0 12px;max-width:none;text-wrap:pretty}
.blog-card:hover h2{color:var(--g8)}
.blog-card .excerpt{color:var(--mut);font-size:16px;line-height:1.55;flex:1;margin:0}
.blog-card .meta{margin-top:18px;font-size:13.5px;color:var(--mut)}
.blog-card .more{margin-top:14px;font-family:var(--fh);font-weight:600;font-size:14.5px;color:var(--g8)}
.blog-empty{display:none;grid-column:1/-1;padding:28px 4px 8px;color:var(--mut);font-size:17px}
#bf-nr:checked ~ .blog-grid .blog-card:not([data-cat~="nr-legislacao"]),
#bf-pgr:checked ~ .blog-grid .blog-card:not([data-cat~="pgr-laudos"]),
#bf-pcmso:checked ~ .blog-grid .blog-card:not([data-cat~="saude-pcmso"]),
#bf-esocial:checked ~ .blog-grid .blog-card:not([data-cat~="esocial-sst"]),
#bf-confeccao:checked ~ .blog-grid .blog-card:not([data-cat~="setor-confeccao"]){display:none}
#bf-pcmso:checked ~ .blog-grid .blog-empty-pcmso{display:block}
.pg.blog-list{padding-top:8px;padding-bottom:88px}
.blog-list-note{margin:-8px 0 36px;color:var(--mut);font-size:16.5px;max-width:62ch}
.byline time{font-style:normal;color:var(--mut)}

/* Blocos do artigo */
.blog-resumo,.blog-fonte,.blog-vale{margin:0 0 28px;padding:22px 24px;border:1px solid var(--line);background:var(--bg2)}
.blog-fonte{border-left:4px solid var(--g8);background:#fff}
.blog-resumo{border-left:4px solid var(--g8)}
.blog-vale{border-left:4px solid var(--g8)}
.blog-resumo h2,.blog-fonte h2,.blog-vale h2{font-size:15px!important;letter-spacing:.08em;text-transform:uppercase;color:var(--g8);margin:0 0 10px!important;max-width:none}
.blog-resumo ul{margin:0;padding-left:1.15em}
.blog-resumo li{margin:0 0 6px;font-size:17px}
.blog-resumo li:last-child{margin-bottom:0}
.blog-fonte p,.blog-vale p{margin:0 0 10px;font-size:17px;color:var(--tx)}
.blog-fonte p:last-child,.blog-vale p:last-child{margin-bottom:0}
.blog-fonte a,.blog-vale a{font-weight:600}
.blog-dates{display:flex;flex-wrap:wrap;gap:8px 22px;margin:14px 0 0;font-size:14.5px;color:var(--mut)}
.article .content .blog-resumo,
.article .content .blog-fonte,
.article .content .blog-vale{max-width:none}

@media (max-width:980px){
  .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){
  .blog-grid{grid-template-columns:1fr;gap:20px}
  .blog-cats{gap:8px;margin-bottom:32px}
  .blog-cats label{min-height:36px;padding:0 13px;font-size:12.5px}
  .blog-card h2{font-size:20px}
  .blog-resumo,.blog-fonte,.blog-vale{padding:18px 16px}
}
