/* ============================================================
   MULTIVEGETAL — Products Grid Widget
   Tokens herdados do Design System (com fallback embutido caso
   o styles.css global não esteja carregado no contexto Elementor).
   ============================================================ */

.mv-pg {
	--mv-c-primary:      var(--color-primary, #4A5E56);
	--mv-c-primary-dark: var(--color-primary-dark, #374842);
	--mv-c-accent:       var(--color-accent, #D5B68D);
	--mv-c-accent-dark:  var(--color-accent-dark, #c0a074);
	--mv-c-text:         var(--color-text, #1A1A1A);
	--mv-c-muted:        var(--color-text-muted, #5a5a5a);
	--mv-c-light:        var(--color-text-light, #8a8a8a);
	--mv-c-border:       var(--color-border, #e0ddd8);
	--mv-c-bg-muted:     var(--color-bg-muted, #f0ede7);
	--mv-c-success:      var(--color-success, #4A8C6A);
	--mv-c-error:        var(--color-error, #B85C4A);
	--mv-font:           var(--font-primary, 'Poppins', sans-serif);
	--mv-trans:          var(--transition-base, 250ms ease);

	font-family: var(--mv-font);
	color: var(--mv-c-text);
}

/* ---------- GRID ---------- */
.mv-pg-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(12px, 2.2vw, 24px);
	width: 100%;
}

/* Fallback responsivo — só atua se o CSS por-dispositivo do Elementor
   não carregar. Breakpoints alinhados aos padrões do Elementor
   (tablet ≤ 1024px, mobile ≤ 767px). */
@media (max-width: 1024px) {
	.mv-pg-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 767px) {
	.mv-pg-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 430px) {
	.mv-pg-grid { grid-template-columns: 1fr; }
}

/* ---------- CARD ---------- */
.mv-pg-card {
	display: flex;
	flex-direction: column;
	background-color: #fff;
	border: 1px solid var(--mv-c-border);
	border-radius: 16px;
	overflow: hidden;
	box-shadow: var(--mv-pg-card-shadow, 0 1px 3px rgba(74,94,86,.08));
	transition: box-shadow var(--mv-trans), transform var(--mv-trans), border-color var(--mv-trans);
}
.mv-pg-card:hover {
	transform: translateY(-3px);
	border-color: var(--mv-c-accent);
	box-shadow: 0 10px 30px rgba(74,94,86,.12), 0 4px 12px rgba(74,94,86,.07);
}

/* ---------- MÍDIA / IMAGEM ---------- */
.mv-pg-card__media {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: var(--mv-c-bg-muted);
}
.mv-pg-card__img {
	width: 100%;
	height: 100%;
	display: block;
	transition: transform var(--transition-slow, 400ms ease), opacity var(--mv-trans);
}
.mv-pg-card:hover .mv-pg-card__img {
	transform: scale(1.04);
}

/* ---------- TROCA DE IMAGEM NO HOVER (2ª da galeria) ---------- */
.mv-pg-card__media.has-hover-img .mv-pg-card__img--hover {
	position: absolute;
	inset: 0;
	opacity: 0;
}
.mv-pg-card__media.has-hover-img:hover .mv-pg-card__img--hover {
	opacity: 1;
}
/* A imagem principal some no hover para revelar a segunda. */
.mv-pg-card__media.has-hover-img:hover .mv-pg-card__img:not(.mv-pg-card__img--hover) {
	opacity: 0;
}

/* Modos de visualização (controlado por data-image-mode na grade). */
.mv-pg-grid[data-image-mode="square"]   .mv-pg-card__media { aspect-ratio: 1 / 1; }
.mv-pg-grid[data-image-mode="portrait"] .mv-pg-card__media { aspect-ratio: 3 / 4; }
.mv-pg-grid[data-image-mode="square"]   .mv-pg-card__img,
.mv-pg-grid[data-image-mode="portrait"] .mv-pg-card__img { object-fit: cover; }

/* Natural: imagem com altura própria. */
.mv-pg-grid[data-image-mode="natural"] .mv-pg-card__media { aspect-ratio: auto; }
.mv-pg-grid[data-image-mode="natural"] .mv-pg-card__img   { height: auto; }

/* ---------- BADGES ---------- */
/* Container: ocupa o topo do card; desconto à esquerda, destaque à direita. */
.mv-pg-badges {
	position: absolute;
	top: 12px;
	left: 12px;
	right: 12px;
	z-index: 2;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 6px;
	pointer-events: none;
}
.mv-pg-badge {
	padding: 5px 12px;
	font-size: 0.64rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	border-radius: 9999px;
	line-height: 1;
	white-space: nowrap;
}
/* Selo de desconto (estilo Alva): cor de atenção quente. */
.mv-pg-badge--discount {
	background-color: var(--mv-c-error);
	color: #fff;
	box-shadow: 0 2px 8px rgba(184, 92, 74, .3);
}
/* Selo "MAIS VENDIDO": accent da marca. */
.mv-pg-badge--featured {
	background-color: var(--mv-c-accent);
	color: var(--mv-c-text);
}

/* ---------- AVALIAÇÃO (ESTRELAS) ---------- */
.mv-pg-card__rating {
	display: flex;
	align-items: center;
	gap: 4px;
	line-height: 1;
}
.mv-pg-star {
	font-size: 0.9rem;
	color: var(--mv-c-border);
	letter-spacing: -1px;
}
.mv-pg-star.is-full { color: #E8B84B; }
.mv-pg-star.is-half {
	background: linear-gradient(90deg, #E8B84B 50%, var(--mv-c-border) 50%);
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
}
.mv-pg-card__rating-num {
	font-size: 0.7rem;
	font-weight: 600;
	color: var(--mv-c-muted);
	margin-left: 4px;
}

/* ---------- CORPO DO CARD ---------- */
.mv-pg-card__body {
	display: flex;
	flex-direction: column;
	gap: clamp(6px, 1vw, 8px);
	padding: clamp(12px, 1.6vw, 20px);
	flex: 1 1 auto;
}
.mv-pg-card__title {
	font-size: clamp(0.85rem, 0.6rem + 0.6vw, 1rem);
	font-weight: 600;
	line-height: 1.35;
	letter-spacing: -0.01em;
	margin: 0;
	/* Limita a 2 linhas para manter a altura dos cards consistente. */
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.mv-pg-card__title a { color: var(--mv-c-text); text-decoration: none; transition: color var(--mv-trans); }
.mv-pg-card__title a:hover { color: var(--mv-c-primary); }

.mv-pg-card__stock {
	font-size: 0.64rem;
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	width: fit-content;
}
.mv-pg-card__stock::before {
	content: "";
	width: 7px; height: 7px;
	border-radius: 9999px;
	background: currentColor;
}
.mv-pg-card__stock.is-in  { color: var(--mv-c-success); }
.mv-pg-card__stock.is-out { color: var(--mv-c-error); }

.mv-pg-card__price {
	font-size: clamp(1.05rem, 0.85rem + 0.5vw, 1.25rem);
	font-weight: 700;
	color: var(--mv-c-primary);
	margin-top: 2px;
}
.mv-pg-card__price del { color: var(--mv-c-light); font-weight: 400; font-size: 0.85rem; margin-right: 6px; }
.mv-pg-card__price del .woocommerce-Price-amount { font-weight: 400; }
.mv-pg-card__price ins { text-decoration: none; color: var(--mv-c-primary); }

/* Parcelamento (estilo Alva). */
.mv-pg-card__installments {
	font-size: 0.75rem;
	font-weight: 500;
	color: var(--mv-c-muted);
	margin-top: -2px;
}
.mv-pg-card__installments span { color: var(--mv-c-success); font-weight: 600; }

/* ---------- AÇÕES ---------- */
.mv-pg-card__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: auto;
	padding-top: 12px;
}

/* ---------- BOTÕES (réplica do .btn do Design System) ---------- */
.mv-pg-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 10px 18px;
	font-family: var(--mv-font);
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 1;
	border: 2px solid transparent;
	border-radius: 8px;
	cursor: pointer;
	text-decoration: none;
	white-space: nowrap;
	transition: all var(--mv-trans);
}
/* Os botões são tags <a>. Usamos seletor a.mv-pg-btn--* para vencer a
   cor de link do tema/WooCommerce sem precisar de !important. */
.mv-pg a.mv-pg-btn--primary,
a.mv-pg-btn--primary,
.mv-pg-btn--primary {
	background-color: var(--mv-c-primary);
	color: #fff;
	border-color: var(--mv-c-primary);
}
.mv-pg a.mv-pg-btn--primary:hover,
.mv-pg-btn--primary:hover {
	background-color: var(--mv-c-primary-dark);
	border-color: var(--mv-c-primary-dark);
	color: #fff;
	transform: translateY(-1px);
}
.mv-pg a.mv-pg-btn--secondary,
a.mv-pg-btn--secondary,
.mv-pg-btn--secondary {
	background-color: transparent;
	color: var(--mv-c-primary);
	border-color: var(--mv-c-primary);
}
.mv-pg a.mv-pg-btn--secondary:hover,
.mv-pg-btn--secondary:hover {
	background-color: var(--mv-c-primary);
	color: #fff;
	transform: translateY(-1px);
}
.mv-pg-btn--accent {
	background-color: var(--mv-c-accent);
	color: var(--mv-c-text);
	border-color: var(--mv-c-accent);
}
.mv-pg-btn--accent:hover {
	background-color: var(--mv-c-accent-dark);
	border-color: var(--mv-c-accent-dark);
	transform: translateY(-1px);
}
.mv-pg-btn:focus-visible { outline: 2px solid var(--mv-c-accent); outline-offset: 3px; }

/* Botões dentro das ações dividem o espaço. */
.mv-pg-card__actions .mv-pg-btn { flex: 1 1 auto; }

/* Botão de compra proeminente (estilo Alva): cheio, maior, full-width.
   Seletor com a tag <a> + classes do Woo para garantir texto claro
   mesmo quando o tema estiliza .add_to_cart_button / a.button. */
.mv-pg a.mv-pg-btn--cart,
.mv-pg a.mv-pg-btn--cart.add_to_cart_button,
a.mv-pg-btn--cart {
	padding: 13px 18px;
	font-size: 0.85rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	width: 100%;
	color: #fff;
}

/* ============================================================
   BARRA DE FILTROS — Hierarquia com checkboxes
   ============================================================ */

.mv-pg-filters {
	margin-bottom: 28px;
	background: #fff;
	border: 1px solid var(--mv-c-border);
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 1px 6px rgba(74,94,86,.06);
}

/* ── Cabeçalho: título | linha | busca + ordenação ──────── */
.mv-pg-filters__head {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 18px;
	border-bottom: 1px solid var(--mv-c-border);
	background: #fafaf8;
}

.mv-pg-filters__title {
	font-family: var(--mv-font);
	font-size: 0.78rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--mv-c-primary);
	white-space: nowrap;
	flex-shrink: 0;
}

.mv-pg-filters__divider {
	flex: 1 1 auto;
	height: 1px;
	background: var(--mv-c-border);
}

.mv-pg-filters__controls {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-shrink: 0;
}

/* Campo de busca */
.mv-pg-search-wrap {
	position: relative;
	display: flex;
	align-items: center;
}

.mv-pg-search__icon {
	position: absolute;
	left: 11px;
	color: var(--mv-c-light);
	pointer-events: none;
}

.mv-pg-search-input {
	border: 1.5px solid var(--mv-c-border);
	border-radius: 8px;
	padding: 8px 12px 8px 32px;
	font-family: var(--mv-font);
	font-size: 0.8rem;
	color: var(--mv-c-text);
	background: #fff;
	width: 200px;
	transition: border-color 200ms ease, box-shadow 200ms ease;
	outline: none;
}
.mv-pg-search-input::placeholder { color: var(--mv-c-light); }
.mv-pg-search-input:focus {
	border-color: var(--mv-c-primary);
	box-shadow: 0 0 0 3px rgba(74,94,86,.10);
}
.mv-pg-search-input::-webkit-search-cancel-button { display: none; }

/* Select de ordenação */
.mv-pg-filters__sort {
	position: relative;
	display: flex;
	align-items: center;
}

.mv-pg-sort__chevron {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	color: var(--mv-c-muted);
	pointer-events: none;
	transition: transform 220ms ease, color 200ms ease;
}

.mv-pg-filters__sort:focus-within .mv-pg-sort__chevron {
	transform: translateY(-50%) rotate(180deg);
	color: var(--mv-c-primary);
}

.mv-pg-sort-select {
	appearance: none;
	-webkit-appearance: none;
	background: #fff;
	border: 1.5px solid var(--mv-c-border);
	border-radius: 8px;
	padding: 8px 28px 8px 12px;
	font-family: var(--mv-font);
	font-size: 0.8rem;
	font-weight: 500;
	color: var(--mv-c-text);
	cursor: pointer;
	min-width: 148px;
	transition: border-color 200ms ease, box-shadow 200ms ease;
	outline: none;
}
.mv-pg-sort-select:hover { border-color: var(--mv-c-primary); }
.mv-pg-sort-select:focus {
	border-color: var(--mv-c-primary);
	box-shadow: 0 0 0 3px rgba(74,94,86,.10);
}

/* ── Árvore de categorias ────────────────────────────────── */
.mv-pg-filters__tree {
	padding: 14px 18px 6px;
	columns: 2;
	column-gap: 28px;
	max-height: 260px;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: var(--mv-c-border) transparent;
}
.mv-pg-filters__tree::-webkit-scrollbar { width: 5px; }
.mv-pg-filters__tree::-webkit-scrollbar-track { background: transparent; }
.mv-pg-filters__tree::-webkit-scrollbar-thumb { background: var(--mv-c-border); border-radius: 9999px; }

/* Grupo: pai + seus filhos — nunca quebra entre colunas */
.mv-pg-cat__group {
	break-inside: avoid;
	page-break-inside: avoid;
	margin-bottom: 4px;
}

/* Label clicável */
.mv-pg-cat__label {
	display: flex;
	align-items: center;
	gap: 9px;
	cursor: pointer;
	padding: 4px 0;
	user-select: none;
	border-radius: 4px;
	transition: background 150ms ease;
}
.mv-pg-cat__label:hover { background: rgba(74,94,86,.04); }

/* Oculta o checkbox nativo */
.mv-pg-cat-check {
	position: absolute;
	opacity: 0;
	width: 0;
	height: 0;
	pointer-events: none;
}

/* Caixa visual customizada */
.mv-pg-cat__box {
	width: 15px;
	height: 15px;
	flex-shrink: 0;
	border: 1.5px solid #c8c4bc;
	border-radius: 3px;
	background: #fff;
	position: relative;
	transition: background 160ms ease, border-color 160ms ease;
}
.mv-pg-cat__label:hover .mv-pg-cat__box {
	border-color: var(--mv-c-primary);
}
.mv-pg-cat-check:checked ~ .mv-pg-cat__box {
	background: var(--mv-c-primary);
	border-color: var(--mv-c-primary);
}
/* Checkmark SVG via clip-path (sem imagem externa) */
.mv-pg-cat-check:checked ~ .mv-pg-cat__box::after {
	content: '';
	position: absolute;
	left: 3px;
	top: 0px;
	width: 5px;
	height: 9px;
	border: 1.5px solid #fff;
	border-top: none;
	border-left: none;
	transform: rotate(45deg);
}
.mv-pg-cat-check:focus-visible ~ .mv-pg-cat__box {
	outline: 2px solid var(--mv-c-accent);
	outline-offset: 2px;
}

/* Nome da categoria */
.mv-pg-cat__name {
	font-size: 0.82rem;
	line-height: 1.3;
	color: var(--mv-c-muted);
	transition: color 150ms ease;
}
.mv-pg-cat__label:hover .mv-pg-cat__name { color: var(--mv-c-text); }
.mv-pg-cat-check:checked ~ .mv-pg-cat__box + .mv-pg-cat__name { color: var(--mv-c-text); }

/* Hierarquia: filhos e netos recuados */
.mv-pg-cat__item--parent .mv-pg-cat__name {
	font-weight: 600;
	color: var(--mv-c-text);
}
.mv-pg-cat__item--parent .mv-pg-cat__box { border-color: #b0aba2; }

.mv-pg-cat__children { margin-left: 24px; margin-top: 2px; }
.mv-pg-cat__item--child  .mv-pg-cat__name { font-size: 0.79rem; }

.mv-pg-cat__item--grandchild .mv-pg-cat__name {
	font-size: 0.77rem;
	color: var(--mv-c-light);
}

/* ── Meta: contador de resultados ────────────────────────── */
.mv-pg-filters__meta {
	padding: 8px 18px 10px;
	border-top: 1px solid var(--mv-c-border);
	min-height: 34px;
	display: flex;
	align-items: center;
}

.mv-pg-result-count {
	font-size: 0.74rem;
	color: var(--mv-c-light);
	font-style: italic;
}

/* ── Loading: pulse suave enquanto filtra ────────────────── */
.mv-pg-grid.is-loading {
	pointer-events: none;
	animation: mv-pg-grid-pulse 1s ease-in-out infinite;
}
@keyframes mv-pg-grid-pulse {
	0%, 100% { opacity: 0.65; }
	50%       { opacity: 0.35; }
}

/* ── Mobile (≤ 640px) ────────────────────────────────────── */
@media (max-width: 640px) {
	.mv-pg-filters__head  { flex-wrap: wrap; gap: 10px; }
	.mv-pg-filters__divider { display: none; }
	.mv-pg-filters__controls { width: 100%; flex-wrap: wrap; }
	.mv-pg-search-wrap { flex: 1 1 auto; }
	.mv-pg-search-input { width: 100%; }
	.mv-pg-filters__sort, .mv-pg-sort-select { flex: 1 1 auto; min-width: 0; width: 100%; }
	.mv-pg-filters__tree { columns: 1; max-height: 220px; }
}

/* ============================================================
   MOBILE SLIDER (≤ 767px) — data-mobile-slider="1"
   Converte a grade CSS-grid em trilho de scroll-snap horizontal.
   ============================================================ */

/* Dots de paginação — ocultos por padrão, visíveis só no slider mobile */
.mv-pg__slider-indicator { display: none; }

@media (max-width: 767px) {

	/* Trilho do slider */
	.mv-pg[data-mobile-slider="1"] .mv-pg-grid {
		display: flex !important;    /* sobrepõe display:grid do Elementor */
		grid-template-columns: unset;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: visible;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
		gap: 10px;
		padding: 4px 0 12px;
		/* Fade nas bordas indica que há mais produtos */
		-webkit-mask-image: linear-gradient(to right, transparent 0, #000 7%, #000 93%, transparent 100%);
		mask-image:         linear-gradient(to right, transparent 0, #000 7%, #000 93%, transparent 100%);
	}
	.mv-pg[data-mobile-slider="1"] .mv-pg-grid::-webkit-scrollbar { display: none; }

	/* Cada card: 78% da largura → ~11% do próximo visível */
	.mv-pg[data-mobile-slider="1"] .mv-pg-grid .mv-pg-card {
		flex: 0 0 78%;
		max-width: 78%;
		min-width: 0;
		scroll-snap-align: center;
	}
	.mv-pg[data-mobile-slider="1"] .mv-pg-grid .mv-pg-card:first-child { margin-left: 20px; }
	.mv-pg[data-mobile-slider="1"] .mv-pg-grid .mv-pg-card:last-child  { margin-right: 20px; }

	/* Sem hover em touch */
	.mv-pg[data-mobile-slider="1"] .mv-pg-card:hover {
		transform: none;
		border-color: var(--mv-c-border);
		box-shadow: var(--mv-pg-card-shadow);
	}

	/* Ações do card em coluna (mais espaço para toque) */
	.mv-pg[data-mobile-slider="1"] .mv-pg-card__actions { flex-direction: column; gap: 6px; }
	.mv-pg[data-mobile-slider="1"] .mv-pg-card__actions .mv-pg-btn { width: 100%; min-height: 44px; }

	/* Dots */
	.mv-pg[data-mobile-slider="1"] .mv-pg__slider-indicator {
		display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
		gap: 6px;
		padding: 10px 0 4px;
	}
	.mv-pg__slider-dot {
		height: 6px;
		width: 6px;
		border-radius: 3px;
		background: var(--mv-c-border);
		cursor: pointer;
		transition: width 280ms ease, background 280ms ease;
		flex-shrink: 0;
	}
	.mv-pg__slider-dot.is-active {
		width: 20px;
		background: var(--mv-c-primary);
	}
}

/* ---------- CARREGAR MAIS ---------- */
.mv-pg-loadmore-wrap {
	display: flex;
	justify-content: center;
	margin-top: 32px;
}
.mv-pg-loadmore[disabled] { opacity: .6; cursor: default; transform: none; }

.mv-pg-empty {
	grid-column: 1 / -1;
	text-align: center;
	color: var(--mv-c-muted);
	padding: 48px 0;
}

/* ---------- ANIMAÇÃO DE ENTRADA (AJAX) ---------- */
.mv-pg-card.mv-pg-card--enter {
	animation: mv-pg-fade-in var(--transition-base, 250ms) ease both;
}
@keyframes mv-pg-fade-in {
	from { opacity: 0; transform: translateY(12px); }
	to   { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
	.mv-pg-card, .mv-pg-card__img, .mv-pg-btn { transition: none; }
	.mv-pg-card.mv-pg-card--enter { animation: none; }
}

/* ============================================================
   AJUSTES RESPONSIVOS
   ============================================================ */

/* Tablet e abaixo: o efeito de hover por mouse não se aplica a toque.
   Em telas sem hover, a 2ª imagem nunca aparece — garante a 1ª visível. */
@media (hover: none) {
	.mv-pg-card__media.has-hover-img:hover .mv-pg-card__img--hover { opacity: 0; }
	.mv-pg-card__media.has-hover-img:hover .mv-pg-card__img:not(.mv-pg-card__img--hover) { opacity: 1; }
	.mv-pg-card:hover { transform: none; }
	.mv-pg-card:hover .mv-pg-card__img { transform: none; }
}

/* Tablet: botão de carregar mais com toque confortável. */
@media (max-width: 1024px) {
	.mv-pg-loadmore-wrap { margin-top: 24px; }
}

/* Mobile (≤ 600px): empilha ações, alvos de toque maiores, selos menores. */
@media (max-width: 600px) {
	.mv-pg-card__actions {
		flex-direction: column;
		gap: 6px;
	}
	.mv-pg-card__actions .mv-pg-btn {
		width: 100%;
		flex: 1 1 auto;
		min-height: 44px; /* alvo de toque acessível */
	}
	/* Badges empilhados (um abaixo do outro) para não se sobreporem. */
	.mv-pg-badges {
		flex-direction: column;
		align-items: flex-start;
		gap: 5px;
	}
	.mv-pg-badge {
		padding: 4px 9px;
		font-size: 0.6rem;
	}
	.mv-pg-card__body { gap: 6px; }
	.mv-pg-empty { padding: 32px 0; }
}

/* Telas muito estreitas: reduz folga lateral. */
@media (max-width: 380px) {
	.mv-pg-btn--cart { padding: 12px 14px; letter-spacing: 0.04em; }
}
