/* open-sans-regular */
/*
@font-face {

  font-family: 'Open Sans';

  font-style: normal;

  font-weight: 400;

  src: url('../fonts/open-sans-v44-latin/open-sans-v40-latin-regular.woff2') format('woff2');

}
*/


/* raleway-600 */
/*
@font-face {

  font-family: 'Raleway';

  font-style: normal;

  font-weight: 600;

  src: url('../fonts/open-sans-v44-latin/raleway-v34-latin-600.woff2') format('woff2');

}
*/

/* Adicione os outros pesos (600 para Open Sans e 800 para Raleway) seguindo o mesmo padrão */



/*** Spinner Start ***/

#spinner {

    opacity: 0;

    visibility: hidden;

    transition: opacity .8s ease-out, visibility 0s linear .5s;

    z-index: 99999;

 }



 #spinner.show {

     transition: opacity .8s ease-out, visibility 0s linear .0s;

     visibility: visible;

     opacity: 1;

 }



 .back-to-top {

    position: fixed;

    right: 30px;

    bottom: 30px;

    display: flex;

    width: 45px;

    height: 45px;

    align-items: center;

    justify-content: center;

    transition: 0.5s;

    z-index: 99;

}

/*** Spinner End ***/





/*** Button Start ***/

.btn {

    font-weight: 600;

    transition: .5s;

}



.btn-square {

    width: 32px;

    height: 32px;

}



.btn-sm-square {

    width: 34px;

    height: 34px;

}



.btn-md-square {

    width: 44px;

    height: 44px;

}



.btn-lg-square {

    width: 56px;

    height: 56px;

}



.btn-square,

.btn-sm-square,

.btn-md-square,

.btn-lg-square {

    padding: 0;

    display: flex;

    align-items: center;

    justify-content: center;

    font-weight: normal;

}



.btn.border-secondary {

    transition: 0.5s;

}



.btn.border-secondary:hover {

    background: var(--bs-secondary) !important;

    color: var(--bs-white) !important;

}



/*** Topbar Start ***/

.fixed-top {

    transition: 0.5s;

    background: var(--bs-white);

    border: 0;

}



.topbar {

    padding: 20px;

    border-radius: 230px 100px;

}



.topbar .top-info {

    font-size: 15px;

    line-height: 0;

    letter-spacing: 1px;

    display: flex;

    align-items: center;

}



.topbar .top-link {

    font-size: 15px;

    line-height: 0;

    letter-spacing: 1px;

    display: flex;

    align-items: center;

}



.topbar .top-link a {

    letter-spacing: 1px;

}



.topbar .top-link a small:hover {

    color: var(--bs-secondary) !important;

    transition: 0.5s;

}



.topbar .top-link a small:hover i {

    color: var(--bs-primary) !important;

}

/*** Topbar End ***/



/*** Navbar Start ***/

.navbar .navbar-nav .nav-link {

    padding: 10px 15px;

    font-size: 16px;

    transition: .5s;
    background: #FFF !important;

}



.navbar {

    height: 65px;

    border-bottom: 1px solid rgba(255, 255, 255, .1);

}



#navbarCollapse {

    height: 65px;

}



.navbar .navbar-nav .nav-link:hover,

.navbar .navbar-nav .nav-link.active,

.fixed-top.bg-white .navbar .navbar-nav .nav-link:hover,

.fixed-top.bg-white .navbar .navbar-nav .nav-link.active {

    color: var(--bs-primary);

}



.navbar .dropdown-toggle::after {

    border: none;

    content: "\f107";

    font-family: "Font Awesome 5 Free";

    font-weight: 700;

    vertical-align: middle;

    margin-left: 8px;

}



@media (min-width: 1200px) {

    .navbar .nav-item .dropdown-menu {

        display: block;

        visibility: hidden;

        top: 100%;

        transform: rotateX(-75deg);

        transform-origin: 0% 0%;

        border: 0;

        transition: .5s;

        opacity: 0;

    }

}



.dropdown .dropdown-menu a:hover {

    background: var(--bs-secondary);

    color: var(--bs-primary);

}



.navbar .nav-item:hover .dropdown-menu {

    transform: rotateX(0deg);

    visibility: visible;

    background: var(--bs-light) !important;

    border-radius: 10px !important;

    transition: .5s;

    opacity: 1;

}



#searchModal .modal-content {

    background: rgba(255, 255, 255, .8);

}

/*** Navbar End ***/



/*** Hero Header ***/

