/******************************************************
 *
 * BEGIN: Global Custom CSS
 *
 *******************************************************/

body{
	font-family: "Lato",sans-serif;
	font-size: 16px;
	margin: 0;

	/* Remove the comment from line 85 to 86 if the font issue in safari occurs */
	/* 
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale; 
	*/
}


.smi-cons{
	font-size: 0 !important;
	text-decoration: none !important;
}
.smi-cons:before{
	font-size: 20px;
}

a.btn__box--link{
	display: inline-block;
	font-size: 0.938em;
	text-decoration: none !important;
	transition: all 0.2s linear;
}
	a.btn__box--link span{
		display: inline-block;
		margin-top: -3px;
		margin-right: 7px;
		vertical-align: middle;
	}

.container-before-border:before,
.container-after-border:after{
	content: '';
	display: inline-block;
	border-top: solid 1px #c1c1c1;
	width: 100%;
	height: 1px;
	position: absolute;
	left: 0;
}
.container-before-border:before{top: 0;}
.container-after-border:after{bottom: 0;}


@-webkit-keyframes infiniterotating {
	from {
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	to {
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@keyframes infiniterotating {
	from {
		-ms-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	to {
		-ms-transform: rotate(360deg);
		-moz-transform: rotate(360deg);
		-webkit-transform: rotate(360deg);
		-o-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
.infinite-rotating {
	-webkit-animation: infiniterotating 2s linear infinite;
	-moz-animation: infiniterotating 2s linear infinite;
	-ms-animation: infiniterotating 2s linear infinite;
	-o-animation: infiniterotating 2s linear infinite;
	animation: infiniterotating 2s linear infinite;
}

.btn-default{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;

	display: inline-block;
	border-radius: 0;
	border: none;
	background-color: #f2a448;
	color: #FFF;
	text-align: center;
	transition: all 0.2s linear;
	padding: 7px 10px;
	vertical-align: middle;
}
.btn-default:hover{
	background-color: #999;
}
.btn-default.opposite{
	background-color: #999;
	color: #FFF;
}
.btn-default.opposite:hover{
	background-color: #f2a448;
}
.read-more{
	display: inline-block;
	font-size: 0.750em;
	letter-spacing: 0.167em;
	text-transform: uppercase;
	text-decoration: none !important;
}
.widget__title{
	font-size: 1.563em;
	letter-spacing: 0.080em;
}

/*******************************************************
 *
 * END: Global Custom CSS
 *
 *******************************************************/

/*******************************************************
 *
 * BEGIN: Header
 *
 *******************************************************/

header{
	display: block;
	position: relative;
	font-size: 0;
	z-index: 1000;
}
	.header__info{
		font-size: 16px;
	}
		.header__info--smi{
			line-height: 0.8em;
		}
			.header__info--smi > .smi-cons:first-of-type{
				margin-left: 0 !important;
			}
			.header__info--smi > .smi-cons:last-of-type{
				margin-right: 0 !important;
			}
		.header__info--phone{
			font-size: 1.188em;
		}
		.header__info--contact{
			line-height: 1em;
		}

	.header__main{
		font-size: 0;
	}
		.header__main--logo{
			font-size: 16px;
			text-transform: uppercase;
			padding-bottom: 15px;
		}
			.header__main--logo a{
				text-decoration: none !important
			}
				.header__main--logo img{
					display: block;
					max-width: 100%;
					margin: 0 auto;
				}
				.header__main--logo-text{
					display: block;
					margin-right: -7px;
					font-size: 2em;
					line-height: 1.1em;
					letter-spacing: 0.29em;
				}
				.header__main--logo-tagline{
					display: block;
					font-size: 0.813em;
					letter-spacing: 2px;
				}
		.header__main--nav{
		}
			.header__main--nav nav ul{
				position: relative;
				font-size: 0;
				text-align: right;
			}
				.header__main--nav nav ul li{
					display: inline-block;
					position: relative;
					font-size: 16px;
					padding-bottom: 20px;
					vertical-align: top;
				}
					.header__main--nav nav div > ul > li:after{
						content: '';
						display: none;
						background: #f2a448;
						width: 1px;
						height: 15px;
						margin-top: 13px;
						vertical-align: top;
					}
					.header__main--nav nav div > ul > li:last-child:after{
						display: none;
					}
					.header__main--nav nav ul li a{
						display: block;
						font-size: 0.875em;
						letter-spacing: -0.5px;
						text-decoration: none !important;
						padding: 0 8px;
						text-transform: uppercase;
					}
					.header__main--nav nav div > ul > li:last-child a{
						padding-right: 0;
					}
					.header__main--nav nav ul ul{
						display: none;
						background: #FFF;
						width: 180px;
						position: absolute;
						top: 100%;
						text-align: left;
					}
						.header__main--nav nav ul li:hover ul{display: block;}
						.header__main--nav nav ul ul:before{
							content: '';
							display: block;
							-webkit-border-top-left-radius: 1px;
							-webkit-border-top-right-radius: 1px;
							-moz-border-radius-topleft: 1px;
							-moz-border-radius-topright: 1px;
							border-top-left-radius: 1px;
							border-top-right-radius: 1px;
							background: #dda765;
							width: 100%;
							height: 3px;
							position: absolute;
							top: -3px;
							left: 0;
						}
						.header__main--nav nav ul ul li{
							display: block;
							padding-bottom: 0;
						}
							.header__main--nav nav ul ul li a{
								display: block;
								padding: 7px 10px;
								border-bottom: solid 1px #ececec;
								text-transform: none;
							}
	header.header-brokerage .brokerage-logo{
		text-align: right;
		margin-bottom: 10px;

	}
		header.header-brokerage .brokerage-logo img{
			float: right;
		}

		header.header-brokerage .header__main--nav nav ul{
		}
/*******************************************************
 *
 * END: Header
 *
 *******************************************************/
 
/*******************************************************
 *
 * BEGIN: Footer
 *
 *******************************************************/
footer{
	display: block;
	padding-top: 25px;
	padding-bottom: 25px;
	font-size: 0;
}
	.footer__col{
		font-size: 15px;
	}
		.footer__info--phone,
		.footer__info--contact{
			font-size: 19px;
		}
		.footer-new {
			display: flex;
			align-items: center;
			flex-flow: row wrap;
			margin-top: 30px;
			padding-top: 30px;
			border-top: 1px solid #bbb5b5;
			font-size: 16px;
			text-align: left;
		}
		.footer-new .footer-de-logo {
			width: 100%;
			max-width: 300px;
			border-right: 1px solid #bbb5b5;
			padding-right: 15px;
			margin-right: 15px;
		}
		.footer-new .footer-contact {
		}
			.footer-new .footer-contact .footer-social-media{
				padding-top: 15px;
			}
		.footer-new .footer-contact em,
		.footer-new .footer-contact li,
		.footer-new .footer-contact a {
		}
		.footer-new .footer-contact a:hover {
		}
		.footer-new .footer-mls {
			margin-left: auto;
			font-size: 25px;
		}
		.footer-new .footer-mls span {
			color: inherit;
		}
		.footer-new .footer-disclaimer {
			flex-grow: 1;
			width: 100%;
			margin-top: 50px;
		}
		.footer-new .footer-disclaimer strong {
		}
	
/*******************************************************
 *
 * END: Footer
 *
 *******************************************************/

/*******************************************************
 *
 * BEGIN: Homepage
 *
 *******************************************************/
#slideshow{
	position: static;
	z-index: 1;
}
	.slideshow__slider{
		position:relative;
	}
		.slideshow__slider--item canvas{
			display: block;
			width: 100%;
			background-size:cover;
			background-position:center 0;
			background-repeat:no-repeat;
		}
	
	/* Quick Search */
	.slideshow__search{
		display: block;
		z-index: 100;
	}
		.slideshow__search--container{
			max-width: 260px;
			width: 100%  !important;
			position: absolute;
			top: 20px;
		}

		.slideshow__search--container p{
			font-size: 11px;
			margin-left: auto;
			padding-top: 15px;
			padding-bottom: 15px;
			text-align: center;
		}
		.slideshow__search--container > .row{
			margin-left: 0;
			margin-right: 0;
		}
		.slideshow__search h4{
			font-size: 1.375em;
			text-transform: uppercase;
		}
		.slideshow__search--pr{
			padding-right: 2px;
		}
 		.slideshow__search--pl{
 			padding-left: 3px;
 		}
		.slideshow__search label{
			display: none;
			font-size: 13px;
		}
		.slideshow__search input,
		.slideshow__search select,
		.slideshow__search button.btn-default[type=button],
		.slideshow__search button[type=submit]{
			display: block;
			background: #fff;
			border: 1px solid #cccccc;
			border-radius: 3px;
			width: 100%;
			height: 34px !important;
			padding: 0 6px !important;
			font-weight: 300;
			font-size: 12px;
			color: #707070;
		}
		.slideshow__search button[type=submit]{
			position: relative;
			border: none;
			text-transform: uppercase;
			overflow: hidden;
			font-weight: 400;
			font-size: 12px;
			color: #FFF;
		}
		.slideshow__search button.btn-default[type=button]{
			background: #fff !important;
			padding-top: 7px !important;
		}
		.slideshow__search button.btn-default[type=button]:hover{
			background-color: #FFF !important;
		}
		.slideshow__search .bootstrap-select:not([class*=col-]):not([class*=form-control]):not(.input-group-btn){
			display: block;
			position: relative;
			width: 100% !important;
		}
			.slideshow__search .bootstrap-select.btn-group .dropdown-menu{
				max-width: 100%;
			}
				.slideshow__search .bootstrap-select.btn-group .dropdown-menu > li > a{
					font-size: 12px;
					padding: 3px 10px;
				}
				.slideshow__search .bootstrap-select.btn-group .dropdown-toggle{
					position: relative;
					font-size: 0;
				}
					.slideshow__search .bootstrap-select.btn-group .dropdown-toggle .caret{
						display: none;
					}
					.slideshow__search .bootstrap-select.btn-group .dropdown-toggle .filter-option{
						height: 100%;
						font-weight: 300;
						font-size: 12px;
						color: #707070;
					}

#hp__cta{
	z-index: 2;
}
	.call-to-action{
		text-decoration: none !important;
		overflow: hidden;
		color: #FFF;
	}
		.call-to-action:hover{
			color: #FFF;
		}
		#hp__cta .call-to-action:before{
			content: '';
			display: block;
			padding-bottom: 100%;
		}
		#hp__cta .call-to-action__container{
			top: 50%;
			transform: translateY(-50%);
			padding: 0 30px;
		}
			.call-to-action__icon{
				display: inline-block;
				position: relative;
				font-size: 3.750em;
				width: 28%;
				height: 100%;
				min-height: 85px;
				vertical-align: middle;
				z-index: 1;
			}
				.call-to-action:hover .call-to-action__icon{
					animation-duration: .75s;
					animation-name: bounceicon;
					transform-origin: center bottom;
				}
				@keyframes bounceicon {
					0% {transform: scale3d(.3,.3,.3)}
					20% {transform: scale3d(1.1,1.1,1.1)}
					40% {transform: scale3d(.9,.9,.9)}
					60% {transform: scale3d(1.03,1.03,1.03)}
					80% {transform: scale3d(.97,.97,.97)}
				}
			.call-to-action__title{
				font-size: 1.563em;
			}
			.call-to-action__text{
				font-size: 1.125em;
			}
#client-info{
	background: rgba( 0, 0, 0, 0.07 );
}
	.client-info__name{
		font-size: 3.125em;
	}
		.client-info__name--accent{
			font-weight: 400 !important;
		}
	.client-info__description{
		font-size: 0.938em;
		line-height: 1.7em;
	}
		.client-info__description p{
			margin-bottom: 20px;
		}

.featured-property{}
	.featured-property__preloader{
		display: block;
		width: 100%;
		padding: 20%;
		font-size: 70px;
		text-align: center;
		color: #404040 !important;
	}
	.featured-property__slider{}
		.featured-property__slides{
			position: relative;
			outline: none !important;
		}
			.featured-property__slides--bgphoto{
				background-repeat: no-repeat;
				background-size: cover;
			}
			.featured-property__slides--price{
				left: 0;
				bottom: 0;
				right: 0;
				font-size: 18px;
				letter-spacing: 2px;
			}
			.featured-property__slides--address > span{
				font-size: 13px;
			}
			.featured-property__slides--address > a{
				font-size: 12px;
				text-decoration: none !important;
				letter-spacing: 2px;
			}
		.featured-property__slider a.slick-arrow{
			transition: opacity 0.2s linear;
			opacity: 0;
			color: #FFF !important;
		}
		.featured-property__slider:hover a.slick-arrow{
			opacity: 0.6;
		}
		.featured-property__slider a.slick-arrow{
			top: 43%;
		}


#news-feed{}
	.news-feed__item.pb-4:last-of-type{
		padding-bottom: 0 !important;
	}
		.news-feed__item--title{
			font-size: 1.063em;
		}
		.news-feed__item--excerpt{
			font-size: 0.875em;
			line-height: 1.571em;
			letter-spacing: 0.03em;
		}

#hp-testimonials{
	background: url( ../images/bg-testimonial.jpg ) no-repeat center center / cover;
}

