/* Gallery Custom Styles */

/* Make all gallery items perfectly square */
.gallery-section .gallery-item {
    position: relative;
    width: 100%;
    padding-bottom: 100%; /* This creates a perfect square */
    margin-bottom: 30px;
    overflow: hidden;
    border-radius: 0;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    height: 0; /* Reset height */
}

/* Make sure all images fit perfectly within the square container */
.gallery-section .gallery-item .set-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: all 0.5s;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* Add hover effect */
.gallery-section .gallery-item:hover .set-bg {
    transform: scale(1.1);
}

/* Add overlay effect on hover */
.gallery-section .gallery-item:after {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.3);
    content: "";
    z-index: 1;
    opacity: 0;
    transition: all 0.3s;
    pointer-events: none;
}

.gallery-section .gallery-item:hover:after {
    opacity: 1;
}

/* Clean spacing for gallery grid */
.gallery-section .gallery-grid {
    margin-right: -15px;
    margin-left: -15px;
}

/* Media queries for responsive design - keep aspect ratio consistent */
@media only screen and (max-width: 991px) {
    .gallery-section .gallery-item {
        margin-bottom: 20px;
    }
}

@media only screen and (max-width: 767px) {
    .gallery-section .gallery-item {
        margin-bottom: 15px;
    }
}

@media only screen and (max-width: 479px) {
    .gallery-section .gallery-item {
        margin-bottom: 10px;
    }
} 