/* Listing Tiles */

.productListing.card {
    border-radius: var(--theme--border-radius);
    border-color:#ddd;
    height:100%;
    overflow:hidden;
    text-decoration:none;
    background-color:#fff;
}

a.productListing.card {
    box-shadow:var(--theme--box-shadow);
    color:var(--theme--text-color); 
    transition-duration:300ms;
}

a.productListing.card:hover {
    box-shadow:var(--theme--box-shadow--hover);    
}

.popup.infobubble {
    padding: 10px 10px 0;
}

.productListing .listingText h3,
.popup.infobubble .listingText h3{
    font-size: 1.25em;
    line-height: 1.25em;
    margin:0;
    color:var(--theme--text-color)
}

.popup.infobubble .listingText h3 a {
    color:var(--theme--text-color);
    text-decoration: none;
}

.productListing .listingStats, 
.productListing .listingText,
.popup.infobubble .listingStats, 
.popup.infobubble .listingText{
    padding-bottom:10px;
    margin-bottom:10px;
    border-bottom:1px solid #ddd;
}

.productListing .listingSuburb,
.popup.infobubble .listingSuburb {
    color:var(--theme--primary-color);
    margin-bottom:0.25em;
}

.productListing .card-body{
    padding: var(--theme--card--padding, 10px);
    padding-bottom:0;
}

.productListing .listingImage{
    display:block;
    overflow:hidden;
    border-radius: calc(var(--theme--border-radius) / 2);
    position:relative;
    margin-bottom:10px;
}

.popup.infobubble .accomm-photos a {
    display:block;
    overflow:hidden;
    border-radius: calc(var(--theme--border-radius) / 2);
    position:relative;
}

.productListing .listingImage > img,
.popup.infobubble .accomm-photos img {
    display:block;
}

.productListing .listingImage::after{
    content:'';
    position:absolute;
    top:0;
    left:0;
    right:0;
    bottom:0;
    background: linear-gradient(0deg, rgba(0,0,0,0.35) 0%, rgba(0,0,0,0) 50%);
    opacity:1;
    z-index:1;
}

.productListing .listingPrice,
.popup.infobubble .listingPrice {
    position:absolute;
    bottom:10px;
    left:10px;
    z-index:2;
    color:#fff;
    font-weight:700;
    font-size:1.25em;
}

.productListing .listingPrice .shrink,
.popup.infobubble .listingPrice .shrink{
    font-size:1rem;
}

.productListing .listingPrice small.strikethrough,
.popup.infobubble .listingPrice small.strikethrough {
    font-size:0.75em;
    line-height: 0.75em;
    position:relative;
    text-decoration:line-through;
}

.productListing .listingPrice .promo,
.popup.infobubble .listingPrice .promo{
    font-size:13px;
    font-weight:400;
    display:inline-block;
    line-height:1em;
    padding:5px 10px;
    background: var(--theme--primary-color);
    border-radius: var(--theme--border-radius);
    z-index:99;
}

a.productListing .listingImage > img {
    transition-duration: 300ms;
}

a.productListing:hover .listingImage > img {
    transform:scale(1.1);
}

.productListing .card-footer {
    background-color:transparent;
    border-top:0;
    padding:var(--theme--card--padding, 10px);
    padding-top:0;
}

.productListing .statWrapper {
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
}

.productListing .statWrapper > i,
.popup.infobubble .statWrapper > i{
    display:block;
    flex-basis:100%;
    text-align:center;
    font-size:1.5em;
}

.productListing .statValue {
    font-size:0.8889em;
}

.productListing .shortlist-container  {
    position:absolute;
    right:10px;
    top:10px;
    z-index: 2;
    cursor:pointer;
    background:#fff;
    padding:10px;
    line-height: 1em;
    border-radius: var(--theme--border-radius);
}

.productListing .shortlist-container.active > i, .productListing .shortlist-container:hover > i {
    font-weight:800;
    color: #dd3a29;
}
.productListing .reviews{
    align-items: baseline;
    gap:2px;
}
.productListing .rating{
    font-weight: 600;
}
.productListing .rating ,.productListing .review-stars i,.infowindow-footer .reviews .stars i{
    color:var(--theme--primary-color);
}
.productListing .rating ,.productListing .review-stars i ,.productListing .total-reviews{
    font-size: 0.75em;
}
.productListing .listingKeyFeatures  {
    position: absolute;
    left: 10px;
    top: 10px;
    line-height: 1em;
    width:70%;
    display:flex;
    flex-wrap:wrap;
    gap:5px;
}

.productListing .listingKeyFeatures span{
    font-size:0.8em;
    padding: 5px 10px;
    color:#fff;
    background:var(--theme--text-color);
    border-radius: var(--theme--border-radius);
}

.infowindow-body {
    margin-top:10px;
}

.gm-style .gm-style-iw-c,.gm-style .gm-style-iw-d {
    padding: 0 0 10px!important;
    overflow: hidden!important
}

.gm-style-iw-chr {
	position:absolute;
	top:0;
	z-index:99;
	width:100%;
        left:0;
}