/**
 * A vitrine da home: livro, UAI Card e os dois juntos.
 *
 * As cores saem de variáveis com valor de reserva — se o tema já tiver as
 * dele (--lu-*), a vitrine acompanha sem precisar mexer aqui.
 */

/* dentro de uma seção do próprio tema, quem dá o respiro é o tema */
.tmv-secao .tmv { margin: 0; }

/* a faixa só existe quando a vitrine entra fora do container do tema —
   nas homes montadas por template, logo antes do rodapé */
.tmv-faixa {
	padding: 0 20px 48px;
	background: #fff;
}

.tmv-faixa .tmv {
	max-width: 1100px;
	margin: 0 auto;
}

.tmv {
	--tmv-tinta: var(--lu-ink, #14232a);
	--tmv-suave: var(--lu-ink-soft, #44555c);
	--tmv-fraca: var(--lu-muted, #78868c);
	--tmv-linha: var(--lu-line, #dde4e7);
	--tmv-claro: var(--lu-bg-blue, #f1f7f8);
	--tmv-cor: var(--lu-accent, #2b7f9b);
	--tmv-cor-esc: var(--lu-blue-deep, #1d6479);
	--tmv-vermelho: var(--lu-red, #c4272c);
	--tmv-raio: var(--lu-radius-lg, 10px);
	--tmv-sombra: var(--lu-shadow-card, 0 1px 2px rgba(20, 35, 42, .04), 0 12px 30px -18px rgba(29, 100, 121, .3));
	--tmv-fundo: var(--lu-surface, #fff);

	margin: 2.6rem 0;
	color: var(--tmv-tinta);
}

.tmv__titulo {
	margin: 0 0 .4rem;
	font-family: var(--lu-serif, Georgia, "Times New Roman", serif);
	font-size: 1.9rem;
	line-height: 1.2;
	text-align: center;
}

.tmv__sub {
	margin: 0 auto 1.8rem;
	max-width: 60ch;
	text-align: center;
	color: var(--tmv-suave);
}

.tmv__grade {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 20px;
	align-items: stretch;
}

/* ------------------------------------------------------------- oferta */

.tmv-oferta {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 22px 22px 24px;
	border: 1px solid var(--tmv-linha);
	border-radius: var(--tmv-raio);
	background: var(--tmv-fundo);
	box-shadow: var(--tmv-sombra);
}

.tmv-oferta--destaque {
	border-color: var(--tmv-cor);
	border-width: 2px;
	background: var(--tmv-claro);
}

.tmv-selo {
	position: absolute;
	top: -11px;
	left: 22px;
	padding: 3px 12px;
	border-radius: 999px;
	background: var(--tmv-vermelho);
	color: #fff;
	font-size: .72rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
	white-space: nowrap;
}

.tmv-oferta__foto {
	margin: 0 0 16px;
	text-align: center;
	line-height: 0;
}

.tmv-oferta__foto--dupla {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 12px;
}

.tmv-oferta__foto--dupla .tmv-oferta__img {
	max-height: 130px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, .08), 0 12px 24px -16px rgba(0, 0, 0, .5);
}

.tmv-oferta__img {
	width: auto;
	max-width: 100%;
	max-height: 190px;
	height: auto;
	border-radius: calc(var(--tmv-raio) - 2px);
}

.tmv-oferta__txt {
	display: flex;
	flex-direction: column;
	flex: 1;
}

.tmv-oferta__nome {
	margin: 0 0 .35rem;
	font-family: var(--lu-serif, Georgia, "Times New Roman", serif);
	font-size: 1.22rem;
	font-weight: 700;
	line-height: 1.25;
}

.tmv-oferta__sub {
	margin: 0 0 1rem;
	font-size: .93rem;
	line-height: 1.5;
	color: var(--tmv-suave);
}

.tmv-oferta__preco {
	margin: auto 0 1.1rem;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1.3;
}

.tmv-oferta__preco .tmv-de {
	font-size: .95rem;
	font-weight: 400;
	color: var(--tmv-fraca);
	text-decoration: line-through;
	margin-right: .3rem;
}

.tmv-oferta__preco del { color: var(--tmv-fraca); font-weight: 400; font-size: .95rem; }
.tmv-oferta__preco ins { text-decoration: none; }

.tmv-bt {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: .95rem 1.4rem;
	border-radius: 999px;
	background: var(--tmv-cor);
	color: #fff;
	font-weight: 600;
	font-size: .98rem;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

.tmv-bt:hover { background: var(--tmv-cor-esc); color: #fff; }
.tmv-bt--destaque { background: var(--tmv-vermelho); }
.tmv-bt--destaque:hover { background: #8e1c20; }

.tmv-oferta__nota {
	margin: .7rem 0 0;
	font-size: .8rem;
	line-height: 1.45;
	text-align: center;
	color: var(--tmv-fraca);
}

@media (max-width: 600px) {
	.tmv__titulo { font-size: 1.55rem; }
	.tmv-oferta { padding: 20px 18px 22px; }
	.tmv-oferta__foto--dupla {
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 12px;
}

.tmv-oferta__foto--dupla .tmv-oferta__img {
	max-height: 130px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, .08), 0 12px 24px -16px rgba(0, 0, 0, .5);
}

.tmv-oferta__img { max-height: 150px; }
}

@media print {
	.tmv { display: none; }
}
