/* ----------------------------------------------------------- */
/* LOCAL FONTS
/* ----------------------------------------------------------- */

/* Lato Bold */

@font-face {
	font-family: "Lato";
	src: url(../fonts/Lato/Lato-Bold.eot);
	src: url(../fonts/Lato/Lato-Bold.eot?#iefix) format('embedded-opentype'),
			 url(../fonts/Lato/Lato-Bold.woff2) format('woff2'),
			 url(../fonts/Lato/Lato-Bold.woff) format('woff'),
			 url(../fonts/Lato/Lato-Bold.ttf) format('truetype');
	font-weight: 700;
	font-style: normal;
}

/* Montserrat Regular */

@font-face {
	font-family: "Montserrat";
	src: url(../fonts/Montserrat/Montserrat-Regular.eot);
	src: url(../fonts/Montserrat/Montserrat-Regular.eot?#iefix) format('embedded-opentype'),
			 url(../fonts/Montserrat/Montserrat-Regular.woff2) format('woff2'),
			 url(../fonts/Montserrat/Montserrat-Regular.woff) format('woff'),
			 url(../fonts/Montserrat/Montserrat-Regular.ttf) format('truetype');
	font-weight: 400;
	font-style: normal;
}

/* Montserrat Medium */

@font-face {
	font-family: "Montserrat";
	src: url(../fonts/Montserrat/Montserrat-Medium.eot);
	src: url(../fonts/Montserrat/Montserrat-Medium.eot?#iefix) format('embedded-opentype'),
			 url(../fonts/Montserrat/Montserrat-Medium.woff2) format('woff2'),
			 url(../fonts/Montserrat/Montserrat-Medium.woff) format('woff'),
			 url(../fonts/Montserrat/Montserrat-Medium.ttf) format('truetype');
	font-weight: 500;
	font-style: normal;
}

/* Montserrat SemiBold */

@font-face {
	font-family: "Montserrat";
	src: url(../fonts/Montserrat/Montserrat-SemiBold.eot);
	src: url(../fonts/Montserrat/Montserrat-SemiBold.eot?#iefix) format('embedded-opentype'),
			 url(../fonts/Montserrat/Montserrat-SemiBold.woff2) format('woff2'),
			 url(../fonts/Montserrat/Montserrat-SemiBold.woff) format('woff'),
			 url(../fonts/Montserrat/Montserrat-SemiBold.ttf) format('truetype');
	font-weight: 600;
	font-style: normal;
}

/* ----------------------------------------------------------- */
/* BODY & HEADING
/* ----------------------------------------------------------- */

body {
	font-family: 'Montserrat', sans-serif;
	color: #646464;
}

h1, h2, h3, h4, h5, h6 {
	font-family: 'Lato', sans-serif;
	font-weight: 600;
}

.display-1, .display-2 {
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
}

.display-2 {
	font-weight: 400;
}

h1, .h1 { font-size: 2rem; }
h2, .h2 { font-size: 1.5rem; }
h3 { font-size: 1.5em; }
h4 { font-size: 1.25em; }
.display-1 { font-size: 2.25rem; }	
.display-2 { font-size: 1.5em; }

@media (min-width: 576px) {
	.display-1 { font-size: 2.5rem; }		
}

@media (min-width: 768px) {
	h1, .h1 {	font-size: 2.25rem; }
	h2, .h2 {	font-size: 1.75rem; }	
	.display-1 { font-size: 3rem; }		
}

@media (min-width: 992px) {
	h1, .h1 {	font-size: 2.5rem; }
	h2, .h2 {	font-size: 2rem; }
	h3 { font-size: 1.5em; }
	.display-1 { font-size: 3.75rem; }	
	.display-2 { font-size: 1.75em; }	
}

/* ----------------------------------------------------------- */
/* LINKS
/* ----------------------------------------------------------- */

a {	
	-webkit-transition: all .25s ease;
	transition: all .25s ease;
}

.nav-item a,
.nav-item a:hover,
.nav-item .active a {
	color: #646464 !important;
	font-weight: 500;
}

a,
.text-primary {
  color: #CCA43B !important;
}

a:hover, 
a p:hover,
a.text-primary:hover, 
a.text-primary:focus {
  color: #b38f34 !important;
	text-decoration: none;
}

.topnav a,
footer a,
#cookie-notice a {
	color: #ffffff !important;
}

.topnav a:hover,
footer a:hover,
#cookie-notice a:hover {
	color: #CCA43B !important;
	text-decoration: none;
}

/* ----------------------------------------------------------- */
/* BACKGROUNDS & BUTTONS
/* ----------------------------------------------------------- */

.bg-primary {
  background-color: #CCA43B !important;
}

.bg-dark {
  background-color: #363636 !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #b38f34 !important;
}

.btn-primary,
.btn-outline-primary,
.btn-outline-light {
	font-weight: 500;
}

.btn-primary {
  background-color: #CCA43B;
	border-color: #CCA43B;
	color: #FFFFFF !important;
}

.btn-primary:hover, 
.btn-primary:not(:disabled):not(.disabled).active,
.btn-primary:not(:disabled):not(.disabled):active {
  background-color: #b38f34;
	border-color: #b38f34;
	color: #FFFFFF !important;
}

.btn-primary:focus, 
.btn-primary.focus,  
.btn-primary:not(:disabled):not(.disabled).active:focus,
.btn-primary:not(:disabled):not(.disabled):active:focus {
  box-shadow: none;
}

.btn-outline-primary {
	border-color: #CCA43B;
	color: #CCA43B !important;
}

.btn-outline-primary:hover, 
.btn-outline-primary:not(:disabled):not(.disabled).active,
.btn-outline-primary:not(:disabled):not(.disabled):active {
  background-color: transparent;
	border-color: #b38f34;
	color: #b38f34 !important;
}

.btn-outline-primary:focus, 
.btn-outline-primary.focus,  
.btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.btn-outline-primary:not(:disabled):not(.disabled):active:focus {
	background-color: transparent;
  box-shadow: none;
}

.btn-outline-light {
	border-color: #FFFFFF;
	color: #FFFFFF !important;
}

.btn-outline-light:hover, 
.btn-outline-light:not(:disabled):not(.disabled).active,
.btn-outline-light:not(:disabled):not(.disabled):active {
  background-color: #FFFFFF;
	border-color: #FFFFFF;
	color: #646464 !important;
}

.btn-outline-light:focus, 
.btn-outline-light.focus,  
.btn-outline-light:not(:disabled):not(.disabled).active:focus,
.btn-outline-light:not(:disabled):not(.disabled):active:focus {
	background-color: #FFFFFF;
  box-shadow: none;
}

/* ----------------------------------------------------------- */
/* MENU STYLES
/* ----------------------------------------------------------- */

.topnav {
	position: fixed;
	z-index: 9999;
	width: 100%;
}

.navbar .container {
	position: relative;
	margin-top: 32px
}

.navbar-brand img {
	height: 80px; 
}

.navbar-light .navbar-toggler {
	border-color: transparent !important;
	padding: .25rem 0 .25rem .75rem;
}

.navbar-light .navbar-toggler-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(100, 100, 100, 1)' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") !important;	
}

.navbar-light .navbar-toggler:hover .navbar-toggler-icon,
.navbar-light .navbar-toggler:focus .navbar-toggler-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(204, 164, 59, 1)' stroke-width='3' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E") !important;
}

