* {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
	margin: 0;
	padding: 0;
}

a {
	color: inherit;
	text-decoration: none;
}

a:hover {
	color: #999999;
}

a img {
	border: none;
}

body {
	text-align: center;
}

#bounds {
	z-index: 102;
	position: relative;
}

.align {
	margin: 0 auto;
	padding: 60px 40px 40px 40px;
	z-index: 102;
	position: relative;
}

.slideshow {
	position: relative;
	background-color: black;
	min-height: 250px;
}

.slideshow:before {
	content: '';
	display: block;
	padding-top: 56.25%;
}

.slideshow .bounds {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	width: 100%; height: 100%:
}

.slideshow .frame {
	width: 100%; height: 100%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.slideshow .frame video {
	width: 100%; height: 100%;
	background-color: black;
}

.slideshow .arrow {
	height: 39px;
	cursor: pointer;
	position: absolute;
	top: 50%;
	margin-top: -19px;
	z-index: 101;
}

.slideshow .arrow.left {
	left: 40px;
}

.slideshow .arrow.right {
	right: 40px;
}

.slideshow .cycle-pager {
	position: relative;
	top: -70px;
	z-index: 101;
}

.slideshow .cycle-pager span {
	width: 12px;
	height: 12px;
	background-image: url('/resources/artwork/dot_off.png');
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	font-size: 0;
	display: inline-block;
	margin: 7px;
	cursor: pointer;
}

.slideshow .cycle-pager span.cycle-pager-active {
	background-image: url('/resources/artwork/dot_on.png');
}

h1 {
	font: 500 34px 'Brandon';
	text-transform: uppercase;
	line-height: 1;
	color: #41c48b;
}

h2 {
	font: 500 34px 'Brandon';
	text-transform: uppercase;
	line-height: 1;
	margin: 0px 0px 20px 0px;
	color: #000000;
}

hr {
	width: 40px;
	border: 0;
	border-bottom: 1px solid #000000;
	margin: 0px auto 20px auto;
}

.big p {
	font: 400 22px 'Brandon';
	line-height: 1;
	max-width: 480px;
	margin: 0px auto 20px auto;
	color: #000000;
}

.small p {
	font: 400 15px 'Karla';
	line-height: 1.3;
	max-width: 540px;
	margin: 0px auto 20px auto;
	color: #000000;
}

.small {
	padding-bottom: 20px;
}

.button {
	border: 2px solid black;
	font: 700 15px 'Karla';
	padding: 10px;
	text-transform: uppercase;
	line-height: 1;
	display: inline-block;
	vertical-align: top;
	cursor: pointer;
}


/* ENQUIRE */

#enquire {
	text-align: left;
	display: none;
	border-bottom: 1px #DBDAD0 solid;
}

#enquire .align {
	padding: 20px;
	background-color: white;
	font-size: 0;
	position: relative;
}

#enquire .close {
	width: 27px;
	position: absolute;
	top: 20px; right: 20px;
	cursor: pointer;
}

#enquire .column {
	display: inline-block;
	vertical-align: top;
	padding: 20px;
}

#enquire .column.contact {
	width: 20%;
}

#enquire .column.map {
	width: 30%;
}

#enquire .column.form {
	width: 50%;
}

#enquire .column.map .google_map {
	position: relative;
	margin-bottom: 20px;
	max-height: 360px;
}

#enquire .column.map .google_map:before {
	content: '';
	display: block;
	padding-top: 100%;
}

#enquire .column.map .google_map .bounds {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	width: 100%; height: 100%;
}


#enquire h1 {
	font-size: 18px;
	color: #000000;
	margin-bottom: 20px;
	max-width: 390px;
}

#enquire p {
	font: 400 15px 'Karla';
	color: #000000;
	line-height: 1.3;
	margin-bottom: 20px;
}

#enquire p strong {
	font: 700 15px 'Karla';
}

#enquire p a {
	text-decoration: underline;
}

#enquire .download_brochure {
	width: 126px;
	cursor: pointer;
}

#enquire .logo {
	width: 100px;
	cursor: pointer;
	margin-bottom: 20px;
}

#enquire form input, #enquire form textarea {
	display: block;
	border: 0;
	background: #E4E4E4;
	font: 700 13px 'Karla';
	color: #A0A0A0;
	padding: 12px;
	width: 100%;
	margin-bottom: 10px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border-radius: 0;
}

