.elementor-5665 .elementor-element.elementor-element-a1dde5b{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-5665 .elementor-element.elementor-element-a1dde5b:not(.elementor-motion-effects-element-type-background), .elementor-5665 .elementor-element.elementor-element-a1dde5b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-1b8ad22 );}.elementor-5665 .elementor-element.elementor-element-1dd997a{--e-filter-direction:row;--e-filter-white-space:nowrap;--e-filter-wrap:wrap;--e-filter-overflow-x:initial;width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;--e-filter-normal-text-color:var( --e-global-color-primary );--e-filter-hover-text-color:var( --e-global-color-f2fea38 );--e-filter-active-text-color:var( --e-global-color-f2fea38 );--e-filter-item-border-radius:7px 7px 7px 7px;}.elementor-5665 .elementor-element.elementor-element-1dd997a .e-filter-item:hover:not( [aria-pressed=true] ){background-color:var( --e-global-color-primary );}.elementor-5665 .elementor-element.elementor-element-1dd997a .e-filter-item[aria-pressed="true"]{background-color:var( --e-global-color-primary );}.elementor-5665 .elementor-element.elementor-element-1dd997a > .elementor-widget-container{padding:20px 20px 20px 20px;}.elementor-5665 .elementor-element.elementor-element-1dd997a .e-filter-item{font-size:0.7em;font-weight:600;padding:3px 15px 3px 15px;}.elementor-5665 .elementor-element.elementor-element-ae18df9 > .elementor-container{max-width:1000px;}.elementor-5665 .elementor-element.elementor-element-ae18df9{margin-top:0px;margin-bottom:0px;padding:10px 0px 10px 0px;}.elementor-5665 .elementor-element.elementor-element-42db99f.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-5665 .elementor-element.elementor-element-42db99f > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 10px 0px;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-decoration:var( --e-global-typography-accent-text-decoration );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-5665 .elementor-element.elementor-element-4a3861b{--grid-columns:6;--grid-row-gap:10px;--load-more-message-alignment:center;--load-more-button-align:center;--grid-column-gap:5px;}.elementor-5665 .elementor-element.elementor-element-4a3861b .elementor-button{background-color:var( --e-global-color-primary );font-size:0.7em;font-weight:500;line-height:24px;fill:var( --e-global-color-f2fea38 );color:var( --e-global-color-f2fea38 );}.elementor-5665 .elementor-element.elementor-element-4a3861b > .elementor-widget-container{padding:0% 0% 0% 0%;}@media(min-width:768px){.elementor-5665 .elementor-element.elementor-element-a1dde5b{--content-width:100%;}}@media(max-width:1060px){.elementor-5665 .elementor-element.elementor-element-1dd997a .e-filter-item{font-size:1em;}.elementor-5665 .elementor-element.elementor-element-ae18df9{padding:0px 10px 0px 10px;}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-loop-grid .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-5665 .elementor-element.elementor-element-4a3861b{--grid-columns:2;}.elementor-5665 .elementor-element.elementor-element-4a3861b > .elementor-widget-container{padding:0% 0% 0% 0%;}}@media(max-width:767px){.elementor-5665 .elementor-element.elementor-element-1dd997a .e-filter-item{font-size:0.6em;}.elementor-widget-loop-grid .elementor-pagination{font-size:var( --e-global-typography-secondary-font-size );}.elementor-widget-loop-grid .elementor-button{font-size:var( --e-global-typography-accent-font-size );line-height:var( --e-global-typography-accent-line-height );}.elementor-widget-loop-grid .e-load-more-message{font-size:var( --e-global-typography-secondary-font-size );}.elementor-5665 .elementor-element.elementor-element-4a3861b{--grid-columns:1;}}/* Start custom CSS for loop-grid, class: .elementor-element-4a3861b */.elementor-5665 .elementor-element.elementor-element-4a3861b {
    --gap: 20px;
    --row-gap: 10px;
    --item-min-width: 150px;
    --max-columns: 6;
    --max-padding: 15%;
    
    /* Calculate available width after max padding */
    --available-width: calc(100vw - (var(--max-padding) * 2));
    
    /* Calculate how many columns can fit */
    --calculated-columns: floor(calc((var(--available-width) + var(--gap)) / (var(--item-min-width) + var(--gap))));
    
    /* Use the smaller of max-columns or calculated-columns */
    --actual-columns: min(var(--max-columns), var(--calculated-columns));
    
    /* Calculate content width based on actual columns */
    --content-width: calc((var(--item-min-width) * var(--actual-columns)) + (var(--gap) * (var(--actual-columns) - 1)));
    
    /* Padding shrinks to 0, then columns reduce */
    padding-left: max(0px, min(var(--max-padding), (100vw - var(--content-width)) / 2)) !important;
    padding-right: max(0px, min(var(--max-padding), (100vw - var(--content-width)) / 2)) !important;
}

.elementor-5665 .elementor-element.elementor-element-4a3861b .elementor-loop-container {
    grid-template-columns: repeat(auto-fit, minmax(var(--item-min-width), 1fr)) !important;
    gap: var(--row-gap) var(--gap) !important;
}

@media (max-width: 767px) {
    .elementor-5665 .elementor-element.elementor-element-4a3861b {
        --item-min-width: 150px;
        --max-padding: 5px;
    }
}

@media (max-width: 400px) {
    .elementor-5665 .elementor-element.elementor-element-4a3861b {
        --item-min-width: 150px;
        --max-padding: 5px;
    }
}/* End custom CSS */