.navbar-nav a {
	margin-bottom: 10px;
	padding-bottom: 5px;
	border-bottom: 2px solid transparent;
}

.navbar-nav .active a,
.navbar-nav a:hover {
	border-bottom: 2px solid #CCA43B;
}

.navbar-nav .nav-item {
	margin: 0 auto;
}

.navbar-nav .nav-link {
  display: inline-block;
}

@media (min-width: 576px) {
	.navbar-expand-lg > .container {
		padding-right: inherit;
		padding-left: inherit;
	}
}

@media (min-width: 768px) {
	.navbar-brand img {
		height: 100px; 
	}
}

/* ----------------------------------------------------------- */
/* HOME SLIDER
/* ----------------------------------------------------------- */

.home-carousel .carousel-item {
	height: 50vh;
  max-height: 20rem;
}

@media (min-width: 768px) { 
	.home-carousel .carousel-item {
		height: 75vh;
		max-height: 30rem;
	}
}

@media (min-width: 992px) { 
	.home-carousel .carousel-item {
		height: 100vh;
		max-height: 40rem;
	}
}

.home-carousel .carousel-caption {
  transform: translateY(-50%);
  bottom: auto;
  top:50%;
}

.home-slides {
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	-moz-background-position: center;
	-o-background-position: center;
	background-position: center;	
}

.home-slides:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(8, 26, 23, 0.4);
}

/* ----------------------------------------------------------- */
/* HERO IMAGES
/* ----------------------------------------------------------- */

.hero {
	-moz-background-position: 50% center;
	-o-background-position: 50% center;
	background-position: 50% center;
	-moz-background-repeat: no-repeat;
	-o-background-repeat: no-repeat;
	background-repeat: no-repeat;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

/* ----------------------------------------------------------- */
/* APARTMENTS
/* ----------------------------------------------------------- */

#apartments-hero { 
	background-image: url(../img/hero-apartments.jpg);
	height: 250px;
}

@media (min-width: 768px) { 
	#apartments-hero {  
		height: 350px;
	}
}

