@import url('https://fonts.googleapis.com/css2?family=Anton&family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

body {
    font-family: "Inter", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;}

h1, h2, h3, h4, h5, h6 {
    font-family: "Anton", sans-serif !important;
    font-weight: 400 !important;
    font-style: normal !important;} 


.fw-semibold {font-weight: 600 !important;}
.font-12 {font-size: 12px;}
.font-14 {font-size: 14px;}
.font-15 {font-size: 15px;}
.font-16 {font-size: 16px;}
.font-17 {font-size: 17px;}
.font-18 {font-size: 18px;}
.font-20 {font-size: 20px;}
.font-22 {font-size: 22px;}
.font-24 {font-size: 24px;}
.font-26 {font-size: 26px;}
.font-28 {font-size: 28px;}
.font-30 {font-size: 30px;}
.font-32 {font-size: 32px;}
.font-36 {font-size: 36px;}
.font-38 {font-size: 38px;}
.font-40 {font-size: 40px;}
.font-42 {font-size: 42px;}
.font-44 {font-size: 44px;}
.font-48 {font-size: 48px;}
.font-54 {font-size: 54px;}
.font-64 {font-size: 64px;}


.inicio {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center; 
    align-items: center;
    
    width: 100%;
    max-width: 1440px; 
    height: 754px;     
    margin: auto;
    background-image: url('../img/testeira-nova.jpeg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;    
    overflow: hidden; 
}

/* 2. O Filtro (Overlay escuro) */
.inicio .filtro-inicio {
    position: absolute; 
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url('../img/Rectangle-1248.png');
    background-size: cover; 
    z-index: 1; }


.inicio .title-runSports {
    position: relative; 
    z-index: 10;        
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;}


.inicio .title-runSports h3 {
    color: #fff;
    font-size: 32px; 
    font-weight: bold;
    margin-top: 15px;
    text-transform: uppercase;}

/* 4. A Onda/Rasgado no rodapé */
.wave-bottom {
    position: absolute;
    bottom: -1px; 
    left: 0;
    width: 100%;
    z-index: 5; 
    pointer-events: none; }

.wave-bottom img {
    width: 100%;
    display: block;}

    

.whatsapp_float{
    position: fixed;
    right: 25px;
    bottom: 30px;
    z-index: 9999;
    width: 60px;
    height: 60px;}

/* Container Geral */
.calendario .container-events {
    margin: 16px 0px 48px 0px;
    width: 100%;
    max-width: 1440px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.calendario .container-events .cards {
    width: 300px;
    height: 500px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 32px 0px 0px 0px;
    align-items: center;}
/* Estrutura Base do Card */

.calendario .cards {/* Necessário para posicionar a onda no fim */
    width: 100%;
    min-height: 50px; 
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 30px;
    padding-bottom: 100px; /* Espaço para a onda não cobrir o botão */
    overflow: hidden; /* Garante que nada saia das bordas arredondadas */
    transition: transform 0.3s ease;}

.calendario .cards:hover {
    transform: translateY(-5px); }

/* --- Cores dos Cards (Baseado na imagem) --- */
.card-purple { background-color: #9b51e0; }
.card-orange { background-color: #ff9900; }
.card-blue2  { background-color: #2ebdb3; } 
.card-gray   { background-color: #8c8c8c; }
.card-blue   { background-color: #54A6C5; }
.card-red    { background-color: #eb5757; }
.card-yellow { background-color: #f2c94c; }
.card-gremio { background-color: #02a8ec; }
.card-pink   { background-color: #f17ea1; }
.card-green  { background-color: #A6C554; }

/* --- Área do Logo (Quadrado Escuro Transparente) --- */
.container-events .cards .logo-event {
    display: flex;
    justify-content: center;
    padding: 30px;}

.container-events .cards .image-logo {
    background-color: rgba(0, 0, 0, 0.15); /* Fundo escuro transparente */
    width: 140px;
    height: 140px;
    border-radius: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 15px;}

.container-events .cards .image-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;}

.container-events .cards .info-event h2 {
    font-family: "Anton", serif;
    font-size: 32px;
    line-height: 36.34px;
    color: #2A2D36;
    margin: 0px 24px 0px 24px;
    text-align: center;
    height: 73px;
    display: flex;
    align-items: flex-end;
    justify-content: center;}

    .container-events .cards .info-event h3 {
    font-family: "Anton", serif;
    font-size: 22px;
    font-weight: 400;
    color: #FFF;
    line-height: 36.34px;
    margin: 0px;
    text-align: center;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    text-transform: uppercase;}

/* --- Tipografia e Informações --- */
.info-event {
    text-align: center;
    padding: 20px 10px;
    color: #1a1a1a;}

.info-event h2 {
    font-size: 1.8rem;
    font-weight: 800; /* Negrito forte */
    text-transform: uppercase;
    margin-bottom: 5px;
    line-height: 1.1;
    color: #212529; /* Cinza bem escuro */}

.info-event .city {
    font-size: 1rem;
    margin-bottom: 15px;
    color: #333;}

.info-event h3 {
    font-size: 1.4rem;
    font-weight: 800;
    color: #fff; /* Distâncias em Branco conforme referência */
    text-transform: uppercase;
    margin-bottom: 5px;
    text-shadow: 0px 1px 2px rgba(0,0,0,0.1);}

.info-event p {
    font-size: 0.9rem;
    font-weight: 600;
    margin-bottom: 0;}

/* --- Botão Resultados --- */
.btn-resultados {
    background: transparent;
    border: 1px solid #1a1a1a;
    border-radius: 5px;
    padding: 10px 0;
    width: 200px;
    text-transform: uppercase;
    font-weight: 800;
    font-size: 1.1rem;
    color: #1a1a1a;
    cursor: pointer;
    transition: all 0.3s;
    margin-bottom: 20px;
    display: block; /* Garante que o botão ocupe linha própria */}

.btn-resultados:hover {
    background-color: #1a1a1a;
    color: #fff;}

.btn-black {
    background: #1a1a1a;
    border: 1px solid #1a1a1a;
    border-radius: 5px;
    padding: 10px 0;
    width: 200px;
    text-transform: uppercase;
    font-weight: 800;
    color: #fff;
    cursor: pointer;}

/* --- Efeito Onda (Rasgado) --- */
.wave-card {
    position: absolute;
    bottom: -1px; /* Remove linha branca indesejada */
    left: 0;
    width: 100%;
    line-height: 0; /* Remove espaçamento extra de imagens inline */}

.wave-card img {
    width: 100%;
    height: auto;
    display: block;}

/* Container da Seção */
.sobre {
    background-color: #F2F2F2;
    padding: 0px 0px 80px 0px;
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 1440px;
    margin: auto;}

/* Ajuste da Onda */
.sobre .wave-sobre {
    width: 100%;
    transform: rotate(180deg);
    display: block; 
    margin-bottom: -2px; }

/* Wrapper do Formulário */
.sobre .wrapper-form {
    width: calc(50% - 32px);
    padding: 20px;}

.sobre .wrapper-form form {
    display: flex;
    flex-direction: column;
    width: 100%;}


.sobre label {
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 14px;
    margin-bottom: 5px;
    color: #1a1a1a;
    display: block; 
    margin-top: 15px;}

.sobre input {
    width: 100%;
    height: 50px;
    background-color: #fff;
    border: 1px solid #333; 
    border-radius: 10px;   
    padding: 0 15px;
    font-size: 16px;
    outline: none;
    margin-bottom: 5px;}

.sobre input:focus {
    border-color: #000; 
    border-width: 2px;}


.sobre .btn-conheca {
    width: 100%;
    display: flex;
    justify-content: center; /* Centraliza o botão */
    margin-top: 30px;}

.sobre .btn-conheca button {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: transparent;
    border: none;
    cursor: pointer;
    position: relative;
    padding: 10px 20px;
    font-family: 'Inter', sans-serif;
    font-weight: 700;
    font-size: 16px;
    text-transform: uppercase;
    color: #000;}


.sobre .btn-conheca button .bg-effect {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 60px; 
    height: 100%;
    background-color: #f28025;
    z-index: 1;
    transition: width 0.3s ease;}


.sobre .btn-conheca button .text-btn,
.sobre .btn-conheca button img {
    position: relative;
    z-index: 2; }


.sobre .btn-conheca button:hover .bg-effect {
    width: 100%;}

footer {
background-color: #2A2D36;
padding: 22px 0px;
width: 100%;
margin: auto;
max-width: 1440px;
display: flex;
justify-content: center;
color: #FFF;}


footer p {
    margin: 0px;
    font-family: Inter;
    font-size: 13px;}


/* Somente Mobile */
    @media (max-width: 480px) {
        .py-5 {
            padding-top: 25px !important;
            padding-bottom: 15px !important; }

        .mb-5 {
            padding-bottom: 15px !important; }

        .calendario .mb-4 { margin-bottom: 0;}

        .pb-5 {
            padding-bottom: 15px !important;}

        .pt-5 {
            padding-top: 15px !important; }

       .font-64 {font-size: 38px;}
       
       .calendario .col-12 { width: 80% !important;}

        .calendario .container-events .cards { width: auto;}

        .calendario .container-events { margin: 0px 0px 0px 0px;}

         .sobre .wrapper-form{
            width: calc(100% - 32px) !important;            
            border-radius: 8px;
            margin: 8px 0px;
            padding: 0px 16px;}
}
        
    
    
  