html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {margin: 0;padding: 0;border: 0;outline: 0;font-size: 100%;vertical-align: ;background: transparent;}

body{
	background: #FFF;
	font-family: "freight-text-pro",serif;
	font-style: normal;
	font-weight: 300;
	-webkit-font-smoothing: antialiased;
}

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

.splash{
	position: fixed;
	z-index: 10;
	width: 100%;
	height: 100%;
	background: #0c363a;
	animation-name: splashIntro;
    animation-duration: 2s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
    pointer-events: none;
}

@keyframes splashIntro{
	0%   {opacity: 1; display: block;}
    80%  {opacity: 1; display: block;}
    99%  {opacity: 0; display: block;}
    100% {opacity: 0; display: none;}
}

.splashLogo{
	position: absolute;
	width: 30%;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 3;
}

nav{
	background: #f7f5ef;
	color: #ad6745;
	position: fixed;
	width: 100%;
	height: 42px;
	z-index: 1;
	top: 0px;
	z-index: 9;
}

.navLogo{
	height: 26px;
    margin-top: 8px;
    margin-left: 40px;
    z-index: 999999;
    position: absolute;
}

.navLogo svg{
	height: 100%;
}

nav ul{
	list-style: none;
    text-align: center;
    top: 12px;
    left: 50%;
    position: absolute;
    transform: translateX(-50%);
    letter-spacing: 0.1em;
    width: 600px;
}

nav ul li{
	display: inline-block;
	padding: 0px 20px;
	text-transform: uppercase;
	font-family: "freight-text-pro",serif;
	font-style: normal;
	font-weight: 300;
    letter-spacing: 0.1em;
    
}

.current{
	color: #07373b;
}

.propertyPage .menuProperty, .teamPage .menuTeam, .newsPage .menuNews, .contactPage .menuContact, .single-development .menuProperty, .finance .menuFinance{
	color: #07373b;
}

.burgerIcon{
	display: none;
}

.mainBanner{
	width: 100%;
	height: 500px;
	overflow: hidden;
}

.mainBanner .banner{
	position: relative;
	height: 500px;
}

.mainBanner .banner h1{
	width: 100%;
	color: #FFF;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	text-align: center;
	z-index: 2;
}

.mainBanner .banner .bannerBackground{
	position: absolute;
	width: 100%;
	height: 500px;
	background-position: center center;
	background-size: cover;
}

.bannerTint{
	position: absolute;
	width: 100%;
	height: 100%;
	background: #011b28;
	opacity: 0.3;
	z-index: 1;
}

.constrained{
	width: 80%;
	margin: auto;
	max-width: 1300px;
}

.socialIcons{
	position: absolute;
    right: 40px;
    top: 5px;
    height: 30px;
}

.socialIcon{
	float: left;
	width: 30px;
	height: 30px;
    margin-left: 6px;
    background-size: contain;
	background-repeat: no-repeat;
}

.socialIcon.search{
	background-image: url('/images/search.svg');
	cursor: pointer;
}

.socialIcon.fb{
	background-image: url('/images/fb.svg');
}

.socialIcon.linked{
	background-image: url('/images/linkedin.svg');
}

.socialIcon.twitter{
	background-image: url('/images/twitter.svg');
}

/*  ------------------------------------------------ FONT SIZING & STYLES ------------------------------------------------ */

h1, h2{
	font-size: 32px;
	line-height: 36px;
	font-style: normal;
	font-weight: 300;
    letter-spacing: 0.03em;
    text-align: center;
}

h3{
	font-size: 18px;
	line-height: 20px;
	font-style: normal;
	font-weight: 300;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    text-align: center;
    color:#ae6741;
}

h4{
	font-size: 24px;
	line-height: 28px;
	font-style: normal;
	font-weight: 300;
    letter-spacing: 0.03em;
    text-align: center;
}

p{
	font-size: 12px;
	line-height: 14px;
}

.textBlock h2{
	font-size: 18px;
	text-transform: uppercase;
	margin-bottom: 20px;
}