#enquire form input.error {
	background: #ff5b68;
}

#enquire form textarea {
	min-height: 100px;
}

#enquire form .group .cell {
	display: inline-block;
	vertical-align: top;
	width: 50%;
}

#enquire form .group .cell:nth-of-type(1) {
	padding-right: 5px;
}

#enquire form .group .cell:nth-of-type(2) {
	padding-left: 5px;
}

::-webkit-input-placeholder { color: #A0A0A0; }
:-moz-placeholder { color: #A0A0A0; }
::-moz-placeholder { color: #A0A0A0; }
:-ms-input-placeholder { color: #A0A0A0; }

#enquire form .radio {
	padding: 10px;
	font: 700 13px 'Karla';
	text-transform: uppercase;
	color: #4D4E4C;
	text-align: left;
}

#enquire form .radio img {
	width: 97px;
	margin: 5px;
	cursor: pointer;
}

#enquire form .send {
	width: 75px;
	margin-top: 10px;
	cursor: pointer;
}

#enquire .thanks {
	display: none;
}


/* HEADER */

#header {
	position: fixed;
	width: 100%;
	top: 0;
	z-index: 103;
	transition: background 500ms;
	-webkit-transition: background 500ms;
	-moz-transition: background 500ms;
	-ms-transition: background 500ms;
	min-height: 58px;
	padding-top: 38px;
}

body.open #header {
	background-color: white;
}

body.enquire #header {
	background-color: white;
	position: absolute;
	top: 0;
}

#header .enquire {
	position: absolute;
	top: 15px; right: 20px;
	cursor: pointer;
	color: white;
	border: 1px solid white;
	font-size: 12px;
	background-color: rgba(0,0,0,0.5);
	padding-top: 7px;
	padding-bottom: 5px;
}

body.open #header .enquire {
	color: #41c48b;
	border: 1px solid #41c48b;
	background-color: transparent;
}

#header .burger {
	width: 29px;
	position: absolute;
	top: 17px; left: 20px;
	cursor: pointer;
	display: none;
}

#header ul {
	display: inline-block;
	vertical-align: top;
	position: relative;
	left: 10px;
	margin-top: -38px;
}

#header ul.mobile {
	display: none;
	left: 0px;
	margin: 70px 0px 20px 0px;
}

#header ul li {
	display: inline-block;
	vertical-align: top;
	font: 500 14px 'Brandon';
	color: white;
	margin: 20px 10px 0px 10px;
	cursor: pointer;
	text-transform: uppercase;
	transition: color 500ms;
	-webkit-transition: color 500ms;
	-moz-transition: color 500ms;
	-ms-transition: color 500ms;
}

#header ul li:hover {
	border-bottom: 2px solid #999999;
}

#header ul.mobile li {
	color: #000000;
}

body.open #header ul li {
	color: #000000;
}


#header .logo {
	margin: 0px 10px;
	position: relative;
	width: 143px;
}

#header .logo img {
	width: 143px;
	position: absolute;
	top: 0; left: 0;
}

#header .logo img.open {
	opacity: 0;
	transition: opacity 500ms;
	-webkit-transition: opacity 500ms;
	-moz-transition: opacity 500ms;
	-ms-transition: opacity 500ms;
}

body.open #header .logo img.open {
	opacity: 1;
}


/* HEX */

#i {
	width: 30px;
	position: absolute;
	top: 20px; left: 20px;
	cursor: pointer;
	z-index: 104;
	display: none;
}

#hex {
	position: relative;
	height: 100vh;
	min-height: 740px;
}

#hex .align {
	padding: 0px 20px;
	max-width: 520px;
}

#hex .background {
	position: absolute;
	top: 0; right: 0; bottom: 0; left: 0;
	width: 100%; height: 100%;
}

#hex .slideshow {
	width: 100%; height: 100%;
}

#hex .slideshow:before {
	padding: 0;
}

#hex .align {
	padding-top: 98px;
}

#hex .hex {
	background-image: url(/resources/artwork/hex.png);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top center;
	max-width: 480px;
	min-height: 580px;
	margin: 0 auto;
	padding-top: 140px;
}

#hex h1 {
	font: 500 40px 'Brandon';
	text-transform: uppercase;
	line-height: 1;
	margin: 0px 0px 20px 0px;
	color: white;
}

#hex hr {
	width: 40px;
	border: 0;
	border-bottom: 1px solid white;
	margin: 0px auto 20px auto;
}

