/**
 * Layout inspirado no Mercado Livre
 * Cores via CSS variables (--meli-*) injetadas pelo Customizer
 */

/* --------------------------------------------------------------------------
   Base
   -------------------------------------------------------------------------- */
body.meli-layout {
	background: var(--meli-page-bg);
	color: var(--meli-primary-text);
	font-family: "Proxima Nova", -apple-system, "Helvetica Neue", Helvetica, "Roboto", Arial, sans-serif;
}

body.meli-layout a {
	color: var(--meli-link);
}

body.meli-layout a:hover {
	color: var(--meli-link);
	opacity: 0.85;
}

body.meli-layout #page {
	background: var(--meli-page-bg);
}

body.meli-layout .site-content {
	background: var(--meli-page-bg);
	padding-top: 16px;
}

/* --------------------------------------------------------------------------
   Header amarelo (barra principal)
   -------------------------------------------------------------------------- */
body.meli-layout #site-header.site-header,
body.meli-layout .site-header {
	background: var(--meli-primary);
	border: 0;
	box-shadow: none;
	min-height: 0;
	height: auto !important;
	overflow: visible;
}

body.meli-layout .meli-header-main,
body.meli-layout .header-main {
	background: var(--meli-primary);
	padding: 8px 0;
	border: 0;
	min-height: 56px;
}

body.meli-layout .meli-header-row,
body.meli-layout .header-main .header-row {
	align-items: center;
	display: flex !important;
	flex-wrap: nowrap;
	margin: 0 !important;
}

body.meli-layout .header-main .header-logo {
	float: none;
	width: 160px;
	max-width: 180px;
	flex: 0 0 160px;
	padding: 0 8px 0 0 !important;
}

body.meli-layout .header-main .header-extras {
	float: none;
	width: auto;
	flex: 1 1 auto;
	padding: 0 !important;
	display: flex !important;
	align-items: center;
}

body.meli-layout .header-logo .logo img,
body.meli-layout .header-logo img {
	max-height: 34px;
	width: auto;
}

body.meli-layout .header-logo .site-title a {
	color: var(--meli-primary-text);
	font-weight: 700;
}

body.meli-layout .header-logo .d-department {
	display: none !important;
}

/* Sticky */
body.meli-layout .site-header.minimized,
body.meli-layout .header-main.minimized {
	background: var(--meli-primary);
}

/* --------------------------------------------------------------------------
   Busca estilo ML
   -------------------------------------------------------------------------- */
body.meli-layout .product-extra-search {
	flex: 1;
	max-width: 100%;
	margin: 0 24px 0 8px;
}

body.meli-layout .header-extras {
	display: flex;
	align-items: center;
	justify-content: flex-end;
}

body.meli-layout .products-search .psearch-content {
	display: flex;
	align-items: stretch;
	background: #fff;
	border-radius: 2px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
	overflow: hidden;
	border: 0;
	height: 40px;
}

body.meli-layout .products-search .product-cat {
	display: none !important;
}

body.meli-layout .products-search .search-wrapper {
	flex: 1;
	border: 0;
}

body.meli-layout .products-search .search-field {
	border: 0 !important;
	box-shadow: none !important;
	height: 40px;
	padding: 8px 16px;
	font-size: 15px;
	color: #333;
	background: transparent;
}

body.meli-layout .products-search .search-field::placeholder {
	color: #999;
}

body.meli-layout .products-search .search-submit {
	width: 48px;
	min-width: 48px;
	height: 40px;
	border: 0;
	border-left: 1px solid #e6e6e6;
	background: #fff !important;
	color: #666 !important;
	border-radius: 0;
	position: relative;
	font-size: 0;
	line-height: 0;
	padding: 0;
}

body.meli-layout .products-search .search-submit::before {
	content: "";
	display: block;
	width: 18px;
	height: 18px;
	margin: 11px auto 0;
	border: 2px solid #666;
	border-radius: 50%;
	box-sizing: border-box;
	position: relative;
}

body.meli-layout .products-search .search-submit::after {
	content: "";
	position: absolute;
	width: 8px;
	height: 2px;
	background: #666;
	top: 24px;
	right: 12px;
	transform: rotate(45deg);
}

body.meli-layout .products-search .search-submit:hover {
	background: #f5f5f5 !important;
}

/* --------------------------------------------------------------------------
   Ícones extras (conta / carrinho)
   -------------------------------------------------------------------------- */
body.meli-layout .meli-extras-menu,
body.meli-layout .extras-menu {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
	flex-shrink: 0;
}

body.meli-layout .extras-menu > li {
	margin: 0;
	padding: 0 8px;
}

body.meli-layout .extras-menu a,
body.meli-layout .extras-menu .extra-icon,
body.meli-layout .extras-menu i {
	color: var(--meli-primary-text) !important;
}

body.meli-layout .extras-menu .mini-cart-counter,
body.meli-layout .extras-menu .cart-counter,
body.meli-layout .extras-menu .wishlist-counter {
	background: var(--meli-link) !important;
	color: #fff !important;
	border: 0;
}

