/* Vitrine HXP (snippet 8772): itens acrescentados aos cartões da vitrine "Nossas escolhas para você".
   Os botões usam seletores com "button." porque o tema Hello pinta todo button[type=button] de rosa (#c36). */

/* Link da foto ocupa a moldura inteira. */
[data-id="537db0c9"] .e-image-link-base,
[data-id="642c6044"] .e-image-link-base,
[data-id="6ef80e1b"] .e-image-link-base {
	display: block;
	width: 100%;
	height: 100%;
}

/* Avaliação */
.hxp-aval {
	display: flex;
	align-items: center;
	gap: 6px;
	line-height: 1;
}
.hxp-stars {
	--nota: 0;
	display: inline-block;
	font-family: Arial, sans-serif !important;
	font-size: 14px;
	line-height: 1;
	letter-spacing: 1px;
	background: linear-gradient(90deg, #F2A900 calc(var(--nota) / 5 * 100%), #D9DDE1 0);
	-webkit-background-clip: text;
	background-clip: text;
	color: transparent;
}
.hxp-stars::before {
	content: "★★★★★";
}
.hxp-aval__num {
	font-size: 12px;
	color: #6B7075;
}

/* Preço + carrinho */
.hxp-linha-preco {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: 2px;
}
.hxp-linha-preco > p {
	margin: 0 !important;
	min-width: 0;
}
button.hxp-carrinho {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 1.5px solid #173E5D;
	border-radius: 999px;
	background: #ffffff;
	color: #173E5D;
	cursor: pointer;
	transition: background-color .25s, border-color .25s, color .25s, transform .25s;
}
button.hxp-carrinho:hover,
button.hxp-carrinho:focus-visible {
	background: #24933C;
	border-color: #24933C;
	color: #ffffff;
}
.hxp-carrinho:focus-visible,
.hxp-ver-rapido:focus-visible,
.hxp-qv button:focus-visible,
.hxp-qv a:focus-visible {
	outline: 3px solid #24933C;
	outline-offset: 2px;
}
.hxp-carregando {
	opacity: .55;
	pointer-events: none;
}

/* Parcelas */
.hxp-parcelas {
	margin: 0;
	font-size: 12.5px;
	line-height: 1.35;
	color: #5B6167;
}
.hxp-parcelas strong {
	font-weight: 700;
	color: #173E5D;
}
.hxp-parcelas em {
	font-style: normal;
	font-weight: 600;
	color: #207F31;
}

/* Botão "Ver rápido" sobre a foto */
button.hxp-ver-rapido {
	position: absolute;
	left: 10px;
	bottom: 10px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 7px 12px;
	border: 0;
	border-radius: 999px;
	background: rgba(255, 255, 255, .95);
	color: #173E5D;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	box-shadow: 0 4px 14px rgba(3, 50, 66, .18);
	cursor: pointer;
	transition: background-color .25s, color .25s;
}
button.hxp-ver-rapido:hover {
	background: #173E5D;
	color: #ffffff;
}
@media (max-width: 767px) {
	button.hxp-ver-rapido {
		left: 8px;
		bottom: 8px;
		padding: 6px 10px;
		font-size: 12px;
	}
	button.hxp-carrinho {
		width: 36px;
		height: 36px;
	}
}

/* Aviso de "adicionado ao carrinho" */
.hxp-aviso {
	position: fixed;
	left: 50%;
	bottom: 24px;
	z-index: 100000;
	transform: translate(-50%, 20px);
	padding: 12px 18px;
	border-radius: 999px;
	background: #173E5D;
	color: #ffffff;
	font-size: 14px;
	box-shadow: 0 10px 30px rgba(3, 50, 66, .3);
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s, transform .3s;
}
.hxp-aviso--on {
	opacity: 1;
	transform: translate(-50%, 0);
	pointer-events: auto;
}
.hxp-aviso a {
	margin-left: 8px;
	color: #7FE08F;
	font-weight: 700;
	text-decoration: underline;
}

/* Janela "Ver rápido" */
.hxp-qv-aberto,
.hxp-qv-aberto body {
	overflow: hidden;
}
.hxp-qv[hidden] {
	display: none;
}
.hxp-qv {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 24px;
}
.hxp-qv__fundo {
	position: absolute;
	inset: 0;
	background: rgba(3, 30, 45, .55);
}
.hxp-qv__caixa {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 32px;
	width: 100%;
	max-width: 980px;
	max-height: calc(100vh - 48px);
	overflow: auto;
	padding: 32px;
	border-radius: 20px;
	background: #ffffff;
	box-shadow: 0 30px 80px rgba(3, 30, 45, .35);
}
.hxp-qv button.hxp-qv__fechar {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 1;
	width: 40px;
	height: 40px;
	padding: 0;
	border: 0;
	border-radius: 999px;
	background: #F5F2EE;
	color: #173E5D;
	font-size: 26px;
	line-height: 1;
	cursor: pointer;
}
.hxp-qv__foto {
	aspect-ratio: 1 / 1;
	overflow: hidden;
	border-radius: 14px;
	background: #F5F2EE;
}
.hxp-qv__foto img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
}
.hxp-qv__miniaturas {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 10px;
}
.hxp-qv button.hxp-qv__mini {
	width: 58px;
	height: 58px;
	padding: 0;
	overflow: hidden;
	border: 2px solid transparent;
	border-radius: 10px;
	background: #F5F2EE;
	cursor: pointer;
}
.hxp-qv__mini img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.hxp-qv button.hxp-qv__mini.hxp-qv__mini--on {
	border-color: #24933C;
}
.hxp-qv__info {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding-top: 8px;
}
.hxp-qv__selo {
	align-self: flex-start;
	margin: 0;
	padding: 4px 10px;
	border-radius: 999px;
	background: #24933C;
	color: #ffffff;
	font-size: 12px;
	font-weight: 800;
}
.hxp-qv__nome {
	margin: 0;
	padding-right: 40px;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.2;
	color: #173E5D;
}
.hxp-qv__preco {
	font-size: 26px;
	font-weight: 800;
	color: #173E5D;
}
.hxp-qv__preco del {
	margin-right: 8px;
	font-size: 16px;
	font-weight: 400;
	color: #8A8F94;
}
.hxp-qv__info .hxp-parcelas {
	font-size: 14px;
}
.hxp-qv__opcoes {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 14px;
	color: #3A3F44;
}
.hxp-qv__opcoes li + li {
	margin-top: 4px;
}
.hxp-qv__opcoes span {
	font-weight: 700;
	color: #173E5D;
}
.hxp-qv__desc {
	max-height: 160px;
	overflow: auto;
	font-size: 14px;
	line-height: 1.55;
	color: #4A4F55;
}
.hxp-qv__desc p {
	margin: 0 0 8px;
}
.hxp-qv__acoes {
	display: flex;
	flex-direction: column;
	gap: 10px;
	margin-top: 4px;
}
.hxp-qv .hxp-qv__comprar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 14px 20px;
	border: 0;
	border-radius: 999px;
	background: #24933C;
	color: #ffffff !important;
	font-size: 16px;
	font-weight: 700;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .25s;
}
.hxp-qv .hxp-qv__comprar:hover {
	background: #207F31;
}
.hxp-qv__detalhes {
	align-self: center;
	color: #207F31 !important;
	font-size: 14px;
	font-weight: 600;
	text-decoration: underline;
}
@media (max-width: 767px) {
	.hxp-qv {
		align-items: flex-end;
		padding: 0;
	}
	.hxp-qv__caixa {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
		max-height: 92vh;
		padding: 20px 16px 24px;
		border-radius: 20px 20px 0 0;
	}
	.hxp-qv__nome {
		font-size: 20px;
	}
	.hxp-qv__preco {
		font-size: 22px;
	}
}

