
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Poppins:wght@300;400;500;600;700&display=swap');

body {
    font-family: 'Inter', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

h1, h2, h3, h4, h5, h6, .nome, .title, .titulo {
    font-family: 'Poppins', 'Helvetica Neue', Helvetica, Arial, sans-serif !important;
}

/* =========================================
   CORES DINÂMICAS DO ESTABELECIMENTO
   ========================================= */

.colored,
.shop-bag i,
.naver .navbar a i,
.header .naver .navbar .social a:hover i,
.naver .navbar a:hover,
.user-menu i,
.search-bar-mobile button i,
.categoria .vertudo i,
.categoria .counter,
.bread i,
.produto-detalhes .categoria a,
.campo-numero i,
.sacola-table .sacola-remover i,
.sacola-table .sacola-change i,
.adicionado .checkicon,
.title-line i,
.back-button i,
.sidebar-info i,
.filter-select .outside,
.filter-select .fake-select i,
.pagination i,
.funcionamento-mobile i,
.fake-select i,
.search-bar button i,
.holder-shop-bag i
{
color: #9b006e !important;
}

.top {
border-color: #9b006e !important;
}

.footer-info,
.categoria .produto .detalhes,
.cover,
.carousel-indicators .active,
.botao-acao,
.badge-oferta,
.sidebar .sidebar-header,
.minitop,
.opcoes .opcao.active .check,
.floatbar {
background: #9b006e !important;
}

.pagination > li > a:hover, .pagination > .active > a, .pagination > .active > a:focus, .pagination > .active > a:hover,
.pagination > .active > span, .pagination > .active > span:focus, .pagination > .active > span:hover {
background: #9b006e !important;
color: #fff !important;
}

.is-sticky .avatar {
height: 70px !important;
width: 70px !important;
}

.tv-infinite-menu a.active,
.tv-infinite-menu a:hover,
.fancybox-thumbs__list a::before {
border-color: #9b006e !important;
}

.tv-infinite-menu a.active {
color: #9b006e !important;
}

/* Limitar altura da imagem destaque do produto */
.single-produto .galeria .carousel-inner .item img {
max-height: 500px;
width: auto;
max-width: 100%;
margin: 0 auto;
display: block;
object-fit: contain;
}

/* =========================================
   ANIMAÇÕES DE ENTRADA
   ========================================= */

@keyframes fadeInUp {
from {
  opacity: 0;
  transform: translateY(18px);
}
to {
  opacity: 1;
  transform: translateY(0);
}
}

@keyframes fadeIn {
from { opacity: 0; }
to   { opacity: 1; }
}



/* Animação nos cards de produtos */
.categoria .produto,
.novoproduto {
animation: fadeInUp 0.4s ease both;
}

/* Delay progressivo nos cards */
.tv-infinite > .col-infinite:nth-child(1) .produto,
.tv-grid > .col-md-3:nth-child(1) .produto { animation-delay: 0.03s; }
.tv-infinite > .col-infinite:nth-child(2) .produto,
.tv-grid > .col-md-3:nth-child(2) .produto { animation-delay: 0.07s; }
.tv-infinite > .col-infinite:nth-child(3) .produto,
.tv-grid > .col-md-3:nth-child(3) .produto { animation-delay: 0.11s; }
.tv-infinite > .col-infinite:nth-child(4) .produto,
.tv-grid > .col-md-3:nth-child(4) .produto { animation-delay: 0.15s; }
.tv-infinite > .col-infinite:nth-child(5) .produto,

.categoria .produto {
  border-radius: 12px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  overflow: hidden;
  border: 1px solid rgba(0,0,0,0.03);
  box-shadow: 0 4px 15px rgba(0,0,0,0.03);
}

.categoria .produto:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 35px rgba(0,0,0,0.06);
}

.categoria .produto .capa {
  transition: transform 0.4s ease;
}

.categoria .produto:hover .capa {
  transform: scale(1.02);
}

/* HOVER NOS CARDS DE PRODUTO (LISTAGEM) */
.novoproduto {
  border-radius: 12px !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
  border: 1px solid rgba(0,0,0,0.03) !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.02) !important;
}

