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

.navbar {
    background-color: #f1f1f1;
}

.navbar ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
}

.navbar ul li {
    display: inline;
}

.navbar ul li a {
    display: inline-block;
    padding: 20px;
    color: #7b6161;
    text-decoration: none;
}

.content {
    padding: 20px;
}

.primer img {
    /*background-image: url(/img/M-2.jpg);*/
   /* background-size: 40cm;
    background-color: beige;
    opacity: 80%;
    height: 1000px;*/
    /*background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 85%;
    height: 1000px;*/
    position: relative;
    width: 100vw; /* 100% del ancho de la ventana */
    overflow: hidden;
    opacity: 90%;
}

.primer-gallery img {
    position: relative;
    width: 100vw; /* 100% del ancho de la ventana */
    overflow: hidden;
    opacity: 100%;
}

.img-text {
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
}

.img-text-gallery {
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
}

.img-text img {
    width: 100%;
    height: auto;
    display: block;
}

.img-text-gallery img {
    width: 100%;
    height: auto;
    display: block;
}

.text {
    position: absolute;
    top: 20%;
    left: 5%;
    text-align: left;
    color: rgb(255, 255, 255);
}

.gallery {
    position: absolute;
    top: 10%;
    left: 10%;
    color: rgb(255, 255, 255);
    width: 10%;
}

.boton {
    text-align: center;
    margin-top: 30px;
}

.text h1 {
    width: 30%;
    font-size: 2.5em;
    margin-bottom: 20px;
    text-align: center;
}

.text p {
    font-size: 1em;
    width: 30%;
    text-align: justify;
}

.visual {
    padding-top: 100px;
    padding-bottom: 100px;
}

.visual h3 {
    text-align: center;
    margin-top: 20px;
}

.visual img {
    width: 80%;
    margin: 0 auto;
}

.visual h3 {
    width: 50%;
    text-align: center;
    margin: 0 auto;
    color: #7b6161;
    padding-bottom: 40px;
}

.visual p {
    color: cornflowerblue;
    width: 50%;
    text-align: justify;
    margin: 0 auto;
}

.servicios {
    width: 100vw;
    background-color: rgb(77, 250, 250);
    height: 600px;
}

.servicios h2 {
    color: rgb(108, 157, 247);
    margin-top: 80px;
    margin-bottom: 80px;
    text-align: center;
}

.servicios p {
    padding-left: 30%;
}

.footer {
    background-color: black;
    padding: 20px;
    margin: 0 auto;
}

@media screen and (max-width: 900px) {
    text {
        position: absolute;
        top: -50%;
        left: 2.5%;
        text-align: left;
        color: rgb(121, 14, 14);
    }
    
    .text h1 {
        width: 15%;
        font-size: 1.2em;
        margin-bottom: 10px;
        text-align: center;
    }
    
    .text p {
        font-size: 9pt;
        width: 35%;
        text-align: justify;
    }

    .visual img {
        width: 100%;
        margin: 0 auto;
    }
}