body {
    margin: 0;
    font-family: Arial, sans-serif;
    background-color: #fff;
    
}

.navbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 20px;
    background-color: #ffffff;
    border-bottom: 2px solid #007BFF;
}

.logo img {
    margin-left: 40px;
    width: 220px;
    height: 60px;
}

.search-bar {
    display: flex;
    flex: 1;
    justify-content: center;
    margin: 0 20px;
}

.search-bar input {
    width: 60%;
    padding: 8px 10px;
    border: 1px solid #ddd;
    border-radius: 4px 0 0 4px;
    outline: none;
}

.search-bar button {
    padding: 8px 15px;
    background-color: #007BFF;
    color: #fff;
    border: none;
    border-radius: 0 4px 4px 0;
    cursor: pointer;
}

.search-bar button i {
    margin-right: 5px;
}

.search-bar button:hover {
    background-color: #0056b3;
}


.event {
    display: block;
    margin: 10px 0;
  }
  
  .event[style="display: none;"] {
    display: none !important;
  }


.menu-links {
    display: flex;
    margin-right: 80px;
    align-items: center;
}



.menu-links a, .panel-btn {
    margin: 0 10px;
    text-decoration: none;
    color: #007BFF;
    font-weight: bold;
}

.panel-btn {
    background-color: #007BFF;
    color: white;
    border: none;
    padding: 8px 15px;
    border-radius: 4px;
    cursor: pointer;
}

.panel-btn:hover {
    background-color: #0056b3;
}

/* Ícone de menu hambúrguer */
.menu-toggle {

    display: none;
    flex-direction: column;
    cursor: pointer;
}

.menu-toggle span {
    background-color: #007BFF;
    height: 3px;
    width: 30px;
    margin: 4px 0;
}

/* Responsividade para telas menores */
@media (max-width: 768px) {
    .search-bar {
        display: none;
    }

    .menu-links {
        z-index: 9999;
        background-color: #ffffff;
        position: absolute;
        flex-direction: column;
        top: 85px;
        left: 50%;
        transform: translateX(-50%) scaleY(0); /* Escala inicial para colapsar */
        transform-origin: top; /* Define o ponto de origem da animação */
        align-items: center;
        width: 400px;
        border: 1px solid #ddd;
        border-radius: 5px;
        padding: 0; /* Inicialmente sem padding */
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
        opacity: 0; /* Inicialmente invisível */
        transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out, padding 0.4s ease-in-out;
    }

    .menu-links.open {
        transform: translateX(-50%) scaleY(1); /* Escala para o tamanho completo */
        opacity: 1; /* Totalmente visível */
        padding: 10px 0; /* Adiciona o padding ao abrir */
    }

    .menu-links a {
        padding: 15px 25px;
        width: 100%;
        text-align: left;
        padding-left: 20%; /* Afasta mais da borda */
    }

    .menu-toggle {
        display: flex;
    }

    #menuzin {
        font-size: 40px; /* Aumenta o tamanho do ícone */
        font-weight: bold; /* Deixa o ícone em negrito */
        color: #007BFF; /* Cor do ícone */
        cursor: pointer;
    }

    .panel-btn {
        font-size: 16px;
        background-color: #007BFF;
        color: #fff;
        border: none;
        padding: 8px 150px;
        border-radius: 50px;
        cursor: pointer;
    }
}
/* ------------------MENU E MENU MOBILE ACIMA------------------- */





.slider-wrapper {
    
    margin-top: 20px;
    display: flex;
    justify-content: center;
   
    
}