/* --------------------------------------------------------------------------
   Barra de categorias / menu
   -------------------------------------------------------------------------- */
body.meli-layout .meli-main-menu,
body.meli-layout .main-menu {
	background: var(--meli-header-nav-bg);
	border: 0;
	padding: 0;
	height: 40px;
	min-height: 40px;
	max-height: 40px;
	overflow: visible;
	box-shadow: 0 1px 0 rgba(0, 0, 0, 0.05);
	z-index: 100;
}

body.meli-layout .main-menu > .martfury-container,
body.meli-layout .main-menu > .container {
	height: 40px;
	min-height: 40px;
	overflow: visible;
	position: relative;
	z-index: 100;
}

body.meli-layout .main-menu .header-row {
	align-items: center;
	height: 40px;
	min-height: 40px;
	margin: 0 !important;
	flex-wrap: nowrap;
	overflow: visible;
	position: relative;
}

/* Esconde lista de categorias aberta no header (só dropdown no hover) */
body.meli-layout .main-menu .toggle-product-cats,
body.meli-layout .main-menu .products-cats-menu .toggle-product-cats,
body.meli-layout .main-menu .cats-menu-content {
	display: none !important;
	visibility: hidden !important;
	height: 0 !important;
	max-height: 0 !important;
	overflow: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	transform: none !important;
	z-index: -1 !important;
}

body.meli-layout .main-menu .products-cats-menu:hover .toggle-product-cats,
body.meli-layout .main-menu .products-cats-menu.mf-active .toggle-product-cats,
body.meli-layout .main-menu .products-cats-menu.mf-open .toggle-product-cats,
body.meli-layout .main-menu .products-cats-menu.open .toggle-product-cats {
	display: block !important;
	visibility: visible !important;
	height: auto !important;
	max-height: 80vh !important;
	overflow: auto !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	position: absolute;
	left: 0;
	top: 100% !important;
	z-index: 1000 !important;
	width: 280px;
	background: #fff;
	border-radius: 0 0 4px 4px;
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.15);
	transform: none !important;
}

body.meli-layout .main-menu .i-product-cats,
body.meli-layout .main-menu .mr-extra-department {
	position: relative;
	height: 40px !important;
	min-height: 40px !important;
	max-height: 40px !important;
	overflow: visible !important;
	flex: 0 0 auto;
	width: auto !important;
	max-width: 180px;
	display: flex !important;
	align-items: center;
	padding: 0 !important;
	margin: 0 !important;
}

body.meli-layout .main-menu .products-cats-menu {
	position: relative;
	height: 40px !important;
	min-height: 40px !important;
	max-height: 40px !important;
	overflow: visible !important;
	flex: 0 0 auto;
	width: auto !important;
	max-width: 180px;
	padding: 0 !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center;
}

body.meli-layout .main-menu .department-open .department-title,
body.meli-layout .i-product-cats .department-title,
body.meli-layout .products-cats-menu .department-title,
body.meli-layout .products-cats-menu .cats-menu-title {
	background: transparent !important;
	color: var(--meli-primary-text) !important;
	font-weight: 400;
	font-size: 13px;
	height: 40px !important;
	min-height: 40px !important;
	line-height: 40px !important;
	border: 0;
	padding: 0 18px 0 0 !important;
	margin: 0 !important;
	text-transform: none;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: flex-start;
	cursor: pointer;
	white-space: nowrap;
	overflow: visible;
	position: relative;
	box-sizing: border-box;
	vertical-align: middle;
}

body.meli-layout .products-cats-menu .department-title i,
body.meli-layout .i-product-cats .department-title i,
body.meli-layout .products-cats-menu .cats-menu-title i {
	color: var(--meli-primary-text);
	margin-right: 6px;
	display: none;
}

body.meli-layout .main-menu .products-cats-menu .cats-menu-title .text,
body.meli-layout .main-menu .products-cats-menu .cats-menu-title a.text {
	display: inline-flex;
	align-items: center;
	height: 40px;
	line-height: 40px;
	color: var(--meli-primary-text) !important;
	font-weight: 400;
	font-size: 13px;
	padding: 0;
	margin: 0;
}

/* Seta de Categorias alinhada ao baseline dos demais itens */
body.meli-layout .main-menu .mr-extra-department .cats-menu-title:after,
body.meli-layout .main-menu .products-cats-menu .cats-menu-title:after {
	display: inline-block;
	position: absolute;
	right: 4px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 10px;
	font-weight: 700;
	line-height: 1;
	color: var(--meli-primary-text);
	transition: transform 0.2s;
}

body.meli-layout .main-menu .products-cats-menu:hover .cats-menu-title:after,
body.meli-layout .main-menu .products-cats-menu.open .cats-menu-title:after,
body.meli-layout .main-menu .products-cats-menu.mf-open .cats-menu-title:after {
	transform: translateY(-50%) rotate(180deg);
}

body.meli-layout .main-menu .col-header-menu,
body.meli-layout .main-menu .mr-header-menu {
	height: 40px;
	display: flex;
	align-items: center;
	overflow: visible !important;
	flex: 1 1 auto;
	min-width: 0;
	width: auto !important;
	position: relative;
	z-index: 1;
}

