#elementor-button-wrapper123 {
    display: flex !important;
    justify-content: center;
   /* Centraliza o botão horizontalmente */
    align-items: center;
   /* Centraliza o botão verticalmente, se necessário */
    width: 100%;
   /* Garante que o wrapper ocupe toda a largura disponível */
}
#elementor-button123 {
    width: 100%;
   /* Faz com que o botão preencha toda a largura do seu contêiner */
}
/* Classes para sombra, movimento e radius */
.shadow-move {
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
}
.shadow-move:hover {
    transform: scale(1.03);
   /* Efeito de movimento ao passar o mouse */
}
.shadowbt-move {
    transition: transform 0.3s ease;
}
.shadowbt-move:hover {
    transform: scale(1.03);
   /* Efeito de movimento ao passar o mouse */
}
/*-----------EFEITO SOMBRA E MOTION------------*/
/* Estilo para container em dispositivos móveis */
.caracount {
    display: grid;
   /* Define o container como grid */
    grid-template-columns: repeat( 2, 1fr );
   /* Cria duas colunas de tamanho igual */
    gap: 10px;
   /* Espaçamento entre as colunas */
    padding: 10px;
   /* Espaçamento interno */
    border: 1px solid #ddd;
   /* Borda para visualização */
    border-radius: 5px;
   /* Cantos arredondados */
    background-color: #fff;
   /* Cor de fundo */
    width: 90%;
   /* Define a largura do container como 90% */
    margin: auto;
   /* Centraliza o container horizontalmente */
}
.caracount-item {
    box-sizing: border-box;
   /* Inclui padding e border no tamanho total do elemento */
    padding: 10px;
   /* Espaçamento interno dos itens */
    background-color: #fff;
   /* Cor de fundo dos itens */
    border: 1px solid #ccc;
   /* Borda dos itens para separação visual */
    border-radius: 4px;
   /* Cantos arredondados dos itens */
    text-align: center;
   /* Alinha o texto dos itens ao centro */
}
/* Estilo para o container de cupom */
.containercopia {
    padding: 20px;
    display: flex;
    flex-direction: column;
   /* Colunas empilhadas por padrão */
    align-items: center;
   /* Centraliza itens verticalmente */
    gap: 10px;
   /* Espaço entre o texto e o botão */
    max-width: 100%;
   /* Limita a largura máxima */
    width: 100%;
   /* Ajusta a largura conforme o tamanho da tela */
    margin: 0 auto;
   /* Centraliza o contêiner horizontalmente */
}
.text-cupom {
    font-size: auto;
   /* Ajuste de tamanho de fonte automático */
    font-weight: bold;
   /* Mantém o texto em negrito */
    white-space: nowrap;
   /* Impede quebra de linha no texto */
    text-align: center;
   /* Centraliza o texto */
}
/* Responsividade */
@media (min-width: 600px) {
    .containercopia {
        justify-content: space-between;
       /* Distribui o espaço entre o texto e o botão */
        align-items: center;
   }
    .text-cupom {
        font-size: 18px;
       /* Ajusta o tamanho da fonte em telas maiores */
        text-align: left;
       /* Alinha o texto à esquerda em telas maiores */
   }
}
/* Estilos padrão para as setas de navegação do Swiper */
.swiper-button-next, .swiper-button-prev {
    user-select: none;
   /* Impede a seleção de texto nas setas */
    display: flex !important;
   /* Define como flex container */
    align-items: center !important;
   /* Alinha o ícone verticalmente ao centro */
    justify-content: center !important;
   /* Alinha o ícone horizontalmente ao centro */
    z-index: 10 !important;
   /* Garante que as setas fiquem acima do conteúdo */
    position: absolute !important;
   /* Posiciona as setas de forma absoluta dentro do contêiner */
    top: 50% !important;
   /* Alinha verticalmente ao centro do contêiner */
    transform: translateY(-50%) !important;
   /* Ajusta o alinhamento vertical */
    background-color: rgba( 0, 0, 0, 0.008 ) !important;
   /* Cor de fundo das setas */
}
/* Posicionamento das setas */
.swiper-button-next {
    right: -5px !important;
   /* Alinha a seta direita na borda direita */
}
.swiper-button-prev {
    left: -5px !important;
   /* Alinha a seta esquerda na borda esquerda */
}
/* Aumentar a área de toque das setas */
.swiper-button-next::after, .swiper-button-prev::after {
    font-size: 24px !important;
   /* Tamanho do ícone dentro da seta */
}
/* Adicionar padding para aumentar a área de clique */
.swiper-button-next, .swiper-button-prev {
    padding: 10vh 10px !important;
   /* Adiciona padding para aumentar a área de clique */
    box-sizing: content-box !important;
   /* Inclui o padding na área de clique */
}
/* Estilo para melhorar a visibilidade da seta */
.swiper-button-next:hover, .swiper-button-prev:hover {
    background-color: rgba( 0, 0, 0, 0.005 ) !important;
   /* Cor de fundo ao passar o mouse */
    cursor: pointer !important;
   /* Altera o cursor para pointer ao passar o mouse */
}
/**CARROSEL TOPO DO SITE HOME***/
/* Carrossel com Elementor (Texto, Imagem e Botão) */
.custom-slide-container {
    width: calc(100% - 60px);
   /* Ajusta a largura do container */
    max-width: calc(1200px - 60px);
   /* Ajusta a largura máxima do container */
    height: 600px;
   /* Altura fixa do carrossel */
    margin: 40px auto;
   /* Margem ao redor do slider */
    padding: 0 10px;
   /* Padding do container do slider */
    box-sizing: border-box;
   /* Inclui padding na largura total */
    overflow: hidden;
   /* Oculta o conteúdo fora do container */
}
.custom-slide-container .swiper-wrapper {
    display: flex;
}
.custom-slide-container .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
   /* Ocupa todo o espaço do container */
    height: 100%;
   /* Ocupa toda a altura do container */
    box-sizing: border-box;
    overflow: hidden;
}
.custom-slide-container .slide-content {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 100%;
    height: 100%;
    justify-content: space-between;
   /* Espaça o conteúdo entre texto e imagem */
    box-sizing: border-box;
}
.custom-slide-container .text-content {
    width: 50%;
   /* Largura do texto */
    padding: 30px;
    box-sizing: border-box;
    text-align: left;
    margin-right: 20px;
   /* Margem direita para separação */
    overflow: hidden;
}
.custom-slide-container .text-content h1 {
    margin-top: 0;
    font-size: 36px;
}
.custom-slide-container .text-content h5 {
    font-size: 18px;
    color: #555;
}
.custom-slide-container .text-content p {
    font-size: 16px;
}
.custom-slide-container .text-content .elementor-button-wrapper {
    margin-top: 20px;
}
.custom-slide-container .slide-content img {
    width: 60%;
   /* Largura da imagem */
    height: auto;
   /* Altura proporcional */
    object-fit: contain;
   /* Ajusta a imagem sem distorcer */
    overflow: hidden;
}
/* Responsividade */
@media (max-width: 1200px) {
    .custom-slide-container {
        width: calc(100% - 20px);
       /* Ajusta a largura para telas menores */
   }
    .custom-slide-container .swiper-slide {
        width: 100%;
        height: auto;
       /* Ajusta a altura para telas menores */
   }
    .custom-slide-container .slide-content {
        flex-direction: column-reverse;
       /* Alinha o logotipo acima do texto */
        align-items: center;
       /* Centraliza os itens */
        text-align: center;
       /* Centraliza o texto */
        padding-bottom: 0;
       /* Remove padding inferior */
   }
    .custom-slide-container .text-content {
        width: 95%;
       /* Ajusta a largura do texto em telas menores */
        margin: 10px 0;
       /* Margem vertical reduzida */
        padding: 0;
       /* Remove padding extra */
        text-align: center;
   }
    .custom-slide-container .text-content h1 {
        font-size: 28px;
       /* Ajusta o tamanho da fonte do título */
        margin-top: 10px;
       /* Margem superior ajustada */
   }
    .custom-slide-container .text-content h5 {
        font-size: 16px;
       /* Ajusta o tamanho da fonte do subtítulo */
        margin: 5px 0;
       /* Margem vertical ajustada */
   }
    .custom-slide-container .text-content p {
        font-size: 14px;
       /* Ajusta o tamanho da fonte do parágrafo */
        margin: 10px 0;
       /* Margem ajustada */
   }
    .custom-slide-container .elementor-button-wrapper {
        margin-top: 20px;
       /* Margem acima do botão */
        text-align: center;
   }
    .custom-slide-container .slide-content img {
        width: 100%;
       /* Largura da imagem em telas menores */
        height: auto;
        max-height: 3000px;
       /* Define uma altura máxima para a imagem */
   }
}
/*FIM CASSOREL TOPO DO SITE HOME*/
/* POP UP HOME*/
/* Estilo do Lightbox */
.lightbox-popup {
    display: none;
   /* Esconde o pop-up inicialmente */
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
    z-index: 1000;
    align-items: center;
    justify-content: center;
}
.popup-content {
    width: 600px;
    height: 600px;
    background-color: #fff;
   /* Fundo branco que cobre toda a área */
    border-radius: 10px;
    padding: 20px;
    box-sizing: border-box;
    text-align: center;
    position: relative;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}
