/*
  Blog: lista (/blog/, home.php), categoria, busca, 404, página "Categorias" e post (single.php).
  Portado de blog/blog.css: classes com prefixo ks-, variáveis --ks-*, tudo escopado no
  wrapper .ks-site (aberto em parts/ks-header.php, fechado em parts/ks-footer.php).
  Seletores de elemento em :where(...), com a mesma especificidade do original.
  O HTML do conteúdo dos posts (CTAs, memes, figuras) usa classes ks-* e é estilizado só
  dentro de .ks-post-conteudo (seção "Conteúdo do post", mais abaixo).
  Base comum (variáveis, reset, botões, cabeçalho, rodapé, painel) em ks-base.css.
*/
body.ks-tela { min-height: 100vh; }

/* ---------- Estrutura ---------- */
.ks-blog-wrap { width: 100%; max-width: 640px; margin: 0 auto; padding: 0 24px; }
.ks-pill {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 12px 20px;
  border-radius: 999px;
  border: 1px solid rgba(17,24,29,.12);
  background: #ffffff;
  font-size: 14px; font-weight: 500;
  white-space: nowrap;
  transition: background .2s;
}
.ks-pill:hover { background: var(--ks-tile); }
.ks-pill-cta { background: var(--ks-ink); color: #fff; border-color: var(--ks-ink); }
.ks-pill-cta:hover { background: #1a2c2b; }

/* Cabeçalho de página */
.ks-cabeca { padding: 56px 0 32px; }
.ks-olho { font-size: 16px; color: var(--ks-ink-dim); margin-bottom: 18px; }
:where(.ks-site .ks-blog-wrap) h1 {
  font-size: clamp(38px, 10.5vw, 56px);
  font-weight: 500;
  letter-spacing: -0.04em;
  line-height: 1.02;
  overflow-wrap: break-word;
}
.ks-cabeca p.ks-sub { font-size: 19px; color: var(--ks-ink-dim); margin-top: 20px; max-width: 34ch; }
.ks-acoes { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }

/* Filtro de categorias (links de verdade pra /category/<slug>/) */
.ks-categorias { display: flex; gap: 8px; overflow-x: auto; scrollbar-width: none; margin: 0 -24px 20px; padding: 2px 24px; }
.ks-categorias::-webkit-scrollbar { display: none; }
.ks-categorias a { flex: none; font-size: 15px; font-weight: 500; line-height: 1.55; padding: 9px 16px; border-radius: 999px; border: 1px solid rgba(17,24,29,.14); background: #fff; color: var(--ks-ink); transition: background .2s; }
.ks-categorias a:hover { background: var(--ks-tile); }
.ks-categorias a.ks-ativa { background: var(--ks-ink); color: #fff; border-color: var(--ks-ink); }
.ks-categorias a.ks-ver-cat { border-color: transparent; background: none; color: var(--ks-ink-dim); }
.ks-cat-post { display: inline-block; margin-right: 6px; padding: 4px 10px; border-radius: 999px; background: var(--ks-gelo); color: var(--ks-ink); font-size: 13px; font-weight: 500; }

/* Lista de posts (cards de parts/ks-post-card.php, claros como no protótipo) */
.ks-lista { display: grid; gap: 16px; padding-bottom: 56px; }
.ks-post { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--ks-linha); border-radius: 22px; overflow: hidden; box-shadow: var(--ks-sombra); transition: transform .25s; }
.ks-post:hover { transform: translateY(-4px); }
.ks-post img { aspect-ratio: 1200 / 630; object-fit: cover; width: 100%; }
.ks-post .ks-post-corpo { padding: 18px 22px 22px; }
.ks-post small { color: var(--ks-teal); font-size: 14px; font-weight: 600; }
.ks-post .ks-post-titulo { font-size: 24px; font-weight: 500; letter-spacing: -0.04em; line-height: 1.05; margin: 6px 0 10px; }
.ks-post p { font-size: 15px; color: var(--ks-ink-dim); }

/* Paginação (the_posts_pagination, class ks-paginacao) */
.ks-paginacao { padding-bottom: 56px; }
.ks-paginacao .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.ks-paginacao .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; padding: 10px 16px; border-radius: 999px; border: 1px solid rgba(17,24,29,.14); background: #fff; font-size: 15px; font-weight: 500; }
.ks-paginacao a.page-numbers:hover { background: var(--ks-tile); }
.ks-paginacao .page-numbers.current { background: var(--ks-ink); color: #fff; border-color: var(--ks-ink); }
.ks-paginacao .page-numbers.dots { border-color: transparent; background: none; }
.ks-paginacao .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.ks-vazio { padding: 8px 0 56px; color: var(--ks-ink-dim); }
.ks-vazio p { margin-bottom: 18px; }

/* Página de categorias */
.ks-cat-grade { display: grid; gap: 16px; padding-bottom: 80px; }
.ks-cat-card {
  position: relative; isolation: isolate; overflow: hidden;
  display: flex; align-items: flex-end;
  min-height: 250px; border-radius: 22px;
  background: var(--ks-card); color: #fff;
  border: 1px solid rgba(17,24,29,.08);
  box-shadow: var(--ks-card-sombra);
  transition: transform .25s;
}
.ks-cat-card:hover { transform: translateY(-3px); }
.ks-cat-card img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; object-position: center 40%; transition: transform .5s; }
.ks-cat-card:hover img { transform: scale(1.04); }
.ks-cat-card::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(17,24,29,0) 0%, rgba(17,24,29,.2) 45%, rgba(17,24,29,.78) 100%); }
.ks-cat-txt { padding: 20px; }
.ks-cat-txt h2 { font-size: 24px; font-weight: 500; letter-spacing: -0.03em; line-height: 1.1; }
.ks-cat-txt p { font-size: 15px; line-height: 1.4; color: rgba(255,255,255,.75); margin-top: 6px; max-width: 42ch; }
.ks-cat-txt span { display: block; font-size: 13px; margin-top: 12px; }

/* ---------- Post ---------- */
.ks-capa-post { margin: 0 0 8px; }
.ks-capa-post img { width: 100%; border-radius: var(--ks-r-lg); box-shadow: var(--ks-card-sombra); }
.ks-artigo { padding: 32px 0 140px; }
.ks-meta { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 15px; color: var(--ks-ink-dim); margin: 14px 0 0; }
.ks-artigo > .ks-meta { margin: 0 0 32px; }
.ks-post-conteudo { overflow-wrap: break-word; }
.ks-paginas-post { margin: 24px 0; font-weight: 600; }

/* ---------- Conteúdo do post: elementos soltos (vindo do editor) ---------- */
:where(.ks-site) .ks-post-conteudo img { max-width: 100%; height: auto; }
:where(.ks-site) .ks-post-conteudo :is(iframe, video, embed, object) { max-width: 100%; }
:where(.ks-site) .ks-post-conteudo figure > img { margin: 0 auto; }
:where(.ks-site) .ks-post-conteudo table { width: 100%; border-collapse: collapse; font-size: 15px; margin: 8px 0 24px; display: block; overflow-x: auto; }
:where(.ks-site) .ks-post-conteudo th, :where(.ks-site) .ks-post-conteudo td { text-align: left; padding: 10px 8px; border-bottom: 1px solid rgba(17,24,29,.1); vertical-align: top; }
:where(.ks-site) .ks-post-conteudo th { font-weight: 600; }
:where(.ks-site) .ks-post-conteudo pre { overflow-x: auto; background: var(--ks-tile); padding: 14px 16px; border-radius: 12px; margin: 0 0 18px; font-size: 14px; }
:where(.ks-site) .ks-post-conteudo pre code { padding: 0; background: none; }
:where(.ks-site) .ks-post-conteudo hr { border: 0; border-top: 1px solid rgba(17,24,29,.12); margin: 36px 0; }
:where(.ks-site) .ks-post-conteudo li > ul, :where(.ks-site) .ks-post-conteudo li > ol { margin: 8px 0 0 20px; }
:where(.ks-site) .ks-post-conteudo .wp-caption { max-width: 100%; }
:where(.ks-site) .ks-post-conteudo .aligncenter { margin-left: auto; margin-right: auto; }
:where(.ks-site) .ks-post-conteudo .alignleft { float: left; margin: 4px 20px 12px 0; }
:where(.ks-site) .ks-post-conteudo .alignright { float: right; margin: 4px 0 12px 20px; }
:where(.ks-site) .ks-post-conteudo .post-password-form input[type="password"] { font: inherit; padding: 10px 14px; border-radius: 12px; border: 1px solid rgba(17,24,29,.2); margin: 8px 8px 0 0; max-width: 100%; }
:where(.ks-site) .ks-post-conteudo .post-password-form input[type="submit"] { font: inherit; font-weight: 600; padding: 10px 18px; border-radius: 999px; border: 0; background: var(--ks-ink); color: #fff; cursor: pointer; }

/* ---------- Conteúdo do post: classes ks-* (portado de blog/blog.css) ---------- */
:where(.ks-site) .ks-post-conteudo code { font-family: ui-monospace, Menlo, monospace; font-size: .88em; background: var(--ks-tile); padding: 2px 6px; border-radius: 6px; }
:where(.ks-site) .ks-post-conteudo .ks-ciclo.ks-check { gap: 6px; }
:where(.ks-site) .ks-post-conteudo .ks-ciclo.ks-check li { display: flex; gap: 10px; align-items: baseline; padding: 10px 14px; font-weight: 500; font-size: 15px; }
:where(.ks-site) .ks-post-conteudo .ks-ciclo.ks-check li::before { content: "✓"; display: inline; margin: 0; font-size: 15px; font-weight: 700; color: #2f7570; }
:where(.ks-site) .ks-post-conteudo h2 {
  font-size: clamp(26px, 6.5vw, 32px);
  font-weight: 500;
  letter-spacing: -0.035em;
  line-height: 1.1;
  margin: 44px 0 14px;
}
:where(.ks-site) .ks-post-conteudo p { margin-bottom: 18px; }
:where(.ks-site) .ks-post-conteudo p.ks-abre { font-size: 21px; line-height: 1.45; color: var(--ks-ink); }
:where(.ks-site) .ks-post-conteudo ul { margin: 0 0 18px 20px; }
:where(.ks-site) .ks-post-conteudo li { margin-bottom: 8px; }
:where(.ks-site) .ks-post-conteudo strong { font-weight: 600; }
:where(.ks-site) .ks-post-conteudo .ks-nota {
  background: #ffffff;
  border: 1px solid rgba(17,24,29,.1);
  border-radius: 20px;
  padding: 20px;
  margin: 24px 0;
  font-size: 16px;
}
:where(.ks-site) .ks-post-conteudo .ks-nota strong { display: block; margin-bottom: 4px; }
:where(.ks-site) .ks-post-conteudo h3 { font-size: 22px; font-weight: 600; letter-spacing: -0.025em; line-height: 1.2; margin: 34px 0 12px; }
:where(.ks-site) .ks-post-conteudo h4 { font-size: 18px; font-weight: 600; letter-spacing: -0.015em; margin: 26px 0 8px; }
:where(.ks-site) .ks-post-conteudo h2[id], :where(.ks-site) .ks-post-conteudo h3[id] { scroll-margin-top: 90px; }
:where(.ks-site) .ks-post-conteudo ol { margin: 0 0 18px 20px; }
:where(.ks-site) .ks-post-conteudo a { text-decoration: underline; text-decoration-color: var(--ks-azul); text-underline-offset: 3px; }
:where(.ks-site) .ks-post-conteudo a:hover { text-decoration-color: var(--ks-ink); }
:where(.ks-site) .ks-post-conteudo em { font-style: italic; }
:where(.ks-site) .ks-post-conteudo blockquote { border-left: 3px solid var(--ks-azul); padding: 4px 0 4px 18px; margin: 24px 0; color: var(--ks-ink-dim); }
:where(.ks-site) .ks-post-conteudo blockquote p:last-child { margin-bottom: 0; }
:where(.ks-site) .ks-post-conteudo figure { margin: 28px 0; }
:where(.ks-site) .ks-post-conteudo figure img { border-radius: 16px; border: 1px solid rgba(17,24,29,.08); margin: 0 auto; background: #fff; }
:where(.ks-site) .ks-post-conteudo figcaption { font-size: 14px; color: var(--ks-ink-dim); margin-top: 10px; text-align: center; }
:where(.ks-site) .ks-post-conteudo .ks-indice { background: #fff; border: 1px solid rgba(17,24,29,.1); border-radius: 20px; padding: 20px 22px; margin: 8px 0 28px; }
:where(.ks-site) .ks-post-conteudo .ks-indice strong { display: block; margin-bottom: 10px; }
:where(.ks-site) .ks-post-conteudo .ks-indice ol { margin: 0 0 0 18px; font-size: 16px; }
:where(.ks-site) .ks-post-conteudo .ks-indice li { margin-bottom: 6px; }
:where(.ks-site) .ks-post-conteudo .ks-indice a { text-decoration: none; }
:where(.ks-site) .ks-post-conteudo .ks-fig { background: #fff; border: 1px solid rgba(17,24,29,.1); border-radius: 20px; padding: 22px 18px; font-size: 15px; }
:where(.ks-site) .ks-post-conteudo .ks-fig .ks-rot { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--ks-ink-dim); margin-bottom: 14px; }
:where(.ks-site) .ks-post-conteudo .ks-chip { display: inline-block; padding: 8px 12px; border-radius: 12px; background: var(--ks-tile); line-height: 1.25; }
:where(.ks-site) .ks-post-conteudo .ks-chip.ks-lp { background: var(--ks-card); color: #fff; font-weight: 600; }
:where(.ks-site) .ks-post-conteudo .ks-chip.ks-lp small { display: block; font-weight: 400; color: var(--ks-sobre-card-dim); font-size: 12px; }
:where(.ks-site) .ks-post-conteudo .ks-chip.ks-ruim { background: #f3e1dc; }
:where(.ks-site) .ks-post-conteudo .ks-chip.ks-bom { background: var(--ks-gelo); font-weight: 600; }
:where(.ks-site) .ks-post-conteudo .ks-seta { color: var(--ks-ink-dim); flex: none; }
:where(.ks-site) .ks-post-conteudo .ks-fluxo { display: grid; gap: 12px; }
:where(.ks-site) .ks-post-conteudo .ks-fluxo .ks-linha { display: grid; grid-template-columns: 1fr auto 1fr; gap: 10px; align-items: center; }
:where(.ks-site) .ks-post-conteudo .ks-fluxo .ks-de { display: flex; flex-wrap: wrap; gap: 6px; }
:where(.ks-site) .ks-post-conteudo .ks-fluxo .ks-tag-l { font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; margin: 6px 0 -4px; }
:where(.ks-site) .ks-post-conteudo .ks-tamanho { display: flex; align-items: flex-end; justify-content: center; gap: 28px; }
:where(.ks-site) .ks-post-conteudo .ks-tamanho .ks-col { text-align: center; }
:where(.ks-site) .ks-post-conteudo .ks-tamanho .ks-bloco { width: 64px; border-radius: 10px; background: var(--ks-tile); margin: 0 auto 8px; }
:where(.ks-site) .ks-post-conteudo .ks-tamanho .ks-bloco.ks-grande { background: linear-gradient(180deg, var(--ks-card-2), var(--ks-card)); }
:where(.ks-site) .ks-post-conteudo .ks-tamanho .ks-num { font-size: 32px; font-weight: 500; letter-spacing: -0.04em; line-height: 1; }
:where(.ks-site) .ks-post-conteudo .ks-matriz { width: 100%; border-collapse: separate; border-spacing: 6px; text-align: center; }
:where(.ks-site) .ks-post-conteudo .ks-matriz th, :where(.ks-site) .ks-post-conteudo .ks-matriz td { padding: 14px 8px; border-radius: 12px; }
:where(.ks-site) .ks-post-conteudo .ks-matriz thead th { background: var(--ks-card); color: #fff; font-weight: 600; }
:where(.ks-site) .ks-post-conteudo .ks-matriz tbody th { background: var(--ks-gelo); font-weight: 600; }
:where(.ks-site) .ks-post-conteudo .ks-matriz td { background: var(--ks-tile); font-weight: 600; font-size: 18px; letter-spacing: .1em; }
:where(.ks-site) .ks-post-conteudo .ks-matriz td.ks-alto { background: var(--ks-card-2); color: #fff; }
:where(.ks-site) .ks-post-conteudo .ks-matriz .ks-eixo { background: none; color: var(--ks-ink-dim); font-size: 13px; font-weight: 500; }
:where(.ks-site) .ks-post-conteudo .ks-frase { background: linear-gradient(160deg, var(--ks-card-2), var(--ks-card)); color: #fff; border-radius: 20px; padding: 36px 24px; font-size: clamp(24px, 6vw, 30px); font-weight: 500; letter-spacing: -0.03em; line-height: 1.15; }
:where(.ks-site) .ks-post-conteudo .ks-frase span { color: var(--ks-azul); }
:where(.ks-site) .ks-post-conteudo .ks-ciclo { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; counter-reset: passo; }
:where(.ks-site) .ks-post-conteudo .ks-ciclo li { list-style: none; counter-increment: passo; background: var(--ks-tile); border-radius: 14px; padding: 14px; font-weight: 600; margin: 0; }
:where(.ks-site) .ks-post-conteudo .ks-ciclo li::before { content: counter(passo, decimal-leading-zero); display: block; font-size: 12px; color: var(--ks-ink-dim); font-weight: 500; margin-bottom: 4px; }
:where(.ks-site) .ks-post-conteudo .ks-ciclo li:nth-child(3) { grid-column: 2; grid-row: 2; }
:where(.ks-site) .ks-post-conteudo .ks-ciclo li:nth-child(4) { grid-column: 1; grid-row: 2; }
:where(.ks-site) .ks-post-conteudo .ks-fig .ks-volta { text-align: center; color: var(--ks-ink-dim); font-size: 13px; margin-top: 12px; }
:where(.ks-site) .ks-post-conteudo .ks-wire { display: grid; gap: 8px; }
:where(.ks-site) .ks-post-conteudo .ks-wire > div { border: 1.5px dashed rgba(17,24,29,.22); border-radius: 12px; padding: 12px; text-align: center; color: var(--ks-ink-dim); font-size: 14px; }
:where(.ks-site) .ks-post-conteudo .ks-wire .ks-t { font-size: 18px; font-weight: 600; color: var(--ks-ink); border-style: solid; }
:where(.ks-site) .ks-post-conteudo .ks-wire .ks-img { min-height: 90px; display: grid; place-items: center; background: repeating-linear-gradient(135deg, transparent 0 10px, rgba(17,24,29,.04) 10px 20px); }
:where(.ks-site) .ks-post-conteudo .ks-wire .ks-cta { background: var(--ks-card); color: #fff; border: none; font-weight: 600; justify-self: center; padding: 12px 26px; border-radius: 999px; }
:where(.ks-site) .ks-post-conteudo .ks-wire .ks-tres { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; border: none; padding: 0; }
:where(.ks-site) .ks-post-conteudo .ks-wire .ks-tres span { border: 1.5px dashed rgba(17,24,29,.22); border-radius: 10px; padding: 16px 4px; }
:where(.ks-site) .ks-post-conteudo .ks-wire .ks-form { background: var(--ks-tile); border-style: solid; border-color: transparent; }
:where(.ks-site) .ks-post-conteudo .ks-wire .ks-campo { height: 14px; background: #fff; border-radius: 6px; margin: 8px auto; max-width: 70%; }
:where(.ks-site) .ks-post-conteudo .ks-wire small { display: block; font-size: 12px; margin-top: 2px; }
:where(.ks-site) .ks-post-conteudo .ks-modelos { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
:where(.ks-site) .ks-post-conteudo .ks-modelo { background: var(--ks-tile); border-radius: 14px; padding: 14px; }
:where(.ks-site) .ks-post-conteudo .ks-modelo strong { display: block; font-size: 15px; margin-bottom: 10px; }
:where(.ks-site) .ks-post-conteudo .ks-modelo .ks-pg { display: flex; flex-wrap: wrap; gap: 4px; }
:where(.ks-site) .ks-post-conteudo .ks-modelo .ks-pg span { background: #fff; border-radius: 6px; font-size: 11px; padding: 4px 6px; color: var(--ks-ink-dim); }
:where(.ks-site) .ks-post-conteudo .ks-modelo .ks-pg span.ks-lp { background: var(--ks-card); color: #fff; }
:where(.ks-site) .ks-post-conteudo .ks-modelo .ks-pg span.ks-blog { background: var(--ks-gelo); color: var(--ks-ink); }
:where(.ks-site) .ks-post-conteudo .ks-tabela { width: 100%; border-collapse: collapse; font-size: 15px; margin: 8px 0 24px; }
:where(.ks-site) .ks-post-conteudo .ks-tabela th, :where(.ks-site) .ks-post-conteudo .ks-tabela td { text-align: left; padding: 10px 8px; border-bottom: 1px solid rgba(17,24,29,.1); vertical-align: top; }
:where(.ks-site) .ks-post-conteudo .ks-tabela th { font-weight: 600; font-size: 13px; color: var(--ks-ink-dim); }
:where(.ks-site) .ks-post-conteudo .ks-tabela-wrap { overflow-x: auto; }
@media (max-width: 420px) {
:where(.ks-site) .ks-post-conteudo .ks-modelos { grid-template-columns: 1fr; }
}
:where(.ks-site) .ks-post-conteudo .ks-nav { background: #fff; border: 1px solid rgba(17,24,29,.1); border-radius: 16px; overflow: hidden; box-shadow: var(--ks-card-sombra); }
:where(.ks-site) .ks-post-conteudo .ks-nav-barra { display: flex; align-items: center; gap: 6px; padding: 10px 12px; background: var(--ks-tile); }
:where(.ks-site) .ks-post-conteudo .ks-nav-barra i { width: 9px; height: 9px; border-radius: 50%; background: rgba(17,24,29,.18); }
:where(.ks-site) .ks-post-conteudo .ks-nav-barra span { margin-left: 8px; flex: 1; background: #fff; border-radius: 999px; font-size: 11px; color: var(--ks-ink-dim); padding: 3px 10px; font-style: normal; }
:where(.ks-site) .ks-post-conteudo .ks-nav img { width: 100%; border: 0; border-radius: 0; }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo { padding: 14px; display: grid; gap: 8px; }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo .ks-b { height: 10px; border-radius: 6px; background: var(--ks-tile); }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo .ks-b.ks-w6 { width: 60%; }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo .ks-b.ks-w4 { width: 40%; }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo .ks-b.ks-w8 { width: 80%; }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo .ks-h { height: 18px; width: 70%; border-radius: 6px; background: var(--ks-ink); }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo .ks-btn { height: 26px; width: 120px; border-radius: 999px; background: var(--ks-card); }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo .ks-sec { border-radius: 10px; background: var(--ks-bg); padding: 10px; display: grid; gap: 6px; }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo .ks-sec small { font-size: 11px; color: var(--ks-ink-dim); font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo .ks-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo .ks-cols div { height: 40px; border-radius: 8px; background: var(--ks-gelo); }
:where(.ks-site) .ks-post-conteudo .ks-nav-menu { display: flex; gap: 10px; font-size: 11px; color: var(--ks-ink-dim); padding: 8px 14px; border-bottom: 1px solid rgba(17,24,29,.08); }
:where(.ks-site) .ks-post-conteudo .ks-nav-menu b { color: var(--ks-ink); margin-right: auto; }
:where(.ks-site) .ks-post-conteudo .ks-duas-telas { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
:where(.ks-site) .ks-post-conteudo .ks-mapa { display: grid; gap: 10px; justify-items: center; font-size: 13px; }
:where(.ks-site) .ks-post-conteudo .ks-mapa .ks-nivel { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
:where(.ks-site) .ks-post-conteudo .ks-mapa .ks-linha-v { width: 1.5px; height: 14px; background: rgba(17,24,29,.25); }
:where(.ks-site) .ks-post-conteudo .ks-entradas { display: grid; grid-template-columns: 1fr auto 1fr; gap: 10px; align-items: center; text-align: center; font-size: 14px; }
:where(.ks-site) .ks-post-conteudo .ks-entradas .ks-alvo { grid-column: 1 / -1; justify-self: center; }
:where(.ks-site) .ks-post-conteudo .ks-meme { background: #fff; border: 1px solid rgba(17,24,29,.12); border-radius: 20px; overflow: hidden; box-shadow: var(--ks-card-sombra); margin: 28px 0; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-topo-meme { padding: 18px 20px 6px; font-size: 18px; font-weight: 600; letter-spacing: -0.02em; line-height: 1.25; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-falas { padding: 8px 20px 20px; display: grid; gap: 10px; font-size: 17px; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-falas p { margin: 0; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-falas b { font-weight: 600; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-balao { background: var(--ks-tile); border-radius: 16px 16px 16px 4px; padding: 10px 14px; justify-self: start; max-width: 90%; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-balao.ks-ele { background: var(--ks-card); color: #fff; border-radius: 16px 16px 4px 16px; justify-self: end; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-botoes { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 18px 20px; background: var(--ks-bg); }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-botoes span { display: grid; place-items: center; min-height: 64px; border-radius: 14px; background: #d9534f; color: #fff; font-weight: 600; text-align: center; padding: 8px; box-shadow: inset 0 -5px 0 rgba(0,0,0,.2); }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-suor { padding: 14px 20px 18px; font-size: 16px; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-suor b { display: block; font-size: 20px; margin-top: 4px; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-exp { display: grid; grid-template-columns: 1fr 1fr; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-exp div { padding: 18px 16px; min-height: 150px; display: flex; flex-direction: column; gap: 8px; font-size: 15px; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-exp div + div { background: var(--ks-card); color: #fff; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-exp small { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; opacity: .7; }
:where(.ks-site) .ks-post-conteudo .ks-meme .ks-exp strong { font-size: 18px; letter-spacing: -0.02em; line-height: 1.2; }
:where(.ks-site) .ks-post-conteudo .ks-meme > img { width: 100%; height: auto; display: block; }
:where(.ks-site) .ks-post-conteudo .ks-meme-img { margin-left: auto; margin-right: auto; }
:where(.ks-site) .ks-post-conteudo .ks-meme-img .ks-topo-meme { padding-bottom: 14px; }
:where(.ks-site) .ks-post-conteudo .ks-meme-img figcaption { padding-top: 12px; font-weight: 600; color: var(--ks-ink); font-size: 16px; }
:where(.ks-site) .ks-post-conteudo .ks-meme figcaption { margin: 0; padding: 0 20px 16px; text-align: left; }
@media (max-width: 420px) {
:where(.ks-site) .ks-post-conteudo .ks-duas-telas { grid-template-columns: 1fr; }
}
:where(.ks-site) .ks-post-conteudo .ks-cta-post {
  position: relative; overflow: hidden; isolation: isolate;
  margin: 32px 0; padding: 24px 22px;
  border-radius: 22px; color: #fff;
  background: linear-gradient(135deg, #1a2c2b 0%, #233b39 60%, #2f5a55 100%);
  box-shadow: var(--ks-card-sombra);
}
:where(.ks-site) .ks-post-conteudo .ks-cta-post::after { content: ""; position: absolute; right: -60px; top: -60px; width: 200px; height: 200px; border-radius: 50%; background: radial-gradient(circle, rgba(171,204,203,.35), transparent 70%); z-index: -1; }
:where(.ks-site) .ks-post-conteudo .ks-cta-olho { font-size: 13px; color: var(--ks-azul); margin: 0 0 8px; }
:where(.ks-site) .ks-post-conteudo .ks-cta-titulo { font-size: 22px; font-weight: 600; letter-spacing: -0.03em; line-height: 1.2; margin: 0 0 8px; }
:where(.ks-site) .ks-post-conteudo .ks-cta-texto { font-size: 15px; color: rgba(255,255,255,.75); margin: 0 0 18px; }
:where(.ks-site) .ks-post-conteudo a.ks-cta-botao {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 12px 20px; border-radius: 999px;
  background: linear-gradient(90deg, #d9f2ed, #abcccb); color: var(--ks-ink);
  font-size: 15px; font-weight: 600; text-decoration: none;
  transition: transform .2s;
}
:where(.ks-site) .ks-post-conteudo a.ks-cta-botao:hover { transform: translateY(-2px); }
:where(.ks-site) .ks-post-conteudo .ks-cta-botao svg { width: 16px; height: 16px; }
:where(.ks-site) .ks-post-conteudo .ks-cta-post.ks-cta-aprender { background: linear-gradient(135deg, #f3ead8 0%, #e9f5f1 100%); color: var(--ks-ink); border: 1px solid rgba(17,24,29,.08); }
:where(.ks-site) .ks-post-conteudo .ks-cta-post.ks-cta-aprender::after { background: radial-gradient(circle, rgba(127,209,189,.16), transparent 70%); }
:where(.ks-site) .ks-post-conteudo .ks-cta-aprender .ks-cta-olho { color: #2f7570; }
:where(.ks-site) .ks-post-conteudo .ks-cta-aprender .ks-cta-texto { color: var(--ks-ink-dim); }
:where(.ks-site) .ks-post-conteudo .ks-cta-aprender a.ks-cta-botao { background: var(--ks-ink); color: #fff; }
@media (max-width: 420px) {
:where(.ks-site) .ks-post-conteudo .ks-fluxo .ks-linha { grid-template-columns: 1fr; }
:where(.ks-site) .ks-post-conteudo .ks-fluxo .ks-seta { transform: rotate(90deg); justify-self: start; }
}
:where(.ks-site) .ks-post-conteudo .ks-meta { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 15px; color: var(--ks-ink-dim); margin: 14px 0 0; }
:where(.ks-site) .ks-post-conteudo .ks-nav-corpo .ks-btn { display: block; padding: 0; }
:where(.ks-site) .ks-post-conteudo table.ks-tabela, :where(.ks-site) .ks-post-conteudo table.ks-matriz { display: table; }

/* ---------- Faixa de landing pages ---------- */
.ks-lps-titulo { font-size: 15px; color: var(--ks-ink-dim); margin: 44px 0 10px; }
.ks-lps-bloco { padding-bottom: 56px; }
.ks-lps-bloco .ks-lps-titulo { margin-top: 0; }
.ks-lps { overflow: hidden; margin: -8px -24px -26px; padding: 14px 0 44px;  }
.ks-lps-trilho { display: flex; gap: 12px; width: max-content; animation: ks-lps-passa 110s linear infinite; }
.ks-lps:hover .ks-lps-trilho { animation-play-state: paused; }
.ks-lps img { height: clamp(280px, 62vh, 460px); width: auto; max-width: none; border-radius: 16px; box-shadow: 0 1px 2px rgba(17,24,29,.05), 0 8px 20px rgba(17,24,29,.10); }
@keyframes ks-lps-passa { to { transform: translateX(calc(-50% - 6px)); } }
@media (prefers-reduced-motion: reduce) { .ks-lps { overflow-x: auto; } .ks-lps-trilho { animation: none; } }
.ks-lps.ks-lps-js { overflow-x: auto; scrollbar-width: none; cursor: grab; }
.ks-lps.ks-lps-js::-webkit-scrollbar { display: none; }
.ks-lps.ks-lps-js .ks-lps-trilho { animation: none; }
.ks-lps img { -webkit-user-drag: none; user-select: none; }
.ks-arrastando { cursor: grabbing !important; scroll-snap-type: none !important; }
.ks-arrastando * { pointer-events: none; }
.ks-lp-item { position: relative; flex: none; display: block; border-radius: 16px; transition: transform .25s; }
.ks-lp-item img { display: block; }
.ks-lp-item span {
  position: absolute; left: 10px; right: 10px; bottom: 10px;
  padding: 8px 12px; border-radius: 999px;
  background: rgba(255,255,255,.9); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
  color: #11181d; font-size: 13px; font-weight: 600; text-align: center;
  opacity: 0; transform: translateY(6px); transition: opacity .25s, transform .25s;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.ks-lp-item:hover { transform: translateY(-6px); }
.ks-lp-item:hover span, .ks-lp-item:focus-visible span { opacity: 1; transform: none; }
@media (hover: none) { .ks-lp-item span { opacity: 1; transform: none; } }

/* ---------- Duas portas com imagem no fim do post ---------- */
.ks-portas { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 44px; }
.ks-portas-img { gap: 10px; }
.ks-porta-foto { display: block; border-radius: 22px; overflow: hidden; box-shadow: var(--ks-card-sombra); text-decoration: none; transition: transform .25s; }
.ks-porta-foto:hover { transform: translateY(-3px); }
.ks-porta-foto img { width: 100%; height: auto; display: block; }

/* ---------- Barra fixa no rodapé do post ---------- */
.ks-barra {
  position: fixed; left: 16px; right: 16px; bottom: 16px; z-index: 10;
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  max-width: 592px; margin: 0 auto;
  padding: 10px 10px 10px 20px;
  border-radius: 999px;
  background: rgba(255,255,255,.92);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border: 1px solid rgba(17,24,29,.1);
  box-shadow: 0 10px 30px rgba(17,24,29,.15);
  line-height: 1.3;
}
.ks-barra strong { display: block; font-size: 15px; font-weight: 600; }
.ks-barra small { display: block; font-size: 13px; color: var(--ks-ink-dim); }
.ks-barra .ks-barra-cta {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 14px 20px;
  border-radius: 999px;
  background: var(--ks-gelo);
  color: var(--ks-gelo-ink);
  font-size: 15px; font-weight: 600;
  white-space: nowrap;
}
.ks-barra .ks-barra-cta svg { width: 16px; height: 16px; }
/* Espaço pra barra fixa não cobrir o fim do rodapé */
:where(body.single) .ks-rodape { padding-bottom: 110px; }

/* ---------- Painel "O que você precisa?" (variante da bio/blog; base em ks-base.css) ---------- */
.ks-folha { color: var(--ks-sobre-card); box-shadow: 0 -10px 40px rgba(17,24,29,.25); font-family: var(--ks-ff); line-height: 1.4; }
.ks-folha h2 { font-size: clamp(26px, 7vw, 32px); font-weight: 600; letter-spacing: -0.045em; line-height: 1; }
.ks-folha-fechar { width: 48px; height: 48px; border-radius: 14px; border: 0; background: var(--ks-chip-escuro); color: var(--ks-sobre-card); display: grid; place-items: center; cursor: pointer; flex-shrink: 0; }
.ks-folha-fechar svg { width: 22px; height: 22px; }
.ks-opcao { padding: 14px; border-radius: 20px; }
.ks-opcao:hover { background: rgba(255,255,255,.16); }
.ks-opcao strong { font-size: 18px; font-weight: 600; letter-spacing: -0.03em; }
.ks-opcao small { display: block; font-size: 14px; color: #c3d3d0; margin-top: 2px; }


/* ---------- Telas pequenas ---------- */
@media (max-width: 420px) { .ks-barra { padding-left: 16px; } .ks-barra small { display: none; } .ks-barra .ks-barra-cta { padding: 12px 16px; } }

/* ---------- Telas maiores (por último, pra valer sobre as regras base) ---------- */
@media (min-width: 860px) {
  .ks-blog-wrap { max-width: 1200px; padding: 0 40px; }
  .ks-cabeca { padding: 72px 0 36px; }
  :where(.ks-site .ks-blog-wrap) h1 { font-size: 64px; max-width: 16ch; }
  .ks-categorias { margin: 0 0 28px; padding: 2px 0; flex-wrap: wrap; overflow: visible; }
  .ks-lista { grid-template-columns: repeat(3, 1fr); gap: 24px; align-items: stretch; }
  .ks-cat-grade { grid-template-columns: repeat(2, 1fr); gap: 20px; }
  .ks-cat-card { min-height: 320px; }
  /* Post: capa larga, texto em coluna confortável */
  .ks-post-tela > .ks-cabeca, .ks-post-tela > .ks-artigo { max-width: 760px; margin-left: auto; margin-right: auto; }
  .ks-post-tela > .ks-capa-post { max-width: 1000px; margin-left: auto; margin-right: auto; }
  .ks-barra { max-width: 760px; }
}

@media (prefers-reduced-motion: reduce) {
  html:has(> body.ks-tela) { scroll-behavior: auto; }
  :where(.ks-site) * { transition: none !important; }
}

/* Cursor personalizado: seta da marca (escura) e versão menta sobre links */
@media (hover: hover) and (pointer: fine) {
  body.ks-tela { cursor: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%3E%3Cpath%20d%3D%22M4%203%20L4%2022%20L9.2%2017.2%20L12.6%2025%20L16%2023.5%20L12.7%2016%20L20%2016%20Z%22%20fill%3D%22%231a2c2b%22%20stroke%3D%22%23ffffff%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22/%3E%3C/svg%3E") 4 3, auto; }
  :where(.ks-site) :is(a, button, [role="button"], summary, label) { cursor: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2228%22%20height%3D%2228%22%20viewBox%3D%220%200%2028%2028%22%3E%3Cpath%20d%3D%22M4%203%20L4%2022%20L9.2%2017.2%20L12.6%2025%20L16%2023.5%20L12.7%2016%20L20%2016%20Z%22%20fill%3D%22%23abcccb%22%20stroke%3D%22%231a2c2b%22%20stroke-width%3D%221.6%22%20stroke-linejoin%3D%22round%22/%3E%3C/svg%3E") 4 3, pointer; }
}

/* Box da autora no fim do post (autoria para o Google e para o leitor) */
:where(.ks-site) .ks-autora { display: flex; gap: 18px; align-items: flex-start; margin: 48px 0 8px; padding: 22px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px rgba(17,24,29,.06), 0 10px 30px rgba(17,24,29,.06); }
:where(.ks-site) .ks-autora img { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; flex: none; }
:where(.ks-site) .ks-autora p { margin: 0; font-size: 15px; line-height: 1.55; color: #2c363d; }
:where(.ks-site) .ks-autora p + p { margin-top: 6px; }
:where(.ks-site) .ks-autora-nome { font-weight: 600; font-size: 17px; color: #11181d; }
:where(.ks-site) .ks-autora a { color: #11181d; text-decoration-color: #abcccb; text-underline-offset: 3px; }
:where(.ks-site) .ks-autora-redes { font-size: 13.5px !important; color: #5f6a72 !important; }

/* ---------- Artigo em leitura longa (sumário fixo, autor, progresso) ---------- */
.ks-progresso { position: fixed; z-index: 60; top: 0; left: 0; right: 0; height: 3px; background: transparent; pointer-events: none; }
.ks-progresso span { display: block; height: 100%; width: 100%; transform-origin: 0 50%; transform: scaleX(0); background: linear-gradient(90deg, #2f7570, #abcccb); }
.admin-bar .ks-progresso { top: 32px; }
:where(.ks-site) .ks-np { max-width: 1180px; margin: 0 auto; padding: 0 24px; }
.ks-np-grade { display: grid; gap: 56px; padding-top: 28px; }
@media (min-width: 1100px) { .ks-np-grade { grid-template-columns: minmax(0, 700px) 340px; justify-content: space-between; } }
.ks-np-artigo { min-width: 0; }
.ks-np-cabeca h1 { margin: 10px 0 0; font-weight: 600; font-size: clamp(30px, 3.4vw, 40px); line-height: 1.18; letter-spacing: -0.025em; }
.ks-np-cabeca .ks-sub { margin-top: 14px; font-size: 19px; line-height: 1.55; color: var(--ks-ink-dim); }
.ks-np-autor { display: flex; gap: 12px; align-items: center; margin: 22px 0 26px; padding: 14px 0; border-block: 1px solid var(--ks-linha); }
.ks-np-autor img { width: 48px; height: 48px; border-radius: 50%; object-fit: cover; flex: none; }
.ks-np-autor p { margin: 0; font-size: 14px; line-height: 1.45; }
.ks-np-autor a { font-weight: 600; color: var(--ks-ink); text-decoration: none; }
.ks-np-autor span, .ks-np-datas { color: var(--ks-ink-dim); }
.ks-np .ks-capa-post { margin: 0 0 30px; border-radius: 18px; overflow: hidden; }
.ks-np .ks-capa-post img { width: 100%; height: auto; display: block; }
:where(.ks-site) .ks-np .ks-post-conteudo p, :where(.ks-site) .ks-np .ks-post-conteudo li { font-size: 19px; line-height: 1.7; }
:where(.ks-site) .ks-np .ks-post-conteudo h2 { margin: 44px 0 14px; font-size: 28px; font-weight: 600; line-height: 1.25; letter-spacing: -0.02em; scroll-margin-top: 90px; }
:where(.ks-site) .ks-np .ks-post-conteudo h3 { margin: 30px 0 10px; font-size: 22px; font-weight: 600; line-height: 1.3; }
.ks-np-cta { margin: 30px 0; padding: 24px 26px; border-radius: 20px; background: #eef8f6; box-shadow: 0 0 0 1px rgba(62,138,130,.18); }
.ks-np-cta .ks-np-cta-olho { margin: 0 0 6px !important; font-size: 12px !important; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #2f7570; }
.ks-np-cta .ks-np-cta-t { margin: 0 0 6px !important; font-size: 20px !important; font-weight: 600; line-height: 1.35 !important; color: var(--ks-ink); }
.ks-np-cta p { font-size: 16px !important; margin-bottom: 14px !important; }
.ks-np-cta .ks-btn, .ks-np-card .ks-btn { display: inline-flex; padding: 12px 22px; border-radius: 999px; font-size: 14px; font-weight: 600; text-decoration: none; }
.ks-np-sumario-movel { margin: 0 0 26px; padding: 14px 18px; border-radius: 16px; background: #fff; box-shadow: 0 0 0 1px var(--ks-linha); }
.ks-np-sumario-movel summary { cursor: pointer; font-weight: 600; }
.ks-np-sumario-movel ol { margin: 10px 0 0; padding-left: 20px; display: grid; gap: 6px; font-size: 15px; }
@media (min-width: 1100px) { .ks-np-sumario-movel { display: none; } }
.ks-np-lado { display: none; }
@media (min-width: 1100px) { .ks-np-lado { display: block; } }
.ks-np-fixo { position: sticky; top: 96px; display: grid; gap: 16px; }
.ks-np-lado-t { margin: 0 0 10px; font-size: 12px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: #2f7570; }
.ks-np-sumario { padding: 22px; border-radius: 20px; background: #fff; box-shadow: 0 0 0 1px var(--ks-linha); max-height: 52vh; overflow: auto; }
.ks-np-sumario ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; counter-reset: s; }
.ks-np-sumario li { counter-increment: s; }
.ks-np-sumario a { display: grid; grid-template-columns: 24px 1fr; gap: 6px; padding: 7px 8px; border-radius: 10px; font-size: 14.5px; line-height: 1.4; color: var(--ks-ink-dim); text-decoration: none; transition: background .2s, color .2s; }
.ks-np-sumario a::before { content: counter(s, decimal-leading-zero); font-size: 11.5px; font-weight: 700; color: #2f7570; padding-top: 2px; }
.ks-np-sumario a:hover, .ks-np-sumario a.ks-ativo { background: #eef8f6; color: var(--ks-ink); }
.ks-np-card { padding: 22px; border-radius: 20px; background: #11181d; color: #fff; }
.ks-np-card .ks-np-lado-t { color: #abcccb; }
.ks-np-card-t { margin: 0 0 8px; font-size: 19px; font-weight: 600; line-height: 1.3; }
.ks-np-card p { font-size: 14.5px; line-height: 1.5; color: rgba(255,255,255,.75); }
.ks-np-card-sec { display: block; margin-top: 12px; font-size: 13px; color: #d9f2ed; }
.ks-np-depois { margin-top: 48px; }

/* Memes e imagens pequenas: nunca esticar além do tamanho real (evita imagem borrada) */
:where(.ks-site) .ks-post-conteudo .ks-meme { width: fit-content; max-width: min(100%, 420px); margin-left: auto; margin-right: auto; }
:where(.ks-site) .ks-post-conteudo .ks-meme img { display: block; width: auto; max-width: 100%; height: auto; margin: 0 auto; }
:where(.ks-site) .ks-post-conteudo .ks-meme figcaption, :where(.ks-site) .ks-post-conteudo .ks-meme > p { font-size: 15px; line-height: 1.5; padding: 12px 16px 14px; text-align: center; }
:where(.ks-site) .ks-post-conteudo .ks-meme:has(.ks-falas), :where(.ks-site) .ks-post-conteudo .ks-meme:has(.ks-botoes) { width: auto; max-width: 100%; }
:where(.ks-site) .ks-post-conteudo img.ks-img-pequena { width: auto !important; max-width: min(100%, var(--ks-nat, 420px)) !important; margin-left: auto; margin-right: auto; display: block; }
:where(.ks-site) .ks-post-conteudo .ks-meme img { max-width: min(100%, 420px); }

/* ---------- Navegação entre posts e "Continue lendo" ---------- */
.ks-post-nav { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 36px 0 0; }
.ks-post-nav a { display: grid; gap: 6px; padding: 18px 20px; border-radius: 20px; background: #fff; box-shadow: 0 1px 0 rgba(17,24,29,.04), 0 10px 26px rgba(17,24,29,.05); color: #11181d; text-decoration: none; transition: transform .2s; }
.ks-post-nav a:hover { transform: translateY(-2px); }
.ks-post-nav small { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #2f7570; }
.ks-post-nav strong { font-size: 16px; font-weight: 600; line-height: 1.35; }
.ks-post-nav-prox { text-align: right; grid-column: 2; }
@media (max-width: 640px) { .ks-post-nav { grid-template-columns: minmax(0, 1fr); } .ks-post-nav-prox { grid-column: 1; text-align: left; } }
.ks-leia { width: min(100% - 32px, 1152px); margin: 64px auto 0; }
.ks-leia h2 { margin: 0 0 22px; text-align: center; font-size: clamp(28px, 3.4vw, 38px); font-weight: 400; letter-spacing: -0.04em; }
.ks-leia h2 em { font-family: 'ivypresto-display', Georgia, serif; font-weight: 300; color: #2f7570; }
.ks-leia-grade { display: grid; gap: 16px; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 760px) { .ks-leia-grade { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.ks-leia-card { display: grid; grid-template-rows: auto 1fr; overflow: hidden; border-radius: 22px; background: #fff; box-shadow: 0 1px 0 rgba(17,24,29,.04), 0 12px 30px rgba(17,24,29,.06); color: #11181d; text-decoration: none; transition: transform .2s; }
.ks-leia-card:hover { transform: translateY(-3px); }
.ks-leia-card img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; display: block; }
.ks-leia-corpo { display: grid; align-content: start; gap: 6px; padding: 16px 18px 20px; }
.ks-leia-corpo small { font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: #2f7570; }
.ks-leia-corpo strong { font-size: 17px; font-weight: 600; line-height: 1.3; }
.ks-leia-corpo em { font-style: normal; font-size: 13.5px; color: #5f6a72; }
.ks-leia-todos { margin: 24px 0 0; text-align: center; }
:where(.ks-site) .ks-np .ks-post-conteudo p.ks-abre { font-size: 21px; line-height: 1.5; }
