/* =========================================================
   ACCESSIBLE STAY
   HIVEPRESS RESULTS PAGE
   =========================================================

   IMPORTANT:

   This stylesheet applies ONLY to:

   .accessible-stay-results-page

   It does NOT modify:
   - Homepage
   - Homepage hero
   - Homepage introduction
   - Homepage cards
   - Single listing pages

   Layout:

   ┌──────────────┬───────────────────────────────┐
   │              │                               │
   │   FILTER     │      LISTING 1 | LISTING 2   │
   │              │                               │
   │              │      LISTING 3 | LISTING 4   │
   │              │                               │
   └──────────────┴───────────────────────────────┘

   ========================================================= */


/* =========================================================
   1. GLOBAL BOX SIZING
   ========================================================= */

body.accessible-stay-results-page,
body.accessible-stay-results-page * {
    box-sizing: border-box;
}


/* =========================================================
   2. PREVENT HORIZONTAL PAGE OVERFLOW
   ========================================================= */

body.accessible-stay-results-page {
    overflow-x: hidden;
}


/* =========================================================
   3. MAIN HIVEPRESS PAGE
   ========================================================= */

body.accessible-stay-results-page .hp-page {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}


/* =========================================================
   4. HIVEPRESS CONTENT AREA
   ========================================================= */

body.accessible-stay-results-page .hp-page__content {
    width: 100%;
    max-width: 100%;
    min-width: 0;
}


/* =========================================================
   5. KEEP SIDEBAR + RESULTS TOGETHER
   ========================================================= */

body.accessible-stay-results-page .hp-page__content > * {
    min-width: 0;
}


/* =========================================================
   6. LISTINGS CONTAINER
   ========================================================= */

/*
 * This is the most important section.
 *
 * Force the actual HivePress listing list
 * to become a 2-column CSS grid.
 */

body.accessible-stay-results-page .hp-listings__list,
body.accessible-stay-results-page .accessible-stay-results-list {

    display: grid !important;

    grid-template-columns:
        repeat(2, minmax(0, 1fr)) !important;

    gap: 28px !important;

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

    margin: 0 !important;

    padding: 0 !important;

    list-style: none !important;

    align-items: start !important;

}


/* =========================================================
   7. FORCE EVERY LISTING TO BE A GRID ITEM
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
> * {

    display: block !important;

    width: 100% !important;

    max-width: none !important;

    min-width: 0 !important;

    margin: 0 !important;

    padding: 0 !important;

    float: none !important;

    flex: none !important;

    grid-column: auto !important;

}


/* =========================================================
   8. HIVEPRESS GRID ITEMS
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
.hp-grid__item {

    width: 100% !important;

    max-width: none !important;

    min-width: 0 !important;

    margin: 0 !important;

    padding: 0 !important;

    float: none !important;

    flex: none !important;

}


/* =========================================================
   9. LISTING CARD
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
.hp-listing {

    display: flex !important;

    flex-direction: column !important;

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

    height: auto !important;

    min-height: 0 !important;

    margin: 0 !important;

    padding: 0 !important;

    overflow: hidden !important;

    border-radius: 22px !important;

    box-sizing: border-box !important;

}


/* =========================================================
   10. LISTING IMAGE
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
.hp-listing__image {

    display: block !important;

    width: 100% !important;

    height: 250px !important;

    min-height: 250px !important;

    max-height: 250px !important;

    margin: 0 !important;

    padding: 0 !important;

    overflow: hidden !important;

    border-radius: 22px 22px 0 0 !important;

}


body.accessible-stay-results-page
.hp-listings__list
.hp-listing__image img {

    display: block !important;

    width: 100% !important;

    height: 100% !important;

    min-width: 0 !important;

    min-height: 0 !important;

    max-width: none !important;

    object-fit: cover !important;

    object-position: center !important;

}


/* =========================================================
   11. LISTING CONTENT
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
.hp-listing__content {

    display: flex !important;

    flex-direction: column !important;

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

    min-height: 0 !important;

    padding: 20px !important;

    margin: 0 !important;

}


/* =========================================================
   12. CATEGORY
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
.hp-listing__categories {

    display: block !important;

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

    margin-bottom: 10px !important;

    white-space: normal !important;

    overflow: hidden !important;

}


/* =========================================================
   13. LOCATION
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
.hp-listing__location {

    display: block !important;

    max-width: 100% !important;

    min-width: 0 !important;

    white-space: normal !important;

    overflow-wrap: anywhere !important;

    word-break: normal !important;

}


/* =========================================================
   14. LISTING TITLE
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
.hp-listing__title {

    display: block !important;

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

    margin: 12px 0 !important;

    padding: 0 !important;

    font-size: 22px !important;

    line-height: 1.3 !important;

    font-weight: 700 !important;

    white-space: normal !important;

    word-break: normal !important;

    overflow-wrap: break-word !important;

    hyphens: none !important;

}


/* =========================================================
   15. TITLE LINK
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
.hp-listing__title a {

    display: block !important;

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

    white-space: normal !important;

    word-break: normal !important;

    overflow-wrap: break-word !important;

    hyphens: none !important;

}


/* =========================================================
   16. LISTING ATTRIBUTES
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
.hp-listing__attributes {

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

}


/* =========================================================
   17. LISTING FOOTER
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
.hp-listing__footer {

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

    margin-top: auto !important;

}


/* =========================================================
   18. LISTING ACTIONS
   ========================================================= */

