@charset "utf-8";
/* CSS Document - for html, body, wrapper, nav, contact */

html {
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: 'Montserrat', sans-serif;
	font-weight:400;
	letter-spacing:1px;
}

*,
:after,
:before {
    -webkit-box-sizing: inherit;
    box-sizing: inherit
}

body {
    margin: 0;
	font-size:14px;
	width:100%;
	font-family: 'Montserrat', sans-serif;
	font-weight:400;
	scroll-behavior: smooth;
	color:#fff;
	background-color:#452A13;
}

body.noscroll {
	overflow:visible;
}
body.noscroll {
	overflow:hidden;
}

.loading {
	background: url(../../img/register/ico_loading.gif) no-repeat center center;
}

.mobile-hide {
	display:block;
}

.mobile-show {
	display:none;
}

.white-txt {
    color: #fff;
}

.gold-txt {
	color: #F4D270;
}

.brown-txt {
	color: #452A13;
}

/* section #welcome begins */
intro {
	transition: all 1.5s ease;
	position:fixed;
	width:100%;
	height:100%;
	opacity:1;
/*	display:block;*/
	z-index:999;
	background-color:#fff;
	top:0;
}

intro.hide {
	opacity:0;	
}

intro.remove {
	top:-100vh;
}

.welcome_logo {
/*  transition: all 1.5s ease;*/
  position: absolute;
  top: 50%;
/*  width:35vw;*/
  min-width:200px;
  max-width:300px;
  left: 50%;
  transform: translate(-50%, -50%);
  margin-top:-2px;
}
/* section #welcome ends */

.wrapper {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	outline:0;
	transition: transform 800ms ease-out;
	position: relative;
}

.wrapper.mobile {
	position: relative;
}

.wrapper.desktop {
	position: fixed;
}

.wrapper__body {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.loading .wrapper {
	opacity: 0;
	position: relative;
	width: 100%;
	margin: 0 auto;
	padding: 0;
	outline:0;
	min-height:100vh;
	overflow:hidden;
	-webkit-transition: opacity 300ms ease-out;
	-moz-transition: opacity 300ms ease-out;
	transition: opacity 300ms ease-out;
}

article,
aside,
footer,
header,
nav,
section {
    display: block;
}

h1, h2 {
	margin: 0;
	font-family: 'Montserrat', sans-serif;
	font-weight:700;
	letter-spacing:2px;
}

h1 {
    font-size: 2.5em;
}

h2 {
    font-size: 2em;
}

h3 {
	font-family: 'Montserrat', sans-serif;
	font-size:2em;
	font-weight:300;
	margin-top:10px;
	margin-bottom: 20px;
}

h4 {
	font-family: 'Montserrat', sans-serif;
	font-size:1em;
	font-weight:300;
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
	text-decoration:none;
	color:#fff;
}

b,
strong {
    font-weight: inherit;
    font-weight: bolder;
}

button,
input,
optgroup,
select,
textarea {
    font-size: 100%;
    line-height: 1.15;
    margin: 0;	
}

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

button {
/*    background: transparent;*/
	background-color:#6B7D87;
	border:none;	
	cursor:pointer;
	font-family: 'Montserrat', sans-serif;
	font-weight:bold;
	font-style:italic;
	text-transform:uppercase;
	padding:10px;
	padding-right:50px;
	padding-left:50px;
	color:#fff;
	letter-spacing:2px;
}

img {
	width:100%;
}

button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color;
}

[type=reset],
[type=submit],
button,
html [type=button] {
    -webkit-appearance: button;
}

p {
	line-height: 2em;
}

table {
    border-collapse: collapse;
}

.rounded {
    border-radius: .25rem;
}

.block {
    display: block;
}

.inline-block {
    display: inline-block;
}

.inline {
    display: inline;
}

.hidden {
    display: none;
}

.static {
    position: static;
}

.fixed {
    position: fixed;
}

.absolute {
    position: absolute;
}

.relative {
    position: relative;
}

.margin-center {
	margin:0 auto;
}

.text-left {
    text-align: left;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right
}

.text-justify {
    text-align: justify;
}

.uppercase {
    text-transform: uppercase;
}

.capitalize {
    text-transform: capitalize;
}

.no-underline {
    text-decoration: none;
}

.div-table {
	display:table;
}

.div-table-row {
	display:table-row;
}

.div-table-cell {
	display:table-cell;
	position:relative;
}

section {
	position:relative;
	width:100%;
	min-height:100vh;
	padding:0;	
/*	overflow:hidden;*/
}

.cover-bg {
	position:absolute;
	left:0;
	top:0;
	width:100vw;
	height:100vh;		
}

