.ra-filters {
    max-width: 710px;
    display: flex;
	flex-wrap: wrap;
    grid-gap: 15px;
    margin-bottom: 2rem;
}
.ra-filters select {
	width: auto;
}
#ra-room-results .ra-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}
.ra-home-grid{
	display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:30px;
}
.ra-room-card{
    border: 1px solid var(--e-global-color-border);
    border-radius: 15px;
    overflow: hidden;
    position:relative;
}
.ra-room-image {
    aspect-ratio: 16 / 9;
	background-color: var(--e-global-color-f05d421);
}
.ra-room-card img{
    width:100%;
    height:100%;
	object-fit: cover;
    display:block;
}
.ra-room-card .cmsmasters-theme-button{
	margin-top:2rem;
}
.ra-status{
    position:absolute;
    top:10px;
    left:10px;
    background:#fff;
    padding:5px 10px;
    font-size:12px;
    font-weight:700;
    line-height:1;
    border-radius:30px;
    display:flex;
    grid-gap:5px;
    color:green;
}
.ra-status span{
    display:block;
    width:10px;
    height:10px;
    background:green;
    border-radius:100%;
}
.ra-status:has(.available_from){
    color:#653371;
}
.ra-status:has(.available_from) span{
    background:#653371;
}
.ra-status:has(.reserved){
    color:red;
}
.ra-status:has(.reserved) span{
    background:red;
}
.ra-filter-wrapper{
    display:flex;
    gap:20px;
    margin-bottom:30px;
}
.ra-room-content{
    padding:20px;
}
.ra-room-unit, .ra-room-category {
    font-size: 14px;
    display: block;
    line-height: 1;
    margin-top: 20px;
}
.ra-pagination {
    display: flex;
	justify-content:center;
    flex-wrap:wrap;
    grid-gap: 10px;
    margin-top: 3rem;
}
.ra-pagination .page-numbers.cmsmasters-theme-button.current{
    --cmsmasters-button-hover-colors-bg:var( --e-global-color-primary );
    --cmsmasters-button-normal-colors-bg:var( --e-global-color-primary );
    color: #fff !important;
}

.ra-loader{
    display:none;
    justify-content:center;
    align-items:center;
    padding:40px 0;
}

.ra-loader.active{
    display:flex;
}

.ra-spinner{
    width:40px;
    height:40px;
    border:4px solid #ddd;
    border-top:4px solid #000;
    border-radius:50%;
    animation:raSpin 0.7s linear infinite;
}

@keyframes raSpin{
    100%{
        transform:rotate(360deg);
    }
}

#ra-room-results.loading{
    opacity:0.5;
    pointer-events:none;
    transition:0.3s;
}

@media (max-width:767px){
	#ra-room-results .ra-grid{
		grid-template-columns:repeat(2,1fr);
	}
	.ra-home-grid{
		grid-template-columns:repeat(2,1fr);
	}
}
@media (max-width:525px){
	#ra-room-results .ra-grid{
		grid-template-columns:repeat(1,1fr);
	}
	.ra-home-grid{
		grid-template-columns:repeat(1,1fr);
	}
}