﻿/**************************************************************/
/* General & Basic Styles
/**************************************************************/  
*{
  margin: 0;
  padding: 0;
  outline: none;
}
html{
  height: 100%;
}
body{
  height: 100%;
  font-family: Montserrat;
  font-size: 14px;
  line-height: 1.7;
  color: var(--theme-base-color);
}
p{
  margin-bottom: 16px;
}
a{    
  outline: none;
} 
.h-100 {
  height: 100% !important;
}
.w-100{
  width: 100% !important;
}
.mw-100{
  max-width: 100%;
}
.mw-500px{
  max-width: 500px;
}
.fw-400{
  font-weight: 400 !important;
}
.fw-500{
  font-weight: 500 !important;
}
.fw-600{
  font-weight: 600 !important;
}
.border-0{
  border: none;
}
.d-block{
  display: block;
} 
.d-none{
  display: none !important;
}
.uppercase{
  text-transform: uppercase;
}
.capitalize{
  text-transform: capitalize;
}
.lowercase{
  text-transform: lowercase;
}
.normal{
  text-transform: none;
}
.transition{
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -ms-transition: 0.3s;
  transition: 0.3s;
}
.text-truncate{
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden !important;
}
.text-center{
  text-align: center;
}
.text-right{
  text-align: right;
}
.text-left{
  text-align: left;
}
.ws-nowrap{
  white-space: nowrap;
} 
.h-0{
  height: 0;
}
.theme-container{
  max-width: 1300px;
  margin: 0 auto;
  width: 100%;
  box-sizing: border-box;
}
.o-hidden{
  overflow: hidden;
}
.p-relative{
  position: relative !important;
}
.bg-transparent{
  background: transparent !important;
}
.text-muted{
  color: rgba(0, 0, 0, 0.54) !important; 
  color: var(--mdc-theme-text-secondary-on-background) !important;
} 
.primary-color{
  color: var(--mdc-theme-primary) !important;
}
.accent-color{
  color: var(--mdc-theme-secondary) !important;
}
.warn-color{
  color: var(--mdc-theme-error) !important;
}
.divider{
  position: absolute;
  left: 0;
  width: 100%;
  display: block; 
  border-top-width: 1px;
  border-top-style: solid;
  border-top-color: var(--theme-divider);  
} 
.badge{
  position: absolute;
  top: 0;
  width: 16px;
  height: 16px;
  line-height: 16px; 
  text-align: center;
  border-radius: 50%;
  background-color: #ccc;  
  overflow: hidden;
  color: #fff;
  font-size: 9px;
}
.badge.md{ 
  top: -6px;
  width: 22px;
  height: 22px;
  line-height: 22px;    
  font-size: 12px;
}
.badge.warn{ 
  background-color: var(--mdc-theme-error);
}
.badge.primary{ 
  background-color: var(--mdc-theme-primary);
} 
.bg-primary{
  background: var(--mdc-theme-primary) !important;
  color: #fff !important;
}
.bg-accent{
  background: var(--mdc-theme-secondary) !important;
  color: #fff !important;
}
.bg-warn{
  background: var(--mdc-theme-error) !important;
  color: #fff !important;
}
.border-accent{
  border-color: var(--mdc-theme-secondary);        
} 
.expansion-panel-wrapper .expansion-panel{
  position: relative;
}
.expansion-panel-wrapper .expansion-panel.expanded{
  margin: 16px 0;
} 
.expansion-panel-wrapper .expansion-panel:first-child{
  margin-top: 0; 
}
.expansion-panel-wrapper .expansion-panel-header{ 
  padding: 16px 48px 16px 24px;
  font-size: 15px;
  cursor: pointer;
  transition: 0.2s;
}
.expansion-panel-wrapper .expansion-panel:not(.expanded) .expansion-panel-header:hover{ 
  background: rgba(0,0,0,.1);
}
.expansion-panel-wrapper .expansion-panel-header::after{ 
  font-family: 'Material Icons'; 
  content: '\e313'; 
  font-size: 24px;
  line-height: 24px;   
  display: inline-block;
  position: absolute;
  right: 16px;
  color: var(--mdc-theme-text-secondary-on-background);
  transition: 0.2s;
}
.expansion-panel-wrapper .expansion-panel.expanded .expansion-panel-header::after{
  transform: rotate(180deg);
}
.expansion-panel-wrapper .expansion-panel-body{
  position: relative;
  padding: 0 24px 16px 24px;
}  
.mdc-tab-bar-wrapper.centered{
  display: flex;
  flex-direction: column;
}
.mdc-tab-bar-wrapper.centered .mdc-tab-bar {
  width: auto; 
  margin: 0 auto;
}
.mdc-tab .mdc-tab__text-label{
  color: var(--theme-base-color);
}
.tab-content {
  display: none;
}
.tab-content--active {
  display: block;
}  
.avatar{
  height: 40px;
  width: 40px;
  border-radius: 50%; 
}