body.meli-layout .main-menu .primary-nav {
	float: none !important;
	height: 40px;
	overflow: visible !important;
	flex: 1 1 auto;
	min-width: 0;
	position: relative;
	z-index: 1;
}

body.meli-layout .main-menu .primary-nav > ul,
body.meli-layout .main-menu .primary-menu,
body.meli-layout .col-header-menu .primary-nav > ul {
	display: flex !important;
	align-items: center;
	flex-wrap: nowrap !important;
	margin: 0 !important;
	padding: 0 !important;
	height: 40px !important;
	list-style: none;
	overflow: visible !important;
}

body.meli-layout .main-menu .primary-nav > ul > li,
body.meli-layout .main-menu .primary-menu > li {
	float: none !important;
	padding: 0 !important;
	margin: 0 !important;
	height: 40px !important;
	line-height: 40px !important;
	flex: 0 0 auto;
	position: relative;
	overflow: visible !important;
}

body.meli-layout .main-menu .primary-nav > ul > li > a,
body.meli-layout .col-header-menu .primary-nav > li > a,
body.meli-layout .main-menu .primary-menu > li > a,
body.meli-layout .main-menu .primary-nav > ul > li > a.dropdown-toggle {
	color: var(--meli-primary-text) !important;
	font-size: 13px !important;
	font-weight: 400;
	text-transform: none;
	padding: 0 10px !important;
	margin: 0 !important;
	height: 40px !important;
	line-height: 40px !important;
	display: flex !important;
	align-items: center !important;
	white-space: nowrap !important;
	overflow: visible;
	max-width: none;
	pointer-events: auto !important;
	position: relative;
	z-index: 2;
	cursor: pointer;
}

body.meli-layout .main-menu .primary-nav > ul > li.menu-item-has-children > a {
	margin-right: 14px !important;
	padding-right: 18px !important;
}

body.meli-layout .main-menu .primary-nav > ul > li.menu-item-has-children > a:after {
	right: 2px !important;
	top: 50% !important;
	transform: translateY(-50%);
	font-size: 10px;
	line-height: 1;
}

body.meli-layout .main-menu .primary-nav > ul > li.menu-item-has-children > a:before {
	display: none !important;
}

body.meli-layout .main-menu .primary-menu > li > a:hover,
body.meli-layout .col-header-menu .primary-nav > li > a:hover,
body.meli-layout .main-menu .primary-nav > ul > li > a:hover {
	color: var(--meli-primary-text) !important;
	opacity: 0.7;
}

/* Mega menus: ocultos até hover — sem bloquear cliques dos links pai */
body.meli-layout .main-menu .dropdown-submenu,
body.meli-layout .main-menu .sub-menu,
body.meli-layout .main-menu .primary-nav > ul > li > .dropdown-menu {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

body.meli-layout .main-menu .primary-nav > ul > li:hover > .dropdown-submenu,
body.meli-layout .main-menu .primary-nav > ul > li:hover > .sub-menu,
body.meli-layout .main-menu .primary-nav > ul > li.mf-open > .dropdown-submenu,
body.meli-layout .main-menu .primary-nav > ul > li:hover > .dropdown-menu,
body.meli-layout .main-menu .primary-nav > ul > li:focus-within > .dropdown-submenu,
body.meli-layout .main-menu .primary-nav > ul > li:focus-within > .sub-menu {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
	pointer-events: auto !important;
	position: absolute;
	top: 100% !important;
	left: 0 !important;
	z-index: 1000;
	background: #fff;
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.12);
	transform: none !important;
}

body.meli-layout .main-menu .primary-nav > ul > li:hover > .dropdown-submenu a,
body.meli-layout .main-menu .primary-nav > ul > li:hover > .sub-menu a,
body.meli-layout .main-menu .products-cats-menu:hover .toggle-product-cats a {
	pointer-events: auto !important;
}

/* Hotline / header bar — estilo ML mais limpo */
body.meli-layout .main-menu .header-bar,
body.meli-layout .main-menu .hotline,
body.meli-layout .header-bar {
	display: none !important;
}

body.meli-layout .main-menu .products-cats-menu .cats-menu-content,
body.meli-layout .department-menu {
	border-radius: 4px;
	box-shadow: 0 8px 16px rgba(0, 0, 0, 0.12);
	border: 0;
}

/* --------------------------------------------------------------------------
   Conteúdo / containers
   -------------------------------------------------------------------------- */
body.meli-layout .container,
body.meli-layout .martfury-container,
body.meli-layout .site-content > .container {
	max-width: 1200px;
}

body.meli-layout.home .site-content,
body.meli-layout.page-template-template-home-full-width .site-content {
	padding-top: 12px;
}

/* --------------------------------------------------------------------------
   Cards / produtos — UX estilo Mercado Livre
   Análise corrigida:
   - Card branco completo (imagem + título + preço), não só a thumb
   - Gutters controlados (sem padding 15px do tema pai)
   - Preço na mesma linha-base (espaço reservado p/ % OFF)
   - Imagem ocupando a largura útil do card
   -------------------------------------------------------------------------- */
