* {
    margin: 0;
    padding: 0;
    font-family: Arial, Helvetica, sans-serif;
}

body {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.container_app{
    display: flex;
    flex-direction: column;
    position: fixed;
    height: 100vh;
    width: 100%;
    overflow: hidden;
}

.div_up_content{
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    height: 25vh;
}


.div_logo{
    height: 10vh;
    padding: 2%;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: white;
    /* border: 5px solid #000; */
}

#logo {
    width: 20%;
    height: auto;
    object-fit: contain;
}


#title{
    font-size: 28pt;
}

#description{
    font-size: 15pt;
}


.div_buttons{
    height: 30%;
    padding: 2%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background-color: white;
    gap: 15px;
    /* border: 5px solid #000; */
}

#button{
    width: 20%;
    border-radius: 20px;
    border: none;
    border-radius: 20px;
    display: flex;
    align-items: center;
    padding: 0.5%;
    cursor: pointer;
}



#button img{
    width: 12%;
    max-width: 5vh;
    margin-left: 1vh;
}

#button p{
    font-size: 18pt;
    color: white;
    font-weight: 600;
    flex-grow: 1;
    text-align: center;
}


.div_illustration{
    height: 31%;
    /* border: 5px solid #000; */
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

#illustration{
    height: 80%;
    position: relative;
    bottom: 0px;
}












/*  mobile piccolo  */
@media (min-width: 200px) and (max-width: 375px) {
    .div_up_content{
        display: flex;
        justify-content: center;
        gap: 5vh;
        padding: 0% 10%;
        height: 35vh;
    }
    #logo {
        width: 65%;
    }

    .div_logo{
        padding: 5%;
        height: 10vh;
        /* border: 1px solid #000; */
    }


    #title{
        font-size: 21pt;
        text-align: center;
    }
    
    #description{
        font-size: 12pt;
        text-align: center;
    }

    .div_description{
        width: 100%;
        padding: 0% 5%;
        display: flex;
        flex-direction: column;
        gap: 1vh;
        /* border: 1px solid #000; */
    }

    .div_buttons{
        gap: 10px;
        height: 34vh;
        padding: 1%;
        /* border: 1px solid #000; */
    }

    .div_illustration{
        height: 30vh;
    }


    #button{
        width: 70%;
        border-radius: 12px;
        padding: 3%;
    }
    
    #button img{
        width: 12%;
        margin-left: 1.5vh;
    }
    
    #button p{
        font-size: 15pt;
        color: white;
        font-weight: 600;
    }
}

/*  mobile grande  */
@media (min-width: 376px) and (max-width: 425px) {
    .div_up_content{
        display: flex;
        justify-content: center;
        gap: 5vh;
        padding: 0% 5%;
        height: 35vh;
        /* border: 1px solid #000; */
    }

    #logo {
        width: 60%;
    }


    #title{
        font-size: 23pt;
        text-align: center;
    }
    
    #description{
        font-size: 14pt;
        text-align: center;
    }

    .div_description{
        display: flex;
        flex-direction: column;
        gap: 1vh;
    }

    .div_buttons{
        height: 32vh;
        /* border: 1px solid #000; */
    }

    #button{
        width: 70%;
        border-radius: 14px;
        padding: 3%;
    }
    
    #button img{
        width: 12%;
    }
    
    #button p{
        font-size: 17pt;
        color: white;
        font-weight: 600;
    }
}


/*  tablet  */
@media (min-width: 426px) and (max-width: 768px) {
    .div_up_content{
        display: flex;
        justify-content: center;
        gap: 4vh;
        padding: 0% 5%;
        height: 34vh;
        /* border: 1px solid #000; */
    }

    #logo {
        width: 36%;
    }


    #title{
        font-size: 28pt;
        text-align: center;
    }
    
    #description{
        font-size: 16pt;
        padding: 0 10vh;
        text-align: center;
    }

    .div_description{
        display: flex;
        flex-direction: column;
        gap: 1vh;
    }

    .div_buttons{
        height: 32vh;
        /* border: 1px solid #000; */
    }

    #button{
        width: 48%;
        border-radius: 18px;
        padding: 1.8%;
    }
    
    #button img{
        width: 12%;
    }
    
    #button p{
        font-size: 18pt;
        color: white;
        font-weight: 600;
    }
}