.apt-img {
	width: 100%;
	height: 250px;
	position: relative;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	-webkit-transition: all .5s ease;
	transition: all .5s ease;
}

.apt-img .apt-info {
	position: relative;	
  top: 50%;
  transform: translateY(-50%);
	z-index: 20;
	opacity: 0;
	font-weight: 600;
}

.apt-box:hover .apt-info {
	opacity: 1;
}

.apt-img::before {
	content: "";
  position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 100%;
	background: rgba(54, 54, 54, 0);
	-webkit-transition: background .5s ease;
	transition: background .5s ease;
}

.apt-box:hover .apt-img::before {
	background: rgba(54, 54, 54, 0.75);
	-webkit-transition: background .5s ease;
	transition: background .5s ease;
}

#apt1 {
	background: url(../img/apt5/9.jpg) no-repeat center center;
	background-size: cover;
}

#apt2 {
	background: url(../img/apt4/12.jpg) no-repeat center center;
	background-size: cover;
}

#apt3 {
	background: url(../img/apt5/6.jpg) no-repeat center center;
	background-size: cover;
}

@media (min-width: 768px) {
	#apt1, #apt2, #apt3 {
		background-size: auto 280px;
	}	
	.apt-box:hover #apt1, .apt-box:hover #apt2, .apt-box:hover #apt3 {
		background-size: auto 300px;
	}
}

#map {
	height: 300px;
}

.gm-style-iw-c {
	min-width: 200px;
	min-height: 255px;
}

.gm-style-iw-d {
	min-width: 200px;
	min-height: 230px;
	margin: 5px;
}

.map-thumb {
	width: 200px;
	height: auto;
}

/* ----------------------------------------------------------- */
/* APARTMENT DETAILPAGES
/* ----------------------------------------------------------- */

.apt-carousel .carousel-control-next:focus, 
.apt-carousel .carousel-control-prev:focus, 
.apt-carousel .carousel-control-prev, 
.apt-carousel .carousel-control-next {
  width: 20%;
}

.apt-slides {  
	height: 300px;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	-moz-background-position: center center;
	-o-background-position: center center;
	background-position: center center;
}

.apt-slides:first-child,
.apt-slides:last-child {
	display: none;
}

/* video {
  width: 100%    !important;
  height: auto   !important;
} */

@media (min-width: 768px) { 
	.apt-slides {  
		height: 450px;
	}

	.apt-box-height {
		min-height: 163px;
	}
}

@media (min-width: 992px) { 
	.apt-carousel {
		overflow: hidden;
	}

	.apt-carousel .carousel-control-next:focus, 
	.apt-carousel .carousel-control-prev:focus, 
	.apt-carousel .carousel-control-prev, 
	.apt-carousel .carousel-control-next {
		background: rgba(255, 255, 255, 0.6);
		opacity: 1;
	}

	.apt-carousel .carousel-control-next:hover, 
	.apt-carousel .carousel-control-prev:hover {
		background: rgba(255, 255, 255, 0.3);
		opacity: 1;
	}

	.apt-carousel .carousel-inner {
		width: 180%;
		left: -40%;
	}

	.apt-carousel .carousel-inner .carousel-item-right.active,
	.apt-carousel .carousel-inner .carousel-item-next {
		transform: translateX(33.33%);
	}

	.apt-carousel .carousel-inner .carousel-item-left.active, 
	.apt-carousel .carousel-inner .carousel-item-prev {
		transform: translateX(-33.33%);
	}

	.apt-carousel .carousel-inner .carousel-item-right,
	.apt-carousel .carousel-inner .carousel-item-left{ 
		transform: translateX(0);
	}

	.apt-slides {  
		float: left;
		width: 33.33333333%;
		height: 600px;
	}
	
	.apt-slides:first-child,
	.apt-slides:last-child {
		display: flex;
	}	
}

/* ----------------------------------------------------------- */
/* SERVICES
/* ----------------------------------------------------------- */

#services-hero { 
	position: relative;
	background-image: url(../img/hero-service.jpg); 
	height: 250px;
}

@media (min-width: 768px) { 
	#services-hero {  
		height: 350px;
	}
}

.flip-container {
	perspective: 1000px;
}

.flip-card {
	transform: rotateY(-180deg);
	transition: 0.75s;
	transform-style: preserve-3d;
	position: relative;
}

.front, .back {
	backface-visibility: hidden;
	-webkit-border-radius: .25rem;
	-moz-border-radius: .25rem;
	border-radius: .25rem;
}

.front {
	z-index: 2;
	/* for firefox 31 */
	transform: rotateY(0deg);
}

.front-container {
  position: relative;
  top: 50%;
  -webkit-transform: translate(0px, -50%);
  -moz-transform: translate(0px, -50%);
  transform: translate(0px, -50%);
}

.back {
	transform: rotateY(180deg);
}	