body.accessible-stay-results-page
.hp-listings__list
.hp-listing__actions {

    display: flex !important;

    align-items: center !important;

    justify-content: center !important;

    width: 100% !important;

    max-width: 100% !important;

    min-width: 0 !important;

}


body.accessible-stay-results-page
.hp-listings__list
.hp-listing__actions a,
body.accessible-stay-results-page
.hp-listings__list
.hp-listing__actions button {

    max-width: 100% !important;

}


/* =========================================================
   19. FILTER SIDEBAR
   ========================================================= */

/*
 * We deliberately DO NOT change the HivePress
 * sidebar width, position, or structure.
 *
 * This is important because your sidebar is
 * already working correctly.
 */

body.accessible-stay-results-page
.hp-page__sidebar {

    min-width: 0;

}


/* =========================================================
   20. PREVENT FILTER FROM AFFECTING LISTINGS
   ========================================================= */

body.accessible-stay-results-page
.hp-page__sidebar * {

    box-sizing: border-box;

}


/* =========================================================
   21. TABLET
   ========================================================= */

@media (max-width: 1100px) {

    body.accessible-stay-results-page
    .hp-listings__list,
    body.accessible-stay-results-page
    .accessible-stay-results-list {

        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;

        gap: 22px !important;

    }


    body.accessible-stay-results-page
    .hp-listings__list
    .hp-listing__image {

        height: 220px !important;

        min-height: 220px !important;

        max-height: 220px !important;

    }

}


/* =========================================================
   22. MOBILE
   ========================================================= */

@media (max-width: 700px) {

    body.accessible-stay-results-page
    .hp-listings__list,
    body.accessible-stay-results-page
    .accessible-stay-results-list {

        grid-template-columns: 1fr !important;

        gap: 20px !important;

    }


    body.accessible-stay-results-page
    .hp-listings__list
    .hp-listing__image {

        height: 240px !important;

        min-height: 240px !important;

        max-height: 240px !important;

    }


    body.accessible-stay-results-page
    .hp-listings__list
    .hp-listing__title {

        font-size: 20px !important;

    }

}


/* =========================================================
   23. SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

    body.accessible-stay-results-page
    .hp-listings__list
    .hp-listing__image {

        height: 210px !important;

        min-height: 210px !important;

        max-height: 210px !important;

    }


    body.accessible-stay-results-page
    .hp-listings__list
    .hp-listing__content {

        padding: 16px !important;

    }

}