.cover-img {
	background-repeat: no-repeat;
	background-position: center; 
    background-size: cover;
	background-attachment: fixed;
}

.cover-img2 {
	background-repeat: no-repeat;
	background-position: center; 
    background-size: cover;
/*	background-attachment: fixed;*/
}

.logo {
	position:absolute;
	width:35vw;
	max-width:300px;
	top:50%;
	left:50%;
	transform:translate(-50%, -50%);
	z-index:10;
}

.gold-hr {
	border:none;
	border-bottom:5px solid #F4D270;
	width:75px;
}

.gold-hr.right {
	margin:auto;
	margin-right:0;
}

.gold-hr.left {
	margin:auto;
	margin-left:0;
}

.arrow-down {
	width:40px;
}

/* nav begins */
nav {
    position: fixed;
    width: 100%;
    height: 60px;
    z-index: 51;
    background-color: transparent;
    border: none;
}

.nav-btn-wrap {
	position:absolute;
	top:10px;	
	left:-285px;
	width:285px;
	height:50px;
	padding:0;
	transition: all 1.5s ease;
	background-color:transparent;
	border-top: solid 1px transparent;	
}

.nav-btn-wrap.show {
	left:25px;	
	background-color:#452A13;
	border-top: solid 1px #452A13;
}

.nav-logo {
	position: relative;
	left:0;
	opacity:0;
	transition: all 1.5s ease;
	height:30px;
/*	padding-left:50px;*/
}

.nav-logo.show {
	opacity:1;
}

.nav-logo img {
	width:auto;
	height:100%;
}
#nav-btn {
    position: absolute;
    top: -8px;
    right:20px;
    width: 50px;
    height: 50px;
    background: url(../../img/header_footer/menu_exp.svg);
    background-repeat: no-repeat;
    background-size: 50px;
    cursor: pointer;
	z-index:1;
	transition: all 1.5s ease;
}

.reg-button {
	position:fixed;
	padding-left:20px;
	padding-right:20px;
	text-transform:uppercase;
	font-size:16px;
	font-family: 'Montserrat', sans-serif;
	font-weight:bold;
	right:15%;
	cursor:pointer;
	z-index:51;
	background:url(../../img/header_footer/reg_button_bg.svg);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
	height:60px;
	text-align:center;
}

.reg-txt {
	position:relative;
	top:50%;
	transform:translateY(-50%);
}

.reg-txt.brown-txt:hover {
	color:#fff;
}


/* nav ends */

/* nav menu begins */
#nav-menu {
	position:fixed;
	top:-105vh;
	width:100vw;
	height:100vh;
	z-index:51;
	background-color:transparent;
	background-image:url(../../img/home/01_bg.jpg);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
	background-attachment:fixed;
	opacity:0;
	transition: all 1.5s ease;
}

#nav-menu.show {
	top:0;
	opacity:1;
}

#menuvideo {
  position: absolute;
  left: 50%;
  top: 50%;
  transform:translate(-50%,-50%);
  min-width: 100%; 
  min-height: 100%;
  z-index:-100;
  border:none;
  line-height: 0;
}

.menu-bg {
	height:100vh;
	width:100%;
	background-image:url(../../img/home/01_bg.jpg);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
/*	background-attachment:fixed;*/
	z-index:0;
	position:absolute;
	opacity:1;
}

.menu-list {
	position:relative;
	left:50%;
	top: 50%;
	transform:translate(-50%, -50%);
	margin:0 auto;
	text-align:center;
	z-index:1;
}

.menu-logo {
	width:200px;
	margin:0 auto;
	padding-bottom:5vh;
}

#menu-close-btn {
    position: absolute;
    top: 25px;
    left:35px;
    width: 50px;
    height: 50px;
    background: url(../../img/header_footer/menu_coll.svg);
    background-repeat: no-repeat;
    background-size: 50px;
    cursor: pointer;
	z-index:1;
	transition: all 1.5s ease;
}

.menu-list ul {
	list-style-type:none;
	padding: 0;
}

.menu-list ul li {
	line-height:7vh;
	font-size:1.5em;
	font-weight:bold;
}

.menu-contact {
	position: absolute;
	bottom:50px;
	left:50%;
	transform:translateX(-50%);
	text-align:center;
}

.menu-contact p {
	line-height:1em;
}

.menu-contact-mobile-hide {
/*	display:block;*/
}
/* nav menu ends */

/* page styling ends */
#page-bg {
	height:100vh;
	width:100%;
	background-image:url(../../img/home/01_bg.jpg);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
/*	background-attachment:fixed;*/
	z-index:0;
	position:fixed;
	opacity:1;
	transition: all 0.5s ease;
}

