/*
 * Páginas internas das editorias: menu da editoria na lateral.
 *
 * Carregado só nas páginas que usam a lateral (inc/secoes.php). As cores e
 * medidas vêm das variáveis de moderno.css.
 */

/* O menu horizontal da editoria dá lugar à lateral. */
.mer-com-secao #masthead {
	display: none !important;
}

/* Faixa do título mais baixa: o caminho e a editoria já situam a pessoa. */
.mer-com-secao .l-template-content__banner {
	height: auto;
	min-height: 0;
	padding: 2.25rem 0 2.75rem;
}

/* ------------------------------------------------------------------------ */
/* Faixa do título: caminho e nome da editoria                               */
/* ------------------------------------------------------------------------ */

.mer-migalhas ol {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.25rem 0;
	margin: 0 0 1rem;
	padding: 0;
	list-style: none;
	font-size: 0.95rem;
}

.mer-migalhas li {
	color: rgba(255, 255, 255, 0.75);
}

.mer-migalhas li + li::before {
	content: '\203A';
	margin: 0 0.55rem;
	color: var(--mer-ouro);
}

.mer-migalhas a {
	color: rgba(255, 255, 255, 0.85) !important;
	text-decoration: none !important;
}

.mer-migalhas a:hover {
	color: #fff !important;
	text-decoration: underline !important;
}

.mer-cabecalho__sobretitulo {
	color: var(--mer-ouro);
	font-size: 0.85rem;
	font-weight: 700;
	letter-spacing: 0.22em;
	text-transform: uppercase;
}

/* ------------------------------------------------------------------------ */
/* Grade: lateral e conteúdo                                                 */
/* ------------------------------------------------------------------------ */