.popup-inner-content {
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 100%;
}
.popup-logo {
    width: 300px;
    height: auto;
    margin-bottom: 20px;
}
.popup-description {
    font-size: 18px;
    margin-bottom: 15px;
}
.close-popup {
    position: absolute;
    top: 15px;
    right: 15px;
    border: none;
    font-size: 24px;
    cursor: pointer;
    color: #fff;
    width: 40px;
    height: 40px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background-color 0.3s ease;
}
.close-popup:hover {
    background-color: #e5e5e5;
}
/*FIM POPUP HOME*/
/*INICIO sticky*/
#masthead {
    transition: top 0.3s ease, opacity 0.3s ease;
   /* Transição suave ao rolar */
}
.is-sticky #masthead {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 1000;
    background-color: #ffffff;
   /* Cor de fundo do cabeçalho sticky */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
   /* Sombra leve para destacar o cabeçalho */
    animation: fadeIn 0.5s forwards;
    height: 50px;
   /* Altura ajustada do cabeçalho sticky */
}
/* Animação de fadeIn */
@keyframes fadeIn {
    from {
        opacity: 0;
   }
    to {
        opacity: 1;
   }
}
/* Animação de fadeOut para o retorno */
@keyframes fadeOut {
    from {
        opacity: 1;
   }
    to {
        opacity: 0;
   }
}
/* Volta para a altura normal quando não está sticky */
.is-sticky.removed #masthead {
    animation: fadeOut 0.7s forwards;
    height: auto;
   /* Retorna à altura normal */
}
/* Margem para evitar salto do conteúdo */
.is-sticky .ast-container {
    margin-top: 18px;
   /* Ajuste baseado na altura do cabeçalho */
}
/* Estilos adicionais */
.ast-site-header {
    position: relative;
   /* Mantém o cabeçalho em posição relativa para o layout */
}
/****fim sticky******/
/*****ICO HOME******/
.swiper-container-links-unique {
    width: calc(100% - 60px);
   /* Ajusta a largura do container */
    max-width: calc(1200px - 60px);
   /* Ajusta a largura máxima do container */
    margin: 40px auto;
   /* Margem ao redor do slider */
    padding: 0 10px;
   /* Padding do container do slider */
    box-sizing: border-box;
   /* Inclui padding na largura total */
    overflow: hidden;
   /* Oculta o conteúdo fora do container */
}
.swiper-container-links-unique .swiper-wrapper {
    display: flex;
}
.swiper-container-links-unique .swiper-slide {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
   /* Ocupa todo o espaço do container */
    height: 100%;
   /* Ocupa toda a altura do container */
    box-sizing: border-box;
    overflow: hidden;
}
.swiper-container-links-unique .swiper-slide img {
    width: 100%;
    padding: 20px 0;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    margin: 0 auto;
}
/*******FIM ICO HOME****/