.hero-header {

    background: linear-gradient(rgba(248, 223, 173, 0.1), rgba(248, 223, 173, 0.1)), url(../img/hero-img.jpg);

    background-position: center center;

    background-repeat: no-repeat;

    background-size: cover;

}



.carousel-item {

    position: relative;

}



.carousel-item a {

    position: absolute;

    top: 50%;

    left: 50%;

    transform: translate(-50%, -50%);

    font-size: 25px;

    background: linear-gradient(rgba(255, 181, 36, 0.7), rgba(255, 181, 36, 0.7));

}



.carousel-control-next,

.carousel-control-prev {

    width: 48px;

    height: 48px;

    border-radius: 48px;

    border: 1px solid var(--bs-white);

    background: var(--bs-primary);

    position: absolute;

    top: 50%;

    transform: translateY(-50%);

}



.carousel-control-next {

    margin-right: 20px;

}



.carousel-control-prev {

    margin-left: 20px;

}



.page-header {

    position: relative;

    background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../img/cart-page-header-img.jpg);

    background-position: center center;

    background-repeat: no-repeat;

    background-size: cover;

}



@media (min-width: 992px) {

    .hero-header,

    .page-header {

        margin-top: -10px !important;

        /*margin-top: 152px !important;*/



    }

}



@media (max-width: 992px) {

    .hero-header,

    .page-header {

        margin-top: 97px !important;

    }

}

/*** Hero Header end ***/





/*** featurs Start ***/

.featurs .featurs-item .featurs-icon {

    position: relative;

    width: 120px;

    height: 120px;

}



.featurs .featurs-item .featurs-icon::after {

    content: "";

    width: 35px;

    height: 35px;

    background: var(--bs-secondary);

    position: absolute;

    bottom: -10px;

    transform: translate(-50%);

    transform: rotate(45deg);

    background: var(--bs-secondary);

    

}

/*** featurs End ***/





/*** service Start ***/

.service .service-item .service-content {

    position: relative;

    width: 250px; 

    height: 130px; 

    top: -50%; 

    left: 50%; 

    transform: translate(-50%, -50%);

}



/*** service End ***/





/*** Fruits Start ***/

.fruite .tab-class .nav-item a.active {

    background: var(--bs-secondary) !important;

}



.fruite .tab-class .nav-item a.active span {

    color: var(--bs-white) !important; 

}



.fruite .fruite-categorie .fruite-name {

    line-height: 40px;

}



.fruite .fruite-categorie .fruite-name a {

    transition: 0.5s;

}



.fruite .fruite-categorie .fruite-name a:hover {

    color: var(--bs-secondary);

}



.fruite-item {

    min-height: 400px; /* Ou a altura média de um card seu */

    background: #f8f9fa; /* Um cinza leve para o carregamento */

}





.fruite .fruite-item {

    height: 100%;

    transition: 0.5s;

}



.fruite .fruite-item:hover {

    box-shadow: 0 0 55px rgba(0, 0, 0, 0.4);

}



.fruite .fruite-item .fruite-img {

    overflow: hidden;

    transition: 0.5s;

    border-radius: 10px 10px 0 0;

}



.fruite .fruite-item .fruite-img img {

    transition: 0.5s;

}



.fruite .fruite-item .fruite-img img:hover {

    transform: scale(1.3);

}

/*** Fruits End ***/





/*** vesitable Start ***/

.vesitable .vesitable-item {

    height: 100%;

    transition: 0.5s;

}



.vesitable .vesitable-item:hover {

    box-shadow: 0 0 55px rgba(0, 0, 0, 0.4);

}



.vesitable .vesitable-item .vesitable-img {

    overflow: hidden;

    transition: 0.5s;

    border-radius: 10px 10px 0 0;

}



.vesitable .vesitable-item .vesitable-img img {

    transition: 0.5s;

}



.vesitable .vesitable-item .vesitable-img img:hover {

    transform: scale(1.2);

}



.vesitable .owl-stage {

    margin: 50px 0;

    position: relative;

}



.vesitable .owl-nav .owl-prev {

    position: absolute;

    top: -8px;

    right: 0;

    color: var(--bs-primary);

    padding: 5px 25px;

    border: 1px solid var(--bs-secondary);

    border-radius: 20px;

    transition: 0.5s;



}



.vesitable .owl-nav .owl-prev:hover {

    background: var(--bs-secondary);

    color: var(--bs-white);

}



.vesitable .owl-nav .owl-next {

    position: absolute;

    top: -8px;

    right: 88px;

    color: var(--bs-primary);

    padding: 5px 25px;

    border: 1px solid var(--bs-secondary);

    border-radius: 20px;

    transition: 0.5s;

}



