
.d-none {
    display:none;
}

/************************************************************************
        Main picture section
************************************************************************/

.booking-main{
    min-height: 47rem;
    background: url('https://images.pexels.com/photos/1591373/pexels-photo-1591373.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=750&w=1260') no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
}
.booking-main::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 6px;
    background: linear-gradient(90deg, #28489A 0%, #4680F7 100%);
    z-index: 1;
    pointer-events: none;
}

.background-overlay{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;

    opacity: 0.3;
    background: rgb(41,72,154);
    background: linear-gradient(0deg, rgba(41,72,154,1) 0%, rgba(14,3,26,0.9640231092436975) 88%);
}

.booking-main_heading {
    min-height: 30rem;
    position: relative;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

.booking-main_heading h1 {
    font-size: 5rem;
    text-transform: uppercase;
    text-align: center;
}

.booking-main_heading p {
    max-width: 100rem;
    margin:auto;
    color: var(--white-color);
    font-weight: 300;
    font-size: 2rem;
    
    text-align: center;
    
    margin-bottom: 2rem;
}

.booking-main_heading a{
    background:var(--primary-color);
    border-radius: .5rem;
    color:var(--white-color);
    font-size: 2rem;
    padding: .8rem 2rem;
    text-transform: uppercase;
}



/************************************************************************
       Breadcrumbs
************************************************************************/
.breadcrumb ul {
    font-size: 1.8rem;
    font-weight: 600;
    color: var(--gray-color);
    list-style: none;
    display: flex;
}

.breadcrumb ul li:not(:last-of-type) {
    margin-right: 1rem;
    position: relative;
}


.breadcrumb ul li:not(:last-of-type) i {
    margin: 0 0.5rem;
}


.hotel-results {
    display: flex;
    gap: 3rem;
    align-items: flex-start;
}

.hotel-results aside {
    flex-basis: 20%;
}
.hotel-results main {
    flex-basis: 80%;
    /*
    display:grid;
    --gap: 3rem;
    --num-cols: 3;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: repeat(var(--num-cols), 1fr);
    gap: var(--gap);
    */
}


@media (max-width: 1200px) {
    .hotel-results aside {
        display:none;
    }
    .hotel-results {
        display:block;
    }
    .hotel-results main {
        --num-cols:1;
    }
}


/************************************************************************
        Article Results
************************************************************************/

.hotel-results h2 {
    font-size: 3rem;
    margin-bottom: 2rem;
}

.hotel-results .filter-bar span {
    padding: .5rem 2rem;
    border-radius: 2rem;
    border: 1px solid black;
    color:black;
    display:inline-block;
    cursor: pointer;
    transition:all .2s ease-in-out;
    margin-right: 1.5rem;
}

.hotel-results .filter-bar span:hover, .hotel-results .filter-bar span:active, .hotel-results .filter-bar span:focus,
.hotel-results .filter-bar span:visited {
    background:black;
    color:var(--white-color);
}

.hotel-results .filter {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 5rem;
}
.hotel-results .filter button {
    background: var(--primary-color);
    color:var(--white-color);
    text-transform: uppercase;
    border-radius: 1rem;
    padding: .8rem 2rem;
    font-size: 1.8rem;
}

/* Event box */
.hotel-results .result-box {
    --gap: 3rem;
    --num-cols: 3;
    box-sizing: border-box;
    display: grid;
    grid-template-columns: repeat(var(--num-cols), 1fr);
    gap: var(--gap);
    margin-bottom: 2rem;
}

.hotel-results .result-box article {
    flex-basis: 32%;
    border-radius: 2rem;
    border: 1px solid var(--border-color);
    box-shadow: var(--box-shadow);
    overflow: hidden;
    /*margin: 0 2rem 3rem 0;*/
}

.hotel-results .result-box article .img {
    height: 35rem;
    overflow: hidden;
    cursor: pointer;
    background-size: cover;
    background-position: center;
    position: relative;
}

.wishlist-button, .share-button {
    position: absolute;
    color: var(--white-color);
    font-size: 2rem;
    cursor: pointer;
    background: rgba(0,0,0,.2);
    width: 3.5rem;
    height: 3.5rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
}
.wishlist-button {
    right: 1.6rem;
    top: 1rem;
}
.share-button {
    right: 5.6rem;
    top: 1rem;
}

.hotel-results .result-box article .text-section {
    padding:1.5rem;
}



.text-section .date-format {
    /*
    display: flex;
    align-items: center;
    justify-content: space-between;
    */
    display: block;
    font-size: 1.6rem;
    color:var(--primary-color);
    margin: 1rem 0;
}

.text-section .date-format .time {
    margin-top: 1rem;
}
.text-section .title {
    font-size: 2rem;
    font-weight: 500;
}

.hotel-results .result-box article .details {
    margin: 1rem 0;
    display: flex;
    justify-content:space-between;
    align-items: center;
    color:var(--primary-color);
    font-size: 1.4rem;
}
.hotel-results .result-box article .details > div:first-of-type{
    flex-grow: 1;
}
.hotel-results .result-box article .details > div:last-of-type {
    flex-basis: 120px;
    text-align: right;
}

.hotel-results .result-box article .details .price div {
    font-size: 2.2rem;
    margin-bottom: 0.5rem;
}
.hotel-results .result-box article .details .price button {
    background: var(--primary-color);
    color:var(--white-color);
    font-weight: 600;
    font-size: 1.4rem;
    border-radius: .5rem;
    padding: 1rem;
}

.more-btn button {
    background: var(--primary-color);
    color:var(--white-color);
    text-transform: uppercase;
    border-radius: 1rem;
    padding: .8rem 2rem;
    font-size: 1.8rem;
}

.mobile-expand-filters, .closeBtnFilter {
    padding: 1.5rem;
    background: var(--primary-color);
    color: white;
    text-align: center;
    text-transform: uppercase;
    width: 100%;
    margin-bottom: 2rem;
    display: none;
}

@media (max-width: 1200px) {

    .section-padding {
        padding: 2rem;
    }

    .mobile-expand-filters, .closeBtnFilter {
        display: block;
    }
    .hotel-results .result-box {
        --num-cols: 1;
    }
    .section-padding {
        padding:2rem;
    }

    .search-bar > .d-flex {
        display: block;
    }

    .search-bar > div:nth-of-type(1) {
        flex-basis: 100%;
    }
    .search-bar, #search_results {
        padding: 0 2rem;
      }

      .hotel-results aside {
        display: block;
        position: fixed;
        width: 100%;
        height: 100%;
        overflow-y: scroll;
        top: 0;
        left: 0;
        z-index: 11111;
        padding: 15px;
        background: white;
        transform: translateX(-100%);
        transition: all .3s ease-in-out;
    }
    .hotel-results aside.active {
        transform: translateX(0);
    }
}


@media (min-width: 768px) and (max-width: 1199px){
    .hotel-results .result-box {
        --num-cols: 2;
    }
}

@media (max-width: 767px) {
    .booking-main_heading h1 {
        font-size: 3rem !important;
        text-transform: uppercase;
        text-align: center;
    }

    
.booking-main_heading {
    min-height: 20rem;
    position: relative;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: center;
}

}