/*-------------- GALERIA ARTES CATEGORIA-----------*/
.gallery-container {
    width: 100%;
}
/*----------------IMAGEM----------------*/
.gallery-item2 {
    border-radius: 8px;
    overflow: hidden;
    transition: transform 0.3s ease;
}

/* Efeito de Hover */
.gallery-item2:hover {
    transform: scale(1.03);
}

.product-carousel-slide2 .image-container2 {
    width: 100%;
    height: 100%;
    margin-bottom: 5px; /* Espaço entre imagem e info */
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.image-container2 {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

/* Seta que aparece ao passar o mouse sobre a imagem */
.image-container2::after {
    content: " ";
    position: absolute;
    bottom: 10px; /* Ajuste a posição vertical da seta */
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 15px solid rgba(0, 0, 0, 0.5); /* Cor da seta */
    opacity: 0;
    transition: opacity 0.3s ease;
}

/* Efeito de fade in e fade out para dispositivos móveis */
@media (max-width: 767px) {
    .image-container2::after {
        opacity: 1; /* Sempre visível em mobile */
        transition: opacity 0.5s ease-in-out; /* Efeito de fade in e fade out */
    }

    .image-container2 {
        &:hover::after {
            opacity: 1; /* Certifique-se de que a seta esteja visível em hover no desktop */
        }
    }
}


/* Mostrar a seta ao passar o mouse sobre o container da imagem */
.image-container2:hover::after {
    opacity: 1;
}
/* Imagem da galeria */
.gallery-image2 {
    width: 100%;
    height: auto;
    display: block;
   /* Garante que a imagem se alinhe corretamente */
}
/*--------CONTEUDO-------*/
.gallery {
    display: grid;
    flex-wrap: wrap;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 15px;
   /* Espaço entre itens da galeria */
    justify-content: center;
    align-items: center;
}
.gallery-item {
    border-radius: 8px;
    overflow: hidden;
    transition: transform 0.3s ease;
}
/* Efeito de Hover */
.gallery-item:hover {
    transform: scale(1.03);
}
/* Container para título, descrição e botão */
.gallery-content {
    width: 100%;
    padding: 20px;
    height: 300px;
    border: 1px solid #ddd;
    background-color: #ffffff;
    overflow: hidden;
    border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
/* Título da galeria */
.gallery-title {
    font-size: 20px;
    font-weight: bold;
    text-align: center;
   /* Centraliza o título */
}
/* Descrição da galeria */
.gallery-description {
    font-size: 18px;
    margin: 0 0;
   /* Margem superior e inferior */
}
/* Botão */
#elementor-button-wrapper123 {
    padding: 8px 15px;
    border-radius: 5px;
    background-color: --e-global-color-accent;
   /* Cor de fundo */
    color: #fff;
    text-decoration: none;
    font-size: 0.8rem;
    flex: 1;
   /* Faz os botões preencherem o espaço disponível */
    margin-top: 15px;
   /* Espaçamento entre a descrição e o botão */
}
/*----------@media---------*/
/* Desktop (largura total) */
@media (min-width: 1024px) {
    .gallery-item {
        flex: 1 1 calc(33.333% - 20px);
       /* 3 itens por linha */
   }
}
/* Tablet (largura de 768px a 1023px) */
@media (min-width: 768px) and (max-width: 1023px) {
    .gallery-item {
        flex: 1 1 calc(50% - 20px);
       /* 2 itens por linha */
   }
}
/* Dispositivos móveis (largura de 480px a 767px) */
@media (min-width: 480px) and (max-width: 767px) {
    .gallery-item {
        flex: 1 1 calc(100% - 20px);
       /* 1 item por linha */
   }
}
/* Dispositivos móveis muito pequenos (largura até 479px) */
@media (max-width: 479px) {
    .gallery-item {
        flex: 1 1 calc(100% - 20px);
       /* 1 item por linha */
   }
}
/*-------------- FIM DA GALERIA ARTES CATEGORIA-----------*/
/*-------------- GALERIA ARTES FOTOS-----------*/
.gallery-container2 {
    max-width: 1100px;
    margin: 0 auto;
   /* Centraliza a galeria */
    padding: 10px;
   /* Adiciona um pouco de espaço interno */
    box-sizing: border-box;
   /* Garante que o padding não aumente a largura total */
}
.gallery2 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
}
.gallery2 img {
    width: 100%;
    height: auto;
   /* Mantém a proporção das imagens */
    cursor: pointer;
    border-radius: 5px !important;
    object-fit: cover;
   /* Faz com que as imagens preencham a área do contêiner sem distorção */
}
/*-------------- FIM GALERIA ARTES FOTOS-----------*/
/* PÁGINAÇÃO PERSONALIZADA GALERIA DE FOTOS DA ARTES*/
.gallery-pagination {
    text-align: center;
    margin: 20px 0;
}
.gallery-pagination ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
}
.gallery-pagination li {
    display: inline-block;
    margin: 0;
}
.gallery-pagination a {
    text-decoration: none;
    color: #333;
    border: 1px solid #ccc;
    padding: 8px 16px;
    border-radius: 5px;
    transition: background-color 0.3s ease, transform 0.2s;
    display: inline-block;
    font-size: 1rem;
}
.gallery-pagination a:hover {
    background-color: #f4f4f4;
    transform: translateY(-2px);
}
.gallery-pagination .inactive {
    background-color: #ddd;
   /* Cor de fundo para o botão inativo */
    color: #aaa;
   /* Cor do texto para o botão inativo */
    cursor: not-allowed;
   /* Cursor para o botão inativo */
    border: 1px solid #aaa;
   /* Cor da borda para o botão inativo */
    pointer-events: none;
   /* Desativa o clique */
}
/* FIM DA PÁGINAÇÃO PERSONALIZADA GALERIA DE FOTOS DA ARTES*/
/*----------@media---------*/
/* 01 - Desktop (largura total) */
/* Tablet (largura de 768px a 1023px) */
@media (min-width: 768px) and (max-width: 1023px) {
   /* Ajuste de galerias no tablet */
    .gallery2 {
        grid-template-columns: repeat(2, 1fr);
   }
    .gallery-pagination a {
        font-size: 0.9rem;
        padding: 6px 12px;
   }
}
/* Dispositivos móveis menores (largura de 350px a 767px) */
@media (min-width: 350px) and (max-width: 767px) {
   /* Ajuste de galerias para dispositivos móveis menores */
    .gallery2 {
        grid-template-columns: repeat(1, 1fr);
   }
    .gallery-pagination a {
        font-size: 0.9rem;
        padding: 6px 12px;
   }
}
/* Dispositivos móveis muito pequenos (largura até 349px) */
@media (max-width: 349px) {
    .gallery-pagination a {
        font-size: 0.8rem;
        padding: 4px 8px;
   }
}
/*02 - Estilo da galeria para dispositivos móveis (largura abaixo de 768px) */
@media (max-width: 767px) {
   /* Ajuste de galerias para dispositivos móveis */
    .gallery {
        grid-template-columns: 1fr;
   }
    .gallery-pagination a {
        font-size: 0.8rem;
        padding: 4px 8px;
   }
}
/*03 - Ajustes gerais para dispositivos móveis */
@media (max-width: 480px) {
    .gallery-pagination a {
        font-size: 0.8rem;
        padding: 4px 8px;
   }
}
/*----------fim @media-----------*/
/***icon menu cel***/
.iconmenucel-widget {
    display: flex;
    justify-content: center;
   /* Centraliza o menu */
    padding: 10px;
   /* Padding ao redor do widget */
}
.iconmenucel-menu {
    display: flex;
    justify-content: center;
   /* Centraliza os itens horizontalmente */
    gap: 20px;
   /* Espaçamento entre os itens */
}
.iconmenucel-menu ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    gap: 20px;
   /* Espaçamento entre os itens */
}
.iconmenucel-menu li {
    display: flex;
    align-items: center;
    background-color: #f9f9f9;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 10px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}
.iconmenucel-link {
    text-decoration: none;
    color: #333;
    font-size: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
   /* Espaçamento entre ícone e texto */
}
.iconmenucel-link i {
    font-size: 24px;
   /* Tamanho do ícone */
}
.iconmenucel-link span {
    font-size: 16px;
   /* Tamanho do texto */
}
/* Exemplo de estilo responsivo */
@media (max-width: 768px) {
    .iconmenucel-menu {
        flex-direction: column;
       /* Alinha os itens verticalmente em dispositivos móveis */
        align-items: center;
       /* Centraliza os itens verticalmente */
   }
    .iconmenucel-link {
        font-size: 14px;
       /* Tamanho do texto menor em dispositivos móveis */
   }
    .iconmenucel-link i {
        font-size: 20px;
       /* Tamanho do ícone menor em dispositivos móveis */
   }
}
