*{
    margin: 0;
    padding: 0;
}

body{
    background-color: #F5F7F8;
    font-family: 'Poppins', sans-serif;
}


/* #region ---------- EXTRAS ------------------------------------- */
    .btn-primary{
        border-radius: 5px;
        border: 1px solid #F5F7F8;
        background: linear-gradient(97deg, #43C2F0 0%, #43A3F0 28%, #4355F0 100%);
        color: white;
    }
        .btn-primary:hover{
            border: 2px solid var(--2192FF, #1B365D);
            background: #F5F7F8;
            color:#001A48;
        }

    .btn-secondary{
        border-radius: 5px;
        border: 1px solid #F5F7F8;
        color: white;
    }
        .btn-secondary:hover{
            border: 2px solid #1B365D;
            background: #F5F7F8;
        }

    .btn-tertiary{
        border-radius: 5px;
        border: 2px solid var(--2192FF, #1B365D);
        background: #F5F7F8;    
    }
        .btn-tertiary:hover{
            border: 2px solid #1B365D;
            background: #1B365D;
            color: white;
        }

    .nombre{
        font-weight: 900;
        font-size: 15px;
    }

    .nombreBig{
        font-weight: 900;
        font-size: 35px;
        color: #4355F0;
    }
/* #endregion  */

/* #region ---------- Navbar Section ----------------------------- */
.navbar{
    height: 6vh;
    background-color: hsla(215, 55%, 24%, 0.9);
    box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
    position: fixed;    
    width: 100%;
    z-index: 100;
}
.navbar-brand {
    display: flex;
    align-items: center; 
}

.navbar-brand img {
    margin-right: 10px;
}

.navbar-toggler {
    border: none; /* Elimina el borde */
    background: none; /* Elimina el fondo */
    padding: 0; /* Ajusta el espacio interno */
    z-index: 2050; /* Asegura que el botón de menú esté por encima */
}

.navbar-toggler:focus {
    outline: none; /* Elimina el contorno de enfoque */
    box-shadow: none; /* También elimina cualquier sombra */
}

.navbar-collapse {
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    border-radius: 0px 10px 0px 0px;
    border-top: 2px solid #4355F0;
    border-right: 2px solid #4355F0;
    background: rgba(245, 247, 248, 0.90);
    width: 70vw;
    z-index: 1040; /* Asegura que el menú esté encima del fondo oscuro */
    transform: translateX(-100%);
    transition: transform 0.5s ease-in-out;
}

.navbar-collapse.show {
    transform: translateX(0);
}

.navbar-nav{
    margin-top: 70px;
}

.navbar-nav .nav-link {
    color: white;
    padding: 20px 20px;
    background-color: #1B365D;
    margin-bottom: 10px;
}

/* Personaliza las líneas del icono */
.navbar-toggler-icon {
    /* filter: invert(1);  */
    width: 45px; 
    height: 30px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3E%3Cpath stroke='white' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}
/* .navbar-toggler:not(.collapsed) .navbar-toggler-icon {
    filter: invert(0) sepia(1) saturate(5) hue-rotate(0deg); 
} */
/* #endregion */

/* #region----------- Hero Section ------------------------------- */
.hero {
    background: url('/images/toDuenio//fondoMasInfo.png') center/cover;
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: white;
}

.hacheUno{
    padding: 0 50px;
    font-size: clamp(65px, 6vw, 100px);
    line-height: 1.5;
}
/* #endregion */

/* #region ---------- DatosCard Section -------------------------- */
#datosCards{
    background-image: url("/images/fondo2.png");
    background-size: cover;
    padding-bottom: 70px;

    h2 {
        margin-left: 6vw;
        margin-bottom: 5vh;
    }
}

#promo{
    height: 50vh;
    font-size: 40px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 20px;

    p{
        font-size: clamp(25px, 3vw, 40px);
    }
}

.contenedorCards {
    display: flex;
    margin: 0 10vw;
}

.cardPorque {
    position: relative; 
    width: 45vw;
    height: 40vh;
    transition: transform 0.6s ease-in-out, filter 0.3s ease-in-out;
    transform-origin: center; /* Mantén el centro de la transformación */
}
    .cardPorque img { 
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.card-title {
    position: absolute;
    top: 50px;
    border: 3px solid #2A5DF4;
    border-left: 0;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    background-color: #1B365D;
    color: white;
    padding: 8px 12px;
    font-size: 20px;
    font-size: clamp(10px, 1.5vw, 20px);
    font-weight: bold;
    z-index: 2; /* Asegura que el título esté por encima de la imagen */
    opacity: 1; /* Lo hace visible por defecto */
}

.card-content {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: rgba(255, 255, 255, 0.7);
    padding: 20px;
    text-align: center;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
    border-radius: 25px;
    backdrop-filter: blur(5px);
    box-shadow: 0px 0px 12px 0px #FFF;
    width: 13vw; 
    height: 30vh; 
    z-index: 2; 
}

.separadorCard{
    height: 3px;
    width: 10vw;
    background-color: #43C2F0; 
    margin: 0 auto;
}

.contenedorCards:hover .cardPorque {
    filter: brightness(0.4); /* Atenúa todas las cards */
}

.contenedorCards .cardPorque:hover {
    transform: scale(1.3, 1.1); /* Agranda solo la card en hover */
    filter: brightness(1); /* Mantiene su brillo normal */
    z-index: 10; /* La trae al frente */
    border: 4px solid #43A3F0;
}

.cardPorque:hover .card-title {
    opacity: 0; /* Oculta el título en hover */
}

.cardPorque:hover .card-content {
    opacity: 1; /* Muestra el contenido en hover */
}
/* #endregion */

/* #region----------- Info Section ------------------------------- */
#infoSection{
    background-color: #1B365D;
    color: white;
}

.cajitaToPlayer{
    display: flex;
}

.infoSectionText{
    padding-left: 7vw;
    padding-right: 20px;
}

.imagenTo{
    display: flex;
    padding: 0;
    justify-content: end;
}

.tituloPara{
    font-size: clamp(15px, 3vw, 40px);
    margin-top: 1.5rem;
}

.infoPara{
    font-size: clamp(15px, 2vw, 25px);
    margin: 40px 0;
}
.imagen{
    height: 60vh;
    /* width: 65vw; */
}

.containerInfo{
    padding: 0;
}
/* #endregion */

/* #region----------- Statics Section ---------------------------- */
#staticsSection{
    height: 250px;
    width: 100%;
    background-color: #6175F2;
    color: white;
    box-shadow: 0px 0px 12px 0px rgba(27, 54, 93, 0.81);
    padding: 0 10vw;
    display: flex;
    justify-content: space-between;
    align-items: center;

    p{
        font-size: clamp(10px, 2vw, 20px);
        text-align: center;
        font-weight: 700;
    }
}