body.meli-layout ul.products {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 0;
	margin: 0 !important;
	padding: 0 !important;
}

/* Faixa / grid: fundo transparente — o card é a unidade branca */
body.meli-layout .mf-product-deals-day,
body.meli-layout .mf-products-carousel,
body.meli-layout .martfury-product-carousel,
body.meli-layout .mf-products-grid,
body.meli-layout .mf-products-of-category,
body.meli-layout .mf-products-of-category-2 {
	background: transparent;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
	padding: 0;
}

/* Item da lista = só estrutura; o visual fica no .product-inner */
body.meli-layout ul.products li.product,
body.meli-layout .mf-products-grid .product,
body.meli-layout .mf-products-list .product,
body.meli-layout .woocommerce ul.products li.product,
body.meli-layout .slick-slide li.product,
body.meli-layout .slick-slide .product,
body.meli-layout .mf-product-deals-day li.product,
body.meli-layout .mf-product-deals-day ul.products li.product {
	background: transparent !important;
	border: 0 !important;
	border-right: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	overflow: visible !important;
	padding: 0 6px 12px !important;
	margin: 0 !important;
	display: flex !important;
	flex-direction: column;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	box-sizing: border-box;
	float: none !important;
	clear: none !important;
	text-align: left;
}

body.meli-layout .slick-slide li.product,
body.meli-layout .slick-slide .product,
body.meli-layout .mf-product-deals-day .slick-slide li.product {
	height: 100% !important;
	padding: 0 6px 12px !important;
}

/* Card branco unificado */
body.meli-layout .product-inner,
body.meli-layout .slick-slide .product-inner,
body.meli-layout .mf-product-deals-day .product-inner,
body.meli-layout ul.products li.product .product-inner {
	display: flex !important;
	flex-direction: column;
	flex: 1 1 auto;
	width: 100%;
	height: 100% !important;
	min-height: 320px;
	margin: 0 !important;
	padding: 12px 12px 14px !important;
	background: #fff !important;
	border: 1px solid rgba(0, 0, 0, 0.04);
	border-radius: 6px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.06);
	box-sizing: border-box;
	text-align: left;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
	overflow: hidden;
}

body.meli-layout ul.products li.product:hover .product-inner,
body.meli-layout .slick-slide .product:hover .product-inner {
	box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12);
	transform: translateY(-2px);
}

body.meli-layout .product-inner > .mf-product-details {
	order: 2;
	display: flex !important;
	flex-direction: column;
	flex: 1 1 auto;
	min-height: 0;
	padding: 0 !important;
	margin: 0 !important;
	width: 100%;
}

body.meli-layout .product-inner .mf-product-content {
	display: flex;
	flex-direction: column;
	flex: 0 0 auto;
	padding: 0 !important;
	margin: 0 !important;
	width: 100%;
}

body.meli-layout .product-inner .mf-product-price-box {
	display: flex;
	flex-direction: column;
	margin-top: 4px !important;
	padding: 0 !important;
	width: 100%;
	flex: 0 0 auto;
}

/* Slick: altura uniforme + slides fluidos */
body.meli-layout .slick-track {
	display: flex !important;
	align-items: stretch;
	margin-left: 0 !important;
}

body.meli-layout .slick-list {
	margin: 0 -6px !important;
	padding: 4px 0 8px !important;
	overflow: hidden;
}

/* Setas do carrossel: círculo branco nas bordas (menos invasivo sobre o card) */
body.meli-layout .mf-product-deals-day .slick-arrow,
body.meli-layout .mf-products-carousel .slick-arrow,
body.meli-layout .martfury-product-carousel .slick-arrow,
body.meli-layout .mf-products-of-category .slick-arrow,
body.meli-layout .mf-products-of-category-2 .slick-arrow,
body.meli-layout .mf-product-deals-day .slick-prev-arrow,
body.meli-layout .mf-product-deals-day .slick-next-arrow,
body.meli-layout .mf-products-carousel .slick-prev-arrow,
body.meli-layout .mf-products-carousel .slick-next-arrow {
	z-index: 5;
	width: 36px;
	height: 36px;
	line-height: 36px;
	border-radius: 50%;
	background: #fff !important;
	box-shadow: 0 1px 4px rgba(0, 0, 0, 0.18);
	color: var(--meli-primary-text) !important;
	opacity: 1 !important;
}

body.meli-layout .mf-product-deals-day .slick-prev,
body.meli-layout .mf-products-carousel .slick-prev,
body.meli-layout .martfury-product-carousel .slick-prev,
body.meli-layout .mf-product-deals-day .slick-prev-arrow,
body.meli-layout .mf-products-carousel .slick-prev-arrow,
body.meli-layout .martfury-product-carousel .slick-prev-arrow {
	left: 0 !important;
}