.novoproduto:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 28px rgba(0,0,0,.06) !important;
  border-color: rgba(0,0,0,.08) !important;
}

/* Botão aberto/fechado mobile (app-infos) */8px !important;
overflow: hidden;
transition: transform 0.3s ease;
}

.novoproduto:hover .capa img {
transform: scale(1.04);
}

.novoproduto .capa img {
transition: transform 0.3s ease;
}

/* =========================================
   COVER COM OVERLAY GRADIENTE
   ========================================= */

.cover {
position: relative;
}

.cover::after {
content: '';
display: block;
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 60%;
background: linear-gradient(to bottom, transparent, rgba(0,0,0,.28));
pointer-events: none;
}

/* =========================================
   STATUS DE FUNCIONAMENTO — PULSANTE
   ========================================= */

/* Desktop (minitop / navigation) */
.funcionamento .aberto,
.funcionamento .fechado {
display: flex;
align-items: center;
gap: 7px;
font-size: 14px;
font-weight: 600;
}

.funcionamento .aberto::before {
content: '';
display: inline-block;
width: 10px;
height: 10px;
border-radius: 50%;
background: #22c55e;
flex-shrink: 0;
}

.funcionamento .fechado::before {
content: '';
display: inline-block;
width: 10px;
height: 10px;
border-radius: 50%;
background: #ef4444;
flex-shrink: 0;
}

/* Botão aberto/fechado mobile (app-infos) */
.status-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 16px 6px 14px;
  margin-top: 10px;
  margin-bottom: 8px;
  border-radius: 50px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.3px;
  border: none;
  cursor: default;
}

.status-badge.aberto {
  background: rgba(16,185,129,.10);
  color: #047857;
  border: 1px solid rgba(16,185,129,.25);
}

.status-badge.fechado {
  background: rgba(239,68,68,.10);
  color: #dc2626;
  border: 1px solid rgba(239,68,68,.25);
}

.status-badge .dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

.status-badge.aberto .dot {
  background: #10b981;
}

.status-badge.fechado .dot {
  background: #ef4444;
}

/* Verde/Vermelho no naver (navigation.php) */
button.verdedesktop {
background: rgba(34,197,94,.12);
color: #16a34a;
border: 1.5px solid rgba(34,197,94,.3);
border-radius: 50px;
padding: 5px 14px 4px 14px;
font-weight: 600;
font-size: 13px;
cursor: default;
transition: 0.2s;
}

button.vermelhodesktop {
background: rgba(239,68,68,.10);
color: #dc2626;
border: 1.5px solid rgba(239,68,68,.25);
border-radius: 50px;
padding: 5px 14px 4px 14px;
font-weight: 600;
font-size: 13px;
cursor: default;
transition: 0.2s;
}

/* =========================================
   CHIPS DE INFO (MOBILE — app-infos)
   ========================================= */

.app-infos .info-badges {
display: flex;
flex-wrap: wrap;
gap: 8px;
justify-content: center;
padding: 10px 10px 6px 10px !important;
max-width: 100% !important;
}

.app-infos .info-badge {
display: inline-flex !important;
align-items: center;
justify-content: center;
width: auto !important;
padding: 6px 14px !important;
border-radius: 50px !important;
border: 1.5px solid rgba(0,0,0,.10) !important;
background: rgba(0,0,0,.03);
gap: 6px;
font-size: 12px;
color: rgba(0,0,0,.7) !important;
font-weight: 500;
}

.app-infos .info-badge i {
font-size: 16px !important;
margin-right: 0 !important;
color: rgba(0,0,0,.45) !important;
}

.app-infos .info-badge span {
text-align: left !important;
font-size: 12px;
line-height: 14px;
color: rgba(0,0,0,.7);
}

.app-infos .info-badge a {
color: rgba(0,0,0,.7);
}

/* =========================================
   BARRA DE CATEGORIAS MOBILE — PILL STYLE
   ========================================= */

.search-bar-mobile .tv-infinite-menu {
display: flex;
flex-wrap: nowrap;
overflow-x: auto;
justify-content: flex-start !important;
scrollbar-width: none;
-ms-overflow-style: none;
padding: 4px 12px 8px 12px;
gap: 6px;
}