#page-bg.hide {
	opacity:0;
}

.horiz-brown-border {
	background-color:#452A13;
	height:25px;
	width:100vw;
	position:fixed;
	z-index:50;
}

.vert-brown-border {
	background-color:#452A13;
	width:25px;
	height:100vh;
	position:fixed;
	z-index:50;
}

.side-brown-border {
	border:none;
	border-left:solid 25px #452A13;
	border-right:solid 25px #452A13;
}

.border-top, .border-left {
	top:0;
	left:0;
	text-align:center;
}

.border-right {
	right:0;
	top:0;
}

.border-bottom {
	bottom:0;
	left:0;
	text-align:center;
	transition: all 1s ease;
	opacity:1;
}

.border-bottom.hide {
	opacity:0;
	z-index:1;
}

.menu-border-bottom {
	bottom:0;
	left:0;
	text-align:center;
	transition: all 1s ease;
	opacity:1;
}
/* page styling ends */

/* section gallery begins */
#menu-overlay {
/*	background-color:#000;*/
	position:fixed;
	width:100%;
	height:100vh;
	z-index:3;
}

#menu-overlay.black {
	background-color:#000;
}

#menu-overlay.gold {
	background-color:#452A13;
}

#menu-overlay.close {
	opacity:0;
}

#menu-overlay.open {
	opacity:0.75;
}

#menu-overlay.gold.open {
	opacity:0.65;
}

#menu-overlay.out {
	left:-100vw;
}

#menu-overlay.in {
	left:0;
}

#menu-overlay.gallery, #menu-overlay.floorplan {
	z-index:4;
}

gallery {
	position:fixed;
	width:100%;
	height:100vh;
	padding:0;
	overflow:hidden;
	z-index:5;
}

gallery.open {
	top:0;
}

gallery.close {
	top:-100vh;
}

#gallery-close-button {
	position:absolute;
	right:-20px;
	top:30px;
	height:50px;
	width:50px;
	line-height:0.6em;
	cursor:pointer;
	z-index:1;
	background: url(../../img/header_footer/menu_coll.svg);
    background-repeat: no-repeat;
    background-size: 50px;
}

#gallery-close-button:hover {
	color:#F4D270;
}

.gallery-wrap {
	position: absolute;
    top: calc(50% + 20px);
	left:50%;
	transform:translate(-50%,-50%);
	width:auto;
	padding:35px;
	margin:0 auto;	
	z-index:2;
	text-align:center;
}

.gallery-table {
	width:100%;
	margin:0 auto;
	transition: all 0.3s ease;
}

.gallery-cell {
    width: calc(100% / 2);
	color:#fff;
	background-color:#452A13;
	text-align:center;
	font-weight:bold;
	padding:20px 0;
	text-transform:uppercase;
	cursor:pointer;
}

.gallery-cell.active {
	background-color:#F4D270;
	color:#452A13;
}

.gallery-display {
	position:relative;
	height: auto;
	min-height: 50vh;
/*	width:auto;*/
	max-width:50vw;
	margin:0 auto;
/*	max-width:60vw;*/
	text-align:center;
}

.gallery-display img {
	height:auto;
	width:100%;
	max-height: 80vh;
	margin:0 auto;
}

.gallery-display img.portrait {
	height: 65vh;
	width:auto;
	margin:0 auto;
}

.gallery-close-btn {
	position:absolute;
	right:-20px;
	top:30px;
	height:50px;
	width:50px;
	line-height:0.6em;
	cursor:pointer;
	z-index:1;
	background: url(../../img/header_footer/menu_coll.svg);
    background-repeat: no-repeat;
    background-size: 50px;
}

.gallery-neighbourhood-display, .gallery-interior-display {
	position:relative;
	width:100%;
	text-align:center;
	margin:0 auto;
}

.gallery-neighbourhood-display img, .gallery-interior-display img {
	height:auto;
	width:100%;
	max-height: 80vh;
	margin:0 auto;
}

.gallery-neighbourhood-display img.portrait, .gallery-interior-display img.portrait {
	height: 65vh;
	width:auto;
	margin:0 auto;
}

.gallery-neighbourhood-slider-nav, .gallery-interior-slider-nav {
	width:calc(100% / 4);
	margin:0 auto;
	transition: max-height 1.5s ease-out;
	display:none;
}

.gallery-neighbourhood-slider-nav.show, .gallery-interior-slider-nav.show {
	display:block;
}

.gallery-neighbourhood-slider-nav img, .gallery-interior-slider-nav img {
	width:40px;
	display:block;
	cursor:pointer;
}
/* section gallery ends */

