.listing-container {
    display: flex;
    position: relative;
    gap: 0; 
}

.properties-area {
    flex: 1;
    min-width: 0;
    transition: margin-right 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.filters-sidebar-wrapper {
    width: 380px; 
    flex-shrink: 0;
    margin-left: 2rem;
    
    overflow: visible; 
    
    transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1), 
                margin 0.5s ease,
                opacity 0.3s ease;
                
    opacity: 1;
}

.filters-inner {
    position: -webkit-sticky;
    position: sticky;
    top: 110px;
    
    width: 380px; 
    
    max-height: calc(100vh - 120px);
    overflow-y: auto;
    
    scrollbar-width: thin;
    scrollbar-color: var(--sni-primary) transparent;
}

.filters-sidebar-wrapper.collapsed {
    width: 0;
    margin-left: 0;
    
    opacity: 0;
    
    pointer-events: none;
    
}

.no-transition, .no-transition * {
    transition: none !important;
}

@media (max-width: 991px) {
    .listing-container {
        flex-direction: column-reverse;
    }

    .filters-sidebar-wrapper {
        width: 100%;
        margin-left: 0;
        
        margin-top: 0; 
        margin-bottom: 2rem; 
        
        position: static;
        height: auto;
        overflow: visible;
        display: block;
    }
    
    .filters-inner {
        position: static;
        width: 100%;
        max-height: none;
    }

    .filters-sidebar-wrapper.collapsed {
        display: none;
    }
}