/* Mobile Hotels Display Fix - Show partial next card */

/* Force proper mobile layout for hotels */
@media (max-width: 768px) {
    .hotels-scroll-wrapper {
        padding: 0 !important;
        margin: 0 !important;
        overflow: hidden !important;
    }
    
    .hotels-scroll-container {
        padding: 20px 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin: 0 !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scroll-behavior: smooth !important;
        -webkit-overflow-scrolling: touch !important;
    }
    
    .hotels-grid {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 20px !important;
        padding: 0 !important;
        margin: 0 !important;
        /* Start from right edge, add space on left to show next cards */
        padding-right: 0 !important; /* No right padding - start from edge */
        padding-left: 50vw !important; /* Large left padding to show next cards */
        width: auto !important;
        min-width: max-content !important;
    }
    
    .hotel-card {
        width: 75vw !important;
        max-width: 300px !important;
        min-width: 250px !important;
        flex-shrink: 0 !important;
        margin: 0 !important;
    }
}

@media (max-width: 576px) {
    .hotels-grid {
        gap: 15px !important;
        padding-right: 0 !important; /* No right padding */
        padding-left: 40vw !important; /* Left padding to show next cards */
    }

    .hotel-card {
        width: 70vw !important;
        max-width: 280px !important;
        min-width: 220px !important;
    }
}

@media (max-width: 480px) {
    .hotels-grid {
        gap: 12px !important;
        padding-right: 0 !important; /* No right padding */
        padding-left: 35vw !important; /* Left padding to show next cards */
    }

    .hotel-card {
        width: 65vw !important;
        max-width: 260px !important;
        min-width: 200px !important;
    }
}

@media (max-width: 400px) {
    .hotels-grid {
        gap: 10px !important;
        padding-right: 0 !important; /* No right padding */
        padding-left: 30vw !important; /* Left padding to show next cards */
    }

    .hotel-card {
        width: 60vw !important;
        max-width: 240px !important;
        min-width: 180px !important;
    }
}

@media (max-width: 360px) {
    .hotels-grid {
        gap: 8px !important;
        padding-right: 0 !important; /* No right padding */
        padding-left: 25vw !important; /* Left padding to show next cards */
    }

    .hotel-card {
        width: 55vw !important;
        max-width: 220px !important;
        min-width: 160px !important;
    }
}

/* Ensure smooth scrolling and proper display */
@media (max-width: 768px) {
    .hotels-scroll-container::-webkit-scrollbar {
        display: none !important;
    }
    
    .hotels-scroll-container {
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }
    
    /* Visual indicator that there are more cards */
    .hotels-grid::after {
        content: '';
        width: 1px;
        height: 100%;
        flex-shrink: 0;
        display: block;
    }
}

/* Fix for very small screens */
@media (max-width: 320px) {
    .hotels-grid {
        padding-right: 0 !important; /* No right padding */
        padding-left: 20vw !important; /* Left padding to show next cards */
        gap: 5px !important;
    }

    .hotel-card {
        width: 50vw !important;
        max-width: 200px !important;
        min-width: 150px !important;
    }
}