.search-bar-mobile .tv-infinite-menu::-webkit-scrollbar {
display: none;
}

.search-bar-mobile .tv-infinite-menu a {
display: inline-flex;
align-items: center;
white-space: nowrap;
flex-shrink: 0;
padding: 7px 16px 6px 16px !important;
border-radius: 50px !important;
border: 1.5px solid #e5e5e5 !important;
border-bottom: 1.5px solid #e5e5e5 !important;
font-size: 13px !important;
font-weight: 500;
color: rgba(0,0,0,.6) !important;
background: #fff;
transition: background 0.2s, border-color 0.2s, color 0.2s !important;
}

.search-bar-mobile .tv-infinite-menu a.active,
.search-bar-mobile .tv-infinite-menu a:hover {
background: #9b006e !important;
border-color: #9b006e !important;
color: #fff !important;
}

/* =========================================
   BADGE DE OFERTA COM % DE DESCONTO
   ========================================= */

.produto-wrapper {
position: relative;
display: block;
}

.badge-oferta {
position: absolute;
top: 8px;
left: 8px;
z-index: 4;
background: #ef4444;
color: #fff;
font-size: 11px;
font-weight: 700;
padding: 3px 8px 2px 8px;
border-radius: 50px;
letter-spacing: 0.3px;
line-height: 16px;
box-shadow: 0 2px 6px rgba(239,68,68,.4);
pointer-events: none;
}

/* Badge de oferta na listagem (novoproduto) */
.novoproduto-wrapper {
position: relative;
display: block;
}

.novoproduto-wrapper .badge-oferta {
top: 6px;
right: 6px;
left: auto;
font-size: 10px;
padding: 2px 7px 1px 7px;
}

/* =========================================
   SEARCH BAR — FOCO ANIMADO
   ========================================= */

.search-bar form {
transition: box-shadow 0.25s ease;
border-radius: 8px !important;
}

.search-bar form:focus-within {
box-shadow: 0 0 0 3px #9b006e33 !important;
}

.search-bar-mobile form {
  transition: box-shadow 0.25s ease;
  border-radius: 8px !important;
  box-shadow: 0 1px 4px rgba(0,0,0,.08);
  margin-top: 14px;
  margin-bottom: 6px;
}

.search-bar-mobile form:focus-within {
box-shadow: 0 0 0 3px #9b006e22, 0 2px 8px rgba(0,0,0,.10) !important;
}

/* =========================================
   BOTÃO "VER TUDO" MELHORADO
   ========================================= */

.categoria .vertudo {
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  font-size: 14px !important;
  font-weight: 600 !important;
  border-radius: 20px;
  background: rgba(0,0,0,.04) !important;
  color: rgba(0,0,0,.6) !important;
  padding: 4px 12px 3px 12px !important;
  transition: background 0.2s, color 0.2s;
  margin: 0 !important;
  float: right !important;
}

.categoria .vertudo:hover {
background: #9b006e28 !important;
color: #9b006e !important;
}

.categoria .vertudo i {
transform: translateY(0) !important;
font-size: 14px;
}

/* Wrapper do titulo da categoria */
.categoria-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 14px;
}

.categoria-header .title {
  display: inline-block;
}

.categoria-header .vertudo {
  margin: 0 !important;
}

/* =========================================
   SIDEBAR — MELHORIAS VISUAIS
   ========================================= */


.sidebar-info {
  border-radius: 10px;
  padding: 14px 16px !important;
  margin: 0 12px 10px 12px;
  background: rgba(0,0,0,.03);
  border: 1px solid rgba(0,0,0,.06);
  font-size: 13px;
  word-break: break-word;
}

.sidebar-info .title {
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(0,0,0,.07);
}

.sidebar-info .content a {
display: block;
padding: 4px 0;
font-weight: 500;
color: #333;
transition: color 0.2s;
}

.sidebar-info .content a:hover {
color: #9b006e;
}

/* =========================================
   ALL MOBILE
   ========================================= */