@media (min-width: 768px) { 
	.flip-card {
		transform: rotateY(0deg);
	}	
	.front, .back {
		position: absolute;
		top: 0;
		left: 0;
	}	
	
	.flip-container:hover .flip-card, 
	.flip-container.hover .flip-card {
		transform: rotateY(-180deg);
	}		
	.flip-container, .front, .back {
		height: 280px;
	}
}

@media (min-width: 992px) { 
	.flip-container, .front, .back {
		height: 330px;
	}
}

@media (min-width: 1200px) { 
	.flip-container, .front, .back {
		height: 280px;
	}
}

/* ----------------------------------------------------------- */
/* HOUSE RULES PAGE
/* ----------------------------------------------------------- */

#rules-hero { 
	position: relative;
	background-image: url(../img/hero-service.jpg); 
	height: 250px;
}

@media (min-width: 768px) { 
	#rules-hero {  
		height: 350px;
	}
}

/* ----------------------------------------------------------- */
/* CONTACT PAGE
/* ----------------------------------------------------------- */

#contact-hero { 
	background-image: url(../img/hero-contact.jpg);
	height: 250px;
}

.bootstrap-datetimepicker-widget table th.disabled,
.bootstrap-datetimepicker-widget table th.disabled:hover {
  background: none;
}

.bootstrap-datetimepicker-widget table thead tr:first-child th:hover {
  background: #ebebeb;
}

.bootstrap-datetimepicker-widget table td.day:hover,
.bootstrap-datetimepicker-widget table td.hour:hover,
.bootstrap-datetimepicker-widget table td.minute:hover,
.bootstrap-datetimepicker-widget table td.second:hover {
  background: #ebebeb;
}

.bootstrap-datetimepicker-widget table td.active,
.bootstrap-datetimepicker-widget table td.active:hover {
  background-color: #4EC3CC;
  color: #ffffff;
}

.bootstrap-datetimepicker-widget table td.disabled,
.bootstrap-datetimepicker-widget table td.disabled:hover {
  background: none;
}

.bootstrap-datetimepicker-widget table td span:hover,
.bootstrap-datetimepicker-widget table td i:hover {
  background: #ebebeb;
}

.bootstrap-datetimepicker-widget table td span.active,
.bootstrap-datetimepicker-widget table td i.active {
  background-color: #4EC3CC;
  color: #ffffff;
}

.bootstrap-datetimepicker-widget table td span.disabled,
.bootstrap-datetimepicker-widget table td i.disabled,
.bootstrap-datetimepicker-widget table td span.disabled:hover,
.bootstrap-datetimepicker-widget table td i.disabled:hover {
  background: none;
}

/* .btn-outline-secondary {
    background-color: #fff;
}

.gj-datepicker-bootstrap [role=right-icon] button:hover,
.btn-outline-secondary:not(:disabled):not(.disabled).active, 
.btn-outline-secondary:not(:disabled):not(.disabled):active, 
.show>.btn-outline-secondary.dropdown-toggle {
    color: #4EC3CC;
    background-color: #fff;
    border-color: #ced4da;
}

.btn-outline-secondary:not(:disabled):not(.disabled).active:focus, 
.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, 
.show>.btn-outline-secondary.dropdown-toggle:focus {
    box-shadow: none;
} */

@media (min-width: 768px) { 
	#contact-hero {  
		height: 350px;
	}
}

@media (min-width: 992px) { 
	.contact .text-center {
		width: 75%;
	}	
}

/* ----------------------------------------------------------- */
/* LEGAL PAGES
/* ----------------------------------------------------------- */

#legal-hero { 
	background-image: url(../img/hero-legal.jpg);
	height: 250px;
}

@media (min-width: 768px) { 
	#legal-hero {  
		height: 350px;
	}
}

/* ----------------------------------------------------------- */
/* COOKIE NOTICE
/* ----------------------------------------------------------- */

#cookie-notice {
	position: sticky;
	bottom: 0px;
	left: 0px;
	right: 0px;
	z-index: 999;
	font-size: .75em !important;
	-webkit-box-shadow: 0px -1px 10px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px -1px 10px 0px rgba(0,0,0,0.25);
	box-shadow: 0px -1px 10px 0px rgba(0,0,0,0.25);
}

/* ----------------------------------------------------------- */
/* EKKO LIGHTBOX
/* ----------------------------------------------------------- */

.modal-header {
	border-bottom: 0;
	padding: 0 1rem 1rem;
	height: 16px;
}

.modal-header .close {
	padding: 0 1rem 1rem;
	margin: 0 -1rem -1rem auto;
	line-height: initial;
}

.ekko-lightbox-nav-overlay a,
.ekko-lightbox-nav-overlay a:hover {
	color: #FFFFFF !important;
}