.testimonials__slider{
	max-width: 980px;
}
	.testimonials__slide p{
		font-size: 0.875em;
		line-height: 1.571em;
		letter-spacing: 0.03em;
	}

#get-in-touch{}
	#get-in-touch .git__container{
		font-size: 0;
	}
		#get-in-touch .git__container:before{
			content: '';
			display: inline-block;
			width: 0;
			height: 100%;
			vertical-align: middle;
		}
	.git__container--border{
		border: solid 1px #FFF;
	}
		.git__info,
		.git__form{font-size: 16px;}
			.git__info--logo{
				font-weight: 300 !important;
				text-decoration: none !important;
				letter-spacing: 2px;
			}	
				.git__info--logo-text{
					display: block;
					font-size: 2.125em;
					letter-spacing: 0.176em;
					line-height: 0.9em;
				}
					.git__info--logo-text strong{
						font-weight: 300 !important;
					}
				.git__info--logo-tagline{
					font-size: 0.750em;
				}
			.git__info--phone{
				font-size: 1.500em;
				letter-spacing: 0.1em;
			}
		.git__form form{
			position: relative;
		}
			.git__form .field,
			.git__form .wpcf7-form-control-wrap{
				display: block;
				position: relative;
			}
				.git__form label{display: none;}
				.git__form input[type=text],
				.git__form input[type=phone],
				.git__form input[type=email],
				.git__form input[type=number],
				.git__form textarea{
					display: block;
					width: 100%;
					background: transparent;
					border: solid 1px #c7c7c7;
					height: 30px;
					padding: 8px;
					font-size: 12px;
					color: #c7c7c7;
					margin-bottom: 10px;
					outline: none !important;
					opacity: 0.8;
					transition: opacity 0.2s linear
				}
				.git__form textarea{
					height: 70px;
					resize: none;
				}
				.git__form input[type=submit]{
					display: block;
					border-radius: 3px;
					width: 100%;
					height: 30px;
					border: none;
					background: transparent;
					font-weight: 700;
					font-size: 14px;
					text-transform: uppercase;
				}
				.git__form input[type=text]:focus,
				.git__form input[type=phone]:focus,
				.git__form input[type=email]:focus,
				.git__form input[type=number]:focus,
				.git__form textarea:focus{
					opacity: 1;
				}

				.git__form .use-floating-validation-tip span.wpcf7-not-valid-tip{
					width: 80% !important;
					left: auto !important;
					right: 3px !important;
					top: 3px !important;
					font-size: 12px !important;
					padding: 3px 3px 4px !important;
				}
				.git__form div.wpcf7-validation-errors, 
				.git__form div.wpcf7-acceptance-missing{
					margin-top: 10px 0 0;
				}

