.pattern-gallery-89925062 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.pattern-gallery-89925062-item {
    display: block;
    grid-column: span 1;
    overflow: hidden;
    position: relative;
    text-decoration: none;
}

.pattern-gallery-89925062-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 3/4;
    display: block;
    transition: transform 0.3s ease;
}

.pattern-gallery-89925062-item:hover img {
    transform: scale(1.03);
}

/* 
Pattern Requirements:
Rows 1-2 (items 1-8): portrait, 4/row -> span 1
Row 3 (items 9-10): landscape, 2/row -> span 2
Rows 4-6 (items 11-22): portrait, 4/row -> span 1
Rows 7-8 (items 23-26): landscape, 2/row -> span 2
Rows 9-10 (items 27-34): portrait, 4/row -> span 1
*/

/* Row 3 (items 9, 10) */
.pattern-gallery-89925062-item:nth-child(9),
.pattern-gallery-89925062-item:nth-child(10),
/* Row 7 (items 23, 24) */
.pattern-gallery-89925062-item:nth-child(23),
.pattern-gallery-89925062-item:nth-child(24),
/* Row 8 (items 25, 26) */
.pattern-gallery-89925062-item:nth-child(25),
.pattern-gallery-89925062-item:nth-child(26) {
    grid-column: span 2;
}

.pattern-gallery-89925062-item:nth-child(9) img,
.pattern-gallery-89925062-item:nth-child(10) img,
.pattern-gallery-89925062-item:nth-child(23) img,
.pattern-gallery-89925062-item:nth-child(24) img,
.pattern-gallery-89925062-item:nth-child(25) img,
.pattern-gallery-89925062-item:nth-child(26) img {
    aspect-ratio: 16/9;
}


/* Tablet Responsive */
@media (max-width: 1024px) {
    .pattern-gallery-89925062 {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .pattern-gallery-89925062-item {
        grid-column: span 1 !important;
    }
    
    /* Convert all images to vertical portrait ratio on tablet */
    .pattern-gallery-89925062-item img {
        aspect-ratio: 3/4 !important;
    }
}

/* Mobile Responsive */
@media (max-width: 767px) {
    .pattern-gallery-89925062 {
        grid-template-columns: 1fr;
    }
    
    /* Convert all images to a slightly wider portrait ratio on mobile */
    .pattern-gallery-89925062-item img {
        aspect-ratio: 4/5 !important;
    }
}

/* Lightbox White Theme Overrides (Applied dynamically via JS class) */
.elementor-lightbox.white-lightbox-89925062 {
    background-color: rgba(255, 255, 255, 0.95);
}

.elementor-lightbox.white-lightbox-89925062 .elementor-lightbox-item-title,
.elementor-lightbox.white-lightbox-89925062 .elementor-lightbox-item-description {
    color: #000 !important;
}

.elementor-lightbox.white-lightbox-89925062 .dialog-lightbox-close-button,
.elementor-lightbox.white-lightbox-89925062 .dialog-lightbox-close-button i,
.elementor-lightbox.white-lightbox-89925062 .elementor-swiper-button {
    color: #000 !important;
}

.elementor-lightbox.white-lightbox-89925062 .elementor-swiper-button svg {
    fill: #000 !important;
}