.mer-secao {
	padding: 3rem 0 4.5rem;
	background: linear-gradient(180deg, #fbf7f2 0, #fff 420px);
}

/* Mais larga que o container do resto do site: em tela grande a página não
   fica espremida numa faixa de 1140 px no meio. */
.mer-secao > .container {
	max-width: 1440px;
	padding-left: 2rem;
	padding-right: 2rem;
}

.mer-secao__grade {
	display: grid;
	grid-template-columns: 300px minmax(0, 1fr);
	gap: clamp(2.5rem, 4vw, 4.5rem);
	align-items: stretch;
}

.mer-secao__conteudo {
	min-width: 0;
}

.mer-secao__fixa {
	position: sticky;
	top: 1.5rem;
	display: flex;
	flex-direction: column;
	gap: 1.25rem;
	max-height: calc(100vh - 3rem);
	overflow-y: auto;
	scrollbar-width: thin;
	border-radius: var(--mer-raio);
}

.admin-bar .mer-secao__fixa {
	top: calc(32px + 1.5rem);
	max-height: calc(100vh - 32px - 3rem);
}

/* ------------------------------------------------------------------------ */
/* Menu da editoria                                                          */
/* ------------------------------------------------------------------------ */

.mer-secao__menu {
	flex-shrink: 0;
	overflow: hidden;
	border-radius: var(--mer-raio);
	background: #fff;
	box-shadow: var(--mer-sombra-alta);
}

.mer-secao__titulo {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 1.1rem 1.25rem 1rem;
	border: 0;
	background: linear-gradient(135deg, #a50311 0%, #6e0008 100%);
	color: #fff;
	text-align: left;
	cursor: default;
}

.mer-secao__rotulo {
	color: #f3cf8a;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.mer-secao__nome {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 1.65rem;
	font-weight: 700;
	line-height: 1.15;
}

.mer-secao__lista {
	margin: 0;
	padding: 0.6rem;
	list-style: none;
}

.mer-secao__lista--sub {
	margin: 0.15rem 0 0.35rem 1.1rem;
	padding: 0 0 0 0.6rem;
	border-left: 2px solid #eadfd3;
}

.mer-secao__linha {
	display: flex;
	align-items: center;
	gap: 0.25rem;
}

.mer-secao__link {
	position: relative;
	flex: 1 1 auto;
	display: block;
	width: 100%;
	padding: 0.55rem 0.85rem;
	border: 0;
	border-radius: 10px;
	background: none;
	color: var(--mer-texto) !important;
	font-family: 'EB Garamond', Georgia, serif;
	font-size: 1.05rem;
	line-height: 1.3;
	text-align: left;
	text-decoration: none !important;
	transition: background-color var(--mer-tempo), color var(--mer-tempo), padding var(--mer-tempo);
}

.mer-secao__lista--sub .mer-secao__link {
	padding: 0.4rem 0.7rem;
	font-size: 0.98rem;
	color: var(--mer-suave) !important;
}

.mer-secao__link:hover,
.mer-secao__link:focus-visible {
	background: #f6eee6;
	color: var(--mer-marca) !important;
	padding-left: 1.05rem;
}

.mer-secao__grupo {
	cursor: pointer;
}

.is-atual > .mer-secao__linha > .mer-secao__link {
	background: #f6eee6;
	color: var(--mer-marca) !important;
	font-weight: 700;
}

.is-atual > .mer-secao__linha > .mer-secao__link::before {
	content: '';
	position: absolute;
	top: 22%;
	bottom: 22%;
	left: 0;
	width: 3px;
	border-radius: 3px;
	background: var(--mer-ouro);
}

.mer-secao__abre {
	flex: 0 0 auto;
	width: 34px;
	height: 34px;
	display: grid;
	place-items: center;
	border: 0;
	border-radius: 8px;
	background: none;
	cursor: pointer;
	transition: background-color var(--mer-tempo);
}

.mer-secao__abre::before {
	content: '';
	width: 8px;
	height: 8px;
	margin-top: -4px;
	border-right: 2px solid var(--mer-marca);
	border-bottom: 2px solid var(--mer-marca);
	transform: rotate(45deg);
	transition: transform var(--mer-tempo), margin var(--mer-tempo);
}

.mer-secao__abre[aria-expanded='true']::before {
	margin-top: 4px;
	transform: rotate(-135deg);
}

.mer-secao__abre:hover {
	background: #f6eee6;
}

/* ------------------------------------------------------------------------ */
/* Notícias da editoria, no fim do conteúdo                                  */
/* ------------------------------------------------------------------------ */

.mer-secao__noticias {
	margin-top: 3.5rem;
}

.mer-secao__noticias-topo {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	gap: 0.5rem 1rem;
	margin-bottom: 1.5rem;
}

.mer-secao__noticias-topo .mer-secao__subtitulo {
	margin: 0;
}

.mer-secao__noticias-todas {
	color: var(--mer-marca) !important;
	font-weight: 700;
	text-decoration: none !important;
}

.mer-secao__noticias-todas::after {
	content: ' \2192';
}

.mer-secao__noticias-todas:hover {
	text-decoration: underline !important;
}

/* ------------------------------------------------------------------------ */
/* Conteúdo                                                                  */
/* ------------------------------------------------------------------------ */

.mer-secao__intro {
	margin-bottom: 2rem;
	color: var(--mer-suave);
	font-size: 1.15rem;
	line-height: 1.65;
}

.mer-secao__intro a {
	color: var(--mer-marca) !important;
	text-decoration: underline !important;
}

.mer-secao__texto {
	font-size: clamp(1.12rem, 0.95rem + 0.3vw, 1.25rem);
	line-height: 1.85;
}

.mer-secao__texto > *:first-child {
	margin-top: 0;
}

/* Respiro entre os blocos: o texto vinha com 16 px entre parágrafos. */
.mer-secao__texto p,
.mer-secao__texto ul,
.mer-secao__texto ol,
.mer-secao__texto blockquote {
	margin-bottom: 1.35em;
}

.mer-secao__texto li + li {
	margin-top: 0.4em;
}

.mer-secao__texto h2,
.mer-secao__texto h3,
.mer-secao__texto h4 {
	margin: 1.8em 0 0.7em;
	line-height: 1.25;
}

.mer-secao__texto figure,
.mer-secao__texto .wp-block-image,
.mer-secao__texto .wp-block-media-text,
.mer-secao__texto .wp-block-gallery {
	margin-top: 2rem;
	margin-bottom: 2rem;
}

.mer-secao__texto .wp-block-columns {
	gap: clamp(1.5rem, 3vw, 3rem);
	margin-bottom: 2rem;
}

.mer-secao__texto .wp-block-media-text {
	column-gap: clamp(1.5rem, 3vw, 3rem);
	align-items: start;
}

.mer-secao__texto .wp-block-media-text__content {
	padding: 0;
}

.mer-secao__texto hr {
	margin: 2.5rem 0;
}

.mer-secao__texto img {
	max-width: 100%;
	height: auto;
	border-radius: 12px;
}

.mer-secao__subtitulo {
	position: relative;
	margin: 3rem 0 1.5rem;
	padding-bottom: 0.6rem;
	color: var(--mer-marca-escura, #6e0008);
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 2rem;
	font-weight: 700;
}

.mer-secao__subtitulo::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 64px;
	height: 3px;
	border-radius: 3px;
	background: var(--mer-ouro);
}

/* Anterior e próxima. */
.mer-secao__vizinhos {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
	margin-top: 3.5rem;
	padding-top: 2rem;
	border-top: 1px solid #eadfd3;
}

.mer-secao__vizinho {
	display: flex;
	flex-direction: column;
	gap: 0.2rem;
	padding: 1rem 1.25rem;
	border: 1px solid #eadfd3;
	border-radius: 12px;
	background: #fff;
	text-decoration: none !important;
	transition: border-color var(--mer-tempo), box-shadow var(--mer-tempo), transform var(--mer-tempo);
}

.mer-secao__vizinho span {
	color: var(--mer-ouro-escuro);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.mer-secao__vizinho strong {
	color: var(--mer-marca-escura, #6e0008);
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 1.3rem;
	line-height: 1.2;
}

.mer-secao__vizinho--anterior span::before {
	content: '\2190  ';
}

.mer-secao__vizinho--proxima {
	text-align: right;
}

.mer-secao__vizinho--proxima span::after {
	content: '  \2192';
}

.mer-secao__vizinho:hover {
	border-color: var(--mer-marca);
	box-shadow: 0 10px 24px rgba(98, 0, 0, 0.12);
	transform: translateY(-2px);
}

/* ------------------------------------------------------------------------ */
/* Equipe de governo                                                         */
/* ------------------------------------------------------------------------ */

.mer-pessoa {
	overflow: hidden;
	border-radius: var(--mer-raio);
	background: #fff;
	box-shadow: var(--mer-sombra-alta);
	display: flex;
	flex-direction: column;
}

.mer-pessoa__foto {
	aspect-ratio: 4 / 5;
	overflow: hidden;
	background: #f2ebe3;
}

.mer-pessoa__foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	transition: transform 0.6s ease;
}

.mer-pessoa:hover .mer-pessoa__foto img {
	transform: scale(1.04);
}

.mer-pessoa__corpo {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 1rem 1.15rem 1.25rem;
}

.mer-pessoa__cargo {
	margin: 0 0 0.3rem;
	color: var(--mer-ouro-escuro);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.mer-pessoa__nome {
	margin: 0 0 1rem;
	color: var(--mer-marca-escura, #6e0008);
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1.2;
}

.mer-pessoa__resumo {
	margin: 0 0 1.25rem;
	color: var(--mer-suave);
	font-size: 1.05rem;
	line-height: 1.65;
}

.mer-pessoa__mais {
	margin-top: auto;
	padding: 0.5rem 1rem;
	border: 0;
	border-radius: 10px;
	background: var(--mer-marca);
	color: #fff;
	font-family: 'EB Garamond', Georgia, serif;
	font-size: 0.95rem;
	font-weight: 700;
	cursor: pointer;
	transition: background-color var(--mer-tempo);
}

.mer-pessoa__mais:hover,
.mer-pessoa__mais:focus-visible {
	background: var(--mer-ouro-escuro);
}

.mer-pessoa--destaque {
	display: grid;
	grid-template-columns: minmax(220px, 300px) 1fr;
	align-items: stretch;
}

.mer-pessoa--destaque .mer-pessoa__foto {
	aspect-ratio: auto;
	min-height: 340px;
}

.mer-pessoa--destaque .mer-pessoa__corpo {
	justify-content: center;
	padding: 2rem 2.25rem;
}

.mer-pessoa--destaque .mer-pessoa__nome {
	font-size: 2.1rem;
}

.mer-equipe {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(175px, 1fr));
	gap: 1.5rem;
}

/* Janela com a trajetória. */
.mer-bio {
	width: calc(100% - 2rem);
	max-width: 760px;
	max-height: 88vh;
	padding: 0;
	border: 0;
	border-radius: 20px;
	box-shadow: 0 30px 80px rgba(40, 0, 0, 0.35);
}

.mer-bio::backdrop {
	background: rgba(35, 5, 5, 0.6);
}

.mer-bio__conteudo {
	padding: 2rem 2rem 2.25rem;
}

.mer-bio__topo {
	display: flex;
	gap: 1.1rem;
	align-items: center;
	margin-bottom: 1.5rem;
	padding-right: 2.5rem;
}

.mer-bio__foto {
	flex: 0 0 84px;
	width: 84px;
	height: 84px;
	border-radius: 50%;
	object-fit: cover;
	object-position: center top;
}

.mer-bio__nome {
	margin: 0;
	color: var(--mer-marca-escura, #6e0008);
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.15;
}

.mer-bio__texto {
	font-size: 1.08rem;
	line-height: 1.7;
}

.mer-bio__fechar {
	position: sticky;
	top: 1rem;
	float: right;
	width: 40px;
	height: 40px;
	margin: 1rem 1rem -56px 0;
	border: 0;
	border-radius: 50%;
	background: #f6eee6;
	cursor: pointer;
	z-index: 1;
}

.mer-bio__fechar::before,
.mer-bio__fechar::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 2px;
	background: var(--mer-marca);
	transform: translate(-50%, -50%) rotate(45deg);
}

.mer-bio__fechar::after {
	transform: translate(-50%, -50%) rotate(-45deg);
}

.mer-bio__fechar:hover {
	background: #efdfd0;
}

/* ------------------------------------------------------------------------ */
/* Acervo                                                                    */
/* ------------------------------------------------------------------------ */

.mer-acervo,
.mer-casas {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
	gap: 1.5rem;
}

.mer-casas {
	grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}

.mer-obra__link,
.mer-casa__link {
	height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border-radius: var(--mer-raio);
	background: #fff;
	box-shadow: var(--mer-sombra-alta);
	text-decoration: none !important;
	transition: transform var(--mer-tempo), box-shadow var(--mer-tempo);
}

.mer-obra__link:hover,
.mer-casa__link:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 18px rgba(60, 20, 10, 0.1), 0 26px 50px rgba(60, 20, 10, 0.18);
}

.mer-obra__capa {
	position: relative;
	aspect-ratio: 3 / 4;
	overflow: hidden;
	background: linear-gradient(135deg, #a50311, #6e0008);
}

.mer-obra__capa img,
.mer-casa__foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s ease;
}

.mer-obra__link:hover img,
.mer-casa__link:hover img {
	transform: scale(1.04);
}

.mer-obra__selo {
	position: absolute;
	top: 0.75rem;
	right: 0.75rem;
	padding: 0.15rem 0.55rem;
	border-radius: 6px;
	background: var(--mer-marca);
	color: #fff;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
}

.mer-obra__titulo {
	flex: 1 1 auto;
	padding: 1rem 1.1rem 0.5rem;
	color: var(--mer-texto);
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1.25;
}

.mer-obra__acao,
.mer-casa__acao {
	padding: 0 1.1rem 1.1rem;
	color: var(--mer-marca);
	font-size: 0.95rem;
	font-weight: 700;
}

.mer-obra__acao::after,
.mer-casa__acao::after {
	content: ' \2192';
}

/* ------------------------------------------------------------------------ */
/* Comunidades                                                               */
/* ------------------------------------------------------------------------ */

.mer-filtros {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-bottom: 2rem;
}

.mer-filtro {
	padding: 0.45rem 1rem;
	border: 1px solid #e3d6c8;
	border-radius: 10px;
	background: #fff;
	color: var(--mer-texto) !important;
	font-size: 1rem;
	text-decoration: none !important;
	transition: background-color var(--mer-tempo), border-color var(--mer-tempo), color var(--mer-tempo);
}

.mer-filtro:hover {
	border-color: var(--mer-marca);
	color: var(--mer-marca) !important;
}

.mer-filtro.is-ativo {
	border-color: var(--mer-marca);
	background: var(--mer-marca);
	color: #fff !important;
}

.mer-casa__foto {
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #f2ebe3;
}

.mer-casa__corpo {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	padding: 1rem 1.15rem 0;
}

.mer-casa__nome {
	color: var(--mer-marca-escura, #6e0008);
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.2;
}

.mer-casa__onde {
	margin-top: 0.25rem;
	color: var(--mer-suave);
	font-size: 0.98rem;
}

.mer-casa__acao {
	margin-top: auto;
	padding: 1rem 0 1.1rem;
}

/* ------------------------------------------------------------------------ */
/* Tablet e celular                                                          */
/* ------------------------------------------------------------------------ */

@media (max-width: 1199.98px) {
	.mer-secao__grade {
		grid-template-columns: 250px minmax(0, 1fr);
		gap: 2rem;
	}

	.mer-pessoa--destaque {
		grid-template-columns: 1fr;
	}

	.mer-pessoa--destaque .mer-pessoa__foto {
		aspect-ratio: 4 / 3;
		min-height: 0;
	}
}

@media (max-width: 991.98px) {
	.mer-secao {
		padding-top: 1.5rem;
	}

	.mer-secao > .container {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	.mer-secao__grade {
		grid-template-columns: minmax(0, 1fr);
		gap: 1.5rem;
	}

	.mer-secao__fixa {
		position: static;
		max-height: none;
		overflow: visible;
	}

	/* No celular o menu vem fechado: o título vira o botão que abre. */
	.mer-secao__titulo {
		position: relative;
		padding-right: 3.5rem;
		cursor: pointer;
	}

	.mer-secao__titulo::after {
		content: '';
		position: absolute;
		top: 50%;
		right: 1.4rem;
		width: 10px;
		height: 10px;
		margin-top: -7px;
		border-right: 2px solid #fff;
		border-bottom: 2px solid #fff;
		transform: rotate(45deg);
		transition: transform var(--mer-tempo), margin var(--mer-tempo);
	}

	.mer-secao__titulo[aria-expanded='true']::after {
		margin-top: -2px;
		transform: rotate(-135deg);
	}

	.mer-secao__menu:not(.is-aberto) .mer-secao__itens {
		display: none;
	}

	.mer-com-secao .l-template-content__banner {
		padding: 1.5rem 1rem 2rem;
	}

	.mer-com-secao .l-template-content__banner__title {
		font-size: 2.1rem;
		line-height: 1.15;
	}

	.mer-migalhas ol {
		font-size: 0.85rem;
	}

	.mer-secao__vizinhos {
		grid-template-columns: 1fr;
	}

	.mer-bio__conteudo {
		padding: 1.5rem 1.25rem 1.75rem;
	}
}

/* Enquanto a página nova chega, sem recarregar (assets/js/secao.js). */
.mer-secao__conteudo {
	transition: opacity 0.2s ease;
}

.mer-secao__conteudo.is-carregando {
	opacity: 0.45;
	pointer-events: none;
}

.mer-cabecalho h1:focus {
	outline: none;
}

/* ------------------------------------------------------------------------ */
/* Devoções                                                                  */
/* ------------------------------------------------------------------------ */

.mer-devocoes {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
	gap: 1.5rem;
}

.mer-devocao__link {
	height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border-radius: var(--mer-raio);
	background: #fff;
	box-shadow: var(--mer-sombra-alta);
	text-decoration: none !important;
	transition: transform var(--mer-tempo), box-shadow var(--mer-tempo);
}

.mer-devocao__link:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 18px rgba(60, 20, 10, 0.1), 0 26px 50px rgba(60, 20, 10, 0.18);
}

/* As artes têm o nome escrito nelas: nada de recorte. */
.mer-devocao__foto {
	aspect-ratio: 374 / 235;
	overflow: hidden;
	background: linear-gradient(135deg, #a50311, #6e0008);
}

.mer-devocao__foto img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s ease;
}

.mer-devocao__link:hover img {
	transform: scale(1.04);
}

.mer-devocao__corpo {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	padding: 0.9rem 1.1rem 1.1rem;
}

.mer-devocao__nome {
	color: var(--mer-marca-escura, #6e0008);
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1.2;
}

.mer-devocao__conta {
	margin-top: 0.25rem;
	color: var(--mer-suave);
	font-size: 0.95rem;
}

.mer-devocao__acao {
	margin-top: auto;
	padding-top: 0.75rem;
	color: var(--mer-marca);
	font-size: 0.95rem;
	font-weight: 700;
}

.mer-devocao__acao::after {
	content: ' \2192';
}

.mer-cabecalho__subtitulo {
	font-size: 1.15rem;
}

/* ------------------------------------------------------------------------ */
/* Materiais (e-books, guias e infográficos)                                 */
/* ------------------------------------------------------------------------ */

.mer-materiais__destaque {
	margin-bottom: 2rem;
	overflow: hidden;
	border-radius: var(--mer-raio);
	box-shadow: var(--mer-sombra-alta);
}

.mer-materiais__destaque img {
	display: block;
	width: 100%;
	height: auto;
}

.mer-materiais {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 1.5rem;
}

.mer-material__link {
	height: 100%;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	border-radius: var(--mer-raio);
	background: #fff;
	box-shadow: var(--mer-sombra-alta);
	text-decoration: none !important;
	transition: transform var(--mer-tempo), box-shadow var(--mer-tempo);
}

.mer-material__link:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 18px rgba(60, 20, 10, 0.1), 0 26px 50px rgba(60, 20, 10, 0.18);
}

.mer-material__capa {
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #f2ebe3;
}

.mer-material__capa img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.6s ease;
}

.mer-material__link:hover .mer-material__capa img {
	transform: scale(1.04);
}

/* Sem capa cadastrada: uma capa desenhada com o nome do material. */
.mer-material__sem-capa {
	position: relative;
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 0.35rem;
	padding: 1.5rem;
	background:
		radial-gradient(circle at 85% 15%, rgba(217, 158, 50, 0.35), transparent 45%),
		linear-gradient(135deg, #a50311 0%, #5e0007 100%);
	color: #fff;
}

.mer-material__sem-capa::before {
	content: '';
	position: absolute;
	top: 1.25rem;
	left: 1.5rem;
	width: 42px;
	height: 3px;
	border-radius: 3px;
	background: var(--mer-ouro);
}

.mer-material__sem-capa span {
	color: #f3cf8a;
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.mer-material__sem-capa strong {
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 1.6rem;
	line-height: 1.15;
}

.mer-material__corpo {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	padding: 1.1rem 1.2rem 1.25rem;
}

.mer-material__tipo {
	color: var(--mer-ouro-escuro);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.mer-material__nome {
	margin-top: 0.3rem;
	color: var(--mer-marca-escura, #6e0008);
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.2;
}

.mer-material__resumo {
	margin-top: 0.5rem;
	color: var(--mer-suave);
	font-size: 1rem;
	line-height: 1.55;
}

.mer-material__acao {
	align-self: flex-start;
	margin-top: auto;
	padding: 0.5rem 1.1rem;
	border-radius: 10px;
	background: var(--mer-marca);
	color: #fff;
	font-size: 0.95rem;
	font-weight: 700;
	transition: background-color var(--mer-tempo);
}

.mer-material__nome + .mer-material__acao,
.mer-material__resumo + .mer-material__acao {
	margin-top: 1.25rem;
}

.mer-material__acao::after {
	content: ' \2193';
}

.mer-material__link:hover .mer-material__acao {
	background: var(--mer-ouro-escuro);
}

.mer-vazio {
	padding: 2rem;
	border: 1px dashed #e3d6c8;
	border-radius: var(--mer-raio);
	color: var(--mer-suave);
	text-align: center;
}

.mer-vazio a {
	color: var(--mer-marca) !important;
	text-decoration: underline !important;
}

.mer-material__sem-capa[hidden] {
	display: none;
}