.resultado{
    display: flex;
    align-items: center;

    img{
        width: 78px;
        height: 78px;
        margin-right: 2vw;
    }
}

.separadorResultado{
    width: 4px;
    height: 130px;
    background-color: #43C2F0
}

.cancha{
    height: 60px !important;
}
/* #endregion */

/* #region----------- Price Section ------------------------------ */
#priceSection{
    margin-bottom: 3rem;
    padding: 3rem 0; 
}

.contenedorPlan{
    box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.50);
    padding: 0;
    border-radius: 10px;
    height: 100%;
}

.contenedorPlanPremium{
    box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.50);
    padding: 0;
    border-radius: 55px;
    background-clip: padding-box;
    height: 100%;
    /* border: 20px solid #43A3F0; */
}

.masPopular {
    position: absolute;
    top: -20px; 
    left: 50%;
    transform: translateX(-50%);
    background: #AEAEAE;
    color: white;
    font-size: 14px;
    padding: 8px 50px;
    border-radius: 20px;
    box-shadow: 0px 0px 12px 0px #FFF;
}

.tipoPlan{
    margin: 3rem 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

.plan{
    background-color: #D9D9D9;
}

.price{
    font-size: 20px;
    font-weight: 700;
    margin: 1rem 0;
}

.contenedorPrecio{
    background-color: white;
    border-radius: 25px;
    justify-content: center;
}

.contenedorOpciones{
    align-items: flex-start;
}

.separadorPlan{
    height: 5px;
    width: 16vw;
    background-color: #43C2F0; 
    margin: 0 auto;
}

.precioOut{
    text-decoration: line-through;
    color: #AEAEAE;
}
/* #endregion */

/* #region----------- FAQ Section -------------------------------- */
#faqSection {
    padding: 80px 0;
}
.nombreSeccion{
    margin-left: 7vw;
}

.separador{
    height: 7px;
    margin-right: 75vw;
    background-color: #6175F2; /
}

.accordion-item{
    border-radius: 20px;
}

.accordion-button{
    border: 1px solid #001A48;
    box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.25);
    /* border-radius: 20px; */
}
/* #endregion */

/* #region ---------- Copyright Section -------------------------- */
#copyright{
    height: 5vh;
    background-color: #001A48;
    color: #f5f5f5;
    align-items: center;
    justify-content: center;
    display: flex;
    font-size: clamp(20px, 1vw, 2.5rem);
}
/* #endregion */
    

/* MEDIA */
@media (max-width: 1000px) {
    #infoSection{
        height: 40vh;
    }

    .imagen{
        height: 40vh;
        width: 60vw;
    }

    .resultado img{
            width: 48px;
            height: 48px;
            margin-right: 2vw;
    }

    .cancha{
        height: 40px !important;
    }
