
            .gallery-masonry {
                column-count: 2;
                column-gap: 1.5rem;
            }

            .gallery-item {
                break-inside: avoid;
                margin-bottom: 1.5rem;
                border-radius: 1.25rem;
                overflow: hidden;
                transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
                position: relative;
                cursor: pointer;
            }

            .gallery-item:hover {
                transform: translateY(-4px);
            }

            /* REMOVED fixed height and object-fit:contain from here */
            .gallery-item img {
                width: 100%;
                display: block;
                transition: transform 0.6s ease;
            }

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

            .gallery-overlay {
                position: absolute;
                inset: 0;
                background: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent);
                opacity: 0;
                transition: opacity 0.3s ease;
                display: flex;
                align-items: center;
                justify-content: center;
                gap: 1rem;
            }

            .gallery-item:hover .gallery-overlay {
                opacity: 1;
            }

            .gallery-overlay i {
                transform: scale(0.8);
                transition: transform 0.3s ease;
            }

            .gallery-item:hover .gallery-overlay i {
                transform: scale(1);
            }

            @media (max-width: 768px) {
                .gallery-masonry {
                    column-count: 1;
                }
            }

            /* Gallery grid specific overrides */
            .gallery-grid-item {
                height: 100%;
                overflow: hidden;
                border-radius: 0.75rem;
                position: relative;
            }

            .gallery-grid-item img {
                width: 100%;
                height: 100%;
                object-fit: cover;
                display: block;
            }
