/* Importa as fontes do Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@700&family=Inter:wght@400;500&display=swap');


:root {
    --cor-fundo: #1a1a19;
    --cor-texto: #EAEAEA;
    --cor-destaque: #0fe6fe;
    --cor-card: #2A2A2A;
    
    --fonte-titulos: 'Poppins', sans-serif;
    --fonte-corpo: 'Inter', sans-serif;
}

body {
    background-color: var(--cor-fundo);
    color: var(--cor-texto);
    font-family: var(--fonte-corpo);
}

h1, h2, h3, h4, h5, h6 {
    font-family: var(--fonte-titulos);
}


.navbar-nav .nav-link:hover {
  color: #0fe6fe !important;
}

.navbar-nav .nav-link {
  color: #ffffff !important; 
}

.navbar-compacta {
        padding-top: 0 !important;
        padding-bottom: 0 !important;
        background-color: #2c3e50 !important; 
        min-height: 70px;
        height: 90px; /* altura fixa para a navbar */
      }
      .navbar-brand {
        display: flex;
        align-items: center;
        height: 100%;
        padding: 0;
        margin-right: 2rem;
      }
      .navbar-brand img {
        max-height: 100px; /* ajuste este valor para diminuir ou aumentar a imagem */
        height: 80px;
        width: 80px;
        object-fit: contain;
        display: block;
      }
      @media (min-width: 992px) {
        .navbar-nav {
          gap: 2rem;
        }
      }
      .navbar-nav .nav-link {
        font-size: 1.15rem;
        font-weight: 500;
        color: #fff !important;
        transition: color 0.2s;
      }
      .navbar-nav .nav-link:hover {
        color: #0fe6fe !important;
      }
      .navbar {
        box-shadow: 0 2px 8px rgba(0,0,0,0.07);
      }
      .bg-body-tertiary {
        background-color: #2c3e50 !important;
      }
      .background-animado {
        position: fixed;
        top: 0; left: 0; width: 100vw; height: 100vh;
        z-index: -1;
        background: linear-gradient(-45deg, #71cbf8, #014e57, #2c3e50, #232526);
        background-size: 400% 400%;
        animation: gradientMove 30s ease infinite;
      }
      @keyframes gradientMove {
        0% {background-position: 0% 50%;}
        50% {background-position: 100% 50%;}
        100% {background-position: 0% 50%;}
      }
      .nav-btn {
        border-radius: 2rem;
        background: rgba(44,62,80,0.85);
        color: #fff !important;
        font-size: 1.15rem;
        font-weight: 500;
        transition: background 0.2s, color 0.2s, box-shadow 0.2s;
        padding: 0.75rem 1.5rem;
        margin: 0.2rem 0;
        box-shadow: 0 2px 8px rgba(0,0,0,0.04);
        width: 100%;
        text-align: left;
      }
      .nav-btn:hover, .nav-btn.active {
        background: #0fe6fe !important;
        color: #ffffff !important;
        box-shadow: 0 4px 16px rgba(255, 255, 255, 0.12);
      }
      @media (max-width: 991.98px) {
        .navbar-nav {
          gap: 0 !important;
          width: 100%;
          align-items: stretch !important;
        }
        .nav-btn {
          width: 100%;
          justify-content: flex-start !important;
          padding-left: 2rem;
          padding-right: 1rem;
          font-size: 1.1rem;
          min-height: 48px;
        }
        .navbar-collapse {
          background: #2c3e50;
          border-radius: 0 0 1rem 1rem;
          padding-bottom: 1rem;
          width: 100vw;
          left: 0;
          position: absolute;
          top: 70px;
        }
        .navbar {
          position: relative;
        }
      }
      @media (min-width: 992px) {
        .nav-btn {
          width: auto;
          padding: 0.5rem 1.5rem;
          justify-content: center !important;
          text-align: center;
        }
        .navbar-collapse {
          position: static !important;
          width: auto !important;
          background: none !important;
          border-radius: 0 !important;
          padding-bottom: 0 !important;
        }
      }

/* Estilos do Carrossel */
.carousel {
    max-width: 800px; /* Largura máxima do carrossel */
    margin: 0 auto; /* Centraliza o carrossel */
}

.carousel-inner img {
    height: 400px; /* Altura fixa para todas as imagens */
    object-fit: cover; /* Mantém a proporção da imagem */
    border-radius: 8px; /* Bordas arredondadas */
}

.carousel-caption {
    background: rgba(0, 0, 0, 0.7); /* Fundo semi-transparente para o texto */
    border-radius: 8px;
    padding: 1rem;
}

/* Responsividade do carrossel */
@media (max-width: 768px) {
    .carousel-inner img {
        height: 250px; /* Altura menor em dispositivos móveis */
    }
}