@media (max-width: 991px) {

.user-menu i {
color: #fff !important;
}

.shop-bag i {
color: #fff !important;
}

.shop-bag .counter {
border: 0;
padding-top: 2px;
}

.top {
border-top: 0;
background: #9b006e !important;
}

/* Hover desativado no touch */
.categoria .produto:hover,
.novoproduto:hover {
transform: none;
}

}

/* =========================================
   ALL DESK
   ========================================= */

@media (min-width: 991px) {

.app-infos .info-badges {
max-width: 500px !important;
}

}

/* =========================================
   TEMPLATE LISTA (NOVALISTAGEM) E EQUAL HEIGHTS
   ========================================= */

.novalistagem {
  display: flex !important;
  flex-wrap: wrap !important;
}

.novalistagem > div {
  display: flex !important;
  flex-direction: column !important;
  margin-bottom: 20px;
}

.novoproduto-wrapper {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  height: 100% !important;
  width: 100% !important;
}

.novoproduto {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  height: 100% !important;
  margin-bottom: 0 !important;
  width: 100% !important;
}

.novoproduto > a {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  height: 100% !important;
  width: 100% !important;
}

.novoproduto > a > .row {
  display: flex !important;
  flex: 1 !important;
  width: 100% !important;
  margin: 0 !important;
}

.novoproduto > a > .row > .col-md-9,
.novoproduto > a > .row > .col-sm-7,
.novoproduto > a > .row > .col-xs-7 {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 !important;
  padding-right: 10px;
}

.novoproduto > a > .row > .col-md-3,
.novoproduto > a > .row > .col-sm-5,
.novoproduto > a > .row > .col-xs-5 {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  float: none !important;
}

.novoproduto .capa {
  float: none !important;
  margin: 0 !important;
}

.novoproduto .descricao {
  display: -webkit-box !important;
  -webkit-line-clamp: 3 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: normal !important;
  margin-top: 5px !important;
  margin-bottom: 8px !important;
  line-height: 1.4 !important;
}

.novoproduto .preco {
  margin-top: auto !important;
}

/* Animação de Entrada na Sacola */
@keyframes sacolaPulse {
  0% { transform: scale(1); }
  50% { transform: scale(1.3); }
  100% { transform: scale(1); }
}

.shop-bag.pulse-active {
  animation: sacolaPulse 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.2) both;
}

.shop-bag.pulse-active .counter {
  background-color: #22c55e !important;
}

/* ==========================================================================
   MELHORIAS DE LAYOUT E DESIGN DA LISTAGEM DE PRODUTOS (DEV)
   ========================================================================== */

/* 1. Alinhamento Flexbox e Altura Igual (Equal Heights) no Grid */
.tv-grid {
  display: flex !important;
  flex-wrap: wrap !important;
}

.tv-infinite {
  display: flex !important;
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
}

.tv-infinite::-webkit-scrollbar {
  display: none !important;
}

/* Força todas as colunas a terem comportamento vertical flex para esticar os cards */
.tv-grid > [class*="col-"],
.tv-infinite > .col-infinite {
  display: flex !important;
  flex-direction: column !important;
  float: none !important;
}

/* Grid mobile de 2 colunas: garante flexbox */
@media (max-width: 767px) {
  .tv-grid > .col-xs-6 {
    width: 50% !important;
    display: flex !important;
    flex-direction: column !important;
    padding-left: 6px !important;
    padding-right: 6px !important;
  }
  .tv-grid {
    margin-left: -6px !important;
    margin-right: -6px !important;
  }
}

/* Wrapper do card e o container do produto */
.produto-wrapper {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  height: 100% !important;
  width: 100% !important;
  position: relative !important;
}

.categoria .produto {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  height: 100% !important;
  width: 100% !important;
  margin-bottom: 16px !important;
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
  border-radius: 16px !important; /* Bordas arredondadas modernas e fluidas */
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03) !important;
  transition: transform 0.3s cubic-bezier(0.25, 0.8, 0.25, 1), 
              box-shadow 0.3s cubic-bezier(0.25, 0.8, 0.25, 1),
              border-color 0.3s ease !important;
  overflow: hidden !important;
}