/*******************************************************
 *
 * END: Homepage
 *
 *******************************************************/

/*******************************************************
 *
 * BEGIN: Inner Page & Sidebar
 *
 *******************************************************/
#inner-page-wrapper.is-fixed-header{
	padding-top: 150px;
}
#call-card{}
#call-card:after{
	content: '';
	display: block;
	height: 0;
	overflow: hidden;
	clear: both;
}
	#call-card .call-card__photo {
		width:42.5%;
	}
	#call-card .call-card__details {
		width:49.72%;
		margin-left:7.7%;
	}
		#call-card .call-card__name {
			font-size: 1.375em;
			font-weight: 600;
		}

#sidebar-cta{
	margin-top: 20px;
}
	#sidebar-cta .call-to-action{
		line-height: 1em;
	}
		#sidebar-cta .call-to-action__icon{
			min-height: initial;
			height: 53px;
			font-size: 2.2em;
		}
			#sidebar-cta .call-to-action__icon span{
				display: inline-block;
				position: absolute;
				top: 50%;
				left: 0;
				right: 0;
				margin: 0 auto;
				transform: translateY(-50%);
			}
			#sidebar-cta .call-to-action__icon .ai-font-envelope-a{
				font-size: 0.8em;
			}
		#sidebar-cta .call-to-action__title{
			font-size: 1em;
		}
		#sidebar-cta .call-to-action__text{
			font-size: 0.75em;
		}