/* O tema Hello pinta qualquer botão em foco ou hover de rosa: mantém as cores da vitrine. */
button.hxp-carrinho:focus {
	background: #ffffff;
	border-color: #173E5D;
	color: #173E5D;
}
button.hxp-carrinho:hover,
button.hxp-carrinho:focus-visible {
	background: #24933C;
	border-color: #24933C;
	color: #ffffff;
}
button.hxp-ver-rapido:focus {
	background: rgba(255, 255, 255, .95);
	color: #173E5D;
}
button.hxp-ver-rapido:hover {
	background: #173E5D;
	color: #ffffff;
}
.hxp-qv button.hxp-qv__fechar:hover,
.hxp-qv button.hxp-qv__fechar:focus {
	background: #E9E4DD;
	color: #173E5D;
}
.hxp-qv button.hxp-qv__mini:hover,
.hxp-qv button.hxp-qv__mini:focus {
	background: #F5F2EE;
}
.hxp-qv button.hxp-qv__comprar:hover,
.hxp-qv button.hxp-qv__comprar:focus {
	background: #207F31;
	color: #ffffff;
}

/* Celular: foto mais baixa e miniaturas menores, para o preço e o botão aparecerem logo. */
@media (max-width: 767px) {
	.hxp-qv__foto {
		aspect-ratio: 4 / 3;
	}
	.hxp-qv__miniaturas {
		flex-wrap: nowrap;
		overflow-x: auto;
	}
	.hxp-qv button.hxp-qv__mini {
		flex: 0 0 46px;
		width: 46px;
		height: 46px;
	}
}

