/* layout.css — ajustes de container do site estático.
   Carrega DEPOIS de site.css (CSS real do GeneratePress) e sobrescreve só o
   necessário, com base nas larguras computadas do site ao vivo. */

/* o #content do GeneratePress não tem max-width próprio (no WP vinha de um
   wrapper); aqui o centralizamos em 1070px, igual ao header. */
#content.site-content {
  max-width: 1070px;
  margin-left: auto;
  margin-right: auto;
}
/* sem sidebar (home, categorias, autor): conteúdo ocupa a largura toda */
.no-sidebar #primary.content-area { width: 100%; }
.no-sidebar #main.site-main { margin: 30px 0; }
/* com sidebar (posts): split ~72/28; o resto vem do CSS do GeneratePress */
.right-sidebar #content.site-content { gap: 40px; }
.right-sidebar #primary.content-area { flex: 1 1 0; min-width: 0; }
.right-sidebar #right-sidebar.widget-area { flex: 0 0 280px; }
.right-sidebar #main.site-main { margin: 30px 0; }

.entry-content img,
.post-thumb img { max-width: 100%; height: auto; }

/* listagens (home, categoria, autor) */
.post-list { display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; }
.post-card { border: 1px solid #ececec; border-radius: 10px; overflow: hidden; background: #fff; }
.post-card .post-thumb { display: block; aspect-ratio: 3 / 2; overflow: hidden; }
.post-card .post-thumb img { width: 100%; height: 100%; object-fit: cover; }
.post-card .card-body { padding: 14px 16px 18px; }
.post-card h2 { font-size: 1.05em; margin: 0 0 6px; line-height: 1.35; }
.post-card h2 a { text-decoration: none; }
.post-card .excerpt { font-size: .9em; color: #666; }
.archive-header { margin-bottom: 24px; }
.archive-header h1 { margin-bottom: 6px; }

/* paginação */
.pagination { display: flex; gap: 10px; flex-wrap: wrap; margin: 40px 0 10px; justify-content: center; }
.pagination a, .pagination span {
  padding: 8px 14px; border: 1px solid #ddd; border-radius: 6px; text-decoration: none; }
.pagination .current { background: #f3576c; color: #fff; border-color: #f3576c; }

/* página de autor */
.author-bio { display: flex; gap: 18px; align-items: center; margin: 16px 0 30px; }
.author-bio img { border-radius: 50%; width: 96px; height: 96px; }

@media (max-width: 768px) {
  .post-list { grid-template-columns: 1fr; }
  #content.site-content { padding-left: 16px; padding-right: 16px; }
}