/*******************************************************
 *
 * END: Inner Page & Sidebar
 *
 *******************************************************/

/*******************************************************
 *
 * BEGIN: Media queries
 *
 *******************************************************/

@media(min-width: 1367px) {
	/********************************
	 * Slideshow
	 ********************************/
	.slideshow__slider--item canvas{
		min-height: 580px;
	}
}
@media(min-width: 992px) {
	/********************************
	 * Header
	 ********************************/
	.header__info--smi:after,
	.header__info--phone:after{
		content: '';
		display: inline-block;
		background-color: #FFF;
		width: 1px;
		height: 18px;
		margin: 0 25px;
		vertical-align: middle;
		opacity: .7;
	}


	.header__main--nav nav ul li{
		font-size: 15px;
	}
		.header__main--nav nav ul li a{
			padding: 0 4px;
		}
	/********************************
	 * Fix Header
	 ********************************/
	header.fixed-header{
		width: 100%;
		position: absolute;
		top: 0;
		z-index: 1012;
	}
	header.fixed-header.compact-header{
		position: fixed;
		box-shadow: 0 2px 5px rgba(0,0,0,0.1);
	}
	.ip-container header{
		box-shadow: 0 2px 5px rgba(0,0,0,0.1);
	}
		header.fixed-header.compact-header .header__info{
			display: none !important;
		}
		header.fixed-header.compact-header .header__main{
			padding-top: 15px !important;
		}

	/********************************
	 * Slideshow
	 ********************************/
	#slideshow.is-fixed-header{
		padding-top: 100px;
	}

	/********************************
	 * Call-to-Action
	 ********************************/
	#hp__cta{
		margin-top: -172.5px ;
	}

	/********************************
	 * Get in Touch
	 ********************************/
	.git__form .use-floating-validation-tip span.wpcf7-not-valid-tip{
		width: 50% !important;
	}
	.git__form div.wpcf7-validation-errors, 
	.git__form div.wpcf7-acceptance-missing{
		border: none !important;
		padding: 0;
		margin: 0 !important;
		font-size: 12px;
		color: #f7e700 !important;
	}
	.git__form div.wpcf7-validation-errors{
		color: #ff0000 !important;
	}

	/********************************
	 * Sidebar
	 ********************************/
	.sidebar{
		border-left: 1px solid #dbdbdb;
	}

}