.slider-container {
    width: 80%;
    max-width: 100%;
    overflow: hidden;
    position: relative;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.slider {
    display: flex;
    transition: transform 0.8s ease; /* Transição mais suave */
    will-change: transform; /* Melhora a performance */

}

.slide {
    min-width: 100%;
    transition: transform 0.5s ease;
}

.slide img {
    width: 100%;
    display: block;
    border-radius: 10px;
    cursor: pointer;
}

.navigation {
    position: absolute;
    padding: 20px;
    top: 50%;
    width: 97%;
    display: flex;
    justify-content: space-between;
    transform: translateY(-50%);
}

.nav-btn {
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

.nav-btn:hover {
    background-color: rgba(0, 0, 0, 0.8);
}




/* CATEGORIA DE EVENTOS */


/* Container geral */

.category-container {
    width: 1300px;
    text-align: center;
    margin: 50px auto;
    padding: 20px;
  }
  
  .category-container h2 {
    font-size: 24px;
    text-align: left;
    margin-bottom: 20px;
    color: #007bff;
  }
  
  /* Flex container para os quadrados */
  .category-boxes {
    
    display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
    gap: 5px; /* Diminui o espaço entre os quadrados */
}
  
  /* Estilo dos quadrados */
  .category-box {
    width: 200px;
    height: 200px;
    border-radius: 15px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
  }
  
  .category-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: filter 0.3s ease; /* Para efeito de desfocagem */
  }
  
  /* Efeito de desfocar ao passar o mouse */
  .category-box:hover img {
    filter: blur(5px); /* Desfoca a imagem */
  }
  
  /* Texto abaixo da imagem */
  .category-box p {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 18px;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.5); /* Fundo escuro para o texto */
    padding: 5px 10px;
    border-radius: 5px;
  }
  
  /* Efeito de ampliação do quadrado */
  .category-box:hover {
    transform: scale(1.05); /* Amplia ligeiramente o quadrado */
  }
  
/* SLIDER EVENTOS QUE ESTÃO ACONTECENDO */

.events-container {
    position: relative; /* Garante que os elementos posicionados absolutamente fiquem relativos a este contêiner */
    width: 100%;
    max-width: 1300px;
    margin: 0 auto;
    text-align: center;
  }
  
  .events-container h2 {
    margin-bottom: 20px;
    color: #007BFF;
    text-align: left;
  }
  
  .event-slider {
    display: flex;
    gap: 20px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth; /* Suaviza a rolagem */
    padding: 20px 0;
    scrollbar-width: none; /* Oculta barra de rolagem no Firefox */
}

.event-slider::-webkit-scrollbar {
    display: none; /* Oculta barra de rolagem no Chrome, Safari */
}
  
  .event-item {
    width: 300px; /* Aumente o tamanho do quadrado */
    flex-shrink: 0;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease-in-out;
    scroll-snap-align: center;
  }
  
  .event-item:hover {
    transform: scale(1.05); /* Aumenta ligeiramente ao passar o mouse */
  }
  
  .event-item img {
    width: 105%;
    height: 400px;
    object-fit: cover;
  }
  
  .event-date {
    background-color: #007bff;
    color: white;
    font-size: 14px;
    padding: 5px;
    top: 10px;
    left: 10px;
    z-index: 10; /* Garante que o texto de data fique acima de outros elementos */
  }
  
  .event-details {
    padding: 10px;
    text-align: left;
  }
  
  .event-details h3 {
    text-align: center;
    font-size: 18px;
    margin: 10px 0;
    color: #007bff;
  }
  
  .event-details p {
    text-align: center;
    font-size: 14px;
    color: #555;
  }
  
/* ----------SEJA UM PROMOTER----------- */


.upcoming-events-container {
    position: relative; /* Garante que os elementos posicionados absolutamente fiquem relativos a este contêiner */
    width: 110%;
    max-width: 1295px;
    margin: 0 auto;
    text-align: center;
  }
  
  .upcoming-events-title {
    margin-bottom: 20px;
    color: #007BFF;
    text-align: left;
  }
  
  .events-carousel {
    align-items: center;
    display: flex;
    gap: 30px;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth; /* Suaviza a rolagem */
    padding: 20px 0;
    scrollbar-width: none; /* Oculta barra de rolagem no Firefox */
}

.events-carousel::-webkit-scrollbar {
    display: none; /* Oculta barra de rolagem no Chrome, Safari */
}
  
  .carousel-item {
    margin-left: 8px;
    width: 290px; /* Aumente o tamanho do quadrado */
    flex-shrink: 0;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease-in-out;
    scroll-snap-align: center;
  }
  
  .carousel-item:hover {
    transform: scale(1.05); /* Aumenta ligeiramente ao passar o mouse */
  }
  
  .carousel-item img {
    width: 100%;
    height: 400px;
    object-fit: cover;
  }
  
  .carousel-date {
    background-color: #007bff;
    color: white;
    font-size: 14px;
    padding: 5px;
    top: 10px;
    left: 10px;
    z-index: 10; /* Garante que o texto de data fique acima de outros elementos */
  }
  
  .carousel-details {
    padding: 10px;
    text-align: left;
  }
  
  .carousel-details-title {
    text-align: center;
    font-size: 18px;
    margin: 10px 0;
    color: #007bff;
  }
  
  .carousel-details-location {
    text-align: center;
    font-size: 14px;
    color: #555;
  }
  
  
  
  