/**************************************************************/
/* Carousel
/**************************************************************/  
.swiper-lazy-preloader{
  margin-top: 20px;
}
.swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after,
.swiper-button-prev:after, .swiper-container-rtl .swiper-button-next:after{
  content: none;
}
button.swipe-arrow{
  position: absolute;
  top: 50%;
  margin-top: -22px;
  z-index: 10;
  background-image: none !important; 
}
button.swipe-arrow.transparent{
  background: transparent !important;
  box-shadow: none;
}
.swiper-pagination.white .swiper-pagination-bullet{
  background: #fff;
}
.swiper-pagination-bullet-active{
  width: 10px;
  height: 10px;
  vertical-align: -1px;
}
.carousel-outer{
  margin: -2px;
  padding: 2px;
}





/**************************************************************/
/* Single Property Main Carousel
/**************************************************************/ 
.single-property .main-carousel{
  position: relative;
}
.single-property .main-carousel .swiper-slide img{
  max-width: 100%;
  height: auto;      
} 
.single-property .main-carousel .control-icons{ 
  position: absolute;
  z-index: 2; 
  top: 16px;
  right: 16px;
}
.single-property .main-carousel .control-icons button.mdc-button{
  min-width: 36px;
  width: 36px;
  padding: 0;
  margin: 0 4px;
  background: rgba(255, 252, 252, 0.6);
  transition: 0.2s; 
  color:rgba(0, 0, 0, 0.87);
}
.single-property .main-carousel .control-icons button.mdc-button:disabled{
  color: rgba(0, 0, 0, 0.26); 
}
.single-property .main-carousel .control-icons button.mdc-button:hover:enabled{
  background: rgba(255, 252, 252, 1);
} 


.single-property .small-carousel{
  position: relative;
}
.single-property .small-carousel .swiper-slide img{
  max-width: 100%;
  height: auto;   
  display: block;
  opacity: 0.3; 
} 
.single-property .small-carousel .swiper-slide.active-thumb img{
  border-width: 3px;
  border-style: solid;
  box-sizing: border-box;
  opacity: 1;  
  border-color: var(--mdc-theme-primary);  
} 



