*{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    color: white;
}

.gradient {
        background: linear-gradient(90deg, #6B21A8 0%, #60A5FA 100%);
}

html,body{
    height: 100%;
    width: 100%;
    background-color: black;
    zoom: 96%;
}

nav #header {
    z-index: 1000;
}

#buttons {
    z-index: 20;
}

/* Modificações para #main e seus filhos */
#main{
    min-height: 100vh; /* Usa a altura total da viewport, permitindo que o conteúdo empurre para baixo */
    width: 100%;
    background-color: rgba(0, 0, 0);
    position: relative; /* Mantém relative para os elementos filhos */
    display: flex;
    flex-direction: column; /* Organiza os filhos em coluna */
    align-items: center; /* Centraliza horizontalmente */
    justify-content: center; /* Centraliza verticalmente se o conteúdo for menor que a tela */
    padding-top: 80px; /* Adiciona padding para evitar que o conteúdo fique sob a navbar fixa */
    padding-bottom: 40px; /* Padding na parte inferior */
}

#main img{
    max-height: 400px; /* Altura máxima para telas maiores */
    width: 80%; /* Largura relativa para ser responsivo */
    max-width: 450px; /* Largura máxima para a imagem */
    border-radius: 25px;
    z-index: 10;
    object-fit: cover;
    margin-bottom: 20px; /* Espaço abaixo da imagem */
}

.background-section {
  background-image: linear-gradient(to bottom, 
                      rgba(0, 0, 0, 1.0) 0%,     /* Começa com 80% de opacidade (preto) no topo (0%) */
                      rgba(0, 0, 0, 0.9) 10%,    /* Diminui para 40% de opacidade a 15% da altura */
                      rgba(0, 0, 0, 0.15) 25%,      /* Totalmente transparente a 30% da altura */
                      rgba(0, 0, 0, 0.15) 75%,      /* Permanece totalmente transparente até 70% da altura */
                      rgba(0, 0, 0, 0.9) 90%,    /* Aumenta para 40% de opacidade a 85% da altura */
                      rgba(0, 0, 0, 1.0) 100%   /* Termina bem transparente (quase preto) na parte inferior */
                    ),linear-gradient(to left, 
                      rgba(0, 0, 0, 1.0) 0%,     /* Começa com 80% de opacidade (preto) no topo (0%) */
                      rgba(0, 0, 0, 0.9) 10%,    /* Diminui para 40% de opacidade a 15% da altura */
                      rgba(0, 0, 0, 0.15) 25%,      /* Totalmente transparente a 30% da altura */
                      rgba(0, 0, 0, 0.15) 75%,      /* Permanece totalmente transparente até 70% da altura */
                      rgba(0, 0, 0, 0.9) 90%,    /* Aumenta para 40% de opacidade a 85% da altura */
                      rgba(0, 0, 0, 1.0) 100%   /* Termina bem transparente (quase preto) na parte inferior */
                    ),
                    url('/imgs/Mage\ Meme.png');
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  /* Adicione outras propriedades CSS se necessário */
}
 
#scroll-div{
    position:absolute;
    top:17%;
    width: 100%;
    /* height:100px; */
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    
}

#scroll-div h1{
    display: inline-block;
    font-size:140px;
    margin-right:20px;
    letter-spacing: 4px;
    animation-name: scroll;
    animation-duration: 3s;
    animation-timing-function:  linear ;
    animation-iteration-count:  infinite ;
    
    
}

#scroll-div::-webkit-scrollbar{
    display: none;
}


#scroll-div2{
    position:absolute;
    top:40%;
    width: 100%;
    /* height:100px; */
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    z-index: 20;
}

#scroll-div2 h1{
    display: inline-block;
    font-size:140px;
    margin-right:20px;
    letter-spacing: 4px;
    color: transparent;
    -webkit-text-stroke-width: 2px;
    -webkit-text-stroke-color: rgb(255, 255, 255);
     animation-name: scroll;
    animation-duration: 3s;
    animation-timing-function:  linear ;
    animation-iteration-count:  infinite ;
    animation-direction: reverse;
}

#scroll-div2::-webkit-scrollbar{
    display: none;
}


#scroll-div3{
    position:absolute;
    top:60%;
    width: 100%;
    /* height:100px; */
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
}

#scroll-div3 h1{
    display: inline-block;
    font-size:140px;
    margin-right:20px;
    letter-spacing: 4px;
     animation-name: scroll;
    animation-duration: 3s;
    animation-timing-function:  linear ;
    animation-iteration-count:  infinite ;
}

#scroll-div3::-webkit-scrollbar{
    display: none;
}

#text{
    top:10%;
    font-size: 20px;
    font-weight: bold;
    position: absolute;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif; 
    width:60%;
   
    z-index:20;
    text-align: center;
    text-transform: uppercase;
    color: #f1f1f1;
}

@keyframes scroll{
    from{
        transform:translateX(calc(-100% - 30px));
    }
    to{
        transform:translateX(0);
    }
}


/* Transições para o header */
#header {
  transition: background-color 2s ease-in-out, box-shadow 3s ease-in-out;
}

/* Transições para navAction */
#navAction {
  transition: background-color 2s ease-in-out, color 3s ease-in-out;
}

/* Transições para nav-content */
#nav-content {
  transition: background-color 2s ease-in-out;
}

/* Transições para os elementos com toggleColour */
.toggleColour {
  transition: color 2s ease-in-out;
}


/* Efeito de Rotação do Selo *//* Efeito de Rotação do Selo *//* Efeito de Rotação do Selo */
.overlay-container {
    min-height: 200px; /* Garante que o container tenha altura */
}

/* Definição da animação de rotação */
@keyframes rotate360 {
    from {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(360deg);
    }
}

