
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:'Inter',sans-serif;
    background:#0F172A;
    color:white;
    overflow-x:hidden;
}

.hero{
    min-height:100vh;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:40px 20px;
}

.container{
    max-width:1200px;
    width:100%;
}

.nameApp{
    font-size:5rem;
    font-weight:700;
    margin-bottom:20px;
}

.nameApp span{
    color:#60A5FA;
}

.logo-container{
    display:flex;
    justify-content:center;
    margin-bottom:20px;
}

.logo{
    width:200px;
    height:200px;
}

.hero-content{
    text-align:center;
}

.hero h1{
    font-size:4rem;
    line-height:1.1;
    margin-bottom:20px;
}

.hero p{
    font-size:1.25rem;
    color:#CBD5E1;
    max-width:700px;
    margin:auto;
}

.buttons{
    margin-top:40px;
    display:flex;
    justify-content:center;
    gap:15px;
    flex-wrap:wrap;
}

.btn{
    padding:15px 28px;
    border-radius:12px;
    text-decoration:none;
    font-weight:600;
    transition:.3s;
}

.btn-primary{
    background:#2563EB;
    color:white;
}

.btn-primary:hover{
    transform:translateY(-2px);
}

.btn-secondary{
    border:1px solid #334155;
    color:white;
}

.features{
    display: flex;
    align-items: center;
    flex-direction: column;
    padding:100px 20px;
}

.features-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:25px;
}

.card{
    background:#1E293B;
    border:1px solid #334155;
    border-radius:20px;
    padding:30px;
}

.card h3{
    margin-bottom:10px;
}

.card p{
    color:#94A3B8;
}

.section-title{
    text-align:center;
    margin-bottom:60px;
}

.section-title h2{
    font-size:2.5rem;
}

.cta{
    text-align:center;
    padding:100px 20px;
}

.footer{
    border-top:1px solid #1E293B;
    text-align:center;
    padding:30px;
    color:#64748B;
}

@media(max-width:768px){

.hero h1{
    font-size:2.7rem;
}

.hero p{
    font-size:1rem;
}
}

/* ========================= */
/* Tablets */
/* ========================= */
@media (max-width: 992px) {

    .container{
        width:90%;
        margin:auto;
    }

    .nameApp{
        font-size:4.5rem;
    }

    .hero h1{
        font-size:3rem;
    }

    .hero p{
        font-size:1.1rem;
    }

}

/* ========================= */
/* Móviles */
/* ========================= */
@media (max-width:768px){

    .hero{
        min-height:auto;
        padding:60px 20px;
    }

    .container{
        width:100%;
    }

    .nameApp{
        font-size:3rem;
        margin-bottom:10px;
    }

    .logo{
        width:140px;
        height:140px;
    }

    .hero h1{
        font-size:2.2rem;
        line-height:1.25;
    }

    .hero p{
        font-size:1rem;
        line-height:1.7;
        max-width:100%;
    }

    .buttons{
        flex-direction:column;
        width:100%;
        margin-top:35px;
    }

    .btn{
        width:100%;
        padding:16px;
    }

    .features{
        padding:70px 20px;
    }

    .section-title{
        margin-bottom:40px;
    }

    .section-title h2{
        font-size:2rem;
    }

    .features-grid{
        grid-template-columns:1fr;
    }

    .card{
        padding:25px;
    }

    .cta{
        padding:70px 20px;
    }

}

/* ========================= */
/* Teléfonos pequeños */
/* ========================= */
@media (max-width:430px){

    .hero{
        padding:40px 15px;
    }

    .nameApp{
        font-size:2.3rem;
    }

    .logo{
        width:110px;
        height:110px;
    }

    .hero h1{
        font-size:1.7rem;
    }

    .hero p{
        font-size:.95rem;
    }

    .section-title h2{
        font-size:1.6rem;
    }

    .card h3{
        font-size:1.15rem;
    }

}