/* ----------------- Header section ----------------- */
header .nav-link{
    cursor: pointer;
}
#open, .closebtn{
    display: none;
}
header{
    width: 25%;
    height: 100%;
    position: fixed;
    height: 100%;
    text-align: center;
}
header .footer{
    position: fixed;
    bottom: 0;
    margin-bottom: 1%;
    text-align: center;
    width: 25%;
    font-size: 1.3rem;
}
header .footer .social-networks{
    font-size: 2.2rem;
    margin-bottom: 3%;
}
header .mini-logo{
    display: none;
}
header .logo{
    height: 33vh;
}
header .logo img{ 
    margin-top: 10%;
}
header .nav{
    margin-top: 1%;
}
header .documents{
    font-size: 0.8rem;
}
/* ----------------- Main section ----------------- */
main{
    width: 75%;
    float: right;
    height: 100vh;
}
/*main .top-iamge{
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(1, 5vw);
    grid-gap: 15px; 
}*/
main .gallery-top {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(1, 32.5vh);
    grid-gap: 0.5%;
    margin-bottom: 0.4%;
}
main img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 500ms;
}
main .gallery-top .g-img1 {
    grid-column-start: 1;
    grid-column-end: 3;
    grid-row-start: 1;
    grid-row-end: 2;
}
main .text{
    color:black;
    text-align: center;
    height: 0px;
    font-size: 1.5rem;
    opacity: 0;
    transition: 500ms;
}
main .text-categories{
    padding-top: 1%;
    padding-bottom: 1%;
    display: inline;
}
main .text-categories:not(last-child){
    margin-right: 6%;
}
main .link{
    cursor: pointer;
}
main .link:hover{
    color: rgb(0,113, 188);
}
main .card{
    overflow: hidden;
    width: 75%;
    position: absolute;
}
main .card img{
    border-radius: 0.5%;
}
.tabla{
    border: 1px gainsboro solid;
}
.tabla .fila{
    margin: 2% 2% 4% 2%;
    justify-content: space-between !important;
    display: flex;
    font-size: 1.1rem;
}
.tabla .fila:not(:last-child){
    margin-top: 5%;
    border-bottom: 0.5px gainsboro solid;
}.tabla .fila .info-der{
    color:gray;
}
.contenido-izquierda, .contenido-derecha{
    width: 50%;
    float: left;
}
.contenido-izquierda .content, .contenido-derecha .content{
    width: 80%;
    display: block;
    margin: auto;
}
main .main-index, main .main-index-var {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: repeat(2, 33.1vh);
    grid-gap: 1% 0.5%;
    transition: 500ms;
    position: absolute;
}
main .main-index-var{
    padding-bottom: 3%;
}
main .main-index .g-img3 {
    grid-column-start: 1;
    grid-column-end: 2;
    grid-row-start: 1;
    grid-row-end: 3;
}
main .main-index .g-img6 {
    grid-column-start: 2;
    grid-column-end: 4;
    grid-row-start: 2;
    grid-row-end: 3;
}
/*main .main-body .title{
    position: absolute;
    color:black;
    display: none;
    top:10%;
    margin-left:5%;
    font-size:2rem;
    transition: 500ms;
}*/
main .main-gallery .active{
    z-index: 1;
    opacity: 1;
}
main .main-gallery .hide{
    opacity: 0;
    transition: 500ms;
}
/* Efecto de las imagenes en la galeria*/
main .efecto{
    position: relative;
    overflow: hidden;
}
main .efecto img:hover{
    transform: scale(1.5);
    overflow: hidden;
}
main .efecto .efecto-texto{
    position: absolute;
    text-align: center;
    top: 0;
    color:black;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: 500ms;
}
main .efecto .efecto-texto:hover{
    opacity: 1;
}
main .efecto .efecto-texto .cuadro{
    width: 100%;
    position: absolute;
    bottom: 0;
    display: block;
}
main .efecto .efecto-texto h3{
    background-color: white;
    border-radius: 2%;
    width: 30%;
    font-size: 1.2rem;
    margin: auto;
    margin-bottom: 5%;
}
main .efecto .efecto-texto h4{
    margin: 0;
}
main .main-gallery .content-texto{
    color: black;
    padding: 0.5% 2% 2% 2%;
    border: 2px solid lightgray;
    text-align: justify;
    width: 80%;
    margin: auto;
}
.wrap{
    overflow: hidden;
    position: relative;
    transition: 500ms;
}
.wrap:hover img{
    transform: scale(1.5);
    opacity: 0.5;
}
.wrap .wrap-text{
    text-align: center;
    width: 100%;
    font-size: 2rem;
    visibility: hidden;
    opacity: 1;
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
}
.wrap .wrap-text a{
    color:rgb(0,113, 188);
    top: 42%;
    position: absolute;
    left: 0;
    width: 100%;
}
.wrap:hover .wrap-text{
    visibility: visible;
    opacity: 1;
}
#qs, #qo{
    margin: 0%;
}
/* --------------- Proyectos section --------------- */
.container-proyectos{
    color: black;
}
.container-proyectos .project-title-small{
    display: none;
}
.container-proyectos .project-title{
    width: 50%;
}
.container-proyectos h1{
    width: 80%;
    margin: auto;
    padding: 1% 0% 4% 0%;
    font-size: 2em;
}
.container-proyectos .container{
    padding: 0% 0% 0% 0%;
    width: 100%;
}
.container-proyectos .descripcion{
    margin: 2.5% 0% 5% 0%;
    float:left;
    width: 100%;
}
.container-proyectos .descripcion h2{
    margin-bottom: 5%;
}
.container-proyectos .container .carousel-inner{
    max-height: 100vh;
}
/* --------------- Contacto section --------------- */
iframe{
    width: 100%;
    height: 40vh;
}
/* ------------------------------------------------- */