/* Efeito Hover nos cards (apenas desktop/mouse) */
@media (min-width: 992px) {
  .categoria .produto:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.06) !important;
    border-color: rgba(0, 0, 0, 0.08) !important;
  }
}

/* Link interno do produto */
.categoria .produto > a {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  height: 100% !important;
  text-decoration: none !important;
  background: transparent !important;
  padding: 0 !important;
}

/* Imagem do produto */
.categoria .produto .capa {
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  border-radius: 15px 15px 0 0 !important;
  overflow: hidden !important;
  background-size: cover !important;
  background-position: center center !important;
  transition: transform 0.5s ease !important;
  flex-shrink: 0 !important;
}

@media (min-width: 992px) {
  .categoria .produto:hover .capa {
    transform: scale(1.03) !important;
  }
}

/* Badge de desconto modernizado */
.produto-wrapper .badge-oferta,
.categoria .produto .badge-oferta {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  right: auto !important;
  background: #ef4444 !important; /* Vermelho vibrante */
  color: #ffffff !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  padding: 4px 8px 3px 8px !important;
  border-radius: 30px !important;
  box-shadow: 0 4px 10px rgba(239, 68, 68, 0.25) !important;
  letter-spacing: 0.3px !important;
  line-height: 1 !important;
  z-index: 5 !important;
}

/* Nome do produto (Título do card) */
.categoria .produto .nome {
  font-family: 'Poppins', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #1f2937 !important;
  line-height: 1.35 !important;
  text-align: center !important;
  margin: 12px 12px 6px 12px !important;
  padding: 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  height: 35px !important; /* Mantém 2 linhas consistentes */
  flex-shrink: 0 !important;
}

/* Alinhamento estrito dos blocos de preços (equalizes vertical layout) */
.categoria .produto .valor_anterior,
.categoria .produto .blank_valor_anterior {
  display: block !important;
  height: 16px !important;
  line-height: 16px !important;
  margin: 4px 12px 0 12px !important;
  text-align: center !important;
  font-size: 11px !important;
  color: #9ca3af !important;
}

.categoria .produto .valor_anterior {
  text-decoration: line-through !important;
}

.categoria .produto .valor {
  display: block !important;
  height: 22px !important;
  line-height: 22px !important;
  margin: 2px 12px 0 12px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #9b006e !important;
  text-align: center !important;
}

.categoria .produto .parcelas,
.categoria .produto .blank_parcelas {
  display: block !important;
  height: 16px !important;
  line-height: 16px !important;
  margin: 2px 12px 6px 12px !important;
  text-align: center !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  color: #6b7280 !important;
}

/* Seletor para produtos sem preço / opcionais */
.categoria .produto .apenas,
.categoria .produto .apenas-single {
  display: block !important;
  height: 16px !important;
  line-height: 16px !important;
  margin: 4px 12px 4px 12px !important;
  font-size: 11px !important;
  color: #4b5563 !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  text-align: center !important;
}

/* Botão "Comprar" (.detalhes) integrado no card */
.categoria .produto .detalhes {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 38px !important;
  background: #9b006e !important;
  color: #ffffff !important;
  border-radius: 30px !important; /* Totalmente pill */
  margin: auto 12px 12px 12px !important; /* Margem-top: auto alinha perfeitamente na base */
  padding: 0 16px !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  letter-spacing: 0.2px !important;
  text-transform: none !important;
  box-shadow: 0 4px 12px #9b006e26 !important;
  transition: all 0.2s ease !important;
  border: none !important;
}

.categoria .produto .detalhes span {
  display: inline-block !important;
  transform: none !important;
  line-height: 1 !important;
}

.categoria .produto .detalhes i {
  font-size: 15px !important;
  margin-right: 6px !important;
  transform: none !important;
  line-height: 1 !important;
}

/* Efeito de Elevação do Botão */
@media (min-width: 992px) {
  .categoria .produto:hover .detalhes {
    box-shadow: 0 6px 16px #9b006e40 !important;
    filter: brightness(1.05) !important;
  }
}

/* 2. Melhorias no layout de Lista (novalistagem / novoproduto) */
.novolistagem {
  gap: 16px;
}