.textBlock p{
	font-size: 16px;
	line-height: 19px;
	text-align: center;
	color: #07373b;
	margin-bottom: 20px;
}

.textBlock a{
	text-decoration: underline!important;
}

.textBlock .inner{
	max-width: 600px;
	margin: auto;
}

/*  -------------------------------------------------  FEATURED DEVELOPMENTS CAROUSEL --------------------------------------------- */

.title{
	padding: 40px 0px;
}

.featuredDevelopments{
	padding-bottom: 40px;
}

.devsCarouselItem{
	margin: 6px;
	cursor: pointer;
}

.devsCarouselItem .devImage{
    padding-top: 66%;
	background-position: center center;
	background-size: cover;
    margin-bottom: 10px;
}

.devTitle{
	text-align: center;
}

.devLocation{
	text-align: center;
}

/*  ------------------------------------------------  FEATURED DEVELOPMENTS CAROUSEL --------------------------------------------- */

.vincoLogo{
	height: 26px;
    text-align: center;
}

.vincoLogo img{
	height: 100%;
    width: auto;
}

.headlineSection h2{
    padding: 90px 0px 90px;
}

.headlineSection.withTitle h2{
    padding: 90px 0px 180px;
}

/*  -----------------------------------------------------  TESTIMONIAL SECTION -------------------------------------------------- */

.testimonialSection h2{
    padding: 90px 0px 40px;
}

.testimonialSection h3{
	padding: 0 0 90px;
}

/*  -------------------------------------------------------  PARTNERS LOGOS  --------------------------------------------------- */

.partnerLogos{
	width: 800px;
	margin: auto;
	padding: 80px 0px;
}

/*  ---------------------------------------------------------  NEWS SECTION  --------------------------------------------------- */

.newsContainer{
    display: flex;
    overflow: hidden;
    width: 100%;
}

.newsContainer2{
    display: flex;
    overflow: hidden;
    width: 100%;
}

.newsBlock{
	display: inline-flex!important;
	flex-basis: 25%;
	cursor: pointer;
}

.newsBlock.imageFirst .imageCol{
	order: 1;
}

.newsBlock.imageFirst .textCol{
	order: 2;
}

.newsBlock .textCol{
	flex-basis: 34%;
    padding: 10px;
}

.newsBlock .imageCol{
	flex-basis: 66%;
    padding-bottom: 57%;
    background-position: center;
    background-size: cover;
}

.newsBlock.fullImage .imageCol{
	flex-basis: 100%;
}

.readMore{
    font-size: 8px;
    text-transform: uppercase;
    margin-top: 10px;
    letter-spacing: 0.08em;
}

/*  -----------------------------------------------------  FOOTER SECTION  ------------------------------------------------ */

.newsletter{
	background-color: #d8dedf;
    text-align: center;
    padding: 60px 40px;
}

.newsletter #email{
    border-radius: 50px;
    padding: 10px;
    margin-top: 40px;
    min-width: 420px;
    border: none;
    margin-bottom: 40px;
}

.newsletter label{
    font-size: 12px;
    line-height: 14px;
}

input[type=checkbox] + label {
  display: block;
  cursor: pointer;
}

input[type=checkbox] {
  display: none;
}

input[type=checkbox] + label:before {
    content: " ";
    border: 0.1em solid #07373b;
    border-radius: 0px;
    display: inline-block;
    width: 10px;
    height: 10px;
    padding-left: 3px;
    padding-bottom: 3px;
    margin-right: 10px;
    vertical-align: bottom;
    color: transparent;
    transition: .2s;
}

input[type=checkbox] + label:active:before {
  transform: scale(0);
}

input[type=checkbox]:checked + label:before {
  background-color: #07373b;
  border-color: #07373b;
  color: #fff;
}

input[type=checkbox]:disabled + label:before {
  transform: scale(1);
  border-color: #aaa;
}

input[type=checkbox]:checked:disabled + label:before {
  transform: scale(1);
  background-color: #bfb;
  border-color: #bfb;
}

.lowerFooter{
	background: #e8eaeb;
	color: #ababab;
	padding: 40px 0;
	
}