.vesitable .owl-nav .owl-next:hover {

    background: var(--bs-secondary);

    color: var(--bs-white);

}

/*** vesitable End ***/





/*** Banner Section Start ***/

.banner .banner-btn:hover {

    background: var(--bs-primary);

}

/*** Banner Section End ***/





/*** Facts Start ***/

.counter {

    height: 100%;

    text-align: center;

    box-shadow: 0 0 30px rgba(0, 0, 0, 0.05);

}



.counter i {

    font-size: 60px;

    margin-bottom: 25px;

}



.counter h4 {

    color: var(--bs-primary);

    letter-spacing: 1px;

    text-transform: uppercase;

}



.counter h1 {

    margin-bottom: 0;

}

/*** Facts End ***/





/*** testimonial Start ***/

.testimonial .owl-nav .owl-prev {

    position: absolute;

    top: -58px;

    right: 0;

    color: var(--bs-primary);

    padding: 5px 25px;

    border: 1px solid var(--bs-secondary);

    border-radius: 20px;

    transition: 0.5s;

}



.testimonial .owl-nav .owl-prev:hover {

    background: var(--bs-secondary);

    color: var(--bs-white);

}



.testimonial .owl-nav .owl-next {

    position: absolute;

    top: -58px;

    right: 88px;

    color: var(--bs-primary);

    padding: 5px 25px;

    border: 1px solid var(--bs-secondary);

    border-radius: 20px;

    transition: 0.5s;

}



.testimonial .owl-nav .owl-next:hover {

    background: var(--bs-secondary);

    color: var(--bs-white);

}

/*** testimonial End ***/





/*** Single Page Start ***/

.pagination {

    display: inline-block;

}

  

.pagination a {

    color: var(--bs-dark);

    padding: 10px 16px;

    text-decoration: none;

    transition: 0.5s;

    border: 1px solid var(--bs-secondary);

    margin: 0 4px;

}

  

.pagination a.active {

    background-color: var(--bs-primary);

    color: var(--bs-light);

    border: 1px solid var(--bs-secondary);

}

  

.pagination a:hover:not(.active) {background-color: var(--bs-primary)}



.nav.nav-tabs .nav-link.active {

    border-bottom: 2px solid var(--bs-secondary) !important;

}

/*** Single Page End ***/





/*** Footer Start ***/

.footer .footer-item .btn-link {

    line-height: 35px;

    color: rgba(255, 255, 255, .5);

    transition: 0.5s;

}



.footer .footer-item .btn-link:hover {

    color: var(--bs-secondary) !important;

}



.footer .footer-item p.mb-4 {

    line-height: 35px;

}

/*** Footer End ***/

















/* Contêiner fechado */

.category-collapsed {

    max-height: 102px; /* Ajuste para mostrar umas 2 ou 3 linhas */

    overflow: hidden;

    position: relative;

    transition: max-height 0.5s ease-out;

    padding: 10px 10px 10px 10px;

}



/* Efeito de fade para indicar que continua (opcional) */

.category-collapsed::after {

    content: "";

    position: absolute;

    bottom: 0;

    left: 0;

    width: 100%;

    height: 40px;

    background: linear-gradient(transparent, rgba(248, 249, 250, 0.9));

}



/* Contêiner aberto */

.category-expanded {

    max-height: 2000px; /* Valor alto para expandir tudo */

    transition: max-height 1s ease-in;

}



/* Quando expandido, removemos o efeito de fade */

.category-expanded::after {

    display: none;

}



/* Ajuste fino para celular: diminuir margens */

@media (max-width: 768px) {

    .category-collapsed {

        max-height: 150px; /* Um pouco maior no celular por causa do empilhamento */

    }

}









/* Limita a altura inicial para cerca de 2 ou 3 linhas */

.category-collapsed {

    max-height: 102px; /* Ajuste para mostrar umas 2 ou 3 linhas */

    overflow: hidden;

    position: relative;

    transition: max-height 0.4s ease-in-out;

    padding: 10px 10px 10px 10px;

}



/* Efeito suave no final para indicar que tem mais */

.category-collapsed::after {

    content: '';

    position: absolute;

    bottom: 0; left: 0; width: 100%; height: 30px;

    background: linear-gradient(transparent, white);

}



.category-expanded {

    max-height: 2000px; /* Expande totalmente */

    transition: max-height 0.6s ease-in-out;

}



.category-expanded::after { display: none; }