/* Aplicação da animação para cada imagem com diferentes durações */
.animate-rotate-front {
    animation: rotate360 10s linear infinite; /* 1 segundo para a imagem da frente */
}

.animate-rotate-middle {
    animation: rotate360 20s linear infinite; /* 2 segundos para a imagem do meio */
}

.animate-rotate-back {
    animation: rotate360 40s linear infinite; /* 4 segundos para a imagem de fundo */
}
/* Efeito de Rotação do Selo *//* Efeito de Rotação do Selo *//* Efeito de Rotação do Selo */

/* Efeito de Brilho do Selo *//* Efeito de Brilho do Selo *//* Efeito de Brilho do Selo */
.glow-effect-purple {
    filter: drop-shadow(0 0 15px rgba(126, 34, 206, 1.0)) drop-shadow(0 0 30px rgba(126, 34, 206, 0.75)) drop-shadow(0 0 60px rgba(126, 34, 206, 0.5));
}
/* Efeito de Brilho do Selo *//* Efeito de Brilho do Selo *//* Efeito de Brilho do Selo */

/* --- MEDIA QUERIES PARA RESPONSIVIDADE DO CONTÊINER DE IMAGENS --- */

/* Estilo padrão para telas menores que 'sm' (ex: celulares) */
.image-container-responsive {
    width: 100%;
    /* Altura ajustada para ser proporcional em telas pequenas.
       Ajuste este valor '320px' se suas imagens têm proporções diferentes. */
    height: 320px;
}

/* Telas 'sm' (640px e acima) */
@media (min-width: 640px) {
    .image-container-responsive {
        width: 384px; /* w-96 */
        height: 384px; /* h-96 */
    }
}

/* Telas 'md' (768px e acima) */
@media (min-width: 768px) {
    .image-container-responsive {
        width: 512px; /* w-128 (Tailwind oferece até w-96, para 512px seria w-[512px] ou personalizar) */
        height: 512px;
    }
}

/* Telas 'lg' (1024px e acima) */
@media (min-width: 1024px) {
    .image-container-responsive {
        width: 768px; /* w-[768px] */
        height: 768px; /* h-[768px] */
    }
}

/* Telas 'xl' (1280px e acima) - Opcional, se você quiser um tamanho ainda maior */
/* @media (min-width: 1280px) {
    .image-container-responsive {
        width: 900px;
        height: 900px;
    }
} */


/* Estilos adicionais para o carousel, se necessário */
    .carousel-container {
        overflow: hidden; /* Esconde os itens que não estão visíveis */
    }
    .carousel-wrapper {
        display: flex;
        transition: transform 0.5s ease-in-out; /* Suaviza a transição do slide */
    }
    .carousel-item {
        flex: 0 0 100%; /* Cada item ocupa 100% da largura do container do wrapper inicialmente */
        min-width: 100%; /* Garante que o item não encolha */
    }
    /* Para telas maiores, mostre 3 itens por vez */
    @media (min-width: 768px) {
        .carousel-item {
            flex: 0 0 33.333%; /* Cada item ocupa 1/3 da largura */
            min-width: 33.333%;
        }
    }
    /* Para telas ainda maiores, mostre 4 itens por vez */
    @media (min-width: 1024px) {
        .carousel-item {
            flex: 0 0 25%; /* Cada item ocupa 1/4 da largura */
            min-width: 25%;
        }
    }


/* Estilos adicionais para o container do vídeo */
        .video-container {
            position: relative;
            padding-bottom: 56.25%; /* Proporção 16:9 */
            height: 0;
            overflow: hidden;
            max-width: 100%;
            background: #000;
        }
        .video-container iframe {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
        }

        
/* Estilos adicionais para tela de carregamento */

body {
    margin: 0;
    font-family: Arial, sans-serif;
}

#loader-wrapper {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000000; /* Cor de fundo da tela de carregamento */
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 9999; /* Garante que fique acima de todo o conteúdo */
    transition: opacity 0.5s ease-out, visibility 0.5s ease-out; /* Adiciona transição de opacidade e visibilidade */
}

.loader {
    border: 8px solid #f3f3f3; /* Light grey */
    border-top: 8px solid #3498db; /* Blue */
    border-radius: 50%;
    width: 60px;
    height: 60px;
    animation: spin 2s linear infinite; /* Animação de giro */
    margin-bottom: 20px;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Oculta o loader quando a classe 'hidden' é adicionada */
#loader-wrapper.hidden {
    opacity: 0;
    visibility: hidden;
}

/* Estilo para o conteúdo principal (pode ser ajustado) */
#content {
    padding: 20px;
}


/* Estilos adicionais para tela RoadMap */

/* Estilo para a linha vertical no centro */
.roadmap-container {
    position: relative;
    /* Isso cria um contexto de posicionamento para a linha */
}

.roadmap-container::after {
    content: '';
    position: absolute;
    left: 50%; /* Centraliza a linha */
    top: 0;
    bottom: 0;
    width: 4px; /* Largura da linha */
    background-color: #3B82F6; /* Cor da linha (azul Tailwind) */
    transform: translateX(-50%); /* Ajuste para centralizar perfeitamente */
    z-index: 0; /* Coloca a linha atrás dos cards */
}

/* Ajuste para os cards, para garantir que o conteúdo não seja sobreposto pela linha */
/* Você pode adicionar um background branco aos cards, por exemplo, ou padding horizontal extra */
.roadmap-card {
    min-height: 250px;
    position: relative; /* Para garantir que o card fique acima da linha */
    z-index: 10; /* Garante que os cards fiquem acima da linha */
    background-color: white; /* Garante que a linha não apareça através do card */
}