.lowerFooter .footerInner{
	display: flex;
    width: calc(100% - 80px);
    margin: auto;
}

.lowerFooter .terms{
    flex-basis: 50%;
}

.lowerFooter .madeby{
    flex-basis: 50%;
	text-align: right;
}

/*  --------------------------------------------  NEWSLETTER POP UP ------------------------------------------ */
	
.nlPopup{	
    position: fixed;
    bottom: -500px;
    width: 100%;
    z-index: 1;
    background: #07373b;
    color: #FFF;
    padding: 40px;
    z-index: 9;
}

.nlPopup #emailPop{
    border-radius: 50px;
    padding: 10px;
    margin-top: 40px;
    min-width: 320px;
    border: none;
    margin-bottom: 40px;
}

.nlPopup h4{
	text-align: left;
}

.nlPopup input[type=checkbox] + label:before {
    border: 1px solid #FFF;
}

.nlPopup input[type=checkbox]:checked + label:before {
    background-color: #ffffff;
    border-color: #ffffff;
    color: #fff;
}

/*  --------------------------------------------  PROJECTS PAGE  ------------------------------------------ */

.filterHolder{
	text-align: center;
}

.filter{
	padding: 30px;
    display: inline-block;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    cursor: pointer;
    color: #ae6741;
}

.filter.current{
	color: #07373b;
}

.filterResults .inner{
	/*width: calc(100% - 80px);*/
	display: flex;
    margin: auto;
	flex-wrap: wrap;
    padding: 70px 0px;
}

.filterResults .development{
	width: 50%;
	width: calc(50% - 5px);
    margin: 20px 0;
}

.filterResults .development:nth-child(odd){
	margin-right: 5px;    
}

.filterResults .development:nth-child(even){
	margin-left: 5px;    
}

.development .devImage{
    width: 100%;
    padding-bottom: 60%;
    background-size: cover;
}

.development .devTitle{
	margin-top: 30px;
}

.development .devTitle h3{
    text-transform: none;
    color: #07373b;
}

.development .devTitle h3{
    text-transform: none;
    color: #07373b;
}

.development .devLocation h3{
	text-transform: none;
}

/*  --------------------------------------------------  SINGLE DEVELOPMENT  ------------------------------------------------ */

.single-development .developmentTitle{
	font-size: 62px;
    margin-bottom: 40px;
}

.single-development h1{
	text-transform: uppercase;
	color: #fff!important;
}

.textBlock{
	padding: 80px; 0px;
}

.developmentGallery{
    padding: 80px 0;
}

.fullWidthSlider .slide img{
	width: 100%;
	height: auto;
}

.imageTextBanner{
	position: relative;
	width: 100%;
	height: 400px;
	cursor: pointer;
}

.imageTextBanner .textOverlay{
	text-transform: uppercase;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	font-size: 32px;
	line-height: 38px;
	color: #FFF;
	z-index: 2;
}

.imageTextBanner .imageBackground{
	position: absolute;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-size: cover;
}

/*  -----------------------------------------------------  TEAM PAGE  --------------------------------------------------- */

.companyBlocks .constrained{
	display: flex;
}

.companyBlocks .column{
    flex-basis: 50%;
    padding: 90px 40px 70px;
}

.companyBlocks .companyLogo{
    width: 200px;
    margin: auto;
    margin-bottom: 40px;
}

.companyBlocks .textBlock{
	padding: 0px;
	text-align: center;
}

/*  -----------------------------------------------------  NEWS PAGE  ------------------------------------------------- */

.newsPage .development .devTitle h3{
	text-align: left;
}

.newsPage .development .devLocation h3{
	text-align: left;
}

.newsPage .development .devTitle {
    margin-top: 15px;
}

.newsFeed .inner{
    display: flex;
    flex-wrap: wrap;
    padding: 20px 0 40px;
}

.newsItem{
	flex-basis: calc(25% - 12px);
	margin: 6px;
	cursor: pointer;
    margin-bottom: 20px;
}

.newsItem .devImage{
    padding-top: 66%;
	background-position: center center;
	background-size: cover;
    margin-bottom: 10px;
}

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

