::-moz-selection { background: #b3d4fc; text-shadow: none; }
::selection { background: #b3d4fc; text-shadow: none; }
audio, canvas, iframe, img, svg, video { vertical-align: middle; }
fieldset { border: 0; margin: 0; padding: 0; }
textarea { resize: vertical; }

/* ==========================================================================
   Custom styles
   ========================================================================== */

html, body { margin: 0; font-size: 14.5px; line-height: 140%; color: #191919; background-color: #EAEAEA; }

body { margin: 0; text-align: center; max-width: 100%; overflow-x: hidden; }

body, p, ul, ol, td, th, form, input, select, .click_list { font-family: 'proxima-nova', sans-serif; font-weight: 400; }

p, ul, ol, td, th, form { margin: 0.8em 0; line-height: 140%; }
p strong, ul strong, ol strong, td strong, th strong { font-weight: 700; }

h1, h2, h3, h4, h5, h6, .h1style, .h2style, .h3style, .h4style, .h5style, .h6style { font-family: 'proxima-nova', sans-serif; font-weight: 400; }

h1, .h1style { font-size: 2.30em; line-height: 105%; margin-top: 0.80em; margin-bottom: 0.35em; }
h2, .h2style { font-size: 1.80em; line-height: 110%; margin-top: 0.83em; margin-bottom: 0.50em; }
h3, .h3style { font-size: 1.30em; line-height: 115%; margin-top: 0.85em; margin-bottom: 0.65em; }
h4, .h4style { font-size: 1.10em; line-height: 130%; margin-top: 0.80em; margin-bottom: 0.80em; }
h5, .h5style { font-size: 0.90em; line-height: 143%; margin-top: 0.81em; margin-bottom: 0.81em; }
h6, .h6style { font-size: 0.80em; line-height: 146%; margin-top: 0.82em; margin-bottom: 0.82em; }

@media (min-width: 768px) {
	h1, .h1style { font-size: 2.80em; }
	h2, .h2style { font-size: 1.90em; }
	h3, .h3style { font-size: 1.40em; }
    h4, .h4style { font-size: 1.15em; }
}

h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong, .h1style strong, .h2style strong, .h3style strong, .h4style strong, .h5style strong, .h6style strong { font-weight: 700; }

h3.circle { font-size: 1.15em; color: #FFF; display: inline-block; width: 100px; height: 100px; padding-top: 41px; border-radius: 60px; margin-top: 1.8em; margin-bottom: 0.2em; letter-spacing: 0.05em; }
h3.circle.overlap { margin-top: -60px; margin-bottom: -1.5em; position: relative; top: -7px; }
h3.circle.green { background-color: #8dc63f; }
h3.circle.orange { background-color: #ef9e39; }
h3.circle.purple { background-color: #882459; }
h3.circle.blue { background-color: #0073bc; }
@media (min-width: 768px) {
    h3.circle { font-size: 1.30em; width: 120px; height: 120px; padding-top: 50px; border-radius: 60px; }
    h3.circle.overlap { margin-top: -60px; margin-bottom: -1.5em; top: -7px; }
}

hr { display: block; height: 1px; border: 0; border-top: 1px solid #999; margin: 1em 0; padding: 0; }
hr.hr_area_divider { margin: 2em 0; }
@media (min-width: 768px) {
    hr.hr_area_divider { margin: 3em 0; }
}

img { max-width: 100%; }

a { color: #191919; text-decoration: underline; outline: 0; }
a:hover { color: #191919; text-decoration: none; outline: 0; }
a:focus { outline: 0; }

a.continue { text-decoration: none; border: 1px solid #666; padding: 0.5em 0.6em; }
a.continue:hover { text-decoration: none; }
a.continue img { width: 20px; }
a.big_button { text-decoration: none; display: inline-block; color: #FFF; border: 0; background-color: #0073bc; padding: 0.85em 2em; font-size: 0.85em; font-weight: 700; line-height: 100%; letter-spacing: 0.1em; text-transform: uppercase; }
a.big_button:hover { text-decoration : none; background-color: #0073bc; }
@media (min-width: 992px) {
    a.continue { padding: 0.3em 0.4em; }
}

button.button1 { border: 0; color: #FFF; background-color: #0073bc; border-radius: 0; height: 30px; padding: 0.15em 2em 0 2em; font-size: 0.85em; font-weight: 700; line-height: 100%; letter-spacing: 0.1em; text-transform: uppercase; text-decoration: none; cursor: pointer; display: inline-block; vertical-align: top; }

.bigger, .area_bigger p { font-size: 1.05em; line-height: 142%; }
@media (min-width: 768px) {
    .bigger, .area_bigger p { font-size: 1.1em; line-height: 145%; }
}

.nm { margin: 0; }
.ntm { margin-top: 0; }
.nbm { margin-bottom: 0; }
.stm { margin-top: 0.5em; }
.sbm { margin-bottom: 0.5em; }
.btm { margin-top: 1.1em; }
.bbm { margin-bottom: 1.1em; }
.vbtm { margin-top: 1.6em; }
.vbbm { margin-bottom: 1.6em; }
.vvbtm { margin-top: 2em; }
.vvbbm { margin-bottom: 2em; }

.fl { float: left; }
.fr { float: right; }
.cll { clear: left; }
.clr { clear: right; }
.cl, .clear { clear: both; }
@media (max-width: 768px) {
    .xs_clear { clear: both; }
}

.alleft { text-align: left; }
.alcenter { text-align: center; }
.alright { text-align: right; }

.grey_bg { background-color: #D9D9D9; }
.green { color: #8dc63f; }
.orange { color: #ef9e39; }
.purple { color: #882459; }
.blue { color: #0073bc; }
.has-error { color: #CC0000; font-weight: 700; margin-bottom: 0.4em; }

.area_space_above { padding-top: 2em; }
.area_space_bottom { padding-bottom: 2em; }
.area_v_space { padding-top: 0.5em; padding-bottom: 2em; }
@media (min-width: 768px) {
	.area_space_above { padding-top: 2.5em; }
    .area_space_bottom { padding-bottom: 2.5em; }
    .area_h_space { padding-left: 3em; padding-right: 3em; }
    .area_h_space_max { padding-left: 4em; padding-right: 4em; }
    .area_v_space { padding-top: 1em; padding-bottom: 3em; }
}
@media (min-width: 992px) {
    .area_h_space { padding-left: 8em; padding-right: 8em; }
    .area_h_space_max { padding-left: 10em; padding-right: 10em; }
}
@media (min-width: 1200px) {
	.area_h_space { padding-left: 13em; padding-right: 13em; }
    .area_h_space_max { padding-left: 17em; padding-right: 17em; }
    .area_v_space { padding-top: 1.8em; padding-bottom: 4em; }
}

#contact_code { margin: 0.8em 0;}

header { position: relative; overflow: hidden; }
header, #header_slider, #header_slider .slide { height: 480px; }
#header_slider .slide { width: 100%; float: left; background-color: #EAEAEA; background-size: cover; position: relative; }
#header_slider .slide .container { height: 100%; }
#header_slider .slide .slide_info { margin: 0 -15px; height: 100%; padding-top: 20px; text-align: left; }
#header_slider .slide .slide_info_green { background-color: rgba(141, 198, 63, 0.7); }
#header_slider .slide .slide_info_orange { background-color: rgba(239, 158, 57, 0.7); }
#header_slider .slide .slide_info_purple { background-color: rgba(136, 36, 89, 0.7); }
#header_slider .slide .slide_info_blue { background-color: rgba(0, 115, 188, 0.7); }
#header_slider .slide .slide_info img.logo { width: 200px; display: block; margin-left: 15px; }
#header_slider .slide .slide_info h3 { color: #FFF; padding: 0 15px; font-size: 42px; line-height: 44px; letter-spacing: -0.02em; margin-top: 120px; margin-bottom: 12px; }
#header_slider .slide .slide_info p { color: #FFF; padding: 0 15px; font-size: 1.05em; line-height: 142%; }
#header_slider .slide .slide_info a { color: #FFF; text-decoration: none; }
#header_slider .slide .slide_info a:hover { text-decoration: underline; }

@media (min-width: 768px) {
    header, #header_slider, #header_slider .slide { height: 550px; }
    #header_slider .slide .slide_info { width: 550px; height: 430px; margin: 0 0 0 -110px; background-position: right bottom; background-color: transparent; background-size: cover; }
    #header_slider .slide .slide_info_green { background-color: transparent; background-image: url(../img/main/header_green.png); }
    #header_slider .slide .slide_info_orange { background-color: transparent; background-image: url(../img/main/header_orange.png); }
    #header_slider .slide .slide_info_purple { background-color: transparent; background-image: url(../img/main/header_purple.png); }
    #header_slider .slide .slide_info_blue { background-color: transparent; background-image: url(../img/main/header_blue.png); }
    #header_slider .slide .slide_info img.logo { margin-left: 110px; }
    #header_slider .slide .slide_info h3 { padding: 0 30px 0 110px; font-size: 47px; line-height: 49px; margin-top: 15px; }
    #header_slider .slide .slide_info p { padding: 0 60px 0 110px; font-size: 1.1em; line-height: 145%; }
}
@media (min-width: 992px) {
    header, #header_slider, #header_slider .slide { height: 650px; }
    #header_slider .slide .slide_info h3 { font-size: 52px; line-height: 54px; }
}
@media (min-width: 1200px) {
    header, #header_slider, #header_slider .slide { height: 700px; }
    #header_slider .slide .slide_info { width: 620px; height: 460px; margin: 0 0 0 -120px; }
    #header_slider .slide .slide_info img.logo { margin-left: 120px; }
    #header_slider .slide .slide_info h3 { padding: 0 30px 0 120px; font-size: 56px; line-height: 58px; }
    #header_slider .slide .slide_info p { padding: 0 70px 0 120px; }
}

#header_nav { position: absolute; top: 1.5em; right: 0.7em; z-index: 992; }
#header_nav img { height: 20px; cursor: pointer; margin-right: 1em; }
#header_nav_bg { display: none; position: absolute; background: transparent; width: 100%; height: 100%; z-index: 991; }
@media (min-width: 768px) {
    #header_nav { top: 1.7em; right: 0.7em; }
    #header_nav img { height: 25px; margin-right: 1.3em; }
}

#nav_main { display: none; position: absolute; right: 0; top: 0; padding: 2.2em; width: 100%; height: 100%; z-index: 993; background-color: rgba(25, 25, 25, 0.9); text-align: left; }
#nav_main ul { margin-top: 5em; padding: 0; list-style: none; list-style-type: none; }
#nav_main ul li { border-bottom: 1px solid #FFF; position: relative; }
#nav_main ul li a, #nav_main ul li a:link, #nav_main ul li a:visited { display: block; padding: 0.5em 0 0.5em 1.2em; color: #FFF; text-decoration: none; }
#nav_main ul li a:hover, #nav_main ul li a:active { text-decoration: none; color: #8dc63f; }
#nav_main ul li:before { content: '\203A'; color: #FFF; position: absolute; left: 0; top: 0.4em; }
#nav_main img#closenav { position: absolute; top: 1.7em; right: 1.7em; height: 30px; cursor: pointer; }
@media (min-width: 768px) {
    #nav_main { width: auto; }
	#nav_main ul li a, #nav_main ul li a:link, #nav_main ul li a:visited { padding-right: 2em; }
}

#header_search { display: none; position: absolute; width: 100%; height: 100%; z-index: 993; background-color: rgba(25, 25, 25, 0.9); text-align: center; }
#header_search img#closesearch { position: absolute; top: 1.7em; right: 1.7em; height: 30px; cursor: pointer; }
#header_search form { font-size: 1.5em; position: absolute; text-align: center; width: 100%; top: 50%; margin-top: -1.5em; }
#header_search form input { width: 60%; border: 0; border-radius: 0; border-bottom: 1px solid #FFF; color: #FFF; background-color: transparent; margin-right: 0.6em; display: inline-block; vertical-align: middle; padding-bottom: 0.3em; }
#header_search form button { border: 0; color: #FFF; background-color: transparent; border-radius: 0; font-weight: 400; display: inline-block; vertical-align: middle; }
@media (min-width: 768px) {
    #header_search form { font-size: 2em; }
    #header_search form input { width: 50%; }
}
@media (min-width: 992px) {
    #header_search form input { width: 40%; }
}
@media (min-width: 1200px) {
    #header_search form input { width: 35%; }
}

#container_master { max-width: 1500px; margin: 0 auto; }
#main { text-align: left; background-color: #FFF; }

.icons { padding-top: 1.3em; padding-bottom: 1.5em; }
.icon_info img { max-width: 80px; margin-left: -2px; display: block; }
@media (min-width: 768px) {
    .icon_info img { max-width: 90px; margin-left: -3px; }
}
@media (min-width: 1200px) {
    .icon_info img { max-width: 100px; margin-left: -4px; }
}

.click_latest_label { text-transform: uppercase; font-size: 0.9em; margin-top: 1em; }
.click_latest_img { display: block; margin: 1em 0; }

#masterplan { text-align: center; margin: 3em 0 5em 0; }

#img_block1 .row1 { height: 180px; position: relative; }
#img_block1 .row1 .big1 { height: 100%; width: 70%; background: transparent url(../img/photos/610548494.jpg) no-repeat 75% 30%; background-size: cover; float: left; }
#img_block1 .row1 .small1 { height: 50%; width: 30%; background: transparent url(../img/photos/499283928.jpg) no-repeat 75% 30%; background-size: cover; float: left; }
#img_block1 .row1 .small2 { height: 50%; width: 30%; background: transparent url(../img/photos/532403846.jpg) no-repeat 50% 50%; background-size: cover; float: left; }
#img_block1 .row2 { height: 100px; position: relative; }
#img_block1 .row2 .small1 { height: 100%; width: 50%; background: transparent url(../img/photos/508496916.jpg) no-repeat 50% 40%; background-size: cover; float: left; }
#img_block1 .row2 .small2 { height: 100%; width: 50%; background: transparent url(../img/photos/532258569.jpg) no-repeat 50% 70%; background-size: cover; float: left; }
@media (min-width: 450px) {
    #img_block1 .row1 { height: 240px; }
    #img_block1 .row2 { height: 130px; }
}
@media (min-width: 590px) {
    #img_block1 .row1 { height: 300px; }
    #img_block1 .row2 { height: 175px; }
}
@media (min-width: 768px) {
    #img_block1 .row1 { height: 380px; }
    #img_block1 .row2 { height: 220px; }
}
@media (min-width: 992px) {
    #img_block1 .row1 { height: 450px; }
    #img_block1 .row2 { height: 250px; }
}
@media (min-width: 1200px) {
    #img_block1 .row1 { height: 550px; }
    #img_block1 .row2 { height: 320px; }
}

#timeline { display: inline-block; margin-top: 0.5em; }
@media (min-width: 992px) {
    #home_builders_logos img { max-width: 200px; }
    #timeline { margin-top: 1.5em; }
}

#contact_submit { text-align: right; margin-top: 26px; }

.search_sub { margin-top: 2em; border-bottom: 1px solid #CCC; padding-bottom: 0.3em; }
.search_result .s_label { text-transform: uppercase; font-size: 0.9em; margin-top: -0.8em; color: #777; }

footer { background-color: #D9D9D9; padding: 2em 0 1em 0; position: relative; }
footer .container { text-align: left; }
#nav_footer { display: none; float: left; padding: 0; list-style: none; list-style-type: none; }
#nav_footer li { line-height: 160%; }
#nav_footer li a { padding-left: 1.2em; text-decoration: none; }
#nav_footer li a:hover { text-decoration: underline; }
#nav_footer li:before { content: '\203A'; position: relative; top: -1px; }
footer .info { margin: 0.8em 0 1.2em 0; }
footer .info form input[type=email] { border: 0; height: 30px; padding: 0.15em 0 0 0.5em; margin-right: 0.6em; display: inline-block; vertical-align: top; width: 50%; }
footer .info form input[type=submit] { border: 0; color: #FFF; background-color: #0073bc; border-radius: 0; height: 30px; padding: 0.15em 2em 0 2em; font-size: 0.85em; font-weight: 700; line-height: 100%; letter-spacing: 0.1em; text-transform: uppercase; text-decoration: none; cursor: pointer; display: inline-block; vertical-align: top; }
footer .logo1 img { width: 200px; }
footer .logo2 img { width: 130px; }
#footer_base p { font-size: 12px; }
@media (min-width: 768px) {
    footer .info { float: left; }
    footer .logo1 { float: right; }
    #footer_base p { float: left; }
    footer .logo2 { float: right; display: block; margin-top: 0.6em; }
}
@media (min-width: 992px) {
    #nav_footer { display: block; }
    footer .info { margin-left: 1.5em; padding-left: 1.5em; border-left: 1px solid #191919; }
}
@media (min-width: 1200px) {
    footer .info { margin-left: 2.5em; padding-left: 2.5em; }
}

.paginate { padding: 0; list-style: none; list-style-type: none; }
.paginate li { display: inline-block; border-left: 1px solid #CCC; line-height: 100%; }
.paginate li:first-child { border: 0; }
.paginate li.disabled a { color: #999; }
.paginate li.active a { color: #191919; }
.paginate li a { color: #999; display: block; text-decoration: none; padding: 0.3em 0.6em; margin: -0.3em 0; }

.expander .content_full { display: none; }
.expander .content_full p { margin-bottom: 0; }
.expander .elabel { text-decoration: underline; cursor: pointer; }

/* ==========================================================================
   Helper classes
   ========================================================================== */

.clearfix:before, .clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }

/* ==========================================================================
   Print styles
   ========================================================================== */

@media print { 
	*, *:before, *:after { background: transparent !important; color: #000 !important; box-shadow: none !important; text-shadow: none !important; }
	a, a:visited { text-decoration: underline; }
    a[href]:after { content: " (" attr(href) ")"; }
    abbr[title]:after { content: " (" attr(title) ")"; }
	a[href^="#"]:after, a[href^="javascript:"]:after { content: ""; }
	pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
	thead { display: table-header-group; }
    tr, img { page-break-inside: avoid; }
	img { max-width: 100% !important; }
    p, h2, h3 { orphans: 3; widows: 3; }
    h2, h3 { page-break-after: avoid; }
}