#hex p {
	font: 400 24px 'Brandon';
	line-height: 1;
	max-width: 370px;
	margin: 0px auto 30px auto;
	color: white;
}

#hex .enquire {
	width: 160px;
	cursor: pointer;
	display: block;
	margin: 0 auto;
	margin-top: -10px;
}

#hex .close {
	width: 50px;
	cursor: pointer;
	display: block;
	margin: 0 auto;
	margin-top: 20px;
}


/* OVERVIEW */

#overview {
	background-color: #EAEAEA;
}

#overview .align {
	font-size: 0;
	max-width: 900px;
}

#overview .cell {
	display: inline-block;
	vertical-align: top;
	width: 50%;
	padding: 20px;
}

#overview .cell img {
	width: 65px;
	margin-bottom: 20px;
}

#overview .cell h3 {
	font: 700 15px 'Karla';
	text-transform: uppercase;
	color: #000000;
}

#overview .cell p {
	font: 400 15px 'Karla';
	color: #000000;
	line-height: 1.3;
	margin-bottom: 20px;
}




/* LOCATION */

#location {
	background-color: white;
}


#location .align {
	font-size: 0;
	max-width: 900px;
}

#location .cell {
	display: inline-block;
	vertical-align: top;
	width: 50%;
	padding: 20px;
}

#location .cell img {
	width: 65px;
	margin-bottom: 20px;
}

#location .cell h3 {
	font: 700 15px 'Karla';
	text-transform: uppercase;
	color: #000000;
}

#location .cell p {
	font: 400 15px 'Karla';
	color: #000000;
	line-height: 1.3;
	margin-bottom: 20px;
}


/* LIFESTYLE */

#lifestyle {
	background-image: url(/resources/artwork/bg_a.png);
	background-size: 99px auto;
	background-repeat: repeat;
	background-position: center;
}

#lifestyle .align {
	font-size: 0;
	max-width: 690px;
}

#lifestyle .grid {
	padding-bottom: 40px;
}

#lifestyle .slideshow {
	display: inline-block;
	vertical-align: top;
	width: 33.33%;
	min-height: 0;
}

#lifestyle .slideshow:before {
	padding-top: 100%;
}

#lifestyle .cell {
	display: inline-block;
	vertical-align: top;
	width: 50%;
	padding: 20px;
}

#lifestyle .cell img {
	width: 65px;
	margin-bottom: 20px;
}

#lifestyle .cell h3 {
	font: 700 15px 'Karla';
	text-transform: uppercase;
	color: #000000;
}

#lifestyle .cell p {
	font: 400 15px 'Karla';
	color: #000000;
	line-height: 1.3;
	margin-bottom: 20px;
}



/* ARCHITECTURE */

#architecture {
	background-color: white;
}

#architecture .cell {
	margin: 0 auto;
	max-width: 400px;
	padding: 20px;
}

#architecture .cell h3 {
	font: 700 15px 'Karla';
	text-transform: uppercase;
	color: #000000;
}

#architecture .cell p {
	font: 400 15px 'Karla';
	color: #000000;
	line-height: 1.3;
	margin-bottom: 20px;
}


/* APARTMENTS */

#apartments {
	background: #edece4;
}

.gal-table {
	table-layout: fixed;
	width:960px;
	margin: 0 auto;
	border:0;
}
.gal-col-25 {
	width: 25%;
	overflow: hidden;
}
.gal-col-75 {
	width: 75%;
	overflow: hidden;
}
.box {
   position: relative;
    box-sizing: border-box;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 7px solid transparent;
    border-right: 7px solid transparent;
    overflow: hidden;
}
.gal-col-25 .box {
   height: 220px;
}
.gal-col-75 .box {
	height: 440px;
}
.gal-col-25 img {
    width: auto;
    height: 100%;
    position: absolute;
    top: -99999px;
    bottom: -99999px;
    left: -99999px;
    right: -99999px;
    margin: auto;
}
.gal-col-75 img {
    width: 100%;
    height: auto;
    position: absolute;
    top: -99999px;
    bottom: -99999px;
    left: -99999px;
    right: -99999px;
    margin: auto;
}
@media 
only screen and (max-width: 960px),
(min-device-width: 958px) and (max-device-width: 1024px) {
	table.gal-table, .gal-table thead, .gal-table tbody, .gal-tabletbody th, .gal-table td, .gal-table tr { 
		display: block; 
	}
	.gal-table {
		width:auto;
	}
	.gal-col-25 {
		width: 100%;
	}
	.gal-col-75 {
		width: 100%;
	}
	.box {
	    border: 5px solid transparent;
	}
	.gal-col-25 .box {
	   height: auto;
	}
	.gal-col-75 .box {
		height: auto;
	}
	.gal-col-25 img {
	    width: 100%;
	    height: auto;
	    position: relative;
	    top: auto;
	    left: auto;
	    right: auto;
	    bottom: auto;
	}
	.gal-col-75 img {
	    width: 100%;
	    height: auto;
	    position: relative;
	    top: auto;
	    left: auto;
	    right: auto;
	    bottom: auto;
	}
}
/* SPACE */
#space {
	background-image: url(/resources/artwork/bg_b.png);
	background-size: 99px auto;
	background-repeat: repeat;
	background-position: center;
}
/* VIMEO */
#vimeo {
	height: 640px;
}
@media 
only screen and (max-width: 960px),
(min-device-width: 958px) and (max-device-width: 1024px) {
	#vimeo {
	    height: 340px;
	}
}
/* TEAM */

