* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body {
    margin: 0 auto;
    width: 100%;    
    font-family: "Raleway", sans-serif;
    background-color: grey;
    min-height: 100vh;
    position: relative;
    padding-bottom: 80px;
}

.navbar-nav li {
    list-style: none;
    padding: 0;
    position: relative;
    display: inline-block;
    font-size: 16px;
}

.navbar-nav li:hover ul {
    display: block;
}

.navbar-nav ul {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
}

.navbar-nav ul li a {
    display: block;
    padding: 0;
    text-decoration: none;
    color: #333;
    outline: none;
}

.navbar-nav ul li a:hover {
    background-color: #ddd;
}

.navbar-nav li a {
    text-decoration: none;
    padding: 0;
}

.portafolio-titulo {
    display: flex;
    justify-content: center;
    align-content: center;
    font-family: "Raleway", sans-serif;
    color: #FFFFFF;
    padding-top: 20px;
    border-bottom: 2px solid #FFFFFF;
}

.container {
    position: relative;
    min-height: 100vh;
    
}

.gallery-content {
    width: 90%;
    max-width: 1000px;
    margin: 1rem auto;
    column-count: 4;
}

.gallery-item {
    padding: 1em;
    
    overflow: hidden;
    cursor: pointer;
}

.gallery-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .2s linear;
}

.gallery-item:hover img {
    transform: scale(1.1);
}

.container .popup-image {
    position: fixed;
    top: 0; left: 0;
    background: rgba(0, 0, 0, .9);
    height: 100%;
    width: 100%;
    z-index: 100;
    display: none;
}

.container .popup-image img {
    position: absolute;
    top: 50%; left: 50%;
    transform: translate(-50%, -50%);
    border: 5px solid #fff;
    border-radius: 5px;
    max-width: 860px;
    max-height: 620px;
    object-fit: cover;
}

.container .popup-image span {
    position: absolute;
    top: 0; right: 10px;
    font-size: 40px;
    font-weight: bolder;
    color: #fff;
    cursor: pointer;
    z-index: 100;
} 

.footer {
    margin: 0;
    font-family: "Raleway", sans-serif;
    font-style: normal;
    width: 100%;    
    display: flex;    
    justify-content: center;
    align-items: center;
    overflow: hidden;
    background-color: #FFFFFF;
    bottom: 0;
    position: absolute;     
}

.footer p {
    margin: 0;
    padding: 10px;
    display: flex;
    justify-content: center;
    align-items: center;                
    font-size: clamp(0.5rem, 2vw, 1rem);
}

.footer a {
    outline: none;
}

/*Media queries */

@media screen and (min-width: 360px) and (max-width: 374px)  {

    .nav-link {
        width: 80px;
    }

    .navbar-nav ul li a {    
    outline: none;
    }

    .gallery-content {
        column-count: 1;
    }

    .container .popup-image img  {
       max-width: 340px;
       height: auto;        
    }

     .footer img {
        width: 30px;
    }

}


@media screen and (min-width: 375px) and (max-width: 383px)  {

     .nav-link {
        width: 80px;
    }

    .navbar-nav ul li a {    
    outline: none;
    }

    .gallery-content {
        column-count: 1;
    }

    .container .popup-image img  {
       max-width: 355px;
       height: auto;        
    }

    .footer img {
        width: 30px;
    }

}


@media screen and (min-width: 384px) and (max-width: 411px)  {

     .nav-link {
        width: 80px;
    }

    .navbar-nav ul li a {    
    outline: none;
    }

    .gallery-content {
        column-count: 1;
    }

    .container .popup-image img  {
       max-width: 364px;
       height: auto;        
    }

    .footer img {
        width: 30px;
    }

}



@media screen and (min-width: 412px) and (max-width: 427px)  {

      .nav-link {
        width: 80px;
    }

    .navbar-nav ul li a {    
    outline: none;
    }

    .gallery-content {
        column-count: 1;
    }

    .container .popup-image img  {
       max-width: 392px;
       height: auto;        
    }

     .footer img {
        width: 30px;
    }

}
   

@media screen and (min-width: 428px) and (max-width: 767px)  {

     .nav-link {
        width: 80px;
    }

    .navbar-nav ul li a {    
    outline: none;
    }

    .gallery-content {
        column-count: 1;
    }

    .container .popup-image img  {
       max-width: 408px;
       height: auto;        
    }

     .footer img {
        width: 30px;
    }

}

@media screen and (min-width: 768px) and (max-width: 810px) {

     .navbar-nav ul li a {    
    outline: none;
    }

    .nav-link {
        width: 80px;
    }
}




@media screen and (min-width: 660px) and (max-width: 759px) and (orientation: landscape)  {

      .nav-link {
        width: 80px;
    }

    .navbar-nav ul li a {    
    outline: none;
    }

    .container .popup-image img  {
       max-height: 355px;
       width: auto;        
    }

    .footer img {
        width: 30px;
    }
    
}



@media screen and (min-width: 760px) and (max-width: 811px) and (orientation: landscape)  {

      .nav-link {
        width: 80px;
    }

    .navbar-nav ul li a {    
    outline: none;
    }

    .container .popup-image img  {
       max-height: 340px;
       width: auto;        
    }

     .footer img {
        width: 30px;
    }

}

@media screen and (min-width: 812px) and (max-width: 843px) and (orientation: landscape)  {

     .nav-link {
        width: 80px;
    }

    .navbar-nav ul li a {    
    outline: none;
    }

    .container .popup-image img  {
       max-height: 355px;
       width: auto;        
    }

    .footer img {
        width: 30px;
    }

}
   

@media screen and (min-width: 844px) and (max-width: 882px) and (orientation: landscape)  {

     .nav-link {
        width: 80px;
    }

    .navbar-nav ul li a {    
    outline: none;
    }

    .container .popup-image img  {
       max-height: 370px;
       width: auto;        
    }

    .footer img {
        width: 30px;
    }

}

@media screen and (min-width: 883px) and (max-width: 926px) and (orientation: landscape)  {

     .nav-link {
        width: 80px;
    }

    .navbar-nav ul li a {    
    outline: none;
    }

    .container .popup-image img  {
       max-height: 408px;
       width: auto;        
    }

     .footer img {
        width: 30px;
    }

}

    












