/**
 * Plugin Posts APPB: arquivo de notícias do Astra
 *
 * Ajustes ligeiros ao layout "Grid" (blog-layout-4) do Astra para seguir os
 * cartões da página inicial: fundo branco, cartões com borda e 4px de raio,
 * altura igual, Poppins e verde #96cb5b. Só é carregado em body.appb-noticias.
 */

.appb-noticias {
  --appb-green: #96cb5b;
  --appb-green-text: #4d7a1f;
  --appb-text: #111;
  --appb-text-muted: #4c4f57;
  --appb-date: #707070;
  --appb-bg: #fff;
  --appb-card-border: #e3e5e8;
  --appb-card-radius: 4px;
  --appb-card-padding: clamp(20px, 2vw, 28px);
  --appb-gap: clamp(20px, 2.5vw, 32px);
  --appb-columns: 3;
}

.appb-noticias #content {
  background: var(--appb-bg);
}

.appb-noticias #primary {
  margin-top: clamp(40px, 5vw, 64px);
  margin-bottom: clamp(48px, 6vw, 80px);
}

/* Título: H1 do plugin na página de artigos e título do Astra nas categorias. */
.appb-noticias .appb-noticias__header,
.appb-noticias .ast-archive-description {
  margin: 0 0 clamp(24px, 3vw, 40px);
  padding: 0;
  border: 0;
  background: none;
}

.appb-noticias .appb-noticias__title,
.appb-noticias .ast-archive-description .ast-archive-title {
  margin: 0;
  color: var(--appb-green);
  font-family: "Poppins", sans-serif;
  font-size: clamp(1.9rem, 3vw, 2.6rem);
  font-weight: 600;
  line-height: 1.2;
}

.appb-noticias .ast-archive-description p {
  margin-top: 12px;
  color: var(--appb-text-muted);
}

/* Grelha: todas as linhas ficam com a altura do cartão mais alto. */
.appb-noticias #primary .site-main > .ast-row {
  display: grid;
  grid-template-columns: repeat(var(--appb-columns), minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: var(--appb-gap);
  margin: 0;
}

.appb-noticias #primary .site-main > .ast-row::before,
.appb-noticias #primary .site-main > .ast-row::after {
  display: none;
}

.appb-noticias #primary .site-main > .ast-row > .ast-article-post {
  display: flex;
  width: auto;
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
}

/* Cartão. */
.appb-noticias .ast-article-post .ast-article-inner,
.appb-noticias .ast-article-post .ast-article-inner:hover {
  display: flex;
  width: 100%;
  box-sizing: border-box;
  flex-direction: column;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--appb-card-border);
  border-radius: var(--appb-card-radius);
  background: #fff;
  box-shadow: none;
  transition: border-color 0.2s ease;
}

.appb-noticias .ast-article-post:hover .ast-article-inner,
.appb-noticias .ast-article-post:focus-within .ast-article-inner {
  border-color: var(--appb-green);
}

.appb-noticias .ast-article-inner .post-content {
  display: flex;
  flex: 1;
  min-width: 0;
  flex-direction: column;
  padding: var(--appb-card-padding);
}

/*
 * Imagem encostada ao topo do cartão. Artigos sem imagem mostram o logótipo
 * do site num fundo claro, para todos os cartões terem a mesma estrutura;
 * sem logótipo definido, o espaço é removido.
 */
.appb-noticias .ast-article-post .blog-layout-4 .post-content .ast-blog-featured-section {
  order: 0;
  margin: calc(-1 * var(--appb-card-padding)) calc(-1 * var(--appb-card-padding)) var(--appb-card-padding);
}

.appb-noticias .ast-article-post .blog-layout-4 .post-content .ast-blog-featured-section:empty {
  display: none;
}

.appb-noticias.appb-noticias--placeholder .ast-article-post .blog-layout-4 .post-content .ast-blog-featured-section:empty {
  display: block;
  aspect-ratio: 3 / 2;
  border-bottom: 1px solid var(--appb-card-border);
  background: #fff var(--appb-placeholder-image) center / auto 34% no-repeat;
}

.appb-noticias .ast-article-post .ast-article-inner.blog-layout-4 .post-content .ast-blog-featured-section .post-thumb-img-content.post-thumb {
  margin: 0;
  overflow: hidden;
}

.appb-noticias .ast-article-post .post-thumb-img-content img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  transform: none;
  transition: transform 0.3s ease;
}

.appb-noticias .ast-article-post:hover .post-thumb-img-content img {
  transform: scale(1.02);
}

/* Ordem dos elementos: categoria, data, título, excerto. */
.appb-noticias .ast-article-inner .cat-links {
  order: 1;
  margin: 0 0 10px;
  line-height: 1.3;
}

