/* ==========================================================================
   Lestu — livros: catálogo (/livros/) e página do livro
   Sem modelo próprio: derivado de M3/M5 (filtros, grade) e M4 (perfil).
   Reaproveita .filtros-acervo e .abas-pagina de paginas.css (carregado junto).
   ========================================================================== */

.catalogo { padding-bottom: var(--esp-7); }
.catalogo__grade { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--esp-6) var(--esp-5); list-style: none; margin: 0; padding: 0; }
@media (max-width: 1100px) { .catalogo__grade { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 860px) { .catalogo__grade { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 560px) { .catalogo__grade { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--esp-5) var(--esp-4); } }

/* Página do livro */
.livro { padding-bottom: var(--esp-6); }
.livro__topo { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: var(--esp-7); align-items: start; padding-bottom: var(--esp-6); }
.livro__capa { aspect-ratio: 2 / 2.9; background: #e9e3d4; overflow: hidden; }
.livro__capa img { width: 100%; height: 100%; object-fit: cover; }
.livro__info { padding-left: var(--esp-6); border-left: 2px solid var(--lestu-ouro); }
.livro__titulo { font-size: var(--fs-3xl); line-height: 1.04; letter-spacing: -0.03em; margin: 0 0 var(--esp-2); }
.livro__subtitulo { font-size: var(--fs-xl); font-weight: 600; line-height: 1.3; margin: 0 0 var(--esp-4); }
.livro__autoria { font-size: var(--fs-lg); font-weight: 700; margin: 0 0 var(--esp-4); }
.livro__autoria a { text-decoration: underline; text-decoration-color: var(--lestu-ouro); text-decoration-thickness: 2px; text-underline-offset: 0.15em; }
.livro__autoria-rotulo { font-weight: 500; }
.livro__chamada { max-width: 44rem; margin: 0 0 var(--esp-5); }
.livro__dados { display: grid; grid-template-columns: repeat(auto-fill, minmax(10rem, 1fr)); gap: 0; margin: 0 0 var(--esp-5); border-top: 1px solid var(--lestu-linha); }
.livro__dados div { padding: var(--esp-3) var(--esp-4) var(--esp-3) 0; border-bottom: 1px solid var(--lestu-linha); }
.livro__dados dt { font-size: var(--fs-xs); font-weight: 700; text-transform: uppercase; letter-spacing: 0.03em; color: var(--lestu-ouro-texto); }
.livro__dados dd { margin: 0; font-weight: 700; overflow-wrap: anywhere; }
.livro__acoes { display: flex; flex-wrap: wrap; gap: var(--esp-3); }
.livro__preco { margin-left: var(--esp-2); padding-left: var(--esp-2); border-left: 1px solid currentColor; font-weight: 800; }
.livro__preco del { opacity: 0.7; font-weight: 500; }
.livro__preco ins { text-decoration: none; }

.livro__secao { padding-block: var(--esp-6) 0; }
.livro__autores { display: grid; grid-template-columns: repeat(auto-fill, minmax(10rem, 12rem)); gap: var(--esp-5); list-style: none; margin: 0; padding: 0; }
.livro__grade-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--esp-5); list-style: none; margin: 0; padding: 0; }

@media (max-width: 900px) {
	.livro__topo { grid-template-columns: 220px minmax(0, 1fr); gap: var(--esp-5); }
	.livro__info { padding-left: var(--esp-5); }
	.livro__grade-3 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
	.livro__topo { grid-template-columns: 1fr; }
	.livro__capa { max-width: 240px; }
	.livro__info { padding-left: var(--esp-4); }
	.livro__grade-3 { grid-template-columns: 1fr; }
	.livro__acoes .botao { width: 100%; }
}