body.meli-layout .mf-product-deals-day .slick-next,
body.meli-layout .mf-products-carousel .slick-next,
body.meli-layout .martfury-product-carousel .slick-next,
body.meli-layout .mf-product-deals-day .slick-next-arrow,
body.meli-layout .mf-products-carousel .slick-next-arrow,
body.meli-layout .martfury-product-carousel .slick-next-arrow {
	right: 0 !important;
}

body.meli-layout .slick-slide {
	height: auto !important;
	display: flex !important;
	float: none !important;
}

body.meli-layout .slick-slide > div {
	width: 100%;
	display: flex;
	height: 100%;
	flex: 1 1 auto;
}

body.meli-layout .slick-slide > div > ul,
body.meli-layout .slick-slide > div > .products {
	display: flex;
	width: 100%;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important;
}

/* Imagem: largura total do card, sem “caixa branca” isolada */
body.meli-layout ul.products li.product a img,
body.meli-layout .woocommerce ul.products li.product a img {
	width: auto;
	max-width: 100%;
	height: auto;
	object-fit: contain;
	object-position: center;
	display: block;
	margin: 0 auto;
	background: transparent;
}

body.meli-layout ul.products li.product .woo-product-thumbnail,
body.meli-layout ul.products li.product > a:first-child,
body.meli-layout .woocommerce ul.products li.product .product-thumbnail,
body.meli-layout .mf-product-thumbnail,
body.meli-layout .product-inner > .mf-product-thumbnail,
body.meli-layout .mf-product-deals-day li.product .mf-product-thumbnail {
	order: 1;
	width: 100% !important;
	height: 160px !important;
	min-height: 160px !important;
	max-height: 160px !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	flex: 0 0 160px !important;
	margin: 0 0 10px !important;
	padding: 4px !important;
	background: transparent !important;
	position: relative;
	border-radius: 4px;
}

body.meli-layout .mf-product-thumbnail img,
body.meli-layout ul.products li.product .mf-product-thumbnail img,
body.meli-layout .mf-product-thumbnail a,
body.meli-layout .mf-product-thumbnail > a {
	width: 100%;
	max-width: 100%;
}

body.meli-layout .mf-product-thumbnail img,
body.meli-layout ul.products li.product .mf-product-thumbnail img {
	width: auto !important;
	max-width: 100% !important;
	max-height: 152px !important;
	height: auto !important;
	object-fit: contain;
	margin: 0 auto;
}

/* Esconde botões de hover que empurram layout */
body.meli-layout ul.products li.product .footer-button,
body.meli-layout ul.products li.product .mf-product-details-hover {
	display: none !important;
}

/* Título */
body.meli-layout ul.products li.product .woocommerce-loop-product__title,
body.meli-layout .woocommerce ul.products li.product h2,
body.meli-layout .woocommerce ul.products li.product h3,
body.meli-layout .mf-product-content h2,
body.meli-layout .mf-product-details h2,
body.meli-layout ul.products li.product .woo-loop-product__title,
body.meli-layout .mf-product-deals-day li.product .woo-loop-product__title,
body.meli-layout .mf-product-deals-day li.product h2 {
	order: 2;
	color: #333 !important;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.35;
	height: 2.7em !important;
	min-height: 2.7em !important;
	max-height: 2.7em !important;
	margin: 0 0 6px !important;
	padding: 0 !important;
	overflow: hidden;
	display: -webkit-box !important;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	word-break: break-word;
	flex: 0 0 2.7em;
	text-align: left;
	width: 100%;
}

body.meli-layout ul.products li.product .woocommerce-loop-product__title a,
body.meli-layout .woocommerce ul.products li.product h2 a,
body.meli-layout .woocommerce ul.products li.product h3 a,
body.meli-layout .mf-product-content h2 a,
body.meli-layout .mf-product-details h2 a,
body.meli-layout ul.products li.product .woo-loop-product__title a,
body.meli-layout .mf-product-deals-day li.product .woo-loop-product__title a,
body.meli-layout .mf-product-deals-day li.product h2 a {
	color: inherit !important;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	padding: 0;
	margin: 0;
	height: auto;
	max-height: none;
	min-height: 0;
	overflow: visible;
	display: inline;
	-webkit-line-clamp: unset;
}

body.meli-layout ul.products li.product .woo-loop-product__title a:hover,
body.meli-layout .mf-product-deals-day li.product h2 a:hover {
	color: #000 !important;
}

/* Rating fora desta faixa */
body.meli-layout ul.products li.product .mf-rating,
body.meli-layout .mf-product-deals-day li.product .mf-rating,
body.meli-layout ul.products li.product .star-rating {
	display: none !important;
}

/* Preço — bloco com altura estável */
body.meli-layout ul.products li.product .price,
body.meli-layout .woocommerce ul.products li.product .price,
body.meli-layout .product-inner > .price,
body.meli-layout .product-inner .mf-product-price-box .price,
body.meli-layout .mf-product-deals-day li.product .price,
body.meli-layout .meli-price {
	order: 3;
	display: flex !important;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	gap: 0;
	color: #333;
	font-size: inherit;
	font-weight: 400;
	padding: 0 !important;
	margin: 4px 0 0 !important;
	min-height: 48px;
	line-height: 1.15;
	flex: 0 0 auto;
	text-align: left;
	width: 100%;
}