.novoproduto {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
  border-radius: 14px !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.02) !important;
  padding: 12px !important;
  margin-bottom: 0 !important;
}

.novoproduto .nome {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #1f2937 !important;
  margin-bottom: 4px !important;
}

.novoproduto .descricao {
  font-size: 12px !important;
  color: #6b7280 !important;
  margin-bottom: 8px !important;
}

.novoproduto .preco .valor_anterior {
  font-size: 11px !important;
  color: #9ca3af !important;
  text-decoration: line-through !important;
  margin-right: 6px !important;
}

.novoproduto .preco .valor {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #9b006e !important;
}

.novoproduto .preco .parcelas {
  font-size: 11px !important;
  color: #6b7280 !important;
  margin-top: 2px !important;
}

.novoproduto .capa {
  border-radius: 10px !important;
  overflow: hidden !important;
}

.novoproduto .capa img {
  border-radius: 10px !important;
  object-fit: cover !important;
}

/* 3. Ajuste de Largura dos Cards no Carrossel Horizontal e Botão Ver Tudo */
.produtos .tv-infinite .col-infinite {
  width: 250px !important;
  max-width: 250px !important;
  flex-shrink: 0 !important;
  display: inline-block !important;
  vertical-align: top !important;
}

.col-infinite .produto .capa {
  max-height: none !important; /* Remove limitação de altura de 170px para manter aspect-ratio 1:1 */
}

/* Reduz o tamanho e formata a ultima coluna "Ver tudo" lateral no carrossel */
.tv-infinite .col-infinite-last {
  width: 120px !important;
  max-width: 120px !important;
  flex-shrink: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  align-self: center !important;
  margin-right: 20px !important;
}

/* Garante o texto "Ver tudo" bem pequeno e em uma unica linha */
.col-infinite-last .vertudo {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  white-space: nowrap !important; /* Impede a quebra de linha do texto */
  font-size: 11px !important; /* Texto bem pequeno */
  font-weight: 600 !important;
  color: #4b5563 !important;
  background: #f3f4f6 !important;
  border: 1px solid rgba(0, 0, 0, 0.05) !important;
  padding: 8px 14px !important;
  border-radius: 50px !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  margin-top: 0 !important;
  width: auto !important;
  height: auto !important;
}

.col-infinite-last .vertudo i {
  font-size: 11px !important;
  margin-left: 5px !important;
  transform: none !important;
  color: #4b5563 !important;
}

@media (min-width: 992px) {
  .col-infinite-last .vertudo:hover {
    background: #e5e7eb !important;
    color: #1f2937 !important;
  }
}

/* 4. Ajuste de Contraste Dinâmico do Rodapé (Footer) baseado na cor do admin */
.footer-info h2,
.footer-info h3,
.footer-info p,
.footer-info span,
.footer-info .social a i,
.footer-info a,
.footer-info a span,
.footer-info div div div {
  color: #ffffff !important;
}

/* Textos informativos secundários */
.footer-info p,
.footer-info span,
.footer-info a span,
.footer-info div div div:last-child {
  color: rgba(255, 255, 255, 0.85) !important;
}

/* Ícones das redes sociais */
.footer-info .social a i {
  color: #ffffff !important;
}

/* Divisores de links no rodapé (ex: Pedidos | Promoções) */
.footer-info div:nth-child(2) span {
  color: rgba(255, 255, 255, 0.08) !important;
}

/* Linha de separação do Copyright */
.footer-info .row[style*="border-top"] {
  border-top-color: rgba(255, 255, 255, 0.08) !important;
}

/* Borda e fundo dos selos (SSL e Google Safe) */
.footer-info div[style*="background: rgba"] {
  background: rgba(255, 255, 255, 0.04) !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
}

/* Ícones dentro dos selos de segurança */
.footer-info div[style*="background: rgba"] i {
  color: #ffffff !important;
}

/* Força o ícone do marcador de mapa a ter contraste correto */
.footer-info .lni-map-marker {
  color: #ffffff !important;
}

/* Links do rodapé no hover */
.footer-info a:hover,
.footer-info a span:hover {
  color: #ffffff !important;
  text-decoration: underline !important;
}