/* ==========================================================================
   Coordinate Styles
   ========================================================================== */
   
body { background-color:#111; color:#000; font-size:14px; font-family: "azo-sans-web",sans-serif; font-weight:500; }

#site-header { padding:8em 0.625rem 1.5em; height:140px; overflow:hidden; position:absolute; top:0; left:0; right:0; z-index:50;
	-webkit-transition: height 0s ease-out 0.25s; 
			transition: height 0s ease-out 0.25s;
}
#site-header.open { height:100%; position:fixed;
	-webkit-transition: height 0s ease-out; 
			transition: height 0s ease-out;
}
#site-header h1 { font-size:1em; height:58px; margin:0; position:absolute; top:1.5em; left:0.625rem; width:54px; }
#site-header h1 a { border:none; display:block; height:100%; position:relative; width:100%; }
#site-header h1 a img { display:block; height:100%; opacity:0; position:absolute; width:100%; z-index:5;	
	-webkit-transition: opacity 0.25s ease-out; 
			transition: opacity 0.25s ease-out;
}
#site-header h1 a img.white { opacity:1; z-index:10; }
/*#site-header.open h1 a img { opacity:0; }
#site-header.open h1 a img.white { opacity:1; }*/
#site-header h1 a img { opacity:0; }
#site-header h1 a img.white { opacity:1; }

#site-header nav { height:0; opacity:0; position:relative; z-index:-5;
	-webkit-transition: opacity 0.25s ease-out; 
			transition: opacity 0.25s ease-out;
}
#site-header.open nav { height:100%; overflow:scroll; opacity:1; z-index:0; }
#site-header nav ul { font-weight:500; padding:0; }
#site-header nav ul li { display:block; float:none; }
#site-header nav ul li a { display:inline-block; color:#fff; font-size:1.25em; line-height:40px; padding:0; }
#site-header nav ul li a span.underline { background-color:#fff; display:block; height:2px; width:100%;
  -webkit-transform: scaleX(0); 
          transform: scaleX(0); 
  -webkit-transition: -webkit-transform 0.25s ease-out;
          transition:-webkit-transform 0.25s ease-out;
          transition:transform 0.25s ease-out;
          transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out;
		  -webkit-transform-origin:left center;
		          transform-origin:left center;
}
#site-header nav ul li a:hover span.underline { 
  -webkit-transform: scaleX(1); 
          transform: scaleX(1); 
}

#site-header button.menu-button { background-color:transparent; border:none; display:block; height:58px; margin-top:0; padding:17px 0; position:absolute; top:1.5em; right:0.625rem; width:24px;
  -webkit-transition: all 0.25s ease-out; 
          transition: all 0.25s ease-out;
}
#site-header button.menu-button:hover { background-color:transparent; outline:none; }
#site-header button.menu-button:focus { outline:none; }
#site-header button.menu-button span { background-color:#fff; display:block; margin-top:-1px; position:absolute; left:50%; margin-left:-12px; height:2px; width:24px;
  -webkit-transform-origin:50% 50%;
  transform-origin:50% 50%;
}
#site-header button.menu-button span.top { margin-top:-5px; top:50%; }
#site-header button.menu-button span.bottom { margin-top:3px; top:50%; }

#site-header.closed button.menu-button span {  
  -webkit-transition: -webkit-transform 0.25s ease-out, opacity 0.25s ease-out 0.25s, margin-top 0.25s ease-out 0.25s;
          -webkit-transition:opacity 0.25s ease-out 0.25s, margin-top 0.25s ease-out 0.25s, -webkit-transform 0.25s ease-out;
          transition:opacity 0.25s ease-out 0.25s, margin-top 0.25s ease-out 0.25s, -webkit-transform 0.25s ease-out;
          transition:transform 0.25s ease-out, opacity 0.25s ease-out 0.25s, margin-top 0.25s ease-out 0.25s;
          transition: transform 0.25s ease-out, opacity 0.25s ease-out 0.25s, margin-top 0.25s ease-out 0.25s, -webkit-transform 0.25s ease-out;
}
#site-header.open button.menu-button span {  
  -webkit-transition: margin-top 0.25s ease-out, opacity 0.25s ease-out, -webkit-transform 0.25s ease-out 0.25s; 
          transition:margin-top 0.25s ease-out, opacity 0.25s ease-out, -webkit-transform 0.25s ease-out 0.25s; 
          transition:margin-top 0.25s ease-out, opacity 0.25s ease-out, transform 0.25s ease-out 0.25s; 
          transition: margin-top 0.25s ease-out, opacity 0.25s ease-out, transform 0.25s ease-out 0.25s, -webkit-transform 0.25s ease-out 0.25s;
}

#site-header.open button.menu-button span.top { margin-top:-1px;
  -webkit-transform: rotate(45deg); 
          transform: rotate(45deg); 
}
#site-header.open button.menu-button span.bottom { margin-top:-1px;
  -webkit-transform: rotate(-45deg); 
          transform: rotate(-45deg); 
}

#site-header .header-background {
	position:absolute; top:0; right:0; bottom:0; left:0; z-index:-1;
	-webkit-transition: opacity 0.25s ease-out; 
			transition: opacity 0.25s ease-out;

}
#site-header.closed .header-background { opacity:0; }
#site-header.open .header-background { opacity:1; }

#site-header .header-background .contact-details { display:none; }

/*
 * Pages
 */