/* Linha do preço riscado (altura fixa p/ alinhar cards com/sem promo) */
body.meli-layout .meli-price__second {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	min-height: 16px;
	height: 16px;
	margin: 0 0 2px;
	line-height: 1;
	overflow: hidden;
}

body.meli-layout .meli-price__second--empty {
	visibility: hidden;
}

/* % OFF ao lado do preço atual (texto verde, padrão ML) */
body.meli-layout .meli-price__off {
	display: inline-block;
	background: transparent;
	color: var(--meli-success);
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	padding: 0;
	margin: 0 0 0 6px;
	border-radius: 0;
	letter-spacing: 0;
	align-self: center;
	white-space: nowrap;
}

body.meli-layout .meli-price__second del,
body.meli-layout ul.products li.product .price del,
body.meli-layout .mf-product-deals-day li.product .price del {
	display: inline-flex;
	align-items: baseline;
	color: #999;
	font-size: 12px;
	font-weight: 400;
	padding: 0 !important;
	margin: 0;
	text-decoration: line-through;
}

body.meli-layout .meli-price__second del .meli-price__amount,
body.meli-layout .meli-price__second del .meli-price__fraction,
body.meli-layout .meli-price__second del .meli-price__currency {
	font-size: 12px;
	font-weight: 400;
	color: #999;
	line-height: 1;
	padding-top: 0;
}

body.meli-layout .meli-price__second del .meli-price__currency {
	font-size: 12px;
	padding-top: 0;
	margin-right: 2px;
}

body.meli-layout .meli-price__second del .meli-price__cents {
	display: none;
}

body.meli-layout .meli-price__main {
	display: inline-flex;
	flex-wrap: wrap;
	align-items: center;
	color: #333;
	min-height: 28px;
}

body.meli-layout .meli-price__amount {
	display: inline-flex;
	align-items: flex-start;
	color: inherit;
	line-height: 1;
}

body.meli-layout .meli-price__currency {
	font-size: 13px;
	font-weight: 400;
	margin-right: 2px;
	line-height: 1.1;
	padding-top: 0.32em;
}

body.meli-layout .meli-price__fraction {
	font-size: 22px;
	font-weight: 400;
	letter-spacing: -0.02em;
	line-height: 1.05;
}

body.meli-layout .meli-price__cents {
	font-size: 11px;
	font-weight: 400;
	line-height: 1;
	margin-left: 1px;
	padding-top: 0.18em;
}

body.meli-layout .meli-price__range {
	font-size: 16px;
	padding: 0 2px;
	align-self: center;
}

body.meli-layout ul.products li.product .price ins,
body.meli-layout .mf-product-deals-day li.product .price ins,
body.meli-layout .mf-product-deals-day li.product .price .sale {
	display: none;
}

/* Frete grátis */
body.meli-layout .meli-shipping,
body.meli-layout .free-shipping,
body.meli-layout .shipped,
body.meli-layout .product .shipping {
	order: 4;
	display: block;
	color: var(--meli-success) !important;
	font-size: 13px;
	font-weight: 600;
	margin: 6px 0 0 !important;
	line-height: 1.3;
}

body.meli-layout .mf-product-deals-day li.product .deal-progress {
	display: none !important;
}

body.meli-layout .woocommerce ul.products li.product .button,
body.meli-layout ul.products li.product .button,
body.meli-layout .woocommerce ul.products li.product .added_to_cart {
	display: none !important;
}

body.meli-layout .woocommerce span.onsale,
body.meli-layout ul.products li.product .onsale.ribbon {
	display: none !important;
}

body.meli-layout ul.products li.product .ribbons .out-of-stock {
	background: #333;
	color: #fff;
	border-radius: 4px;
	min-height: auto;
	line-height: 1.2;
	padding: 3px 6px;
	font-size: 11px;
	font-weight: 600;
}

body.meli-layout ul.products li.product .ribbons .featured,
body.meli-layout ul.products li.product .ribbons .newness,
body.meli-layout ul.products li.product .ribbons .custom {
	border-radius: 4px;
	font-size: 11px;
	padding: 3px 6px;
}

body.meli-layout .mf-products-list ul.products,
body.meli-layout .mf-products-grid ul.products,
body.meli-layout .martfury-product-carousel ul.products,
body.meli-layout .mf-product-deals-day ul.products {
	display: flex;
	align-items: stretch;
	margin: 0 !important;
}

/* Grid shop: gutters regulares */
body.meli-layout.woocommerce ul.products:not(.slick-slider) li.product,
body.meli-layout .woocommerce ul.products:not(.slick-slider) li.product {
	padding: 0 6px 12px !important;
}