/* -------------------------------------- */

.image-container {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; /* Ocupa toda a largura disponível */
    height: 300px; /* Altura da área da imagem */
    overflow: hidden; /* Esconde qualquer parte da imagem que ultrapasse os limites */
  }
  
  .image-container img {
    max-width: 100%;
    max-height: 100%;
    transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  }
  
  .image-container img:hover {
    transform: scale(1.1); /* Aumenta a imagem suavemente ao passar o mouse */
   
  }
  


  
/* ------------------------------------- */

.promoter-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 100px 300px;
    background-color: #007BFF;
    border-radius: 10px;
    width: 100%;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    gap: 30px;
}

.promoter-left {
    display: flex;
    align-items: center;
    gap: 20px;
    flex: 1;
}

.promoter-image img {
    width: 150px;
    height: 150px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid white;
}

.promoter-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.name-stars {
    display: flex;
    align-items: center;
    gap: 15px;
}

.name-stars h3 {
    font-size: 24px;
    font-weight: bold;
    color: white;
}

.stars span {
    color: gold;
    font-size: 24px;
}

.promoter-info p {
    font-size: 18px;
    line-height: 1.6;
    margin: 20px 0;
    color: white;
}

.signup-btn {
    padding: 10px 20px;
    background-color: white;
    color: #0056b3;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 18px;
    transition: transform 0.3s ease-in-out;
}

.signup-btn:hover {
    transform: scale(1.05); /* Aumenta ligeiramente ao passar o mouse */
}

.promoter-right iframe {
    width: 500px; /* O vídeo ocupa a largura total do container */
    height: 315px;
    aspect-ratio: 16 / 9; /* Mantém a proporção padrão de vídeo */
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

/* --------------PRODUTOR--------------- */

.hero-section {
    width: 80%;
    margin: 100px auto; /* Centraliza horizontalmente e mantém o espaçamento superior */
    display: flex;
    justify-content: space-between;
    border-radius: 20px;
    align-items: center;
    background-color: #007BFF;
    color: white;
    padding: 60px;
}

.text-content {
    padding-left: 100px;
    max-width: 600px;
}

h1 {
    font-size: 2.5em;
    margin-bottom: 20px;
}

p {
    font-size: 1.2em;
    margin-bottom: 30px;
}

.explore-btn {
    padding: 15px 30px;
    font-size: 1em;
    color: #007BFF;
    background-color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-weight: bold;
}

.explore-btn:hover {
    background-color: #f0f0f0;
}

.image-content img {
    padding-right: 50px;
    width: 700px;
    
}



/* -----------COLEÇÃO DE INGRESSOS------------ */



/* Container geral */
.new-promoter-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 100px 300px;
    gap: 100px;
    flex-wrap: wrap; /* Permite que os elementos se movam em telas menores */
}

/* Esquerda */
.new-promoter-left {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    text-align: center;
}

.new-promoter-image img {
    width: 150px;
    height: 150px;
    margin-top: -150px;
    border-radius: 50%;
    object-fit: cover;
    border: 4px solid #007BFF;
}

.new-promoter-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.new-name-stars h3, .new-name-stars2 h2 {
    color: #007BFF;
    font-size: 24px;
    font-weight: bold;
    margin: 0;
}

.new-promoter-info p {
    color: #007BFF;
    font-size: 18px;
    line-height: 1.6;
    margin: 20px 0;
}

.new-signup-btn {
    padding: 15px 30px;
    background-color: #007BFF;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    font-size: 18px;
    transition: background-color 0.3s ease-in-out;
}

.new-signup-btn:hover {
    background-color: #0056b3;
    transform: scale(1.05);
}

/* Direita - Itens de evento */
.new-promoter-right {
    flex: 1;
    display: grid;
    grid-template-columns: repeat(2, 1fr);  /* Define duas colunas */
    gap: 20px;
}

/* Estilos para os itens de evento */
.new-event-item {
    background-color: #f8f9fa;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
    position: relative;
    overflow: hidden;
}

