* {
    box-sizing: border-box;
}/* Esto hace que al agregar margen o padding a tus elementos estos no agregen mas margen del que tu das.*/

html{
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: "Roboto",sans-serif;
}

h1{ font-size: 2.8em;}
h2{ font-size: 2.5em;}
h3{ font-size: 1.25em;}
ul{ list-style: none;}/*Esto elimina el circulo de las listas*/
li{font-size: 1.25em;}

button {
    font-size: 1.5em;
    font-weight: bold;/*letra negrita*/
    padding: 10px 20px;
    border-radius: 10px;
    border: 1px solid black;
    box-shadow: 2px 2px 10px black;
    color: white;
    background-color: blueviolet;
}

button:hover{
    background-color: rgb(91, 23, 155);/*Esto permite que el boton se oscuresca al pasar con el mouse sobre el*/
}

.container{
    max-width: 1400px; /*Esto permite mantener los limites en 1400 pixeles*/
    margin: auto;/*Esto permite mantener los margenes*/
}

.color-acento{color: rgb(20, 8, 51);}/*Para lograr colorear solo una parte de un h2 en el index dividimos el texto con un span y agregamos una clase para agregar el stylo*/

header{
    background-color: rgb(20, 8, 51);
}

header .logo{
    margin: 0;
    padding: 5px;
    font-weight: bold;
    color: white;
    font-size: 1.0em;
}

header .container{
    display: flex;
    flex-direction:column;
    align-items: center;/*centrar horizontalmente*/
}

header nav{
    display: flex;
    flex-direction:column;
    text-align: center;
    padding-bottom: 25px;
    /*margin-left: 390px;*/
}

header a{
    padding: 5px 12px;
    text-decoration: none;
    font-weight: bold;
    color: white;
    text-align: center;
}

header a:hover{
    color: white;

}

#hero{
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    flex-direction: column;
    height: 90vh;/* Esto quiere decir que la altura se adaptara dependiendo de tu pantallae es como un 90% */
    background-image:
    url(/imagenes/Fondo2.jpg);/*Esta imagen la agrege directamente en el css con background-image url poniendo la / te muestra la ruta a seleccionar*/
    background-repeat: no-repeat;/*hace que la imagen no se repita*/
    background-size: cover; /*hace que la imagen abarque todo el espacio*/
    background-position: center center;/*hace que la imagen siempre este centrada a pesar de espandirla*/

}

#hero h1{
    color: rgb(7, 6, 63);
}



#somos-proya .container{
    text-align:start;
    padding: 200px 12px;
    font-family: sans-serif;
    color: rgb(25, 25, 68);
    font-weight: bold;
}

#nuestros-programas{
    background-color: rgba(182, 179, 179, 0.904);
    color: rgb(2, 14, 53);
    text-align: center;
}


#nuestros-programas .container{
    padding: 150px 12px;
}

#nuestros-programas h3{
    background-color: rgb(46, 46, 71);
    color: rgb(217, 220, 226);
    text-shadow: 4px 4px 10px rgb(37, 36, 36);
}

#nuestros-programas h2{
    margin-top: 0;
    font-size: 3.2em;
    color: rgb(28, 28, 58);
}

#nuestros-programas p{
    display: none;
    
}

#nuestros-programas .carta{
    background-position: center center;
    background-size: cover;
    padding: 50px 0px;
    margin: 30px;
    border-radius: 15px;
    
}

.carta:first-child{/*con firt-child selecionamos la primera carta*/
    background-image:url(/imagenes/TodoEnUno.jpeg);
    
}

.carta:nth-child(2){/*seleccionamos la carta 2*/
    background-image: url(/imagenes/softwareDOS.gif);
    
}


.carta:nth-child(3){
    background-image: url(/imagenes/etiquetasVariasModificajpg.jpg);
}

#caracteristicas .container{
    text-align: center;
    padding: 200px 12px;
}

#caracteristicas li{
    margin: 16px 0px;
    font-weight: bold;
    color: rgb(25, 25, 68);
}

