.elementor-23319 .elementor-element.elementor-element-35bb5e1{--display:flex;--min-height:100vh;--justify-content:flex-start;--padding-top:52px;--padding-bottom:0px;--padding-left:0px;--padding-right:52px;}.elementor-23319 .elementor-element.elementor-element-81fc668.elementor-element{--align-self:flex-end;--order:-99999 /* order start hack */;}.elementor-23319 .elementor-element.elementor-element-81fc668{z-index:9999999;}.elementor-23319 .elementor-element.elementor-element-81fc668 .elementor-icon-wrapper{text-align:end;}.elementor-23319 .elementor-element.elementor-element-81fc668.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-9586832 );}.elementor-23319 .elementor-element.elementor-element-81fc668.elementor-view-framed .elementor-icon, .elementor-23319 .elementor-element.elementor-element-81fc668.elementor-view-default .elementor-icon{color:var( --e-global-color-9586832 );border-color:var( --e-global-color-9586832 );}.elementor-23319 .elementor-element.elementor-element-81fc668.elementor-view-framed .elementor-icon, .elementor-23319 .elementor-element.elementor-element-81fc668.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-9586832 );}.elementor-23319 .elementor-element.elementor-element-81fc668 .elementor-icon{font-size:20px;}.elementor-23319 .elementor-element.elementor-element-81fc668 .elementor-icon svg{height:20px;}.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results-container{background-color:#02010100;}.elementor-23319 .elementor-element.elementor-element-89aa552{padding:32px 84px 32px 32px;--e-search-results-columns:3;--e-search-results-grid-auto-rows:1fr;--e-search-loop-item-equal-height:100%;--e-search-input-gap:14px;--e-search-submit-margin-inline-start:6px;--e-search-results-padding:0px 0px 0px 0px;--e-search-input-and-results-gap:32px;--e-search-results-column-gap:16px;--e-search-results-row-gap:16px;}.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-input{border-style:solid;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-a0f986c );border-radius:12px 12px 12px 12px;}.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results-container > div{border-style:none;}#elementor-popup-modal-23319 .dialog-widget-content{background-color:#1E1E1E2B;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-23319{background-color:rgba(0,0,0,.8);justify-content:center;align-items:flex-start;pointer-events:all;}#elementor-popup-modal-23319 .dialog-message{width:100vw;height:100vh;align-items:flex-start;}#elementor-popup-modal-23319 .dialog-close-button{display:flex;top:84%;background-color:var( --e-global-color-9586832 );font-size:100px;}body:not(.rtl) #elementor-popup-modal-23319 .dialog-close-button{right:70%;}body.rtl #elementor-popup-modal-23319 .dialog-close-button{left:70%;}#elementor-popup-modal-23319 .dialog-close-button i{color:var( --e-global-color-primary );}#elementor-popup-modal-23319 .dialog-close-button svg{fill:var( --e-global-color-primary );}@media(max-width:767px){.elementor-23319 .elementor-element.elementor-element-89aa552{--e-search-results-columns:1;}}/* Start custom CSS for search, class: .elementor-element-89aa552 *//* 1. THE BASE STATE (Centered) */
.elementor-23319 .elementor-element.elementor-element-89aa552 {
    position: fixed !important;
    z-index: 99999 !important;
    
    /* Positioning */
    top: 50% !important;
    left: 50% !important;
    width: 90% !important;
    max-width: 1140px !important;
    
    /* The centering logic */
    transform: translate3d(-50%, -50%, 0) !important;
    
    /* The animation timing you liked */
    transition: top 0.5s cubic-bezier(0.4, 0, 0.2, 1), 
                left 0.5s cubic-bezier(0.4, 0, 0.2, 1), 
                transform 0.5s cubic-bezier(0.4, 0, 0.2, 1), 
                width 0.5s cubic-bezier(0.4, 0, 0.2, 1),
                max-width 0.5s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* 2. THE ACTIVE STATES (Focus OR Results are showing) */
.elementor-23319 .elementor-element.elementor-element-89aa552:focus-within,
.elementor-23319 .elementor-element.elementor-element-89aa552:has(.e-search-results:not(:empty)),
.elementor-23319 .elementor-element.elementor-element-89aa552:has(.e-search-results-container:not(.hide-loader)) {
    top: 0% !important;
    left: 0% !important;
    width: 100% !important;
    max-width: 100% !important;
    
    
    /* Reset the transform to sit flush at the top */
    transform: translate3d(0, 0, 0) !important;
}
/* 1. Ensure the main container doesn't cut off its children */
.elementor-23319 .elementor-element.elementor-element-89aa552:focus-within,
.elementor-23319 .elementor-element.elementor-element-89aa552:has(.e-search-results:not(:empty)) {
    overflow: visible !important;
}

/* 2. Constrain the results and enable internal scrolling */
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results-container {
    /* Limit height to almost the full screen, minus the search bar height */
    max-height: calc(100vh - 122px) !important; 
    
    /* Enable vertical scrolling */
    overflow-y: auto !important;
    
    /* Smooth scrolling for mobile devices */
    -webkit-overflow-scrolling: touch;
    
    /* Optional: Ensure the scrollbar is visible but clean */
    scrollbar-width: thin;
}

/* 3. Aesthetic: Add a bit of padding to the bottom so the last result isn't flush */
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results {
    padding-bottom: 20px !important;
}
/* 1. Subtle Slide-Up Animation */
@keyframes waterfallIn {
    from {
        opacity: 0;
        transform: translateY(10px); /* Smaller movement for a classier feel */
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* 2. Target the items */
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results .e-loop-item {
    opacity: 0;
    /* 'forwards' is vital: it keeps the item visible after animating */
    animation: waterfallIn 0.4s ease-out forwards; 
}

/* 3. The Forward Stagger (Top-to-Bottom) */
/* Item 1 shows up almost immediately, then the rest follow quickly */
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results .e-loop-item:nth-child(1) { animation-delay: 0.05s; }
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results .e-loop-item:nth-child(2) { animation-delay: 0.12s; }
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results .e-loop-item:nth-child(3) { animation-delay: 0.19s; }
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results .e-loop-item:nth-child(4) { animation-delay: 0.26s; }
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results .e-loop-item:nth-child(5) { animation-delay: 0.33s; }
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results .e-loop-item:nth-child(6) { animation-delay: 0.40s; }
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results .e-loop-item:nth-child(7) { animation-delay: 0.47s; }
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results .e-loop-item:nth-child(8) { animation-delay: 0.54s; }

/* 4. Safety catch for many results */
/* Any result after the 8th will just appear at the 0.6s mark */
.elementor-23319 .elementor-element.elementor-element-89aa552 .e-search-results .e-loop-item:nth-child(n+9) {
    animation-delay: 0.6s;
}/* End custom CSS */