*{
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    font-family: sans-serif;
}

.contenedor {
    padding: 60px 0;
    width: 100%;
    max-width: 1000px;
    margin: auto;
    overflow: hidden;
    background-color:#D3D9E9;
}
h1{
    text-align: center;
    position: relative;
    width: 80%;
    margin: 50px auto;
}
body{
    background-color: #ecf4fb;
}
h1::before{
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    position: absolute;
    background-color: black;
    top: 50%;
    z-index: -1;
}
h1 span{
    background-color:#ecf4fb;
    padding: 0 15px;
}
ol{
    text-align: center;
    position: relative;
    width: 80%;
    margin: 10px auto;
}

h3{
    text-align: center;
    position: relative;
    width: 80%;
    margin: 50px auto;
    background-color:#1d67a7;
}
p{
    text-align: center;
    position: relative;
    width: 80%;
    margin: auto;

}


.img-gallery{
    width: 500px;
    margin: 50px auto 50px;
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(40px,1fr));
    gap: 30px;
}
.img-gallery img{
    width: 100%;
    cursor: pointer;
    transition: 1s;
}
.img-gallery img:hover{
    transform: scale(1.2);
}


.ful-img span{
    position: absolute;
    top: 5%;
    right: 5%;
    font-size: 30px;
    color: #5e3030;
    cursor: pointer;
}
.ful-img img{
    width: 90%;
    max-width: 600px;
}

p, a, li, h1, h3{
	font-family: 'Open Sans', sans-serif;
}

html {
    box-sizing: border-box;
    font-size: 62.5%;
}

*,
*:before,
*:after {
    box-sizing: inherit;
}

body {
    font-family: 'Raleway', sans-serif;
    font-size: 1.6rem;
}

img {
    width: 30%;
    width: 500px;
    margin: 50px auto 50px;
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(100px,1fr));
    gap: 120px;
}

article{
    margin-top: 50px;
    margin-bottom: 50px;
    margin-left: 20px;
    margin-right: 20px;
}
img.left{
   width: 60px;
}



li{
    text-align: center;
    position: relative;
    width: 80%;
    margin: 50px auto;
 }




@media screen and (max-width:400px){
    h1{
        text-decoration: underline;
    }
    h1::before{
        display: none;
    }
    h1 span{
        padding: 0;
    }
    @media (min-width: 762px) {
        .dos-columnas{
            display: grid;
            grid-template-columns: repeat(2,1fr);
            column-gap: 2rem;
        }
        .tres-columnas{
            display: grid;
            grid-template-columns: repeat(3,1fr);
            column-gap: 2rem;
        }
    }
}