.appb-noticias .ast-article-inner .cat-links a {
  color: var(--appb-green-text);
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-transform: uppercase;
}

.appb-noticias .ast-article-inner .cat-links a:hover,
.appb-noticias .ast-article-inner .cat-links a:focus-visible {
  color: var(--appb-text);
}

.appb-noticias .ast-article-inner .ast-blog-meta-container {
  order: 2;
  margin: 0 0 12px;
  padding: 0;
}

.appb-noticias .ast-article-inner .entry-meta,
.appb-noticias .ast-article-inner .entry-meta * {
  color: var(--appb-date);
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.3;
}

.appb-noticias .ast-article-inner .posted-on {
  display: flex;
  align-items: center;
  gap: 10px;
}

.appb-noticias .ast-article-inner .posted-on::before {
  width: 24px;
  height: 2px;
  flex: 0 0 24px;
  background: var(--appb-green);
  content: "";
}

.appb-noticias .ast-article-inner .entry-title {
  display: -webkit-box;
  order: 3;
  margin: 0 0 12px;
  overflow: hidden;
  /* Verde, como os H3 do kit Elementor nos cartões da página inicial. */
  color: var(--appb-green);
  font-family: "Poppins", sans-serif;
  font-size: clamp(1.1rem, 1.4vw, 1.3rem);
  font-weight: 600;
  line-height: 1.3;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
}

.appb-noticias .ast-article-inner .entry-title a,
.appb-noticias .ast-article-inner .entry-title a:visited {
  color: inherit;
  text-decoration: none;
}

.appb-noticias .ast-article-inner .entry-title a:hover,
.appb-noticias .ast-article-inner .entry-title a:focus-visible {
  color: var(--appb-green-text);
}

.appb-noticias .ast-article-inner .ast-excerpt-container {
  order: 4;
  margin: 0;
  color: var(--appb-text-muted);
  font-size: 0.9375rem;
  line-height: 1.6;
}

/* Excertos manuais podem ter vários parágrafos: só o primeiro é mostrado. */
.appb-noticias .ast-article-inner .ast-excerpt-container > :not(:first-child) {
  display: none;
}

.appb-noticias .ast-article-inner .ast-excerpt-container > p:first-child {
  display: -webkit-box;
  margin: 0;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
}

.appb-noticias .ast-article-inner .entry-content:empty {
  display: none;
}

/* Paginação com caixas de borda fina; a página atual fica a verde. */
.appb-noticias .ast-pagination {
  padding-top: clamp(32px, 4vw, 48px);
}

.appb-noticias .ast-pagination .page-numbers {
  box-sizing: border-box;
  min-width: 2.5em;
  height: 2.5em;
  margin: 0 3px;
  border: 1px solid var(--appb-card-border);
  border-radius: var(--appb-card-radius);
  background: #fff;
  color: var(--appb-text-muted);
  font-size: 0.9375rem;
  line-height: calc(2.5em - 2px);
  text-align: center;
  text-decoration: none;
  transition: border-color 0.2s ease, color 0.2s ease;
}

.appb-noticias .ast-pagination .page-numbers.dots {
  border-color: transparent;
  background: none;
}

.appb-noticias .ast-pagination a.page-numbers:hover,
.appb-noticias .ast-pagination a.page-numbers:focus-visible {
  border-color: var(--appb-green);
  color: var(--appb-green-text);
}

.appb-noticias .ast-pagination .page-numbers.current,
.appb-noticias .ast-pagination .page-numbers.current:hover {
  border-color: var(--appb-green);
  background: var(--appb-green);
  color: var(--appb-text);
}

.appb-noticias .ast-pagination .prev.page-numbers,
.appb-noticias .ast-pagination .next.page-numbers {
  width: auto;
  height: 2.5em;
  padding: 0 1.1em;
  line-height: calc(2.5em - 2px);
}

@media (max-width: 1024px) {
  .appb-noticias {
    --appb-columns: 2;
  }
}

/* Numa só coluna, os cartões não estão lado a lado e cada um usa a sua altura. */
@media (max-width: 768px) {
  .appb-noticias {
    --appb-columns: 1;
  }

  .appb-noticias #primary .site-main > .ast-row {
    grid-auto-rows: auto;
  }

  .appb-noticias .ast-article-post .post-thumb-img-content img {
    aspect-ratio: 16 / 10;
  }
}

@media (prefers-reduced-motion: reduce) {
  .appb-noticias .ast-article-inner,
  .appb-noticias .ast-article-post .post-thumb-img-content img,
  .appb-noticias .ast-pagination .page-numbers {
    transition: none;
  }

  .appb-noticias .ast-article-post:hover .post-thumb-img-content img {
    transform: none;
  }
}
