.modal {
    display: none;
    position: fixed;
    z-index: 900;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: auto;
    background-color: rgba(0,0,0,0.6);
    padding-top: 60px;
}
.modal-content {
    background-color: #fff;
    margin: 5% auto;
    padding: 20px;
    border-radius: 8px;
    width: 90%;
    max-width: 500px;
    position: relative;
}
.close-btn {
    color: #aaa;
    float: right;
    font-size: 28px;
    font-weight: bold;
}
.close-btn:hover,
.close-btn:focus {
    color: #000;
    text-decoration: none;
    cursor: pointer;
}

.sponsor-carousel-container { 
    width: 100%;
    overflow: hidden;
    margin-top: 2rem 0;
    /*margin-bottom: 2rem;*/ 
}
.sponsor-carousel {
    display: flex;
    white-space: nowrap;
    animation: slide 20s linear infinite; }

.sponsor-carousel.row2 {
  animation-direction: reverse; 
}

@keyframes slide {
  0%   { transform: translateX(0%); }
  100% { transform: translateX(-100%); }
}

.sponsor-carousel:hover {
    animation-play-state: paused;
}
.sponsor-carousel form {
    display: inline-block;
}
.sponsor-carousel form input[type="image"] {
    height: 200px;
    width: auto;
    margin: 0 20px;
    vertical-align: middle;
    max-width: none;
    flex-shrink: 0;
}
@keyframes slide {
    0% {
        transform: translateX(0%);
    }
    100% {
        transform: translateX(-100%);
    }
}
@media (max-width: 600px) {
    .sponsor-carousel form input[type="image"] {
        height: 90px; margin: 0 10px;
    }
}
body {
    font-family: Arial,
    sans-serif;
    background-color: #f1f5f9;
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 80vh;
    padding: 2rem;
}
.container {
    max-width: 700px;
    width: 100%;
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    padding: 1rem;
    text-align: center;
}
h1 {
    font-size: 2rem;
    font-weight: bold;
    color: #1a202c;
    margin-bottom: 1rem;
}
p {
    color: #4a5568;
    margin-bottom: 1.5rem;
}
.btn-ok {
    background-color: #2563eb;
    color: white;
    padding: 1rem 2rem;
    border: none;
    border-radius: 9999px;
    font-size: 1.125rem;
    font-weight: bold;
    cursor: pointer;
    transition: background-color 0.3s;
}
.btn-ok:hover {
    background-color: #1e40af;
}

.carousel {
    margin: 0 auto;
    padding: 20px 0;
    max-width: 700px;
    overflow: hidden;
    display: flex;
    * {
      flex: 0 0 100%;
    }
    &:hover .group {
      animation-play-state: paused;
    }
}

.card {
    width: 100%;
    color: white;
    border-radius: 24px;
    box-shadow: rgba(0, 0, 0, 10%) 5px 5px 20px 0;
    padding: 20px;
    font-size: xx-large;
    justify-content: center;
    align-items: center;
    min-height: 200px;

    &:nth-child(1) {
      background: #7958ff;
    }

    &:nth-child(2) {
      background: #5d34f2;
    }

    &:nth-child(3) {
      background: #4300da;
    }
}

.group {
    display: flex;
    gap: 20px;
    padding-right: 20px;
    will-change: transform;
    animation: scrolling 10s linear infinite;
}
@keyframes scrolling {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(-100%);
    }
}

/* Container que agrupa os patrocinadores */
.sponsors-list {
    display: flex;
    flex-wrap: wrap; /* Permite que os itens quebrem para a próxima linha */
    justify-content: center; /* Centraliza os itens horizontalmente */
    align-items: center; /* Centraliza os itens verticalmente */
    gap: 20px; /* Espaçamento entre as imagens */
    padding: 20px 0;
}

/* Estilo para cada item individual */
.sponsor-item {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Regras para a imagem */
.sponsor-item input[type="image"] {
    height: 80px; /* **Define uma altura fixa para todas as imagens** */
    width: auto; /* A largura se ajusta automaticamente para manter a proporção original */
    object-fit: contain; /* Garante que a imagem inteira seja visível e não distorcida */
    border-radius: 8px; /* Arredonda as bordas, se desejar */
    box-shadow: 0 2px 4px rgba(0,0,0,0.1); /* Sombra sutil para destacar */
    transition: transform 0.3s ease; /* Animação suave ao passar o mouse */
}

/* Efeito ao passar o mouse */
.sponsor-item input[type="image"]:hover {
    transform: scale(1.05); /* Efeito de zoom */
}

/* --- Responsividade para dispositivos móveis --- */
@media (max-width: 600px) {
    .sponsors-list {
        gap: 10px; /* Reduz o espaçamento para telas menores */
    }
    .sponsor-item input[type="image"] {
        height: 60px; /* Reduz o tamanho das imagens para se adaptarem melhor ao mobile */
    }
}

.img-responsive {
    max-width: 50%; /* Garante que a imagem nunca seja mais larga que seu contêiner */
    height: auto;/* Mantém a proporção da imagem */
    display: block;/* Ajuda com o layout e remove espaços indesejados abaixo da imagem */
    margin: 0 auto 2rem; /* Centraliza a imagem e adiciona espaço abaixo */
}