/* ===== Parte inferior da home (1.0.3) ===== */
/* Newsletter (seção V3 f4328b4 da home): só visual, o formulário não muda. */
.elementor-20 .elementor-element.elementor-element-f4328b4 { padding: 16px 10px 72px !important; }
.elementor-20 .elementor-element-f4328b4 > .elementor-container { max-width: 1400px; }
.elementor-20 .elementor-element-d8f58cf > .elementor-widget-wrap { padding: 0 !important; }
.elementor-20 .elementor-element-9104c57 { background-color: #F5F2EE !important; border: 1px solid #ECE6DF; border-radius: 24px !important; padding: 44px 48px !important; }
.elementor-20 .elementor-element-9104c57 > .elementor-container { max-width: none; }
.elementor-20 .elementor-element-d7fc0c6 .elementor-widget-container::before { content: "Newsletter"; display: block; margin-bottom: 12px; font-size: 13px; font-weight: 700; letter-spacing: .42em; text-transform: uppercase; color: #313132; }
.elementor-20 .elementor-element-d7fc0c6 .elementor-heading-title { color: #173E5D !important; font-size: 30px !important; font-weight: 800 !important; line-height: 1.18 !important; letter-spacing: -.01em; text-wrap: balance; }
.elementor-20 .elementor-element-5b1f716 .elementor-field-group-email { width: 70% !important; }
.elementor-20 .elementor-element-5b1f716 .e-form__buttons { width: 30% !important; }
.elementor-20 .elementor-element-5b1f716 .elementor-field-textual { height: 56px; min-height: 56px; padding: 0 24px !important; border: 1.5px solid #DCD6CE !important; border-radius: 999px !important; background-color: #ffffff !important; color: #173E5D !important; font-size: 16px !important; transition: border-color .25s, box-shadow .25s; }
.elementor-20 .elementor-element-5b1f716 .elementor-field-textual:focus { border-color: #24933C !important; box-shadow: 0 0 0 4px rgba(36, 147, 60, .15); outline: none; }
.elementor-20 .elementor-element-5b1f716 .elementor-button { height: 56px; min-height: 56px; padding: 0 26px !important; border-radius: 999px !important; background-color: #24933C !important; transition: background-color .25s, transform .25s; }
.elementor-20 .elementor-element-5b1f716 .elementor-button:hover,
.elementor-20 .elementor-element-5b1f716 .elementor-button:focus { background-color: #207F31 !important; }
.elementor-20 .elementor-element-5b1f716 .elementor-button:focus-visible { outline: 3px solid #173E5D; outline-offset: 3px; }
.elementor-20 .elementor-element-5b1f716 .elementor-button-icon { display: inline-flex; flex-direction: row-reverse; align-items: center; gap: 10px; }
.elementor-20 .elementor-element-5b1f716 .elementor-button-icon svg { width: 15px; height: 15px; fill: #ffffff; }
.elementor-20 .elementor-element-5b1f716 .elementor-button .elementor-screen-only { position: static !important; width: auto !important; height: auto !important; margin: 0 !important; overflow: visible !important; clip: auto !important; white-space: nowrap; color: #ffffff; font-size: 16px; font-weight: 700; }
@media (max-width: 1024px) {
	.elementor-20 .elementor-element.elementor-element-f4328b4 { padding: 12px 24px 64px !important; }
	.elementor-20 .elementor-element-9104c57 { padding: 36px 32px !important; }
	.elementor-20 .elementor-element-9104c57 > .elementor-container { flex-wrap: wrap; }
	.elementor-20 .elementor-element-760f227,
	.elementor-20 .elementor-element-460a1e7 { width: 100% !important; }
	.elementor-20 .elementor-element-460a1e7 { margin-top: 14px; }
	.elementor-20 .elementor-element-d7fc0c6 .elementor-heading-title { font-size: 28px !important; }
}
@media (max-width: 767px) {
	.elementor-20 .elementor-element.elementor-element-f4328b4 { padding: 8px 16px 52px !important; }
	.elementor-20 .elementor-element-9104c57 { padding: 28px 18px !important; border-radius: 20px !important; }
	.elementor-20 .elementor-element-d7fc0c6 .elementor-widget-container::before { font-size: 11px; letter-spacing: .32em; }
	.elementor-20 .elementor-element-d7fc0c6 .elementor-heading-title { font-size: 23px !important; }
	.elementor-20 .elementor-element-5b1f716 .elementor-field-group-email,
	.elementor-20 .elementor-element-5b1f716 .e-form__buttons { width: 100% !important; }
	.elementor-20 .elementor-element-5b1f716 .e-form__buttons { margin-top: 10px; }
	.elementor-20 .elementor-element-5b1f716 .elementor-button { width: 100%; }
}

/* Movimento reduzido: sem transições nem zoom nas seções novas e na newsletter. */
@media (prefers-reduced-motion: reduce) {
	[data-id="74a65ebc"] *, [data-id="54519b2a"] *, [data-id="6ef80e1b"] *, [data-id="433672e0"] *,
	.elementor-20 .elementor-element-f4328b4 * { transition-duration: 0s !important; animation: none !important; }
	[data-id="74a65ebc"] img, [data-id="54519b2a"] img, [data-id="6ef80e1b"] img { transform: none !important; }
}