#final{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    background-color: rgb(20, 1, 58);
    color: white;
    height: 80vh;
}

#final h2{
    font-size: 3vw;/*Esta unidad de medida el acorde al porcentaje que se ocupara de la pantalla. adaptando su tamaño*/
}

#final button{
    font-size: 2vw;
}

footer{
    background-color: rgba(182, 179, 179, 0.904);
}

footer p{
    margin: 0;
    padding: 12px;/*Hace que el texto no se pege tan al fondo*/
    color: rgb(100,100,100);
}

footer .container{
    height: 150px;
    display: flex;/*Deja mover el texto*/
    justify-content: center;/*Alinea al centro*/
    align-items: flex-end;/*Mueve el texto al final*/
}

/*Codigo media para adaptar a pantalla de escritorio*/
@media (min-width:720px){
    header{
        position: fixed;
        width: 100%;
        height: auto;
    }
    header .container{
        flex-direction: row;
        justify-content: space-between;/*separar los elementos*/
    }

    header nav{
        flex-direction:row-reverse;
        padding-bottom: 0;
        padding-right: 20px;
        margin-left: 350px;
        
    }

    #hero{
        height:60vh;
    }

    #hero h1{
        font-size: 2.0em;
        margin-top: 90px;
        
    }


    #somos-proya .container{
        display: flex;
        justify-content:left;
        padding: 0px 5px;
    }

    #somos-proya .texto{
        width: 50%;
        max-width: 600px;
        text-align: justify;
        padding-left: 10px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        padding-left: 150px;
    }

    #somos-proya h2{
        margin-top: 0;
    }

    #somos-proya .img-container{
        background-image: url("imagenes/ministroaprcopia.jpg");
        background-size:cover;
        background-position:center;
        height: 200px;
        width: 500px;
        margin-top:10px;
        margin-bottom: 10px;
    }

    #nuestros-programas .programas{
        display: flex;
        justify-content: center;
    }

    #nuestros-programas p{
        display: block;
        margin-bottom: 30px;
        text-decoration: solid;
        color: rgb(26, 26, 66);
        font-family: sans-serif;
        font-weight: bold;
    }

    #nuestros-programas h2{
        font-size: 2.5em;
        color: rgb(10, 10, 73);
        text-decoration: solid;
    }

    #nuestros-programas h3{
        margin-top: 170px;
        text-decoration:black;
        padding-top: 2px;
        border-radius: 5px;
        /*text-shadow: 2px 2px 5px rgb(39, 36, 36);*/
        background-color: rgb(216, 216, 216);
        color: rgb(34, 54, 92);
    }

    #nuestros-programas .carta{
        padding: 50px;
        background-size: 100% 200px;
        background-repeat: no-repeat;
        background-position-y: 0;
        background-color: rgb(221, 216, 216);
        box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.336);
        
    }

    .carta p {
        text-align:center;
        padding-top: 10px;
    }

    .carta:first-child{/*con firt-child selecionamos la primera carta*/
        background-image:url(/imagenes/TodoEnUno.jpeg);
        
    }
    
    .carta:nth-child(2){/*seleccionamos la carta 2*/
        background-image:url(/imagenes/softwareDOS.gif);
        
    }
    
    
    .carta:nth-child(3){
        background-image:url(/imagenes/etiquetasVariasModificajpg.jpg);
    }

    #caracteristicas{
        background-image: url(/imagenes/pago.jpg);
        background-repeat: no-repeat;
        background-size: 500px 400px;
        background-position: calc(100vw - 500px) 120px;
    }

    #caracteristicas .container{
        text-align: initial;
    }

    #caracteristicas ul{
        margin-left: 100px;
    }

    #final h2{
        font-size: 2em;
    }

    #final button{
        font-size: 1em;
    }

    footer .container{
        justify-content: flex-end;
    }
}

@media (min-width: 1200px){
    #caracteristicas{
        background-position-x: calc(100vw - 800px) ;
    }
}