/* section contact begins */
section#contact {
	min-height:auto;
	background-image:url(../../img/header_footer/footer_bg.svg);
	background-repeat:no-repeat;
	background-size:cover;
	background-position:center;
	z-index:100;
	position:relative;
	width:100%;
/*	height:50vh;*/
	padding:25px;
	border:none;
	border-top:solid 25px #452A13;
}

.contact-table {
	width:calc(100% - 50px);
	max-width:1100px;
	margin:0 auto;
	position:relative;
}

.contact-table-cell {
	display:table-cell;
	position:relative;
	width:calc(100% / 3);
}

.contact-table-cell p {
	line-height:1.5em;
}

.contact-box-mobile {
	display:none;
	width:100%;
	position:relative;
	padding-left:25px;
}

.contact-box-1, .contact-box-2, .contact-box-3 {
	width:100%;
	max-width:300px;
	position:relative;
	margin:auto;
	padding:0;
}

.contact-box-1 {	
	margin-left:0;
}

.contact-box-2 {	
	margin:0 auto;
}

.contact-box-3 {	
	margin-right:0;
}

#contact a, #contact a:link, #contact a:focus, #contact a:visited, #contact a:active {
	color:#fff;
}
/* section contact ends */

.neighbourhood-txt-wrap .div-table-row{
    position: inherit;
    transform: translateY(0);
}

@media only screen and (max-width: 1000px) {
	.reg-button {
		right:0;
	}
}

@media only screen and (max-width: 768px) {
    
    .neighbourhood-txt-wrap .div-table-row{
    position: absolute;
    transform: translateY(-50%);
}
    
	.mobile-hide {
		display:none;
	}
	.mobile-show {
		display:block;
	}
	.logo {
		width:70vw;
	}
	
	section {
		min-height:auto;
		padding:50px 0;
	}	
	
	.nav-btn-wrap {
		width:calc(100% - 200px);
		left: calc(200px - 100vw);
/*		height:40px;
		top:24px;*/
	}
	
	.nav-btn-wrap.show {
		left:0;
	}
	
	.nav-logo {
		height:37px;
		left:25px;
	}
	
	#nav-btn {
/*		top: -10px;*/
	}
	
	.reg-button {
		right:0;
		width:200px;
	}
	
/* gallery */
	.gallery-display {
		width:85vw;
		margin:0;
		max-width:85vw;
	}
	
	#gallery-close-button {
		right: 25px;
		top:-15px;
	}
	.gallery-neighbourhood-slider-nav, .gallery-interior-slider-nav {
		width:200px;
	}
/* gallery ends */	

/* section contact begins */
.contact-box-mobile {
	display:block;
}

.contact-box-mobile p {
	line-height:1.5em;
}

.contact-box-2 {
	margin:auto;
	margin-left:0;
	padding-right:25px;
	width:auto;
}

.contact-box-3 {
	margin:auto;
	margin-right:0;
	padding-left:25px;
	width:auto;
}
.contact-table-cell {
	width:calc(100% / 2);
}
/* section contact ends */
}

@media only screen and (max-width: 414px) {
	h1 {
		font-size:2em;
	}
	.nav-btn-wrap {
		width: calc(100vw - 150px);
		left: calc(150px - 100vw);
	}
	
	.reg-button {
		position:fixed;
		padding:10px;
		padding-left:15px;
		padding-right:15px;
		font-size:16px;
		width:150px;
	}	
	
	body {
		font-size:14px;
	}
	
	.menu-list ul li {
    	line-height: 5vh;
    	font-size: 1.2em;
	}
	.menu-logo {
		padding-bottom:25px;
		width:45vw;
		display:none;
	}
	.menu-list {
		/*top:42%;*/
		top:25%;
	}
	.menu-contact {
		bottom:75px;
	}
	.menu-contact p {
		line-height:1.5em;
	}
	
	.menu-contact-mobile-hide {
		display:none;
	}
	.reg-button-mobile-hide {
		display:none;
	}	
	.gallery-wrap {
		top:55%;
	}
}

@media only screen and (max-width: 320px) {
	h1 {
		font-size:2em;
	}
	.nav-btn-wrap {
		width: calc(100vw - 150px);
		left: calc(150px - 100vw);
	}
	
	.reg-button {
		position:fixed;
		padding:10px;
		padding-left:15px;
		padding-right:15px;
		font-size:16px;
		width:150px;
	}	
	
	body {
		font-size:14px;
	}
	.gallery-wrap {
		top:57%;
	}
}

@media only screen and (max-height: 639px) {
	h1 {
		font-size:1.5em;
	}
	body {
		font-size:14px;
	}
}