/* #region----------- Price Section --------------------------- */
    #priceSection{
        margin-bottom: 1rem; 
    }
    .contenedorPlanes{
        flex-direction: column;
    }

    .contenedorPlan{
        width: 100%;
        height: auto;
    }

    .masPopular {
        padding: 8px 45px;
    }
    .contenedorPlanPremium{
        margin-top: 18px;
        height: auto;
        width: 100%;
    }

    label{
        /* font-size: clamp(20px, 2vw, 50px) */
        font-size: 20px;
    }

    .separadorPlan{
        height: 3px;
        width: 65vw;
        margin: 0 auto;
    }

    .tipoPlan{
        margin: 1rem 0;
        margin-top: 3rem;
    }
    .price{
        margin: 0.5rem 0;
    }
/* #endregion */
    
}


/* MOBILE */
@media (max-width: 650px) {
    
/* #region -----------EXTRAS ---------------------------------- */
    .nombreBig{
        font-size: 22px;
    }
/* #endregion */

/* #region ---------- Navbar Section -------------------------- */
    .navbar{
        height: 7vh;
    }
/* #endregion */

/* #region----------- Hero Section ---------------------------- */
    .hero {
        height: 80vh;
    }

    .hacheUno{
        font-size: clamp(1rem, 7vw, 3rem);
        line-height: 1.7;
        font-weight: 900;
    }
/* #endregion */

/* #region ---------- DatosCard Section ----------------------- */
    #datosCards{
        background-image: none;
    }

    #promo{
        height: 450px;
        font-size: clamp(1rem, 5vw, 3rem);

        h2{
            text-align: center;
            font-size: 20px;
        }
    }

    #porque h2{
        text-align: center;
        font-size: 20px;
        margin-bottom: 2vh;
    }

    .contenedorCards {
        flex-direction: column;
        align-items: center;
        width: 100%; 
        margin:0;
    }

    .cardPorque {
        width: 100%; /* Cada tarjeta ocupa el 100% del ancho */
        max-width: 800px; /* Opcional: Establece un ancho máximo */
        border-top: 2px solid #2A5DF4; 
        border-bottom: 2px solid #2A5DF4; 
        height: 50vh;
    }

    .card-title {
        display: none; /* Oculta el título en pantallas pequeñas */
    }

    .card-content {
        opacity: 1;
        width: 80%;
        height: 270px; 
        padding-top: 35px;
    }

    h5{
        font-size: clamp(18px, 4vw, 50px); 
        font-weight: bold;
    }

    p{
        margin-top: 3vh;
        font-size: clamp(15px, 4vw, 50px);
    }

    .separadorCard{
        width: 50vw;
    }

    .contenedorCards:hover .cardPorque {
        filter: none !important; /* Elimina el efecto de atenuación */
    }

    .contenedorCards .cardPorque:hover {
        transform: none !important; /* Evita que se agrande */
        filter: none !important;
        border: none !important;
    }
/* #endregion */

/* #region----------- Info Section ---------------------------- */
    #infoSection{
        background: url("/images/toDuenio/info3.png")  center/cover;
        height: 400px;
    }

    .cajitaToPlayer{
        display: block;
    }

    .infoSectionText{
        padding: 00px  7vw ;
    }
    .infoSectionText a{
        margin-bottom: 3.5rem;
    }

    .tituloPara{
        font-size: 25px;
        margin-top: 3rem;
    }

    .infoPara{
        font-size: 15px;
        margin: 10px 0;
    }

    .imagenTo{
        display: none;
    }
/* #endregion */

/* #region----------- Statics Section ------------------------- */
    #staticsSection{
        height: 20vh;
        padding: 0 5vw;
        margin-bottom: 70px;

        p{
            /* font-size: 4vw; */
            font-size: clamp(1rem, 2vw, 3rem);
            margin-top: 1vh;
        }
    }

    .resultado{
        flex-direction: column;

        img{
            width: 32px;
            height: 32px;
            margin:0
        }
    }

    .cancha{
        height: 25px !important;
    }

    .separadorResultado{
        width: 1px;
        height: 9vh;
    }
/* #endregion */

/* #region----------- Price Section --------------------------- */
    label {
        font-size: clamp(15px, 2vw, 50px);
    }

    .masPopular label{
        font-size: clamp(12px, 2vw, 50px);
    }
/* #endregion */

/* #region----------- FAQ Section ----------------------------- */
    #faqSection {
        padding: 20px 0 50px;
    }    

    .separador{
        width: 55vw;
    }
/* #endregion */

/* #region ---------- Copyright Section ----------------------- */
    #copyright{
        height: 7vh;
        font-size: 12px;
    }
/* #endregion */
}