#team {
	background-color: #404041;
}

#team .align {
	max-width: 790px;
	font-size: 0;
}

#team hr {
	border-color: white;
}

#team p {
	color: white;
}

#team h2 {
	color: white;
}

#team .cell {
	display: inline-block;
	vertical-align: top;
	width: 50%;
	padding: 20px;
}

#team .cell h3 {
	font: 700 15px 'Karla';
	text-transform: uppercase;
	color: white;
}

#team .cell p {
	font: 400 15px 'Karla';
	color: white;
	line-height: 1.3;
	margin-bottom: 20px;
}

#team .cell p a {
	font: 700 15px 'Karla';
	text-decoration: underline;
}

#team .cell .image {
	position: relative;
	max-width: 240px;
	height: 160px;
	cursor: pointer;
	margin: 0 auto 20px auto;
}

#team .cell .image img {
	position: absolute;
	top: 0; left: 0;
	width: 100%;
}

#team .cell .image .default {
	z-index: 1;
}

#team .cell .image .hover {
	opacity: 0;
	z-index: 2;
	transition: opacity 500ms;
	-webkit-transition: opacity 500ms;
	-moz-transition: opacity 500ms;
	-ms-transition: opacity 500ms;
}

#team .cell .image:hover .hover {
	opacity: 1;
}

#team .cell .image .button {
	z-index: 3;
	position: absolute;
	top: 50%;
	margin-top: -25px;
	left: 50%;
	margin-left: -70px;
	color: white !important;
	border-color: white;
	opacity: 0;
	transition: opacity 500ms;
	-webkit-transition: opacity 500ms;
	-moz-transition: opacity 500ms;
	-ms-transition: opacity 500ms;
}

#team .cell .image:hover .button {
	opacity: 1;
}




/* FOOTER */

#footer {
	background-color: #000000;
	text-align: left;
	position: relative;
}

#footer .align {
	padding-top: 40px;
}

#footer h1 {
	font-size: 18px;
	margin-bottom: 20px;
	color: white;
}

#footer .cell {
	display: inline-block;
	vertical-align: top;
	padding: 0px 80px 0px 0px;
}

#footer .download_brochure {
	width: 128px;
	cursor: pointer;
}

#footer .cell p {
	font: 400 15px 'Karla';
	color: white;
	line-height: 1.3;
	margin-bottom: 20px;
}

#footer .cell p strong {
	font: 700 15px 'Karla';
}

#footer .cell p a {
	text-decoration: underline;
}

#footer .disclaimer {
	font: 700 15px 'Karla';
	color: white;
	text-transform: uppercase;
	position: absolute;
	bottom: 40px; right: 40px;
	cursor: pointer;
}

#footer .logos {
	position: absolute;
	bottom: 60px; right: 40px;
	width: 200px;
}

/* DISCLAIMER */

#disclaimer {
	background-color: #404041;
	min-height: 100vh;
	display: none;
}

#disclaimer h1 {
	color: white;
	margin: 0px 0px 20px 0px;
	position: relative;
}

#disclaimer hr {
	border-bottom: 1px solid white;
}

#disclaimer .small p {
	color: white;
}

#disclaimer .close {
	width: 25px;
	position: absolute;
	top: 40px; right: 40px;
	cursor: pointer;
}