.elementor-widget-gallery .elementor-gallery-item__title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-gallery .elementor-gallery-item__description{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-gallery{--galleries-title-color-normal:var( --e-global-color-primary );--galleries-title-color-hover:var( --e-global-color-secondary );--galleries-pointer-bg-color-hover:var( --e-global-color-accent );--gallery-title-color-active:var( --e-global-color-secondary );--galleries-pointer-bg-color-active:var( --e-global-color-accent );}.elementor-widget-gallery .elementor-gallery-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item:hover .elementor-gallery-item__overlay, .elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item:focus .elementor-gallery-item__overlay{background-color:rgba(0,0,0,0.5);}.elementor-315 .elementor-element.elementor-element-753443b{--image-border-radius:8px;--image-transition-duration:800ms;--overlay-transition-duration:800ms;--content-text-align:center;--content-transition-duration:800ms;--content-transition-delay:800ms;}body.elementor-page-315:not(.elementor-motion-effects-element-type-background), body.elementor-page-315 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#f9f8f6;}/* Start custom CSS for gallery, class: .elementor-element-753443b *//* Establish the CSS Grid and base rows */
.elementor-315 .elementor-element.elementor-element-753443b .e-gallery-container,
.elementor-315 .elementor-element.elementor-element-753443b .elementor-gallery__container {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    grid-auto-rows: 300px;  
}

/* Ensure gallery items fill the grid tracks and reset Elementor margins */
.elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item {
    height: 100% !important;
    margin: 0 !important; 
}

/* 1st Image: Large Left */
.elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item:nth-child(6n + 1) {
    grid-column: 1 !important;
    grid-row: span 2 !important;
}

/* 2nd & 3rd Images: Small Right */
.elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item:nth-child(6n + 2),
.elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item:nth-child(6n + 3) {
    grid-column: 2 !important;
    grid-row: span 1 !important;
}

/* 4th & 5th Images: Small Left */
.elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item:nth-child(6n + 4),
.elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item:nth-child(6n + 5) {
    grid-column: 1 !important;
    grid-row: span 1 !important;
}

/* 6th Image: Large Right */
.elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item:nth-child(6n + 6) {
    grid-column: 2 !important;
    grid-row: span 2 !important;
}

/* Force inner images to cover the area perfectly */
.elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* Responsive Fallback: Standard 1-column layout for mobile */
@media (max-width: 767px) {
    .elementor-315 .elementor-element.elementor-element-753443b .e-gallery-container,
    .elementor-315 .elementor-element.elementor-element-753443b .elementor-gallery__container {
        grid-template-columns: 1fr !important;
        grid-auto-rows: 250px;  
    }
    .elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item:nth-child(n) {
        grid-column: 1 !important;
        grid-row: span 1 !important;
    }
}



 

/* Force Elementor's background-image wrapper to cover the full cell */
.elementor-315 .elementor-element.elementor-element-753443b .e-gallery-item .elementor-gallery-item__image {
    position: absolute !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: cover !important;
    background-position: center center !important;
}
 .elementor-315 .elementor-element.elementor-element-753443b .e-gallery-grid .e-gallery-image {
 padding: 0 !important;    
 }/* End custom CSS */