@media (max-width: 767px) {
	body.meli-layout ul.products li.product,
	body.meli-layout .slick-slide li.product {
		padding: 0 4px 10px !important;
	}

	body.meli-layout .product-inner,
	body.meli-layout ul.products li.product .product-inner {
		min-height: 280px;
		padding: 10px 10px 12px !important;
	}

	body.meli-layout .mf-product-thumbnail,
	body.meli-layout .product-inner > .mf-product-thumbnail {
		height: 140px !important;
		min-height: 140px !important;
		max-height: 140px !important;
		flex-basis: 140px !important;
	}

	body.meli-layout .meli-price__fraction {
		font-size: 20px;
	}
}

/* --------------------------------------------------------------------------
   Hero / banners da home (estilo ML: 1 banner full → produtos)
   -------------------------------------------------------------------------- */
/* Container da home sem max-width — banner fica edge-to-edge */
body.meli-layout.home .site-content > .martfury-container,
body.meli-layout.page-template-template-home-full-width .site-content > .martfury-container {
	max-width: none;
	width: 100%;
	padding-left: 0;
	padding-right: 0;
}

body.meli-layout.home .site-content > .martfury-container > .row,
body.meli-layout.page-template-template-home-full-width .site-content > .martfury-container > .row {
	margin-left: 0;
	margin-right: 0;
}

/* Primeira row (banner): sem padding interno */
body.meli-layout.home .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:first-child > .martfury-container,
body.meli-layout.page-template-template-home-full-width .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:first-child > .martfury-container {
	max-width: none;
	width: 100%;
	padding-left: 0;
	padding-right: 0;
}

body.meli-layout.home .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:first-child > .martfury-container > .row,
body.meli-layout.page-template-template-home-full-width .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:first-child > .martfury-container > .row {
	margin-left: 0;
	margin-right: 0;
}

body.meli-layout.home .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:first-child .vc_column-inner,
body.meli-layout.page-template-template-home-full-width .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:first-child .vc_column-inner {
	padding-left: 0;
	padding-right: 0;
}

/* Demais seções: mantêm largura centralizada de 1200px */
body.meli-layout.home .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:not(:first-child) > .martfury-container,
body.meli-layout.page-template-template-home-full-width .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:not(:first-child) > .martfury-container {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 15px;
	padding-right: 15px;
}

/* Home: slider em largura total (sem coluna lateral de banners) */
body.meli-layout.home .site-content > .martfury-container > .vc_row:first-of-type .vc_col-lg-9,
body.meli-layout.page-template-template-home-full-width .site-content > .martfury-container > .vc_row:nth-of-type(1) .vc_col-lg-9,
body.meli-layout.page-template-template-home-full-width .wpb_revslider_element,
body.meli-layout.home .wpb_revslider_element {
	width: 100% !important;
	max-width: 100% !important;
	flex: 0 0 100% !important;
}

/* Full-bleed: sem radius/sombra nas bordas da tela */
body.meli-layout.home .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:first-child .wpb_revslider_element,
body.meli-layout.home .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:first-child .rev_slider_wrapper,
body.meli-layout.page-template-template-home-full-width .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:first-child .wpb_revslider_element,
body.meli-layout.page-template-template-home-full-width .site-content > .martfury-container > .row > #wpb-content-root > .vc_row:first-child .rev_slider_wrapper {
	border-radius: 0;
	box-shadow: none;
	overflow: hidden;
}

/* Esconde banners laterais / mobile do hero demo */
body.meli-layout.home .mf-banner-small,
body.meli-layout.page-template-template-home-full-width .mf-banner-small,
body.meli-layout.home .vc_col-lg-3 .mf-banner-small,
body.meli-layout.page-template-template-home-full-width .vc_col-lg-3 {
	display: none !important;
}

/* Esconde barra de ícones (Free Delivery etc.) — no ML o grid vem logo após o banner */
body.meli-layout.home .martfury-icons-list,
body.meli-layout.page-template-template-home-full-width .martfury-icons-list,
body.meli-layout.home .mf-icons-box,
body.meli-layout.page-template-template-home-full-width .mf-icons-box {
	display: none !important;
}

/* Espaço curto entre banner e primeira grade de produtos */
body.meli-layout.home .site-content,
body.meli-layout.page-template-template-home-full-width .site-content {
	padding-top: 8px;
}

body.meli-layout.home .mf-product-deals-day,
body.meli-layout.page-template-template-home-full-width .mf-product-deals-day {
	margin-top: 0;
}

/* Esconde barra Destaques / countdown / Ver tudo — só a grade de produtos */
body.meli-layout .mf-product-deals-day .cat-header {
	display: none !important;
}

body.meli-layout .mf-banner-small,
body.meli-layout .mf-banner,
body.meli-layout .martfury-banner {
	border-radius: 4px;
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}

/* --------------------------------------------------------------------------
   Seções WPBakery / títulos
   -------------------------------------------------------------------------- */
