/* fix up new icons */
body .wpg-lvi-box-side > ul > li:before{
background-image: url(../img/wpg-icons.png);
}
body .wpg-lvi-box-side > ul > li.wpg-ico-bed:before{
background-position: -15px 0;
}
body .wpg-lvi-box-side > ul > li.wpg-ico-computer:before{
background-position: -243px 0;
}
body .wpg-lvi-box-side > ul > li.wpg-ico-computer.no-wifi:before{
background-position: -570px 0;
}
body .wpg-lvi-box-side > ul > li.wpg-ico-bath:before {
background-position: -92px 0;
}
body .wpg-lvi-box-side > ul > li.wpg-ico-location:before {
background-position: -318px 0;
}
body .wpg-lvi-box-side > ul > li.wpg-ico-pet:before {
background-position: -155px 0;
}
body .wpg-lvi-box-side > ul > li.wpg-ico-pet.no-pets:before {
background-position: -480px 0;
}
body .wpg-lvi-box-side > ul > li.wpg-ico-email:before {
background-position: 21px;
}

/* turn off width restriction on home page text */
.wpg-smth-text .container{
max-width: 1196px !important;
}

/* add padding to tabs so they do not sit against the side of the screen */
.single-properties .wpg-tabs-simple .container{
padding: 0 14px;
}

/* increase 3 steps size */
.wpg-three-steps > div{
width: 180px;
}
.wpg-three-steps{
max-width: 560px;
}
    
/* full width header */
.full-width-header{
max-width: none !important;
margin: 0 20px !important;
}

/* fix first cycle slide being wrong */
.cycle-slide img{
max-height: none !important;
}

/* fix sub sub menus */
@media screen and (min-width: 1000px)
{
    #menu-main-menu .sub-menu .menu-item.menu-item-has-children .sub-menu{
        display: none;
    }
    #menu-main-menu .sub-menu .menu-item.menu-item-has-children:hover .sub-menu{
        position: absolute;
        left: 200px;
        display: block;
        margin-top: -40px;
    }
}

/* fix right tab column p margins */
.wpg-tsmc-right p{
margin-bottom: 20px;
}

/* add styles for default google map info window */
.gm-style .gm-style-iw{
padding: 17px 17px 0 17px !important;
left: 0 !important;
top: 0 !important;
right: 0 !important;
width: 100% !important;
height: 153px !important;
}
.gm-style .gm-style-iw > div:first-child{
width: 470px !important;
height: 153px !important;
}
.gm-style .gm-ui-hover-effect{
top: -6px !important;
right: -8px !important;
}
.gm-info-title{
font-size: 17px;
margin-bottom: 10px;
white-space: nowrap; 
text-overflow: ellipsis; 
overflow: hidden;
width: 100%;
}
.gm-info-subtitle{
margin-bottom: 10px;
}
.gm-info-subtitle span{
color: #AAAAAA;
}
.gm-info-container{
width: 500px;
height: 180px;
}
.gm-info-container img{
width: 200px;
height: 150px;
object-fit: cover;
float: left;
margin-right: 15px;
display: block;
}
.gm-info-meta{
float: left;
width: 280px;
}

/* add some styles for map info windows */
.gm-info-box-container{
background: #FFFFFF;
-webkit-box-shadow: 0px 0px 20px 2px rgba(0,0,0,0.14);
-moz-box-shadow: 0px 0px 20px 2px rgba(0,0,0,0.14);
box-shadow: 0px 0px 20px 2px rgba(0,0,0,0.14);
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
overflow: hidden;
width: 200px;
position: relative;
}
.gm-info-window-image{
width: 200px;
height: 130px;
background-position: center;
background-size: cover;
}
.gm-info-box-container h4{
padding: 10px;
font-size: 14px;
position: absolute;
background-color:rgba(0, 0, 0, 0.5);
color: #FFF;
bottom: 0;
width: 100%;
}

/* sort out banner text */
@media screen and (max-width: 1000px)
{
    .wpg-main-bg-header h2{
        font-size: 21px !important;
        padding: 0 30px;
        margin-bottom: 0 !important;
    }
    .wpg-full-image-in-container-inset-prev, .wpg-full-image-in-container-inset-next{
        background: none !important;
    }
}

/* sort out mobile menu */
@media screen and (max-width: 1000px)
{
    body .wpg-mobile-menu li{
        text-align: center;
        height: auto;
    }
    body .wpg-mobile-menu .sub-menu{
        z-index: 999;
    }
    body .wpg-mobile-menu .sub-menu li{
        width: 100%;
    }
    body .wpg-mobile-menu li a{
        padding: 30px;
    }
}

/* fix home page banner on mobile text in weird position */
@media screen and (max-width: 767px)
{
    .wpg-full-image-in-container .container{
        margin-top: 0 !important;
    }
}

/* sort out share property buttons on mobile */
@media screen and (max-width: 767px)
{
    .social-media{
        overflow: auto;
    }
    
    .social-media .accent-btn{
        margin-top: 0 !important;
        float: left !important;
        text-align: center !important;
        white-space: nowrap; 
        text-overflow: ellipsis; 
        overflow: hidden;
        display: inline-block;
        margin-bottom: 4px !important;
        margin-right: 4px !important;
        font-size: 12px;
        line-height: 18px;
        padding-left: 2px;
        padding-right: 2px;
    }
    
    .social-media .btn1,
    .social-media .btn2,
    .social-media .btn3,
    .social-media .btn4{
        width: calc(33.3% - 3px) !important;
    }
    
    .social-media .btn3{
        margin-right: 0 !important;
    }
    
    .social-media .btn5{
        width: calc(66.6% - 2px) !important;
        margin-right: 0 !important;
    }
    
    .social-media .margin-left-33-3{
        margin-left: 33.3% !important;
    }
    
    .social-media .width-full{
        width: 100% !important;
    }
    
}

/* generic smal screen helpers */
@media screen and (max-width: 767px)
{
    .hide-sm{
        display: none;
    }
}

.float-left{
float: left !important;
}
.float-none{
float: none !important;
}
.width-40{
width: 40px !important;
}
.width-auto{
width: auto !important;
}
.display-inline-block{
display: inline-block !important;
}
.text-decoration-none{
text-decoration: none;
}

.display-none{
display: none;
}
.no-margin{
margin: 0 !important;
}
.margin-right-2{
margin-right: 2px !important;
}
.margin-right-4{
margin-right: 4px !important;
}
.text-left{
text-align: left !important;
}
.wrap-img-right{
float: right;
margin: 0 0 20px 20px;
}
@media screen and (max-width: 767px)
{
    .wrap-img-right{
        width: 100%;
        float: none;
        margin-left: 0;
    }   
}