.new-event-date {
    background-color: #007bff;
    color: white;
    font-size: 14px;
    padding: 5px;
    position: absolute;
    top: 10px;
    left: 10px;
    border-radius: 5px;
}

.new-event-img {
    width: 100%;
    height: auto;
    border-radius: 10px;
    margin-top: 20px;
}

.new-event-details {
    margin-top: 20px;
}

.new-event-details h3 {
    color: #007BFF;
    font-size: 18px;
    font-weight: bold;
}

.new-event-details p {
    color: #000;
    font-size: 14px;
}

/* RODAPÉ FOOTER */


/* Estilos gerais do footer */
.footer {
    background-color: #007BFF;
    width: 100%;
    color: white;
    padding: 20px 0;
    font-size: 14px;
}

/* Container do footer */
.footer-container {
    display: flex;
    justify-content: space-between; /* Espaço igual entre a logo e as colunas */
    align-items: flex-start; /* Alinha o conteúdo ao topo */
    max-width: 1200px; /* Limita a largura total */
    margin: 0 auto; /* Centraliza o rodapé na página */
    flex-wrap: nowrap; /* Garante que tudo fique em uma linha */
}

/* Logo do footer */
.footer-logo {
    margin-right: 20px;
    flex-shrink: 0; /* Garante que a logo não seja redimensionada */
}

.footer-logo-img {
    width: 150px;
    height: auto;
}

/* Coluna do footer */
.footer-column {
    flex: 1;
    margin: 0 10px;
}

.footer-column h3 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
}

/* Lista de itens nas colunas */
.footer-column ul {
    list-style: none;
    padding: 0;
}

.footer-column ul li {
    margin-bottom: 10px;
}

/* Links do footer */
.footer-column a {
    color: white;
    text-decoration: none;
    font-size: 14px;
}

.footer-column a:hover {
    text-decoration: underline;
}






  





/* CATEGORIAS */
    