/*  tablet  */
@media (min-width: 769px) and (max-width: 1023px) {
    .div_up_content{
        display: flex;
        justify-content: center;
        gap: 4vh;
        padding: 0% 5%;
        height: 36vh;
        /* border: 1px solid #000; */
    }

    #logo {
        width: 38%;
    }


    #title{
        font-size: 32pt;
        text-align: center;
    }
    
    #description{
        font-size: 18pt;
        padding: 0 10vh;
        text-align: center;
    }

    .div_description{
        display: flex;
        flex-direction: column;
        gap: 1vh;
    }

    .div_buttons{
        height: 27vh;
        /* border: 1px solid #000; */
    }

    #button{
        width: 45%;
        border-radius: 18px;
        padding: 1.8%;
    }
    
    #button img{
        width: 12%;
    }
    
    #button p{
        font-size: 20pt;
        color: white;
        font-weight: 600;
    }

    .div_illustration{
        height: 34vh;
    }
}


/*  desktop 1024  */
@media (min-width: 1024px) and (max-width: 1440px) {
    .div_up_content{
        display: flex;
        justify-content: center;
        gap: 4vh;
        padding: 0% 5%;
        height: 35vh;
        /* border: 1px solid #000; */
    }

    #logo {
        width: 20%;
    }


    #title{
        font-size: 30pt;
        text-align: center;
    }
    
    #description{
        font-size: 19pt;
        padding: 0 10vh;
        text-align: center;
    }

    .div_description{
        display: flex;
        flex-direction: column;
        gap: 1vh;
    }

    .div_buttons{
        height: 27vh;
        /* border: 1px solid #000; */
    }

    #button{
        width: 26%;
        border-radius: 16px;
        padding: 1%;
    }
    
    #button img{
        width: 12%;
    }
    
    #button p{
        font-size: 20pt;
        color: white;
        font-weight: 600;
    }

    .div_illustration{
        height: 31.3vh;
    }
}

/*  desktop 1440 */
@media (min-width: 1400px) and (max-width: 1899px) {
    .div_up_content{
        display: flex;
        justify-content: center;
        gap: 4vh;
        padding: 0% 5%;
        height: 32vh;
        /* border: 1px solid #000; */
    }

    #logo {
        width: 20%;
        padding-top: 4vh;
    }

    #title{
        font-size: 29pt;
        text-align: center;
    }
    
    #description{
        font-size: 18pt;
        padding: 0 10vh;
        text-align: center;
    }

    .div_description{
        display: flex;
        flex-direction: column;
        gap: 1vh;
    }

    .div_buttons{
        height: 33vh;
        /* border: 1px solid #000; */
    }

    #button{
        width: 23%;
        border-radius: 20px;
        padding: 1%;
    }
    
    #button img{
        width: 12%;
    }
    
    #button p{
        font-size: 18pt;
        color: white;
        font-weight: 600;
    }

    .div_illustration{
        height: 30vh;
    }
}

/*  desktop 1920 */
@media (min-width: 1900px) and (max-width: 2500px) {
    .div_up_content{
        display: flex;
        justify-content: center;
        gap: 4vh;
        padding: 0% 5%;
        height: 27vh;
        /* border: 1px solid #000; */
    }

    #logo {
        width: 18%;
        padding-top: 4vh;
    }

    #title{
        font-size: 32pt;
        text-align: center;
    }
    
    #description{
        font-size: 18pt;
        padding: 0 10vh;
        text-align: center;
    }

    .div_description{
        display: flex;
        flex-direction: column;
        gap: 1vh;
    }

    .div_buttons{
        height: 30vh;
        /* border: 1px solid #000; */
    }

    #button{
        width: 20%;
        border-radius: 22px;
        padding: 0.8%;
    }
    
    #button img{
        width: 10%;
    }
    
    #button p{
        font-size: 20pt;
        color: white;
        font-weight: 600;
    }

    .div_illustration{
        height: 35.2vh;
    }
}
