.page-header{padding-bottom: 0px !important; }

.produto{margin-bottom: 35px;transition: all .3s ease-in-out;-webkit-box-shadow: 1px 1px 3px #c3c3c3;box-shadow: 1px 1px 3px #c3c3c3;background-color: var(--cor-fundo-produtos);padding: 10px;border-radius: 10px;height: auto;min-height: 435px;display: flex;flex-direction: column;background: #fff; border: 1px solid #e9ecf1; border-radius: 14px; box-shadow: 0 8px 20px rgba(0,0,0,0.08); padding: 18px; border-top: 6px solid #4e73df;}
.produto a:hover{text-decoration: none;}
.img-produto{height: 200px;position: relative;margin-bottom: 5px;}

/* Ajustar espaçamento das avaliações */
.produto .rating {
margin-bottom: 3px !important;
}
.img-produto img{width: 90%;margin: 0 auto;}
.produto .pic-1{opacity: 1; transition:all .7s 0s}
.produto:hover .pic-1{opacity: 0;}
.produto .pic-2{opacity: 0;transition:all .7s 0s;position: absolute;top: 0; bottom: 0; right: 0; left: 0; margin-inline: auto;}
.produto:hover .pic-2{opacity: 1;}
.produto:hover .img-produto{animation-name:blur;animation-duration:0.7s ;}
@keyframes blur{0%{filter: opacity(1)}50%{filter: opacity(0.7)}100%{filter: opacity(1)}}


.nome-prod-desktop{font-size: 14px;color: #404040;margin: 10px 0px;height: auto;min-height: 40px;/* font-weight: bold; */text-align: center;line-height: 1.4;display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}
.preco-prod{display: flex; flex-direction: column;}
.preco-de{color: #7f8c8d !important; text-decoration: line-through;text-align: center;}
.preco-por{color: #000000;font-size: 18px;font-weight: bold;height: auto;min-height: 25px;text-align: center;line-height: 1.2;}
.preco-por b{font-size: 14px;color: #000000;}
.sem-juros{margin: 0;margin-top: 3px;height: auto;min-height: 25px;color: var(--cor-1);margin-bottom: 5px;line-height: 1.3;}
.parcelas{font-size: 12px !important;text-align: center;}

.titulo{ height: 75px; display: block;text-align: left; overflow: hidden; padding-left: 15px; padding-right: 15px; }
.titulo h4{font-family: 'Roboto',sans-serif;text-align: center;color: #6d7e88;font-size: 14px;text-decoration: none; overflow: hidden;}
.indisponivel{ opacity: 0.60; }

.compre-adicione-container{display: flex; justify-content: center; height: 0px;}
.btn-buy {
margin-top: 0px !important;
width: 100%;
border-color: #04040440;
background-color: #e00000;
color: #fff;
/* font-weight: bold !important; */
margin-top: 0px;
width: 100%;
border-color: #04040440;
/* Cor dinâmica vinda do banco com fallback para var(--cor-1) */
color: #fff;
padding: 6px 9px !important;
padding: 6px 9px !important;

}

.btn-buy:hover {
filter: brightness(0.92);
}

.btn-carrinho {
border-color: #e00000 !important;
color: #e00000 !important;
transition: all 0.3s ease;
}

.btn-carrinho:hover {
background-color: #e00000 !important;
color: #fff !important;
}

/* Área dos botões - sempre no final do card */
.produto .botoes-area {
margin-top: auto;
padding-top: 8px;
position: relative;
z-index: 5;
}

/* Garantir que o conteúdo se expanda adequadamente */
.produto .conteudo-produto {
flex: 1;
display: flex;
flex-direction: column;
min-height: 120px;
padding-bottom: 0; /* sem espaço extra; o espaço é reservado pelo card quando houver seletor */
}

/* Ajustar espaçamento quando há muitos elementos */
.produto .preco-prod {
margin-bottom: 5px;
}

.produto .parcelas {
margin-bottom: 5px;
}

.produto .pix-boleto-info {
margin-bottom: 5px;
color: #27ae60;
border: 1px dashed #27ae60;
background-color: transparent;
width: 100%;
display: block;
box-sizing: border-box;
}

/* Bloco de mensagem B2B (login/cadastro/aprovação) */
.produto .mensagem-b2b {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
gap: 6px;
border: 1px dashed #cfd8dc;
background: linear-gradient(180deg, #f9fbfc 0%, #f2f7fa 100%);
color: #3f5461;
text-align: center;
padding: 10px;
border-radius: 6px;
margin: 8px 0 10px 0;
}
.produto .mensagem-b2b i { color: #90a4ae; margin-right: 6px; }
.produto .mensagem-b2b-acoes { display: flex; gap: 8px; }
.produto .mensagem-b2b-acoes .btn {
padding: 4px 10px;
border-radius: 4px;
box-shadow: 0 1px 2px rgba(0,0,0,0.06);
}

/* Seletor de variações */
.produto .mudar_dados {
margin-bottom: 5px;
}

/* Reduzir espaçamento quando poucos elementos estão visíveis */
.produto .conteudo-produto:empty,
.produto .conteudo-produto:only-child {
margin-bottom: 0;
}

/* Ajustar espaçamento do nome do produto */
.produto .nome-prod-desktop {
margin: 8px 0px;
}

/* Ajustar espaçamento do fabricante */
.produto .fabricante-info {
margin-bottom: 5px;
text-align: center;
}

/* Ajustar espaçamento da área de variações */
.produto .variacao-area {
margin-bottom: 5px;
}

/* Garantir que todos os elementos fiquem dentro do card */
.produto > * {
max-width: 100%;
}

.produto {
position: relative;
}

/* Ajustar espaçamento quando poucos elementos estão visíveis */
.produto:has(.conteudo-produto:empty) .botoes-area {
padding-top: 5px;
}

/* Reduzir espaçamento quando apenas imagem e nome estão visíveis */
.produto:has(.conteudo-produto:only-child) .botoes-area {
padding-top: 5px;
}

/* Ajustar espaçamento da imagem quando há pouco conteúdo */
.produto .img-produto {
margin-bottom: 5px;
}
.btn-shop{width: 50%;}

.btn-adicionar{font-family: 'Roboto',sans-serif;border-radius: 5px 0 0 5px !important;color:#999 !important;font-size:10px;line-height: 10px !important;text-align: left;transform: translateX(-110%);transition: all .3s; text-transform: uppercase;padding:6px 2px 5px 2px !important}
.btn-adicionar span{font-size:10px;display: inline-block; overflow: hidden;}
.btn-adicionar i{display:inline-block;font-size: 18px;}
.produto:hover .btn-adicionar{transform: translateX(0);}
.btn-comprar{position: relative !important; top: -230px; border-radius: 100px !important; font-weight: 800; color: #272727 !important; text-transform: uppercase; background-color: #272727; opacity: 0; transition: all .2s ease; padding: 10px !important;}
.produto:hover .btn-comprar, .ver-produto{opacity: 1;}

.btn-add-cart .btn-add{position: relative !important; top: -230px; border-radius: 100px !important; font-weight: 800; color: #272727 !important; text-transform: uppercase; background-color: #272727; transition: all .2s ease; padding: 10px !important;}
.produto:hover button{ opacity: 1; -webkit-transition: all 0.3s ease-in-out; }

.btn-indisponivel{ background-color: #fff; padding: 8px 25px !important; border-radius: 25px !important; text-transform: uppercase; color: #333 !important; margin: 15px 0px; font-weight: 600 !important; }
/* SELOS */

.selos{ border-radius: 0px;background: #ffd902; color: #000;font-weight: bold !important;text-transform: uppercase;padding: 8px 10px;font-size: 10px;position: absolute; padding: 8px; font-weight: 600; letter-spacing: 1px;}
.selo-l{}
.selo-r{right: 15px; }

.col-xs-15,.col-sm-15,.col-md-15,.col-lg-15 { position: relative; min-height: 1px; padding-right: 10px; padding-left: 10px; }
.col-xs-15, .col-md-15 { width: 20%; float: left; }

@media (min-width: 992px){
.produto{min-height: 350px; height: auto;}
}


@media (max-width: 992px) {
.img-produto img {
/* width: auto; */
margin: 0 auto;
}
.img-produto{/* height: 130px !important; */}

.produto{margin-bottom: 25px;min-height: auto;height: auto;/* padding: 21px 18px 80px 17px; */}
.nome-prod-desktop{font-size: 12px; color: #404040; height: 40px !important;min-height: 47px;text-align: center; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis;}
.preco-por{font-size: 14px;height: auto;min-height: 32px;}

/* Ajustes para mobile */
.produto .botoes-area {
margin-top: 10px;
padding-top: 8px;
}

.produto .conteudo-produto {
flex: 1;
}
}

@media (max-width: 992px) {
.col-md-15 { width: 50%; float: left; }
}

/* container que centraliza */
.box-tam {
display: flex;
justify-content: center; /* centraliza horizontal */
align-items: center; /* centraliza vertical */
height: 35px;
margin: 0;
gap: 5px; /* se tiver mais de um */
}

/* botão ajustado ao conteúdo */
.label-filtro {
display: inline-block;
border: 1px solid #ccc;
border-radius: 8px;
font-size: 16px;
font-weight: 500;
background-color: #fff;
color: #333;
cursor: pointer;
transition: all 0.3s ease;
text-transform: uppercase;
text-align: center;
padding: 5px 12px; /* controla largura pelo padding */
margin: 0;
}

/* oculta input mas mantém clicável */
.label-filtro input {
position: absolute;
opacity: 0;
pointer-events: none;
}

/* hover */
.label-filtro:hover {
border-color: #888;
}

/* ativo */
.label-filtro:has(input:checked) {
border-color: var(--cor-1);
background-color: var(--cor-1);
color: #fff;
}

.box-tam .owl-item {
display: flex !important;
justify-content: center;
align-items: center;
}

.box-tam .owl-prev svg {
width: 15px;
height: 15px;
}

.box-tam .owl-next svg {
width: 15px;
height: 15px;
}

.box-tam .owl-prev {
left: 5px !important; /* afasta a seta da borda esquerda */
top: 15% !important;
}

.box-tam .owl-next {
right: 5px !important; /* afasta a seta da borda direita */
top: 15% !important;
}

.row-box-tam{
box-shadow: 0 3px 3px -2px #c3c3c3;background-color: var(--cor-fundo-produtos);border-radius: 0 0 10px 10px; padding-bottom: 5px;
}

.container-box-tam {
position: static; /* em vitrines gerais, fica no fluxo após os botões */
left: auto;
right: auto;
bottom: auto;
width: 100%;
pointer-events: none; /* desativa interação quando oculto */
opacity: 0;
visibility: hidden;
max-height: 0; /* não ocupa espaço quando oculto */
overflow: hidden;
transition: max-height 0.2s ease, opacity 0.2s ease, visibility 0.2s ease;
z-index: 1;
}

/* Quando passar o mouse sobre o produto, o carrossel aparece sem sobrepor */
.produto:hover .container-box-tam {
opacity: 1;
visibility: visible;
pointer-events: auto;
max-height: 50px; /* altura suficiente para o seletor */
}

/* Itens do carrossel */
.box-tam .owl-item {
text-align: center;
}

/* Ajustes específicos para o carrossel de Mais Vendidos (apenas botões do carrossel PAI) */
#bestsellers > .owl-controls .owl-buttons div {
position: absolute;
top: 40% !important;
transform: translateY(-50%);
z-index: 2;
}

#bestsellers > .owl-controls .owl-prev {
left: 5px !important;
}

#bestsellers > .owl-controls .owl-next {
right: 5px !important;
}

/* No bloco de "Mais Vendidos", reservar espaço no card e alinhar o seletor à base */
#bestsellers .produto {
padding-bottom: 60px; /* igual ao padrão dos cartões com variação */
}
#bestsellers .container-box-tam { position: absolute; bottom: 0; left: 0; right: 0; max-height: none; margin-top: 0; }

/* Neutraliza padding extra em cards gerais com seletor (mantém só no bestsellers) */
.produto.has-variacao,
.produto:has(.container-box-tam) {
padding-bottom: 0;
}

@media (max-width: 768px) {
.img-produto {
height: 135px;
position: relative;
margin-bottom: 5px;
}
}