/**************************************************************/
/* Properties
/**************************************************************/   
.properties-wrapper{ 
  margin: 8px -8px; 
}
.properties-wrapper .item{
  padding: 8px; 
} 
.property-item{
  height: 100%;
  width: 100%;
  overflow: hidden;
  padding: 0 !important;
  flex-flow: row wrap;
  box-sizing: border-box;
  display: flex;
}
.property-item .thumbnail-section{
  position: relative;
} 
.property-item .property-content-wrapper{
  flex: 1 1 100%;
  box-sizing: border-box;
  max-width: 100%;
  padding: 16px;
}
.property-item .property-image{
  position: relative;
  min-height: 180px;
}
.property-item .property-image img{ 
  width: 100%;
  height: auto;
  display: block;
}  
.property-item .property-image .swiper-container .swipe-arrow.mdc-icon-button{
  color: #fff; 
  padding: 0;
  display: flex;
} 
.property-item .property-image .swiper-container .swiper-lazy-preloader{
  margin-top: 0px;
  top: 42%;
}
.property-item .property-image .swiper-container .swipe-arrow.mdc-icon-button.swiper-button-next{
  right: 4px; 
}
.property-item .property-image .swiper-container .swipe-arrow.mdc-icon-button.swiper-button-prev{
  left: 4px;
} 
.property-item .property-imagee .swiper-slide{              
  text-align: center;
  padding-bottom: 66.25%;
  position: relative;
  overflow: hidden;  
  background: rgba(0, 0, 0, 0.04);          
}
.property-item .property-status{
  position: absolute;
  z-index: 2;
}
.property-status span{
  padding: 3px 6px;
  margin: 4px;
  font-size: 12px;
  color: #fff;
  font-weight: 500;
  text-transform: uppercase;
  border-radius: 4px;
  background: #01579B; 
}
.property-status span.green{ 
  background: #558B2F;
}
.property-status span.blue{ 
  background: #1E88E5;
}
.property-status span.teal{ 
  background: #009688;
}
.property-status span.orange{ 
  background: #FFA000;
}
.property-status span.red{ 
  background: #F44336;
}
.property-status span.dark{ 
  background: #000;
} 
.property-item .control-icons{ 
  position: absolute;
  z-index: 2; 
  right: 4px;
  margin-top: -30px; 
}
.property-item .control-icons button.mdc-button{
  height: 26px;
  min-width: 26px;
  width: 26px;
  line-height: 26px;
  padding: 0; 
  background: rgba(255, 252, 252, 0.6);
  transition: 0.2s; 
  color:rgba(0, 0, 0, 0.87);             
}
.property-item .control-icons button.mdc-button:disabled{
  color: rgba(0, 0, 0, 0.26);              
}
.property-item .control-icons button.mdc-button:hover:enabled{
  background: rgba(255, 252, 252, 1);             
} 
.property-item .property-content{
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  justify-content: start;
}
.property-item .property-content .grow{
  flex: 1 1 100%;
  box-sizing: border-box;
  max-height: 100%;
} 
.property-item .title{ 
  font-size: 18px;  
} 
.property-item .title a{
  transition: 0.2s;
  text-decoration: none; 
  color: var(--theme-base-color); 
}
.property-item .title a:hover{ 
  color: var(--mdc-theme-primary); 
} 
.property-item .address, 
.property-item .date{
  font-style: italic;
  margin-top: 8px; 
  display: flex;
  align-items: center;
  color: var(--mdc-theme-text-secondary-on-background) !important; 
  font-weight: 500;
} 
.property-item .address .material-icons, 
.property-item .date .material-icons{
  margin-left: -4px; 
}  
.property-item .price span{
  display: block; 
} 
.property-item .features p span:first-child {
  float: left;
  padding: 0 .4em 0 0;	
  color: var(--mdc-theme-text-secondary-on-background) !important; 
  font-weight: 500;
}
.property-item .features p span + span {
  float: right;
  padding: 0 0 0 .4em;
  font-weight: 500;	
}
.property-item .features p:after {
  content: "";
  display: block;
  overflow: hidden;
  height: 1em;  
  border-bottom: 1px dotted #ccc;
  border-bottom: 1px dotted var(--theme-divider);
} 
.ratings{
  color:#fbc02d; 
} 
.property-item .description{
  color: var(--mdc-theme-text-secondary-on-background) !important; 
  font-weight: 500;
} 
.property-item.grid-item{
  flex-direction: row;
  flex-flow: column !important;
} 
.property-item.grid-item .description{
  display: none;
} 
.property-item.grid-item.column-2 .title{
  font-size: 22px;
}
.property-item.grid-item.column-2 .price{
  font-size: 18px; 
}
.property-item.grid-item.column-3 .title{
  font-size: 18px;
}
.property-item.grid-item.column-3 .address,
.property-item.grid-item.column-3 .date{
  font-size: 12px;
}
.property-item.grid-item.column-3 .address .material-icons,
.property-item.grid-item.column-3 .date .material-icons{
  font-size: 18px;
  width: 18px;
  height: 18px;
} 
.property-item.grid-item.full-width-page.column-2 .title{
  font-size: 28px;
}
.property-item.grid-item.full-width-page.column-2 .price{
  font-size: 20px; 
}
.property-item.grid-item.full-width-page.column-3 .title{
  font-size: 22px;
}
.property-item.grid-item.full-width-page.column-3 .address,
.property-item.grid-item.full-width-page.column-3 .date{
  font-size: 14px;
}
.property-item.grid-item.full-width-page.column-3 .address .material-icons,
.property-item.grid-item.full-width-page.column-3 .date .material-icons{
  font-size: 24px;
  width: 24px;
  height: 24px;
}
.property-item.grid-item.full-width-page.column-3 .price{
  font-size: 18px;
} 
.property-item.grid-item.full-width-page.column-4 .title{
  font-size: 18px;
}
.property-item.grid-item.full-width-page.column-4 .address,
.property-item.grid-item.full-width-page.column-4 .date{
  font-size: 12px;
}
.property-item.grid-item.full-width-page.column-4 .address .material-icons,
.property-item.grid-item.full-width-page.column-4 .date .material-icons{
  font-size: 18px;
  width: 18px;
  height: 18px;
} 
.property-item.list-item .thumbnail-section{
  flex: 1 3 100%;
  box-sizing: border-box;
  max-width: 40%;
}
.property-item.list-item .property-content-wrapper{
  flex: 1 1 100%;
  box-sizing: border-box;
  max-width: 60%;
} 
.property-item.list-item .title{
  font-size: 28px;
  margin-top: -8px;
}
.property-item.list-item .price{
  font-size: 20px; 
}
.property-item.list-item .features{
  display: flex;
  flex-flow: wrap;
}
.property-item.list-item .features p{
  margin-right: 24px;
  display: flex;
  white-space: nowrap;
}
.property-item.list-item .features p span:first-child:after {
  content: ":";
  margin: 0 1px;	
}
.property-item.list-item .features p:after {
  content: none;
}
.property-item.list-item:not(.full-width-page) .description{
  display: none;
} 
.page-sidenav.mdc-drawer .property-item{
  height: auto !important;
}


/******* Single property *******/ 
.single-property .page-sidenav-content{
  padding-left: 2px;
  padding-right: 16px;
} 
.single-property .details .item span:first-child{
  margin-right: 8px;
  font-weight: 500;
  min-width: 114px;
  display: inline-block;
  color: var(--mdc-theme-text-secondary-on-background);
}
.single-property .details .item .list span{
  font-weight: normal;
  min-width: auto;
  color: var(--theme-base-color);
}
.single-property .details .item .list span:not(.last):after{
  content: ","; 
} 
.single-property .details .item .list span.last:after{
  content: none; 
} 
.videoWrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
}
.videoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}  
.single-property .page-sidenav{
  max-width: 360px;
  width: 100%;
}
.widget{ 
  margin-bottom: 40px; 
} 
.widget .widget-title{
  margin: 0 -16px 16px;
  padding: 8px 16px;
  text-transform: uppercase;
  font-weight: 500;
  font-size: 16px;
}  
.widget .widget-title:first-child .widget-title{
  margin: -16px -16px 16px;
  padding: 8px 16px;
  text-transform: uppercase;
  font-weight: 500; 
} 
  