.hotels-archive{
   width: 100%;
padding: 20px 40px;
}

.hotels-archive-header{
    margin-bottom:40px;
}

.hotels-list{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:25px;
}

.hotel-card{
    background:#fff;
    border-radius:20px;
    overflow:hidden;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    padding-bottom:20px;
}

.hotel-card img{
    width:100%;
    display:block;
}

.hotel-card h2{
    padding:15px 20px 10px;
    margin:0;
    font-size:22px;
}

.hotel-card p{
    padding:0 20px;
}

.hotel-price,
.hotel-stars,
.hotel-district{
    padding:0 20px 10px;
}

.hotel-price{
    font-weight:700;
}

.hotel-stars{
    color:#f5b400;
}

.hotels-pagination{
    margin-top:50px;
    text-align:center;
}

.hotels-pagination .page-numbers{
    display:inline-block;
    padding:10px 15px;
    margin:3px;
    border-radius:8px;
    text-decoration:none;
    background:#f3f3f3;
}

.hotels-pagination .current{
    font-weight:700;
}

@media(max-width:992px){

    .hotels-list{
        grid-template-columns:repeat(2,1fr);
    }

}

@media(max-width:768px){

    .hotels-list{
        grid-template-columns:1fr;
    }

}

.hotels-filter{
    margin:30px 0 40px;
}

.filter-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:15px;
    background: #f7f8fa;
  padding: 25px;
  border-radius: 20px;
}

.filter-grid select,
.filter-grid button{
    height:48px;
    border:1px solid #ddd;
    border-radius:10px;
    padding:0 15px;
}

.filter-grid button{
    cursor:pointer;
    font-weight:600;
}

@media(max-width:768px){

    .filter-grid{
        grid-template-columns:1fr;
    }

}