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

body {
    background-color: #111;
}

.container {
    background-color: aliceblue;
    width: 80%;
    margin: auto;
}

header {
    width: 100%;    

    display: flex;
    justify-content: center;
    align-items: center;

    & img {
        width: 300px;
    }
}

.hero {
    width: 100%;
    /* min-height: 400px; */
    /* height: 600px; */
    
    /* background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url('../assets/heroimage.avif');
    background-size: cover;
    background-position: center; */

    & img {
        width: 100%;
        object-fit: cover;
    }
}

.pics {
    display: flex;
    justify-content: space-around;
    align-items: center;
    flex-wrap: wrap;
    gap: 40px;

    padding: 40px;

    & .img-container {
        width: 400px;
        -webkit-box-shadow: 5px 5px 15px 5px #000000;
        box-shadow: 5px 5px 15px 5px #000000;
        transition: all 0.5s ease;
        cursor: pointer;

        display: flex;
        justify-content: center;
        align-items: center;

        & img {
            width: 100%;
            height: 100%;
        }

        &:hover {
            transform: scale(0.96);
        }
        &:active {
            transform: scale(1.1);
            
        }
    }
}

.lightbox {
    position:fixed;
    top:0;
    left: 0;
    backdrop-filter: blur(0.5rem);
    width: 100%;    
    height: 100vh;

    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 15px;

    opacity: 0;
    pointer-events: none;
    transition: all 0.6s ease;
    & .close-btn {
        width: 40px;
        
        cursor:pointer;
        transition: all 0.6s ease;
        
        /* position: absolute;
        top:110px;
        right:300px; */
        &:hover {
            transform: scale(0.90);
        }
    }
    & .img-grande {        
        width: 70%;       
        
        object-fit: contain;
    }
}

.lightbox-active {
    opacity: 1;
    pointer-events: auto;
}

footer {
    height: 100px;
    background-color: #111;
    color: #ccc;

    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column;
    & a {
        color: #ccc;
    }
}

/* Responsive */

@media (width <= 992px) {
    .container {
        width: 100%;
    }

    .lightbox {
        padding:0px;
        background-color: black;
    }

    .lightbox {
        .img-grande {
            width: 100%;            
            object-fit: contain;
        }
        .close-btn {
            color: white;
        }

    }

}

@media (width <= 280px) {
    .hero {
        & img {
            width: 200px;
        }
    }
}