/* ACERVOH — descoberta do acervo: página ARTE, landings dos eixos, busca.
   Descoberta primeiro, filtro depois. Nada de marketplace. */

/* ---------- cabeça editorial ---------- */
.acervo-cabeca { padding-top: var(--espaco-4); padding-bottom: var(--espaco-3); }
.acervo-titulo {
	font-weight: 500; letter-spacing: -.02em;
	font-size: clamp(2.6rem, 6vw, 4.2rem); line-height: 1; margin: .75rem 0 1rem;
	text-wrap: balance;
}
.acervo-frase {
	font-family: var(--serif); font-style: italic; font-weight: 300;
	font-size: 1.2rem; line-height: 1.55; color: var(--cor-grafite);
	max-width: 34rem; margin: 0;
}

.landing-imagem { margin-bottom: var(--espaco-3); }
.landing-imagem img { width: 100%; }

/* ---------- portas de entrada ---------- */
.portas {
	display: grid; grid-template-columns: repeat(2, 1fr); gap: 2.5rem 2rem;
	padding-top: var(--espaco-2); padding-bottom: var(--espaco-4);
	border-top: 1px solid var(--cor-linha); margin-top: var(--espaco-2);
}
@media (min-width: 860px) { .portas { grid-template-columns: repeat(4, 1fr); } }
.porta ul { list-style: none; margin: .9rem 0 0; padding: 0; display: flex; flex-direction: column; gap: .45rem; }
.porta a { font-size: .95rem; font-weight: 500; }
.porta a:hover { text-decoration: underline; text-underline-offset: 3px; }

/* ---------- refinamento ---------- */
.acervo-lista { border-top: 1px solid var(--cor-linha); padding-top: 1.25rem; padding-bottom: var(--espaco-4); }
.refinar-linha { display: flex; align-items: center; flex-wrap: wrap; gap: .75rem; }
.refinar-toggle {
	background: none; border: none; padding: 0; cursor: pointer;
	font-family: var(--mono); font-size: .66rem; letter-spacing: .12em; color: var(--cor-tinta);
}
.refinar-chip {
	font-family: var(--mono); font-size: .64rem; letter-spacing: .06em;
	border: 1px solid var(--cor-linha); padding: .4rem .7rem;
}
.refinar-chip:hover { border-color: var(--cor-tinta); }
.refinar-total { margin-left: auto; font-family: var(--mono); font-size: .64rem; letter-spacing: .1em; color: var(--cor-grafite); }