/* Ajuste para botões de categoria ficarem elegantes */

.filtrarCategoria {

    font-size: 0.85rem;

    padding: 5px 15px;

}



.filtrarCategoria.active {

    background-color: #ffb524 !important; /* Cor laranja das suas imagens */

    border-color: #ffb524 !important;

    color: white !important;

}





/* Classe de destaque para o card selecionado via URL */

.border-destaque-especial {

    border: 3px solid #81c408 !important; /* Cor verde do template */

    box-shadow: 0 0 15px rgba(129, 196, 8, 0.5);

    transform: scale(1.02);

    transition: all 0.5s ease;

    z-index: 10;

}



/*



#galeria-container {

    min-height: 800px; 

    display: flex;

    flex-wrap: wrap;

}



#loader2 {

    display: block !important;

    clear: both !important;

    width: 100% !important;

    height: 100px !important;

    margin-top: 50px !important;

    margin-bottom: 50px !important;

    text-align: center;

    visibility: hidden;

}





#galeria-container {

    min-height: 600px; 

}



#loader {

    display: block !important;

    clear: both !important; 

    float: none !important;

    width: 100% !important;

    position: relative !important;

    visibility: hidden; 

    margin-bottom: 50px;

}

    

*/



/*

.fancybox__content .p-4 {

    color: #333 !important; 

    background-color: #fff !important;

    border-radius: 8px;

    max-width: 90vw; 



.fancybox__content h3 {

    color: #81c408 !important; 

    margin-bottom: 15px;

}



.fancybox__content img {

    max-width: 100%;

    height: auto;

}

*/



/* Força o contêiner do Fancybox a não ter fundo transparente no conteúdo AJAX */

.fancybox__content {

    background: #fff !important; /* Garante fundo branco sólido */

    /*padding: 3px !important;*/

    border-radius: 8px;

    box-shadow: 0 10px 30px rgba(0,0,0,0.3);

}



/* Ajuste para garantir que o modal seja rolável se o texto for muito longo */

.fancybox-ajax-content {

    max-height: 90vh; /* Limita a altura a 90% da altura da tela */

    overflow-y: auto;  /* Habilita a barra de rolagem vertical interna */

}



/* Garante que imagens e tabelas vindas do Summernote não estourem a largura */

.conteudo-principal img, 

.conteudo-principal table {

    max-width: 100% !important;

    height: auto !important;

}





/* Espaçamento entre os badges do card */

.badge {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    padding: 5px 8px !important;

}



/* Garante que o fundo do modal AJAX seja branco sólido */

.fancybox__content:has(.fancybox-ajax-content) {

    background: #ffffff !important;

}







/* Estilo para o botão de like flutuante */

.toggleLike {

    transition: all 0.3s ease;

    user-select: none; /* impede selecionar o texto ao clicar rápido */

}



.toggleLike:hover {

    transform: scale(1.05);

    opacity: 1 !important;

    background-color: #003e81ff !important;

}



.toggleLike:active {

    transform: scale(0.95);

}



/* Quando o AJAX estiver processando */

.toggleLike.processing {

    pointer-events: none;

    opacity: 0.5;

}



/* Cor especial quando o usuário já curtiu (opcional) */

.toggleLike.curtido {

    background-color: #0056b3 !important;

    border-color: #0056b3 !important;

}





.toggleLike .fa-bitcoin {

    color: #f7931a; /* Cor oficial do Bitcoin */

    filter: drop-shadow(0 0 1px rgba(0,0,0,0.2));

}



/* Efeito ao clicar */

.toggleLike:active .fa-bitcoin {

    transform: rotate(20deg) scale(1.2);

    transition: 0.1s;

}