@media(max-width: 1366px) and (min-width: 992px) {
	/********************************
	 * Slideshow
	 ********************************/
	.slideshow__slider--item canvas{
		width: 100%;
		min-height: 500px;
	}
	/********************************
	 * Call-to-Action
	 ********************************/
	#hp__cta{
		margin-top: -150px ;
	}
	.call-to-action{
		max-width: 300px;
	}
}

@media(max-width: 1200px) {
	/********************************
	 * Header
	 ********************************/
	.header__main--nav nav ul li{
		padding-bottom: 13px;
	}
}
@media(max-width: 991px) {
	/********************************
	 * Header
	 ********************************/
	header{
		border-bottom: solid 1px rgba(0,0,0,0.15);
	}
	.header__main {
		padding-top: 60px !important; 
	}

	/********************************
	 * Search
	 ********************************/
	.slideshow__search--container{
		background: transparent;
		max-width: initial;
		position: static;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/********************************
	 * Call-to-Action
	 ********************************/
	#hp__cta .call-to-action{
		max-width: 360px;
	}

	/********************************
	 * Client Info
	 ********************************/
	#client-info img{
		margin:0 auto;
	}

	/********************************
	 * Get in Touch
	 ********************************/
	.git__container{
		height: auto !important;
	}

	/********************************
	 * Inner Pages
	 ********************************/
	#content-sidebar, 
	#content-full, 
	#content-sidebar #content, 
	#content-full #content{
		width: 100% !important;
	}
	#content-sidebar #content{
		padding-bottom: 25px;
		border-bottom: solid 1px rgba(0,0,0,0.15);
	}
	#content-sidebar aside{
		margin-top: 25px;
	}
}
/*******************************************************
 *
 * END: Media queries
 *
 *******************************************************/