.newsItem .devLocation{
	text-align: center;
	color: #ae6741;
}

.newsImage img{
	width: 100%;
	height: auto;
}

/*  ------------------------------------------------  SINGLE NEWS PAGE  --------------------------------------------- */

.shareBar{
	width: 100%;
	background: #ae6741;
	padding: 20px 0;
	text-align: center;
}

.shareIcon {
	display: inline-block;
    width: 30px;
    height: 30px;
    margin-left: 3px;
    margin-right: 3px;
    background-size: contain;
    background-repeat: no-repeat;
    cursor: pointer;
}

.shareIcon.fb{
	background-image: url('/images/fb-white.svg');
}

.shareIcon.linkedin{
	background-image: url('/images/linkedin-white.svg');
}

.shareIcon.twitter{
	background-image: url('/images/twitter-white.svg');
}

.newsContent{
	padding: 80px 0 0;
}

.newsContent .inner{
	max-width: 600px;
	margin: auto;
}

.newsContent .textBlock{
	padding: 0px;
	margin-bottom: 80px;
}

.newsContent .caption p{
	color: #708489;
	text-align: center;
    margin-top: 6px;
    margin-bottom: 80px;
}

/*  ------------------------------------------------  FINANCE PAGE  --------------------------------------------- */

.finance .mainBanner .inner{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 9;
	width: 80%;
}

.finance .mainBanner .identity{
	width: 160px;
	height: auto;
	margin: auto;
}

.finance .mainBanner .banner h1 {
    width: 100%;
    color: #FFF;
    position: relative;
    top:auto;
    margin-top: 60px;
    transform:none;
    text-align: center;
    z-index: 2;
}

.finance .imageTextBanner .identity{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 9;
    width: 200px;
}

.finance .imageTextBanner h3{
	position: absolute;
    top: 40px;
    left: 50%;
    transform: translateX(-50%);
}


/*  -----------------------------------------  MEDIA QUERIES - SCREENS LESS THAN 1140px  --------------------------------------- */

@media all and (max-width:1140px) {
	
	.navLogo{
	    margin-left: 20px;
    }
    
    .socialIcons {
	    right: 20px;
    }

}

/*  -----------------------------------------  MEDIA QUERIES - SCREENS LESS THAN 1000px  --------------------------------------- */

@media all and (max-width:900px) {
	
	nav{
		background: none;
	}
	
	.navLogo svg .logoFill{
		fill:#FFF;
		transition: all ease 0.5s;
	}
	
	.socialIcons{
		display: none;	
	}
	
	nav ul{
		display: none;
	}
	
	.burgerIcon{
	    display: block;
	    height: 30px;
	    width: 30px;
	    position: absolute;
	    top: 12px;
	    right: 20px;
	    cursor: pointer;
	}
	
	h1, h2 {
    	font-size: 22px;
		line-height: 26px;
    }
    
    .splashLogo{
		width: 50%;
	}

}

/*  -----------------------------------------  MEDIA QUERIES - SCREENS LESS THAN 500px  --------------------------------------- */


@media all and (max-width:500px) {
		
	.navLogo{
	    margin-left: 20px;
	}
	
	.devsCarousel{
	    display: flex;
	    flex-wrap: wrap;
	}
	
	.devsCarouselItem {
		margin: 6px;
		cursor: pointer;
		flex-basis: calc(50% - 12px);
	}
	
	.devsCarouselItem:nth-child(n+5){
		display: none;
	}
	
	.constrained {
    	width: 90%;
    }
    
    h1, h2 {
	    font-size: 16px;
	    line-height: 18px;
	}
	
	.mainBanner{
	    height: 350px;
	}
	
	.mainBanner .banner{
	    height: 350px;
	}
	
	.mainBanner .banner .bannerBackground {
    	height: 350px;
    }
    
    .newsletter #email{
	    width: 90%;
	    min-width: inherit;
    }
    
    .lowerFooter .footerInner {
		width: calc(100% - 40px);
    }
    
    .splashLogo{
		width: 60%;
	}

}