/* Responsivo - 2 colunas centralizadas */
@media (max-width: 768px) {



    /* SLIDER */
    .slider-wrapper {
        padding: 10px 0;
    }

    .slider-container {
        width: 95%;
        height: auto;
        box-sizing: border-box;
    }

    .slide img {
        border-radius: 5px;  /* Menor arredondamento em telas pequenas */
    }

    .navigation {
        display: none;  /* Esconde botões de navegação */
    }
    

    


/* EVENTO ESLIDER */
    .event-slider {
        display: flex;
        overflow-x: auto; /* Permite o arraste horizontal */
        gap: 10px; /* Espaçamento entre os itens */
        scroll-snap-type: x mandatory; /* Força o "snap" ao deslizar */
    }

    .event-item {
        flex-shrink: 0; /* Impede que o item encolha */
        scroll-snap-align: start; /* Alinha o item ao começar a rolagem */
    }


    .category-container {
        width: 500px;
        padding: 0 10px; /* Adiciona um pequeno espaçamento interno */
        box-sizing: border-box; /* Garante que padding não afete a largura total */
        text-align: center; /* Centraliza o conteúdo dentro do container */
    }

    .category-boxes {
        display: grid; /* Define o layout de grade */
        grid-template-columns: repeat(3, 2fr); /* Duas colunas de largura igual */
        gap: 20px; /* Remove a separação entre as colunas */
        justify-content: center; /* Centraliza a grade */
    }

    .category-box {
        width: 90%; /* Ajusta para ocupar toda a largura da célula */
        max-width: 160px; /* Define um limite de largura */
        height: 150px; /* Ajusta a altura para manter a proporção */
        margin: 0 auto; /* Centraliza os quadrados dentro de cada célula */
        box-sizing: border-box; /* Garante que padding e borda não afetem o tamanho */
    }


    /* ----------------- */

    .upcoming-events-container {
        width: 100%; /* Ajusta o tamanho do container para caber na tela */
        padding: 0 10px; /* Adiciona um espaçamento lateral */
        box-sizing: border-box; /* Inclui padding no cálculo da largura */
    }

    .events-carousel {
        gap: 20px; /* Reduz o espaçamento entre os itens */
        padding: 10px 0; /* Ajusta o padding vertical */
    }

    .carousel-item {
        width: 220px; /* Diminui o tamanho dos itens no carousel */
        height: auto; /* Ajusta a altura automaticamente */
    }

    .carousel-item img {
        height: 300px; /* Reduz a altura da imagem */
    }

    .carousel-details-title {
        font-size: 16px; /* Ajusta o tamanho do título */
    }

    .carousel-details-location {
        font-size: 12px; /* Ajusta o tamanho do texto da localização */
    }

    .carousel-date {
        font-size: 12px; /* Reduz o tamanho do texto da data */
        padding: 3px; /* Ajusta o padding do texto da data */
    }
    
/* promoter */

      .promoter-container {
        flex-direction: column; /* Alinha os itens em coluna no mobile */
        padding: 20px;
        gap: 20px;
    }

    .promoter-left {
        flex-direction: column; /* Ajusta imagem e texto para ficarem alinhados verticalmente */
        align-items: center;
        text-align: center; /* Centraliza o texto no mobile */
    }

    .promoter-info {
        margin-top: 15px; /* Adiciona espaço entre a imagem e as informações */
    }

    .name-stars {
        flex-direction: column; /* Nome e estrelas em linha no mobile */
        gap: 5px;
    }

    .promoter-right iframe {
        width: 100%; /* O vídeo ocupa toda a largura disponível */
        height: auto;
    }

    .signup-btn {
        width: 100%; /* Botão ocupa a largura total */
    }


/* ---------PRODUTOR--------- */

.hero-section {
    flex-direction: column;  /* Empilha o texto e a imagem */
    text-align: center;      /* Centraliza o texto */
    padding: 40px;           /* Reduz o padding */
}

.text-content {
    padding-left: 0;
    max-width: 90%;
    margin-bottom: 30px;     /* Adiciona espaço entre o texto e a imagem */
}

h1 {
    font-size: 2em;          /* Reduz o tamanho do h1 */
}

p {
    font-size: 1em;          /* Reduz o tamanho do parágrafo */
}

.explore-btn {
    padding: 12px 25px;      /* Botão um pouco menor */
    font-size: 0.9em;
}

.image-content img {
    padding-right: 0;
    width: 90%;              /* Imagem ocupa 90% da largura */
    max-width: 400px;        /* Limite máximo de largura */
}


    /* COLEÇÃO DE INGRESSOS */

    .new-promoter-container {
        margin-top: 130px;
        flex-direction: column;
        align-items: center;
        padding: 20px;
    }

    .new-promoter-left {
       
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }

    .new-promoter-image img {
        width: 120px; /* Reduz o tamanho da imagem no responsivo */
        height: 120px;
    }

    .new-name-stars {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .new-name-stars h3 {
        text-align: center;
        font-size: 20px; /* Ajusta o tamanho do nome */
    }

    .new-name-stars2 h2 {
        text-align: center;
    }


    .new-stars .new-star {
        font-size: 24px; /* Ajusta o tamanho das estrelas */
    }

    .new-promoter-info p {
        font-size: 16px; /* Ajusta o tamanho do texto descritivo */
        text-align: center;
    }

    .new-signup-btn {
        font-size: 16px; /* Ajusta o tamanho do botão */
        padding: 10px 20px;
    }

    .new-promoter-right {
        width: 100%;
        
    }

    .new-square-container {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 10px;
    }

    .new-square {
        width: 90px; /* Reduz o tamanho dos quadrados */
        height: 90px;
        font-size: 14px;
    }

    .events-carousel {
        flex-direction: column;
        overflow-x: visible; /* Remove o scroll horizontal */
        gap: 30px;
      }
  
      .carousel-item {
        width: 100%;
      }
  
      .carousel-item img {
        width: 100%;
        height: auto;
      }

        /* Ajusta o container do footer para empilhar os itens */
    .footer-container {
        flex-direction: column; /* Coloca os itens em uma coluna */
        align-items: center; /* Centraliza o conteúdo */
    }

    /* Centraliza a logo */
    .footer-logo {
        margin-bottom: 20px; /* Espaço entre a logo e as colunas */
        text-align: center; /* Centraliza a logo */
    }

    /* Ajusta as colunas do footer */
    .footer-column {
        margin-bottom: 20px; /* Espaço entre as colunas */
        text-align: center; /* Centraliza o texto das colunas */
    }

    .footer-column ul {
        padding: 0;
    }

    .footer-column ul li {
        margin-bottom: 10px;
    }


}