body.meli-layout .vc_row {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

body.meli-layout .mf-products .section-header,
body.meli-layout .martfury-title,
body.meli-layout .related > h2,
body.meli-layout .upsells > h2,
body.meli-layout h2.woocommerce-loop-category__title {
	background: transparent;
	border: 0;
	color: var(--meli-primary-text);
	font-size: 22px;
	font-weight: 400;
	padding: 8px 0 12px;
}

body.meli-layout .mf-banner-small,
body.meli-layout .mf-banner,
body.meli-layout .martfury-banner {
	border-radius: 4px;
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}

body.meli-layout .rev_slider_wrapper,
body.meli-layout .wpb_revslider_element {
	border-radius: 4px;
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}

body.meli-layout .mf-icons-box,
body.meli-layout .martfury-icons-list {
	background: var(--meli-card-bg);
	border-radius: 4px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
	padding: 16px;
}

/* --------------------------------------------------------------------------
   Catálogo / sidebar
   -------------------------------------------------------------------------- */
body.meli-layout .catalog-sidebar,
body.meli-layout .shop-sidebar,
body.meli-layout .widget {
	background: var(--meli-card-bg);
	border-radius: 4px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
	border: 0;
	padding: 16px;
}

body.meli-layout .woocommerce-ordering select,
body.meli-layout .woocommerce .woocommerce-ordering select {
	border-radius: 4px;
	border-color: #ddd;
	background: #fff;
}

body.meli-layout .woocommerce-result-count {
	color: var(--meli-muted-text);
}

/* --------------------------------------------------------------------------
   Página de produto
   -------------------------------------------------------------------------- */
body.meli-layout.single-product .product .summary,
body.meli-layout.single-product div.product {
	background: transparent;
}

body.meli-layout.single-product .woocommerce-product-gallery,
body.meli-layout.single-product .summary.entry-summary,
body.meli-layout.single-product .woocommerce-tabs {
	background: var(--meli-card-bg);
	border-radius: 4px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
	padding: 20px 16px 16px;
}

body.meli-layout.single-product h1.product_title,
body.meli-layout.single-product .product_title.entry-title {
	margin: 0 0 12px;
	padding-top: 2px;
	line-height: 1.3;
	overflow: visible;
}

body.meli-layout.single-product .summary .price {
	color: var(--meli-primary-text);
	font-size: 32px;
	font-weight: 300;
}

body.meli-layout.single-product .single_add_to_cart_button,
body.meli-layout.single-product button.button.alt {
	background: var(--meli-link) !important;
	border-color: var(--meli-link) !important;
	color: #fff !important;
	border-radius: 6px;
	font-weight: 600;
	text-transform: none;
	box-shadow: none;
}

body.meli-layout.single-product .single_add_to_cart_button:hover {
	filter: brightness(0.95);
}

/* --------------------------------------------------------------------------
   Carrinho / checkout / conta
   -------------------------------------------------------------------------- */
body.meli-layout.woocommerce-cart .woocommerce,
body.meli-layout.woocommerce-checkout .woocommerce,
body.meli-layout.woocommerce-account .woocommerce {
	background: var(--meli-card-bg);
	border-radius: 4px;
	box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
	padding: 20px;
}

body.meli-layout .woocommerce a.button,
body.meli-layout .woocommerce button.button,
body.meli-layout .woocommerce input.button,
body.meli-layout .woocommerce #respond input#submit {
	background: var(--meli-link);
	color: #fff;
	border-radius: 6px;
	border: 0;
	text-transform: none;
	font-weight: 600;
	box-shadow: none;
}

body.meli-layout .woocommerce a.button.alt,
body.meli-layout .woocommerce button.button.alt,
body.meli-layout .woocommerce input.button.alt {
	background: var(--meli-link);
}

body.meli-layout .checkout-button,
body.meli-layout .woocommerce-checkout .button {
	background: var(--meli-link) !important;
}

/* --------------------------------------------------------------------------
   Footer
   -------------------------------------------------------------------------- */
body.meli-layout .site-footer,
body.meli-layout #site-footer {
	background: #fff;
	border-top: 1px solid #e6e6e6;
	margin-top: 24px;
	color: var(--meli-muted-text);
}

body.meli-layout .site-footer a {
	color: var(--meli-muted-text);
}

body.meli-layout .site-footer a:hover {
	color: var(--meli-link);
}

body.meli-layout .footer-layout,
body.meli-layout .footer-widgets {
	background: #fff;
}

body.meli-layout .footer-info,
body.meli-layout .footer-bottom {
	background: #fff;
	border-top: 1px solid #eee;
	color: #999;
	font-size: 12px;
}

/* --------------------------------------------------------------------------
   Mobile
   -------------------------------------------------------------------------- */
body.meli-layout .mobile-menu {
	background: var(--meli-primary);
	padding: 8px 0;
}

body.meli-layout .mobile-menu .mf-toggle-menu {
	color: var(--meli-primary-text);
}

@media (max-width: 991px) {
	body.meli-layout .product-extra-search {
		margin: 0;
	}

	body.meli-layout .header-extras .extras-menu {
		display: none;
	}

	body.meli-layout .meli-header-main .header-logo {
		width: 40%;
	}

	body.meli-layout ul.products li.product .price {
		font-size: 18px;
	}
}

/* Remove skin escuro conflitante */
body.meli-layout.mf-light-skin .site-header,
body.meli-layout .site-header.header-layout-1 {
	background: var(--meli-primary);
}