.bg-coin-custom {

    background-color: #1379e7ff !important;

}





























        :root {

            /* Cores base baseadas na sua imagem */

            --pdf-red: #ff0000;

            --txt-blue: #007bff;

            --xls-green: #28a745;

            --zip-magenta: #b5007d;

        }



        .file-icon {

            position: relative;

            width: 100px;

            height: 130px;

            background-color: var(--pdf-red); /* Cor padrão */

            border-radius: 8px;

            display: flex;

            align-items: flex-end;

            justify-content: center;

            padding-bottom: 15px;

            box-shadow: 2px 2px 10px rgba(0,0,0,0.1);

            font-family: Arial, sans-serif;

            overflow: hidden; /* Garante que o brilho não saia do card */

        }



        /* O Canto Dobrado */

        .file-icon::before {

            content: "";

            position: absolute;

            top: 0;

            right: 0;

            width: 0;

            height: 0;

            border-style: solid;

            border-width: 0 35px 35px 0;

            border-color: transparent white transparent transparent;

            /* Opcional: sombra leve na dobra */

            filter: drop-shadow(-2px 2px 2px rgba(0,0,0,0.2));

        }



        /* O Texto da Extensão */

        .file-extension {

            color: white;

            font-weight: bold;

            font-size: 22px;

            letter-spacing: 1px;

            z-index: 1;

        }



        /* Exemplos de Cores Dinâmicas */

        .bg-pdf { background-color: #ff0000; }

        .bg-txt { background-color: #0084ff; }

        .bg-zip { background-color: #a0105a; }

        .bg-xls { background-color: #1fa344; }

        .bg-php { background-color: #16bcc1; }





        .creditsdev {font-size: xx-small; color: #465152;}





        /* Disclaimer da Galeria */

.gallery-disclaimer {

    position: absolute;

    bottom: 5px;

    right: 5px;

    font-size: 9px; /* Letras pequenas conforme solicitado */

    color: rgba(255, 255, 255, 0.8);

    background: rgba(0, 0, 0, 0.5); /* Fundo sutil para legibilidade */

    padding: 2px 6px;

    border-radius: 3px;

    pointer-events: none; /* Não atrapalha o clique na imagem */

    text-transform: uppercase;

    letter-spacing: 0.5px;

    z-index: 5;

}



/* Garante que o container da imagem permita o posicionamento absoluto */

.fruite-img {

    position: relative;

}





/* ======================================================
   ESTILO INSTAGRAM (GRADE 3 COLUNAS QUADRADAS PERFEITAS)
   ====================================================== */

/* Remove margens e espaçamentos da linha principal da galeria */
#galeria-container {
    --bs-gutter-x: 1px !important; /* Espaçamento bem fino estilo Instagram */
    --bs-gutter-y: 1px !important;
    display: flex;
    flex-wrap: wrap;
}

/* Força a coluna a ocupar exatamente 1/3 da largura (3 colunas por linha) */
#galeria-container [class*="col-"] {
    flex: 0 0 33.333333% !important;
    max-width: 33.333333% !important;
    padding-left: 2px !important;
    padding-right: 2px !important;
    margin-bottom: 4px !important;
}

/* Transforma o Card num quadrado perfeito sem bordas ou fundos brancos */
.insta-card {
    position: relative;
    width: 100%;
    padding-top: 100%; /* Hack CSS para criar proporção 1:1 (Quadrado Perfeito) */
    overflow: hidden;
    background-color: #efefef;
    border: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

/* Força a imagem a cobrir todo o quadrado sem distorcer (object-fit) */
.insta-card img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover !important;
    border-radius: 0 !important;
    transition: transform 0.3s ease, filter 0.3s ease;
}

/* Efeito Hover discreto do Instagram ao passar o mouse */
.insta-card:hover img {
    transform: scale(1.03);
    filter: brightness(0.9);
}

/* Esconde textos, datas, bordas e rodapés antigos */
.insta-card .card-body,
.insta-card .fruite-name,
.insta-card .text-center {
    display: none !important;
}

/* Ícones flutuantes (Likes/Galeria) discretos no estilo Instagram */
.insta-overlay-icons {
    position: absolute;
    bottom: 8px;
    left: 8px;
    right: 8px;
    z-index: 6;
    display: flex;
    justify-content: space-between;
    align-items: center;
    pointer-events: none;
}

/* Ajustes para telas de celular (mantém as 3 colunas finas do Instagram) */
@media (max-width: 576px) {
    #galeria-container {
        --bs-gutter-x: 1px !important;
        --bs-gutter-y: 1px !important;
    }
    #galeria-container [class*="col-"] {
        padding-left: 1px !important;
        padding-right: 1px !important;
        margin-bottom: 1px !important;
    }
}

.fet-bg_black {
    background-color: #000000;
    margin-top: -2px; 
    border-radius: 0 !important;

}

.desc_linha{
background: #81c408ed; z-index: 4;
}

.desc_font1{
font-size: 0.9rem; line-height: 1.1; max-width: 100%; text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.9);
}
.desc_font{
max-width: 100%; color: #000;
}



.container, .container-fluid, .container-xxl, .container-xl, .container-lg, .container-md, .container-sm {
    width: 100%;
    padding-right: var(--bs-gutter-x, 0.3rem);
    padding-left: var(--bs-gutter-x, 0.3rem);
    margin-right: auto;
    margin-left: auto;
}