.refinar-painel { border-top: 1px solid var(--cor-linha); border-bottom: 1px solid var(--cor-linha); margin-top: 1.25rem; padding: 1.75rem 0; }
.refinar-colunas { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1.75rem 2rem; }
@media (min-width: 700px) { .refinar-colunas { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1000px) { .refinar-colunas { grid-template-columns: repeat(5, 1fr); } }
.refinar-painel fieldset { border: none; margin: 0; padding: 0; }
.refinar-painel legend { padding: 0; margin-bottom: .7rem; }
.refinar-painel label { display: flex; align-items: baseline; gap: .5rem; font-size: .88rem; margin-bottom: .4rem; cursor: pointer; }
.refinar-painel input[type="checkbox"] { accent-color: var(--cor-tinta); }
.refinar-acoes { display: flex; align-items: center; gap: 1.5rem; margin-top: 1.5rem; }
.refinar-aplicar {
	font-family: var(--sans); font-weight: 500; font-size: .7rem; letter-spacing: .16em;
	padding: .8rem 1.5rem; background: var(--cor-tinta); color: var(--cor-fundo);
	border: 1px solid var(--cor-tinta); cursor: pointer;
}
.refinar-limpar {
	font-family: var(--mono); font-size: .64rem; letter-spacing: .1em; color: var(--cor-grafite);
	text-decoration: underline; text-underline-offset: 3px;
}

/* ---------- grid do acervo ---------- */
.grid-obras {
	display: grid; grid-template-columns: repeat(2, 1fr);
	gap: 3rem 1.5rem; margin-top: 2.5rem;
}
@media (min-width: 860px) { .grid-obras { grid-template-columns: repeat(3, 1fr); gap: 4rem 2.5rem; } }

.card-obra { position: relative; }
.card-obra-acoes {
	display: flex; gap: 1rem; margin-top: .5rem;
	opacity: 0; transition: opacity .2s;
}
.card-obra:hover .card-obra-acoes,
.card-obra:focus-within .card-obra-acoes { opacity: 1; }
.card-obra-acoes a,
.card-obra-acoes button {
	background: none; border: none; padding: 0; cursor: pointer;
	font-family: var(--mono); font-size: .6rem; letter-spacing: .12em; color: var(--cor-grafite);
}
.card-obra-acoes a:hover,
.card-obra-acoes button:hover,
.card-obra-acoes .favorito-ativo { color: var(--cor-tinta); }
@media (hover: none) { .card-obra-acoes { opacity: 1; } }

/* ---------- carregar mais / paginação ---------- */
.carregar-mais-area { display: flex; justify-content: center; margin-top: var(--espaco-4); }
.carregar-mais {
	font-family: var(--mono); font-size: .66rem; letter-spacing: .14em;
	border: 1px solid var(--cor-tinta); padding: .9rem 1.8rem;
}
.carregar-mais:hover { background: var(--cor-tinta); color: var(--cor-fundo); }
.paginacao-seo {
	position: absolute; width: 1px; height: 1px; overflow: hidden;
	clip: rect(0 0 0 0); clip-path: inset(50%);
}

/* ---------- estado vazio ---------- */
.acervo-vazio { padding: var(--espaco-4) 0; max-width: 34rem; }
.acervo-vazio-frase {
	font-family: var(--serif); font-style: italic; font-weight: 300;
	font-size: 1.35rem; line-height: 1.5; margin: 1rem 0 1.25rem;
}
.acervo-vazio-portas { margin-top: 2.5rem; display: flex; flex-wrap: wrap; gap: .6rem; align-items: baseline; }
.acervo-vazio-portas .rotulo { width: 100%; margin-bottom: .25rem; }
.acervo-vazio-portas a {
	font-family: var(--mono); font-size: .66rem; letter-spacing: .08em;
	border: 1px solid var(--cor-linha); padding: .45rem .75rem;
}
.acervo-vazio-portas a:hover { border-color: var(--cor-tinta); }

/* ---------- COLEÇÕES: o corredor de exposições ---------- */
.corredor { display: flex; flex-direction: column; }
.exposicao {
	display: grid; grid-template-columns: 1fr; gap: 2rem;
	padding-top: var(--espaco-4); padding-bottom: var(--espaco-4);
	border-top: 1px solid var(--cor-linha);
}
@media (min-width: 860px) {
	.exposicao { grid-template-columns: 1.4fr 1fr; gap: 4rem; align-items: center; }
	.exposicao-invertida .exposicao-imagem { order: 2; }
	.exposicao-invertida .exposicao-texto { order: 1; }
}
.exposicao-texto { display: flex; flex-direction: column; align-items: flex-start; gap: 1.1rem; }
.exposicao-texto h2 {
	font-weight: 500; letter-spacing: -.02em;
	font-size: clamp(2rem, 4.5vw, 3.2rem); line-height: 1.02; margin: 0; text-wrap: balance;
}
.exposicao-texto .narrativa {
	font-family: var(--serif); font-style: italic; font-weight: 300;
	font-size: 1.15rem; line-height: 1.55; color: var(--cor-grafite); margin: 0; max-width: 26rem;
}
.colecoes .cta, .landing-colecao .cta {
	display: inline-block;
	font-family: var(--sans); font-weight: 500; font-size: .72rem; letter-spacing: .16em;
	padding: .9rem 1.6rem; border: 1px solid var(--cor-tinta); color: var(--cor-tinta);
	transition: background .2s, color .2s;
}
.colecoes .cta:hover, .landing-colecao .cta:hover { background: var(--cor-tinta); color: var(--cor-fundo); }

/* ---------- landing de coleção: argumento + ritmo editorial ---------- */
.colecao-argumento { padding-top: var(--espaco-3); padding-bottom: var(--espaco-2); }
.grid-editorial { display: grid; grid-template-columns: repeat(12, 1fr); gap: 3.5rem 2rem; margin-top: 2.5rem; }
.ge-item:nth-child(6n+1) { grid-column: 1 / 8; }
.ge-item:nth-child(6n+2) { grid-column: 9 / 13; padding-top: 6rem; }
.ge-item:nth-child(6n+3) { grid-column: 1 / 5; }
.ge-item:nth-child(6n+4) { grid-column: 6 / 13; }
.ge-item:nth-child(6n+5) { grid-column: 3 / 9; }
.ge-item:nth-child(6n)   { grid-column: 10 / 13; padding-top: 4rem; }
@media (max-width: 859px) {
	.grid-editorial { gap: 2.5rem 1.25rem; }
	.ge-item:nth-child(6n+1) { grid-column: 1 / 11; }
	.ge-item:nth-child(6n+2) { grid-column: 5 / 13; padding-top: 0; }
	.ge-item:nth-child(6n+3) { grid-column: 1 / 8; }
	.ge-item:nth-child(6n+4) { grid-column: 2 / 13; }
	.ge-item:nth-child(6n+5) { grid-column: 1 / 9; }
	.ge-item:nth-child(6n)   { grid-column: 6 / 13; padding-top: 0; }
}

/* ---------- COMPOSIÇÕES: a galeria de cenas ---------- */
.cenas { display: flex; flex-direction: column; gap: var(--espaco-4); padding-top: var(--espaco-2); padding-bottom: var(--espaco-4); border-top: 1px solid var(--cor-linha); }
.cena-imagem { display: block; }
.cena-legenda { display: flex; align-items: baseline; gap: 1.5rem; margin-top: 1rem; }
.cena-legenda h2 { font-weight: 500; letter-spacing: -.015em; font-size: 1.5rem; margin: 0; }
.cena-pecas { font-family: var(--mono); font-size: .62rem; letter-spacing: .12em; color: var(--cor-grafite); }

/* ---------- landing da composição: fichas catalográficas ---------- */
.nesta-composicao { padding-top: var(--espaco-3); padding-bottom: var(--espaco-4); }
.fichas { display: grid; grid-template-columns: repeat(2, 1fr); gap: 2.5rem 1.5rem; margin-top: 2rem; }
@media (min-width: 860px) { .fichas { grid-template-columns: repeat(3, 1fr); gap: 3rem 2.5rem; } }
.ficha { display: flex; flex-direction: column; gap: .35rem; }
.ficha-imagem { display: block; margin-bottom: .6rem; overflow: hidden; }
.ficha-imagem img { transition: transform .5s ease; }
.ficha:hover .ficha-imagem img { transform: scale(1.015); }
.ficha-artista { font-family: var(--mono); font-size: .62rem; letter-spacing: .1em; text-transform: uppercase; }
.ficha-titulo { font-weight: 500; font-size: .95rem; }
.ficha-dimensoes { font-family: var(--mono); font-size: .64rem; color: var(--cor-grafite); }
.ficha-preco { font-family: var(--mono); font-size: .68rem; color: var(--cor-grafite); }
.ficha-preco .a-partir { text-transform: uppercase; letter-spacing: .06em; }
.ficha-acao {
	margin-top: .4rem; align-self: flex-start;
	font-family: var(--mono); font-size: .6rem; letter-spacing: .12em; color: var(--cor-tinta);
	border-bottom: 1px solid var(--cor-tinta); padding-bottom: .1rem;
}
.nesta-nota { font-family: var(--mono); font-size: .62rem; letter-spacing: .06em; color: var(--cor-grafite); margin-top: 2.5rem; }

/* ---------- DESIGN & OBJETOS: vitrine secundária à arte ---------- */
.vitrine {
	display: grid; grid-template-columns: repeat(2, 1fr);
	gap: 2.5rem 1.5rem; margin-top: 2.5rem; max-width: 56rem;
}
@media (min-width: 860px) { .vitrine { grid-template-columns: repeat(3, 1fr); gap: 3rem 2.5rem; } }
.vitrine-peca { display: flex; flex-direction: column; gap: .3rem; }
.vitrine-imagem { display: block; margin-bottom: .6rem; overflow: hidden; }
.vitrine-imagem img { transition: transform .5s ease; }
.vitrine-peca:hover .vitrine-imagem img { transform: scale(1.015); }
.vitrine-designer { font-family: var(--mono); font-size: .62rem; letter-spacing: .1em; text-transform: uppercase; }
.vitrine-nome { font-weight: 500; font-size: .92rem; }
.vitrine-detalhes { font-family: var(--mono); font-size: .62rem; color: var(--cor-grafite); }
.vitrine-preco { font-family: var(--mono); font-size: .66rem; color: var(--cor-grafite); margin-top: .2rem; }
.vitrine-preco .a-partir { text-transform: uppercase; letter-spacing: .06em; }

/* ---------- JOURNAL: lista editorial ---------- */
.journal-categorias { display: flex; flex-wrap: wrap; gap: 1.25rem; margin-top: 1.5rem; }
.journal-categorias a { font-family: var(--mono); font-size: .64rem; letter-spacing: .12em; }
.journal-categorias a:hover { color: var(--cor-grafite); }
.journal-lista { display: flex; flex-direction: column; gap: var(--espaco-4); margin-top: 2rem; }
.journal-item { display: grid; grid-template-columns: 1fr; gap: 1.25rem; }
@media (min-width: 760px) {
	.journal-item { grid-template-columns: 1fr 1.5fr; gap: 2.5rem; align-items: center; max-width: 52rem; }
	.journal-destaque { grid-template-columns: 1.5fr 1fr; max-width: none; }
}
.journal-titulo {
	display: block; font-weight: 500; letter-spacing: -.015em;
	font-size: clamp(1.3rem, 2.6vw, 1.7rem); line-height: 1.15; margin-top: .6rem; text-wrap: balance;
}
.journal-destaque .journal-titulo { font-size: clamp(1.7rem, 3.4vw, 2.4rem); }
.journal-linha { display: block; margin-top: .6rem; font-size: .95rem; line-height: 1.6; color: var(--cor-grafite); max-width: 30rem; }
.journal-item:hover .journal-titulo { text-decoration: underline; text-underline-offset: 4px; }

/* (formulário de busca estilizado no main.css — o header vive em todas as páginas) */