.page-banner { background-color:#1c1f1f; height:75vh; min-height:500px; position:relative; z-index:5; }
.page-banner.full-screen { height:100vh; }
.page-banner h1 { text-align:center; }
.page-banner h1 small { color:#fff; display:block; font-size:2rem; font-weight:500; letter-spacing:0.25em; line-height:1; padding-top:2em; }
.page-banner .row { height:100%; position:relative; }
.page-banner .row .mid-vertical { position:absolute; top:50%;
  -webkit-transform: translateY(-50%);  /* Chrome, Opera 15+, Safari 3.1+ */  /* IE 9 */
          transform: translateY(-50%);  /* Firefox 16+, IE 10+, Opera */
}

.page-banner ul.slides { list-style:none; margin:0; padding:0; position:absolute; top:0; right:0; bottom:0; left:0; z-index:-1; }
.page-banner ul.slides li { display:none; height:100%; width:100%; }
.page-banner .banner-image { background-position:center center; background-repeat:no-repeat; background-size:cover; height:100%; opacity:0.5; width:100%; }

.page-banner .next-section { background-color:#000; border:none; border-radius:50%; color:#fff; display:block; font-size:2em; height:40px; line-height:40px; margin-left:-20px; position:absolute; bottom:30px; left:50%; text-align:center; width:40px; z-index:10; 
			-webkit-transition:-webkit-transform 0.25s ease-out; 
			transition:-webkit-transform 0.25s ease-out; 
			transition:transform 0.25s ease-out; 
			transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out; }
.page-banner .next-section:hover { background-color:#000; color:#fff;
-webkit-transform: translateY(10%);
        transform: translateY(10%); }
.page-banner .next-section i {
	color:#fff;
	-webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  	background-image: -webkit-linear-gradient(left, #966ca3, #04bde7);
	background-image: -o-linear-gradient(left, #966ca3, #04bde7);
}

.page-banner .sales-tag { background-color:#000; border-radius:50%; color:#fff; font-size:1.75em; font-weight:700; height:140px; line-height:1.2; padding:1.5em 0.5em; position:absolute; left:0.625rem; top:-140px; text-align:center; width:140px; }
.page-banner .sales-tag .sold { display:block; font-size:0.5em; line-height:1.2; text-transform:uppercase; }

.row.promo .fluid-image-container .fluid-image { height:75vw; margin-left:-1rem; margin-right:-1rem; position:relative; width:105vw; }
.home .row.promo.row-3 .fluid-image-container { display:none; }

.contact-row { color:#000; }
.contact-row .contact-details { font-size:1.25em; font-weight:300; }
.contact-row .contact-details strong { font-weight:300; }
.contact-row .contact-details a { color:#000; }
.contact-row .contact-details a:hover { color:#333; }
.contact-row.white .contact-details strong { color:#04bde7; }

.content-page p,
.content-page ul,
.content-page ol { color:#fff; font-size:1em; font-weight:400; }

.about-page .mosaic-image-container .fluid-image:nth-child(1) { height:100%; top:0; right:0; bottom:0; width:50vw; }
.about-page .mosaic-image-container .fluid-image:nth-child(2) { display:none; top:50%; right:0; width:50vw; }
.about-page .mosaic-image-container .fluid-image:nth-child(3) { display:none; bottom:0; right:0; }

.about-page p:first-child { font-size:1.25em; }

.image-gallery .image-wrap { padding:2px; width:100%; }

.row.content-row h3 { color:#fff; font-size:1.875rem; margin:1em 0 0.5em; }

.white-row { background-color:#fff; }

.promo.glc-page h2 { font-size:5em; }
.glc-page .mosaic-image-container .fluid-image:nth-child(1) { top:0; left:0; }
.glc-page .mosaic-image-container .fluid-image:nth-child(2) { bottom:0; left:0; }

.partner-block { margin-top:4em; }
.partner-block .logo-wrap { height:80px; margin-bottom:2em; }
.partner-block .logo-wrap.crawford { height:100px; }
.partner-block .logo-wrap img { max-height:100%; width:auto; }
.partner-block h3 { font-size:2em; }
.partner-block p { font-weight:300; }

.contact-logo { height:80px; margin-bottom:0.5em; }
.contact-logo img { max-height:100%; width:auto; }

.slider-control { }
.slider-control a { display:block; float:left; opacity:0.6; width:25%; position:relative; z-index:5;
-webkit-transform:scale(0.85);
        transform:scale(0.85);
-webkit-transition:all 0.25s ease-out;
transition: all 0.25s ease-out; }
.slider-control a.flex-active { opacity:1; z-index:10;
-webkit-transform:scale(1);
        transform:scale(1); }
.slider-control a .slide-icon { border-radius:50%; display:table; height:85px; margin:-5px auto; width:85px;
	background-color: #f17a6e;
  	background-image: -webkit-linear-gradient(top, #f17a6e, #966ca2); /* Chrome 10-25, iOS 5+, Safari 5.1+ */
  	background-image:         linear-gradient(to bottom, #f17a6e, #966ca2); /* Chrome 26, Firefox 16+, IE 10+, Opera */		
}
.slider-control a .slide-icon .icon-wrap { display:table-cell; height:100%; padding:1em; vertical-align:middle; width:100%; }
.slider-control a.current-upgrades .slide-icon .icon-wrap,
.slider-control a.economy .slide-icon .icon-wrap { padding:1.5em; }
.slider-control a h4 { font-size:1.5em; margin-top:1em; }
.slider-content { padding-top:4em; }
.slider-content ul { font-weight:500; }
.panel-content { padding-left:10px; padding-right:10px; }

section.map { font-size:0.35em; position:relative; }
section.map img { height:auto; width:100%; }
section.map .info-bubble { border-radius:50%; box-shadow:0 0 25px rgba(0,0,0,0.25); display:table; font-size:1.25em; font-weight:600; height:7em; line-height:1.2; margin-top:-3.5em; margin-left:-3.5em; padding:0.5em; position:absolute; text-align:center; width:7em; z-index:10; }

section.map .info-bubble.black { background-color:#000; color:#fff; }
section.map .info-bubble.white { background-color:#fff; color:#000; }

section.map .info-bubble.large { height:9em; margin-top:-4.5em; margin-left:-4.5em; width:9em; }
section.map .info-bubble.xlarge { height:12em; margin-top:-6em; margin-left:-6em; width:12em; }
section.map .info-bubble.small { height:100px; margin-top:-50px; margin-left:-50px; width:100px; }

section.map .info-bubble .bubble-content { display:table-cell; vertical-align:middle; }
section.map .info-bubble.large-text .bubble-content { font-size:1.5em; }
section.map .info-bubble.small-text .bubble-content { font-size:0.8em; }

section.map .info-bubble.bubble_01 { color:#fff; top:20%; left:15%;
	background-color: #04bde7;
  	background-image: -webkit-linear-gradient(top, #04bde7, #61c8d1); /* Chrome 10-25, iOS 5+, Safari 5.1+ */
  	background-image:         linear-gradient(to bottom, #04bde7, #61c8d1); /* Chrome 26, Firefox 16+, IE 10+, Opera */
}
section.map .info-bubble.bubble_02 { top:15px; left:15px; margin:0; z-index:5; }
section.map .info-bubble.bubble_03 { top:15px; right:15px; margin:0; z-index:5; }
section.map .info-bubble.bubble_04 { top:25%; left:35%; }
section.map .info-bubble.bubble_05 { top:30%; left:50%; }
section.map .info-bubble.bubble_06 { bottom:5%; left:90%; }
section.map .info-bubble.bubble_07 { bottom:10%; left:20%; }
section.map .info-bubble.bubble_08 { bottom:5%; left:40%; }
section.map .info-bubble.bubble_09 { top:30%; left:75%; }

section.map .info-bubble i { display:block; padding-top:5px; }
section.map .info-bubble big { display:block; font-size:135%; font-weight:900; }

section.map .info-bubble:hover { z-index:15; }

/** Sales/Leasing **/
.render { position:relative; }
.render img { display:block; height:auto; width:100%; }

.page-master-plan .render { background-color:#fff; }
.page-master-plan .render img { margin:0 auto; max-width:1400px; }

#selections { background-color:#000; color:#fff; margin-left:-300px; opacity:0; padding:0.5em; position:absolute; top:10%; left:50%; width:600px; z-index:10; }
#selections table { border:none !important; margin-bottom:0; }
#selections thead,
#selections tbody { border:none !important; margin-bottom:0; }
#selections table th { background-color:#000; border:none; border-bottom:2px solid #404040; color:#fff; font-weight:500; text-transform:uppercase; text-align:right; width:30%; }
#selections table th:first-child { text-align:left; width:10%; }
#selections table td { background-color:#000; border:none; color:#fff; text-align:right; }
#selections table td:first-child { text-align:left; }

#selections.leasing th,
#selections.leasing th:first-child { width:33.3339%; }
#selections.leasing th:last-child,
#selections.leasing td:last-child { display:none; }

#sales-leasing-wrapper { padding:60px 0; }
#sales-leasing-wrapper.row.expanded .row { margin-left:-0.625rem; margin-right:-0.625rem; }

.block-list { background-color:#000; color:#fff; font-size:1em; list-style:none; margin:0 0 2em !important; padding:1em; }
.block-list + p { margin-bottom:0 !important; }
.block-list li { border-top:1px solid #404040; padding:0; position:relative;
	-webkit-transition:color 0.25s ease-out;
	transition:color 0.25s ease-out;
}
.block-list li.header-row { border-bottom:1px solid #404040; border-top:none; font-weight:500; text-transform:uppercase; }
.block-list li .list-column { float:left; padding:0.5em; position:relative; text-align:right; width:auto; z-index:5; }

/*.block-list li:before {
	background-color: #966ca3;
  	background-image: -webkit-linear-gradient(left, #966ca3, #f17a6e);
  	background-image:         linear-gradient(to right, #966ca3, #f17a6e);
}*/

.block-list.sales li .list-column:first-child { width:15%; text-align:left; }
.block-list.sales li .list-column { width:25%; }
.block-list.sales li .list-column:last-child {  width:35%; }

/*.block-list.leasing li:before {
	background-color: #966ca3;
  	background-image: -webkit-linear-gradient(left, #966ca3, #04bde7);
  	background-image:         linear-gradient(to right, #966ca3, #04bde7);
}*/
.block-list.leasing li .list-column:first-child { text-align:left; }
.block-list.leasing li .list-column { width:33.3339%; }

/*
 * Page Elements 
 */

/** Gradients / Coloured Backgrounds **/
.background-bleed { position:relative; z-index:5; }
.background-bleed .background { position:absolute; top:0; bottom:0; width:100vw; z-index:-1; }
.background-bleed .background.push-left { right:0; }
.background-bleed .background.push-right { left:0; }

.gradient-purple-blue {
	background-color: #966ca3;
  	background-image: -webkit-linear-gradient(left, #966ca3, #04bde7); /* Chrome 10-25, iOS 5+, Safari 5.1+ */
  	background-image:         linear-gradient(to right, #966ca3, #04bde7); /* Chrome 26, Firefox 16+, IE 10+, Opera */	
}
.gradient-purple-peach {
	background-color: #966ca3;
  	background-image: -webkit-linear-gradient(left, #966ca3, #f17a6e); /* Chrome 10-25, iOS 5+, Safari 5.1+ */
  	background-image:         linear-gradient(to right, #966ca3, #f17a6e); /* Chrome 26, Firefox 16+, IE 10+, Opera */		
}
.gradient-peach-purple {
	background-color: #f17a6e;
  	background-image: -webkit-linear-gradient(left, #f17a6e, #966ca3); /* Chrome 10-25, iOS 5+, Safari 5.1+ */
  	background-image:         linear-gradient(to right, #f17a6e, #966ca3); /* Chrome 26, Firefox 16+, IE 10+, Opera */		
}
.gradient-peach-top-bottom {
	background-color: #f17a6e;
  	background-image: -webkit-linear-gradient(top, #f17a6e, #d07581); /* Chrome 10-25, iOS 5+, Safari 5.1+ */
  	background-image:         linear-gradient(to bottom, #f17a6e, #d07581); /* Chrome 26, Firefox 16+, IE 10+, Opera */		
}
.gradient-blue-top-bottom {
	background-color: #04bde7;
  	background-image: -webkit-linear-gradient(top, #04bde7, #61c8d1); /* Chrome 10-25, iOS 5+, Safari 5.1+ */
  	background-image:         linear-gradient(to bottom, #04bde7, #61c8d1); /* Chrome 26, Firefox 16+, IE 10+, Opera */		
}

/** Images **/
.fluid-image-container { overflow:hidden; position:relative; }
.fluid-image-container .fluid-image { background-position:center center; background-repeat:no-repeat; background-size:cover; height:100%; position:absolute; top:0; bottom:0; z-index:-1; width:50vw; }
.fluid-image-container .fluid-image.push-right { left:0; }
.fluid-image-container .fluid-image.push-left { right:0; }

.mosaic-image-container { position:relative; }
.mosaic-image-container .fluid-image { background-position:center center; background-repeat:no-repeat; background-size:cover; height:50%; position:absolute; z-index:-1; width:50vw; }
.mosaic-image-container .fluid-image .overlay { position:absolute; top:0; right:0; bottom:0; left:0; }
.mosaic-image-container .fluid-image:nth-child(1) .overlay { background-color:rgba(8,187,229,0.5); }
.mosaic-image-container .fluid-image:nth-child(2) .overlay { background-color:rgba(152,108,162,0.5); }
.mosaic-image-container .fluid-image .overlay h4 { color:#fff; font-size:2.25em; text-align:center; position:absolute; top:50%; width:100%;
  -webkit-transform: translateY(-50%);  /* Chrome, Opera 15+, Safari 3.1+ */  /* IE 9 */
          transform: translateY(-50%);  /* Firefox 16+, IE 10+, Opera */
}

/** Containers **/
.content-area,
.content-area.column,
.content-area.columns { padding-bottom:2.5em; padding-top:2.5em; }
.content-area.double { padding-bottom:5em; padding-top:5em; }
.content-area.white { background-color:#fff; }

.divider-small { margin-top:2em; }
.divider-medium { margin-top:2em; }

.left-col { }
.right-col { margin-top:1em; }

/*
 * Footer
 */
#bottom-bar { background-color:#111; color:#fff; padding:2em 0; }
#bottom-bar a.footer-logo { display:block; max-width:400px; width:100%; }
#bottom-bar .legality { padding-top:2em; }
#bottom-bar a { color:#fff; }
#bottom-bar a:hover { color:#ccc; }

#disclaimer { background-color:#111; color:#666; font-size:0.65em; padding-bottom:0; padding-top:4em; }

/* ==========================================================================
   Typography
   ========================================================================== */
h1, h2, h3, h4 { font-weight:700; line-height:0.9; letter-spacing:-0.025em; margin:1em 0; text-transform:uppercase; }
h1, h2 { font-size:4em; }
h3 { font-size:3em; }

h1:first-child, h2:first-child, h3:first-child, h4:first-child, p:first-child, ul:first-child, ol:first-child { margin-top:0; }
h1:last-child, h2:last-child, h3:last-child, h4:last-child, p:last-child, ul:last-child, ol:last-child { margin-bottom:0; }

h3.title-divider { color:#000; font-size:3em; font-weight:500; letter-spacing:0; text-transform:none; }
.generatedcontent .title-divider { margin-bottom:0.75em; padding-bottom:0.75em; position:relative; }
.generatedcontent .title-divider:after { background-color:#000; content:''; display:block; height:4px; margin-top:-2px; position:absolute; bottom:0; width:100px; }

.white h3.title-divider { color:#04bde7; }
.generatedcontent .white .title-divider:after { background-color:#04bde7; }

.gradient-text {
	color:#04bde7;
	-webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  	background-image: -webkit-linear-gradient(left, #966ca3, #04bde7);
	background-image: -o-linear-gradient(left, #966ca3, #04bde7);
}

.gradient-peach-top-bottom h3.title-divider,
.gradient-blue-top-bottom h3.title-divider { color:#fff; }
.generatedcontent .gradient-peach-top-bottom .title-divider:after,
.generatedcontent .gradient-blue-top-bottom .title-divider:after { background-color:#fff; }

p, ul, ol { font-size:1.25em; line-height:1.4; margin:1em 0; }
ul, ol { font-weight:300; padding-left:40px; }
ul p { font-size:1em; }

span.white { color:#fff; }

.promo h2 { margin:0; }
.promo p:first-child { margin-top:2em; }

/* ==========================================================================
   Links
   ========================================================================== */
 a { color:#000; text-decoration:none;
  -webkit-transition: color 0.25s ease-out, background-color 0.25s ease-out, border-color 0.25s ease-out; 
          transition: color 0.25s ease-out, background-color 0.25s ease-out, border-color 0.25s ease-out;
}
a:hover { border-bottom:none; color:#333; text-decoration:none; }
a:focus { border-bottom:none; color:#333; text-decoration:none; }  
 
.button { border-radius:50px; font-size:0.875em; letter-spacing:0.175em; margin-bottom:0; padding:1.25em 2.5em; text-transform:uppercase; }
.button.hollow { border-width:2px; }
.button.hollow.black { border-color:#000; color:#000; }
.button.hollow.black:hover { background-color:#000; color:#fff; }
.button.hollow.black span { color:#000; -webkit-transition:none; transition:none; }
.button.hollow.black:hover span {
	color:#fff;
	-webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  	background-image: -webkit-linear-gradient(left, #966ca3, #04bde7);
	background-image: -o-linear-gradient(left, #966ca3, #04bde7);
}
.button.hollow.white { border-color:#fff; color:#fff; }
.button.hollow.white:hover { background-color:#fff; color:#000; }
.button.hollow.white span { color:#fff; -webkit-transition:none; transition:none; }
.button.hollow.white:hover span {
	color:#000;
	-webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  	background-image: -webkit-linear-gradient(left, #966ca3, #04bde7);
	background-image: -o-linear-gradient(left, #966ca3, #04bde7);
}

.button-spacer { margin-top:1em; }
.button-spacer .button { margin-top:1em; }

/* ==========================================================================
   Forms
   ========================================================================== */
input, textarea { background-color:#fff; border:2px solid #fff; border-radius:0; cursor:pointer; font-size:1em; margin:0; padding:0.75em; outline:none; text-shadow:none; width:100%;
  -webkit-appearance: none;
  -webkit-transition: color 0.25s ease-out, background-color 0.25s ease-out, border-color 0.25s ease-out; 
          transition: color 0.25s ease-out, background-color 0.25s ease-out, border-color 0.25s ease-out;
}
.white input, .white textarea  { background-color:#e8ebef; border-color:#e8ebef; }
input:hover, textarea:hover { border-color:#00b2ad; }
input:focus, textarea:focus { background-color:#00b2ad; border-color:#00b2ad; color:#fff; }
textarea { height:180px; resize:vertical; }

label { font-size:0.875em; margin-bottom:10px; }
.white label { color:#04bde7; }

input.gform_button { background-color:transparent; border:2px solid #fff; border-radius:50px; color:#fff; font-size:1em; letter-spacing:0.175em; margin-bottom:0; padding:1.25em 2.5em; text-transform:uppercase; width:auto; }
input.gform_button:hover,
input.gform_button:focus { background-color:#fff; color:#04bde7; }
.white input.gform_button { border-color:#04bde7; color:#04bde7; }
.white input.gform_button:hover,
.white input.gform_button:focus { background-color:#04bde7; color:#fff; }

.gform_wrapper ul { list-style:none; margin:0; padding:0; }
.gform_wrapper ul li { margin-bottom:20px; }
.gf_clear { clear:both; }

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

/** Warnings **/
.validation_error { display:none; }
.validation_message { display:none !important; }
.gfield_contains_required.gfield_error input,
.gfield_contains_required.gfield_error textarea,
.gfield_contains_required.gfield_error select { border-color:red !important; }
.gfield_contains_required.gfield_error label { color:red !important; }

/* ==========================================================================
   Forms
   ========================================================================== 
$breakpoints: (
  small: 0,
  medium: 640px,
  large: 1024px,
  xlarge: 1440px,
  xxlarge: 1920px,
)
*/

@media only screen { } /* Define mobile styles */

@media only screen and (max-width: 40em) {
	.demographics h2 { font-size:2.5em; }
	.page-master-plan .render { background-color:#fff; padding-top:100px !important; }
} /* max-width 640px, mobile-only styles, use when QAing mobile issues */

@media only screen and (orientation: landscape) {
	#site-header .header-background .contact-details { display:none; }
}

@media only screen and (max-width: 64em) {
	body.locked { overflow:hidden; }
}
@media only screen and (min-width: 32em) {
	.button-spacer .button { margin-left:1em; }
	.button-spacer .button:first-child { margin-left:0; }
}

/* Medium screens - min-width 640px */
@media only screen and (min-width: 40em) {
	body { font-size:16px; }
	
	#site-header { padding:8em 0.9375rem 0.9375rem; }
	#site-header h1 { top:2em; left:0.9375rem; }
	#site-header nav ul li a { line-height:2; }
	#site-header button.menu-button { top:2em; right:0.9375rem; }
	#site-header .header-background .contact-details { display:block; color:#fff; position:absolute; left:0.9375rem; bottom:0.9375rem; }
	#site-header .header-background .contact-details a,
	#site-header .header-background .contact-details a:hover { color:#fff; }
	
	.row.promo .fluid-image-container .fluid-image { height:50vw; }
	
	#bottom-bar a.footer-logo { float:right; }
	
	h1, h2 { font-size:4.5em; }
	.demographics h2 { font-size:4em; }
	h3 { font-size:4em; }
	h3.title-divider { font-size:4em; }
	
	.page-banner .sales-tag { font-size:2em; height:180px; padding:1.4em 0.5em; left:0; top:-180px; width:180px; }
	
	.partner-block .logo-wrap { height:100px; }
	.partner-block .logo-wrap.crawford { height:120px; }
	
	.slider-control a .slide-icon { height:180px; width:180px; }
	.slider-control a .slide-icon .icon-wrap { padding:2em; }
	.slider-control a.current-upgrades .slide-icon .icon-wrap { padding:3em; }
	.slider-control a.economy .slide-icon .icon-wrap { padding:2.5em; }
	.panel-content { padding-left:10%; padding-right:10%; }
	
	.image-gallery .image-wrap { float:left; width:50%; }
	
	/** Containers **/
	.content-area { padding-bottom:4em; padding-top:4em; }
	.content-area.column,
	.content-area.columns { padding-bottom:3em; padding-top:3em; }
	.content-area.double { padding-bottom:6em; padding-top:6em; }
	
	.divider-small { margin-top:0; }
	
	#bottom-bar { padding:3em 0; }
	#bottom-bar .legality { padding-top:3em; }
	
	.input_left,
	.input_right,
	.name_first,
	.name_last,
	.input_mid { display:block; width:50%; }
	.input_left,
	.name_first { float:left; padding-right:4px; }
	.input_right,
	.name_last { float:right; padding-left:4px; }
	
	.gfield.one_third { width:34%; }
	.gfield.two_thirds { width:66%; }
	
	section.map { font-size:0.50em; }
	
	#sales-leasing-wrapper { padding:60px 0; }

} @media only screen and (min-width: 40em) and (max-width: 64em) { } /* min-width 641px and max-width 1024px, use when QAing tablet-only issues */

@media only screen and (max-width: 64em) {

.page-master-plan #site-header h1 a img.coloured { opacity:1; }
.page-master-plan #site-header h1 a img.white { opacity:0; }

.page-master-plan #site-header.open h1 a img.coloured { opacity:0; }
.page-master-plan #site-header.open h1 a img.white { opacity:1; }

.page-master-plan #site-header.closed button.menu-button span { background-color:#000; }
.page-master-plan #site-header.open button.menu-button span { background-color:#fff; }

.page-master-plan .render { background-color:#fff; padding-top:120px; }

}

/* Large screens - min-width 1024px */
@media only screen and (min-width: 64em) {
	
	#site-header { padding:2em 1.5em; }
	#site-header,
	#site-header.open { height:auto; position:absolute; }
	.csscalc #site-header { position:relative; }
	#site-header h1 { font-size:1em; height:58px; margin:0; position:absolute; top:2em; left:0.9375rem; width:54px; }
	#site-header h1 a img { opacity:0; }
	#site-header h1 a img.white { opacity:1; }
	/*#site-header nav { float:left; left:50%; opacity:0; position:relative; z-index:-5;
		-webkit-transition: opacity 0.25s ease-out; 
				transition: opacity 0.25s ease-out;
	}
	#site-header nav { height:auto; overflow:visible; opacity:1; z-index:0; }
	#site-header nav ul { font-weight:500; padding:0; position:relative; right:50%; }
	#site-header nav ul li { float:left; }*/
	#site-header nav { float:right; height:auto; overflow:visible; opacity:1; z-index:0; }
	#site-header nav ul { font-weight:500; padding:0; }
	#site-header nav ul li { float:left; }
	#site-header nav ul li a { color:#fff; font-size:1em; line-height:58px; padding:0 0.75em; }
	#site-header nav ul li:last-child a { padding-right:0; }
	#site-header nav ul li a span.underline {
			  -webkit-transform-origin:center center;
			          transform-origin:center center;
	}
	
	#site-header.closed .header-background { opacity:1; }
	#site-header.open .header-background { opacity:1; }
	
	#site-header .header-background .contact-details { display:none; }

	#site-header button.menu-button { display:none; top:2em; right:0.9375rem; }
	
	.page-banner { height:60vw; max-height:75vh; }
	.page-banner.full-screen { height:100vh; max-height:100vh; }
	.csscalc .page-banner { height:calc(60vw - 140px); max-height:calc(75vh - 140px); }
	.csscalc .page-banner.full-screen { height:calc(100vh - 140px); max-height:calc(100vh - 140px); }
	
	.page-banner .sales-tag { font-size:2.5em; height:220px; padding:1.25em 0.5em;left:-150px; top:-200px; width:220px; }
	
	.project-partners h2 { font-size:5em; }
	.partner-block { margin-top:4em; }
	.partner-block:first-child { margin-top:0; }
	.partner-block .logo-wrap { margin-bottom:3em; }
	
	.slider-control a .slide-icon { height:220px; width:220px; }
	.slider-control a.current-upgrades .slide-icon .icon-wrap { padding:4em; }
	.slider-control a.economy .slide-icon .icon-wrap { padding:3.5em; }
	.slider-control a h4 { font-size:1.75em; }
	
	.image-gallery .image-wrap { width:33.33%; }
	
	/** Promo **/
	.promo .text-wrap-right { padding-left:1.5em; }
	.fluid-image-container { overflow:visible; }
	
	.home .row.promo.row-3 .fluid-image-container { display:block; }
	
	.row.promo .fluid-image-container .fluid-image { background-position:center center; background-repeat:no-repeat; background-size:cover; height:100%; margin:0; position:absolute; top:0; bottom:0; z-index:-1; width:50vw; }
	.row.promo .fluid-image-container .fluid-image.push-right { left:0; }
	.row.promo .fluid-image-container .fluid-image.push-left { right:0; }
	
	.row.about-page .columns,
	.row.content-row .columns { min-height:650px; }
	
	.background-bleed .background { width:50vw; }
	
	.right-col { padding-left:45px; }
	
	h1, h2 { font-size:5em; }
	h3 { font-size:5em; }
	h3.title-divider { font-size:5em; }
	
	/** Containers **/
	.content-area { padding-bottom:6em; padding-top:6em; }
	.content-area.column,
	.content-area.columns { padding-bottom:4em; padding-top:4em; }
	.content-area.double { padding-bottom:8em; padding-top:8em; }
	
	.divider-medium { margin-top:0; }
	
	section.map { font-size:0.75em; }
	
	#sales-leasing-wrapper { padding:0; }
	#sales-leasing-wrapper .scroll-wrapper-gw { padding:80px 0; }
	
	.left-col { padding-right:3em; }
	.right-col { margin-top:0; padding-left:3em; }
	
} @media only screen and (min-width: 64em) and (max-width: 90em) { .promo.glc-page h2 { font-size:4em; } } /* min-width 1025px and max-width 1440px, use when QAing large screen-only issues */

/* XLarge screens - min-width 1440px */
@media only screen and (min-width: 90em) {
	
	#site-header { padding:2.5em 0.9375rem; }
	#site-header h1 { top:2.5em; left:0.9375rem; }
	#site-header button.menu-button { top:2.5em; right:0.9375rem; }
	#site-header nav ul li a { padding:0 1.5em; }
	
	.page-banner .sales-tag { left:-200px; top:-200px; }
	
	.project-partners h2 { font-size:7em; }
	.partner-block { margin-top:6em; }
	
	/** Promo **/
	.promo .text-wrap-right { padding-left:3.5em; }
	
	/** Containers **/
	.content-area { padding-bottom:7.5em; padding-top:7.5em; }
	.content-area.column,
	.content-area.columns { padding-bottom:5em; padding-top:5em; }
	.content-area.double { padding-bottom:10em; padding-top:10em; }
	
	section.map { font-size:1em; }	
	
	/*#sales-leasing-wrapper { height:calc(100vh - 140px); }
	#sales-leasing-wrapper .columns,
	#sales-leasing-wrapper .scroll-wrapper-gw,
	#sales-leasing-wrapper .scroll-content-gw,
	#sales-leasing-wrapper .map-wrapper { height:100%; }*/
	#sales-leasing-wrapper .scroll-wrapper-gw { padding:80px 0; }
	/*#sales-leasing-wrapper .scroll-content-gw { padding-right:24px; overflow-y: scroll; }*/
	#sales-leasing-wrapper .map-wrapper { opacity:0; overflow:hidden; position:relative; width:100%; }
	#sales-leasing-wrapper .map-wrapper * { height:auto !important; width:100% !important; }
	#sales-leasing-wrapper .map-wrapper .map-position { background-color:#fff; height:auto !important; }
	
	/*#sales-leasing-wrapper { overflow:hidden; }
	#sales-leasing-wrapper .xlarge-8 { position:fixed; height:100%; padding-top:140px; padding-bottom:260px; top:0; right:0; }
	#sales-leasing-wrapper .xlarge-8 .map-wrapper { height:100%; }*/
	
	/*.block-list li.active { color:#000; }
	.block-list li:before { content:''; display:block; height:100%; opacity:0; position:absolute; top:0; left:0; width:100%; z-index:0;
		-webkit-transition:opacity 0.25s ease-out;
		transition:opacity 0.25s ease-out;
	}
	.block-list li.active:before { opacity:1; }*/
	
	.block-list.leasing { margin-right:15% !important; }
	
} @media only screen and (min-width: 90em) and (max-width: 120em) { } /* min-width 1441px and max-width 1920px, use when QAing xlarge screen-only issues */

/* XXLarge screens - min-width 1920px */
@media screen and (min-width: 120em) {
	
	#site-header { padding:2.5em 5em; }
	#site-header h1 { top:2.5em; left:5em; }
	#site-header button.menu-button { top:2.5em; right:5em; }
	#site-header nav ul li a { padding:0 2em; }
	
	/** Promo **/
	.promo h2 { font-size:7em; }
	.promo .text-wrap-right { padding-left:7em; }
	
	#sales-leasing-wrapper .scroll-wrapper-gw { padding:80px 0; }
	/*#sales-leasing-wrapper .scroll-content-gw { padding-right:40px; }*/
	
}


/* ==========================================================================
   Plugin Styles
   ========================================================================== */

/** Slider Controls **/
.flex-direction-nav { height:0; list-style:none; margin:0; padding:0; width:100%; }
.flex-direction-nav li { height:0; width:100%; }
.flex-direction-nav li a { background-color:transparent; border:1px solid #000; color:#000; display:block; height:100%; position:absolute; top:0; overflow:hidden; width:51px; text-align:center; z-index:50;
  -webkit-transition: background-color 0.25s ease-out, width 0.25s ease-out; 
          transition: background-color 0.25s ease-out, width 0.25s ease-out;
}
.flex-direction-nav li a i { margin-top:-0.5em; position:absolute; top:50%; }
.flex-direction-nav li a.flex-next { border-right:none; right:-50px; }
.flex-direction-nav li a.flex-prev { border-left:none; left:-50px; }
.flex-direction-nav li a.flex-disabled { color:#999; cursor:not-allowed; }

.flex-direction-nav li a:hover { background-color:#000; color:#fff; }
.flex-direction-nav li a.flex-disabled:hover { background-color:transparent; color:#999; }

.flex-control-paging { height:15px; list-style:none; margin:3em 0 0; padding:0 15px; position:relative; left:0; text-align:center; width:100%; z-index:10; }
.flex-control-paging li { height:15px; display:inline-block; margin:0 3px; width:15px; }
.flex-control-paging li a { border:none; background-color:#ddd; cursor:pointer; display:inline-block; height:15px; overflow:hidden; text-indent:999px; width:15px;
  border-radius: 50%; 
  background-clip: content-box;
}
.flex-control-paging li a:hover { background-color:#18cdc8; }
.flex-control-paging li a.flex-active { background-color:#0086b4; }

/* FlexSlider Necessary Styles
*********************************/
.flexslider {margin: 0; padding: 0;}
.flexslider .slides > li {display: none;} /* Hide the slides before the JS is loaded. Avoids image jumping */
.flexslider .slides img {width: 100%; display: block;}
ul.slides { list-style:none; margin:0; padding:0 !important; }

/* Clearfix for the .slides element */
.slides:after {content: "\0020"; display: block; clear: both; visibility: hidden; line-height: 0; height: 0;}
html[xmlns] .slides {display: block;}
* html .slides {height: 1%;}

/* No JavaScript Fallback */
/* If you are not using another script, such as Modernizr, make sure you
 * include js that eliminates this class on page load */
.no-js .slides > li:first-child {display: block;}

/*!--------------------------------------------------------------------
STYLES "Outdated Browser"
Version:    1.1.0 - 2014
author:     Burocratik
website:    http://www.burocratik.com
* @preserve
-----------------------------------------------------------------------*/
#outdated{
    display: none; position: fixed; top: 0; left: 0; width: 100%; height: 170px;
    text-align: center; text-transform: uppercase; z-index:1500;
    background-color: #f25648; color: #ffffff;
}
* html #outdated{position: absolute;}
#outdated h6{font-size: 25px; line-height: 25px; margin: 30px 0 10px;}
#outdated p{font-size: 12px; line-height: 12px; margin: 0;}
#outdated #btnUpdateBrowser{
    display: block; position: relative; padding: 10px 20px; margin: 30px auto 0; width: 230px; /*need for IE*/
    color: #ffffff; text-decoration: none; border: 2px solid #ffffff; cursor: pointer;
}
#outdated #btnUpdateBrowser:hover{color: #f25648; background-color:#ffffff;}
#outdated .last{position: absolute; top: 10px; right: 25px; width: 20px; height: 20px;}
#outdated #btnCloseUpdateBrowser{ border-bottom:none;
    display: block; position: relative; width: 100%; height: 100%;
    text-decoration: none; color: #ffffff; font-size: 36px; line-height: 36px;
}

/*************** SCROLLBAR BASE CSS ***************/
 

.scroll-wrapper > .scroll-content::-webkit-scrollbar {
    height: 0;
    width: 0;
}
 
.scroll-element {
    display: none;
}
.scroll-element, .scroll-element div {
    box-sizing: content-box;
}
 
.scroll-element.scroll-x.scroll-scrollx_visible,
.scroll-element.scroll-y.scroll-scrolly_visible {
    display: block;
}
 
.scroll-element .scroll-bar,
.scroll-element .scroll-arrow {
    cursor: default;
}
 
.scroll-textarea {
    border: 1px solid #cccccc;
    border-top-color: #999999;
}
.scroll-textarea > .scroll-content {
    overflow-y: hidden !important;
}
.scroll-textarea > .scroll-content > textarea {
    border: none !important;
    box-sizing: border-box;
    height: 100% !important;
    margin: 0;
    max-height: none !important;
    max-width: none !important;
    overflow: scroll !important;
    outline: none;
    padding: 2px;
    position: relative !important;
    top: 0;
    width: 100% !important;
}
.scroll-textarea > .scroll-content > textarea::-webkit-scrollbar {
    height: 0;
    width: 0;
}
 
 
 
 
/*************** SCROLLBAR RAIL ***************/
 
.scrollbar-rail > .scroll-element,
.scrollbar-rail > .scroll-element div
{
    border: none;
    margin: 0;
    overflow: hidden;
    padding: 0;
    position: absolute;
    z-index: 10;
}
 
.scrollbar-rail > .scroll-element {
    background-color: transparent;
}
 
.scrollbar-rail > .scroll-element div {
    display: block;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
}
 
.scrollbar-rail > .scroll-element .scroll-element_size {
    background-color: #000;
}
 
.scrollbar-rail > .scroll-element .scroll-element_outer:hover .scroll-element_size {
    background-color: #333;
}
 
.scrollbar-rail > .scroll-element.scroll-x {
    bottom: 0;
    height: 12px;
    left: 0;
    min-width: 100%;
    padding: 3px 0 2px;
    width: 100%;
	display:none !important;
}
 
.scrollbar-rail > .scroll-element.scroll-y {
    height: 100%;
    min-height: 100%;
    padding:0;
    right: 20px;
    top: 0;
    width: 12px;
}
@media screen and (min-width: 120em) {
	.scrollbar-rail > .scroll-element.scroll-y {
		right:34px;
	}
}
 
.scrollbar-rail > .scroll-element .scroll-bar {
    background-color: #000;
    border-radius: 0;
 
    box-shadow:none;
}
 
.scrollbar-rail > .scroll-element .scroll-element_outer:hover .scroll-bar {
}
 
/* scrollbar height/width & offset from container borders */
 
.scrollbar-rail > .scroll-content.scroll-scrolly_visible { left: 0; margin-left: 0; }
.scrollbar-rail > .scroll-content.scroll-scrollx_visible { margin-top: 0; top: 0; }
 
.scrollbar-rail > .scroll-element.scroll-x .scroll-bar { height: 10px; min-width: 10px; top: 1px; }
.scrollbar-rail > .scroll-element.scroll-y .scroll-bar { left: 2px; min-height: 10px; width: 8px; }
 
.scrollbar-rail > .scroll-element.scroll-x .scroll-element_outer { height: 15px; left: 5px; }
.scrollbar-rail > .scroll-element.scroll-x .scroll-element_size { height: 2px; left: -10px; top: 5px; }
 
.scrollbar-rail > .scroll-element.scroll-y .scroll-element_outer { top: 0; width: 12px; }
.scrollbar-rail > .scroll-element.scroll-y .scroll-element_size { left: 5px; top:0; width: 2px; }
 
/* update scrollbar offset if both scrolls are visible */
 
.scrollbar-rail > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_size { left: -25px; }
.scrollbar-rail > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_size { top: -25px; }
 
.scrollbar-rail > .scroll-element.scroll-x.scroll-scrolly_visible .scroll-element_track { left: -25px; }
.scrollbar-rail > .scroll-element.scroll-y.scroll-scrollx_visible .scroll-element_track { top: -25px; }