/*
 * RVRT 2026 — o CSS que o JS do Elementor punha nos elementos (estilos em linha) e o dos
 * comportamentos que o tema reescreveu (carrosséis sem Swiper, newsletter).
 */

/* Sticky: o JS põe position/top/width em linha, como o Pro; aqui só a camada. */
.rv-sticky--active {
	z-index: 99;
}
/*
 * O cabeçalho (e o mini-carrinho, que vive dentro dele) fica acima do conteúdo: com 99, a lupa da
 * galeria da ficha (z-index 99 da WooCommerce) aparecia por cima do mini-carrinho. Abaixo do banner
 * de cookies (100000).
 */
.rv-location-header .rv-sticky--active {
	z-index: 1000;
}

/* Testemunhos: fita contínua (o Swiper com autoplay 0 e loop). */
.rv-fita .swiper-wrapper {
	display: flex;
	width: max-content;
	animation: rv-fita var(--rv-fita-tempo, 30s) linear infinite;
	will-change: transform;
}
.rv-fita .swiper-slide {
	flex-shrink: 0;
}
@keyframes rv-fita {
	to { transform: translateX(var(--rv-fita-dist, -50%)); }
}
@media (prefers-reduced-motion: reduce) {
	.rv-fita .swiper-wrapper { animation: none; }
}

/* Carrossel de produtos: deslize nativo. */
.rv-carrossel {
	overflow: hidden;
}
.rv-carrossel .swiper-wrapper {
	display: flex;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}
.rv-carrossel .swiper-wrapper::-webkit-scrollbar {
	display: none;
}
.rv-carrossel .swiper-slide {
	flex-shrink: 0;
	scroll-snap-align: start;
}

/* Newsletter: armadilha para robôs. */
.rv-armadilha {
	position: absolute !important;
	left: -9999px !important;
	width: 1px;
	height: 1px;
	opacity: 0;
}

/* ── Correções de design (não vinham do Elementor) ───────────────────────── */

/*
 * Cartões de produto: o Elementor punha word-break:break-word em tudo o que está dentro de um
 * cartão, e no telemóvel o nome partia-se a meio da palavra («UPCYCLE / D TOTE»).
 */
.rv-loop-item .rv-heading-title {
	word-break: normal;
	overflow-wrap: break-word;
}
@media (max-width: 767px) {
	/* Nome por cima e preço por baixo: a coluna do nome tinha só 73 px. */
	.rv-1263 .rv-element.rv-element-6b6be1f {
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
		row-gap: 6px;
	}
	.rv-1263 .rv-element.rv-element-082e6df {
		width: 100%;
		max-width: 100%;
		flex: 0 0 auto;
	}
}

/* Checkout no telemóvel: a mesma margem lateral do carrinho e do resto do site (tinha 10 px). */
@media (max-width: 767px) {
	body.woocommerce-checkout .site-main {
		padding-inline: 24px;
	}
}

/*
 * Carrinho e checkout: sem a descrição do produto no resumo (era o Code Snippet 8; o filtro PHP
 * deixou de chegar a este texto na WooCommerce 11.2, por isso fica também em CSS).
 */
.wc-block-components-product-metadata__description {
	display: none;
}

/*
 * Mini-carrinho: o «View cart» tinha texto cinzento-claro (#D9D9D9) sobre branco e quase não se via.
 * Fica com contorno preto, como os botões «Find more» da página inicial.
 */
.rv-menu-cart__footer-buttons .rv-button--view-cart {
	color: var(--rv-global-color-primary, #191919) !important;
	border: 1px solid var(--rv-global-color-primary, #191919) !important;
	background: transparent !important;
}
.rv-menu-cart__footer-buttons .rv-button--view-cart:hover,
.rv-menu-cart__footer-buttons .rv-button--view-cart:focus {
	color: var(--rv-global-color-secondary, #fff) !important;
	background: var(--rv-global-color-primary, #191919) !important;
}

/*
 * O reset do Hello pinta qualquer <button> de rosa (#c36) em :hover/:focus. Os botões da WooCommerce
 * que não têm fundo próprio ficam sem esse rosa (só a cor de fundo; os ícones da galeria são imagens
 * de fundo e mantêm-se).
 */
.wc-block-components-quantity-selector__button:hover,
.wc-block-components-quantity-selector__button:focus,
.wc-block-components-address-card__edit:hover,
.wc-block-components-address-card__edit:focus,
.show-password-input:hover,
.show-password-input:focus,
.pswp__button:hover,
.pswp__button:focus {
	background-color: transparent !important;
	color: inherit !important;
}
