body { font-family: 'Raleway', sans-serif; padding:0px;	margin:0px;	height:100%; width:100%; 
	/*background: linear-gradient(to bottom, #ffffff 0%, #f0f0f0 50%,#ffffff 100%);*/}

header { box-sizing: border-box; width:100%; background-color:  #ffffff; margin:0px; padding:20px 15px; }
#headerContent { margin:auto; max-width:1024px; width:100%; display: flex; justify-content: space-between; align-items:baseline; }

#logoBlock { display:inline-block; white-space: nowrap;}

header a { text-decoration: none; color:#000; }
header a:hover { text-decoration: none;	color:#f90; }


header img { vertical-align:baseline; margin-right:5px;	margin-bottom:-3px; }

header h1 {	display:inline-block; font-weight:900; margin:0px; white-space: nowrap; }

header ul {	vertical-align: baseline; display:inline-block; padding:0px; margin:0px; margin-top:1em; }
header ul li {display:inline-block; font-weight:700; font-size: 1.1em; }
header ul li a { text-decoration: none;	color:#000; }
header ul li a:hover { text-decoration: none; color:#F90; }
header ul li:after { white-space: pre; content: '   |   '; }
header ul li:last-child:after {	content:''; }


footer { margin:auto; max-width:1024px; text-align: center; }
footer ul li { display:inline-block; font-weight:700; font-size: 1em; }
footer ul li a { text-decoration: none;	color:#000; }
footer ul li a:hover { text-decoration: none; color:#F90; }
footer ul li:after { white-space: pre; 	content: '   |   '; }
footer ul li:last-child:after { content:''; }

.contentWidth {	margin:auto; max-width:1024px; }

h2 { display: block; }
h3 { margin:5px 0px 10px 0px; display:block; }

@media screen and (min-width: 990px)
{ 
	
	#content {	box-sizing: border-box; max-width: 1024px; margin:auto; display:block; padding:0px 0px; /*background-color:rgba(255,255,255,0.9);*/ }
	.fullSizeBox { max-width:1024px; margin: 0px;  }
}

.home #content { background-color:none;}

@media screen and (max-width: 990px)
{ 
	
	#content {	box-sizing: border-box; margin:auto; display:block; padding:0px; }
	.fullSizeBox {background-color: rgba(255,255,255,1); padding:25px 20px; margin: 0px 0px; }
	header ul { position: absolute; top:20px; right:20px; z-index:100; }
	header ul li { display: block; background-color:white; border:1px solid black; padding:5px;}
	header ul li:after { content:'';}
	
}

#pageHeader { width:auto; margin:auto; text-align:center; /*border-top:2px solid black;*/ border-bottom:2px solid black; margin-bottom:40px;
	background: linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%);}

.button { display: inline-block; text-decoration: none; margin-top: 10px; padding:5px 15px;	border:none; border-radius:8px;	background-color:#09f; color:#fff; font-weight: 700; font-size:0.9em; letter-spacing: 1px; }
.button:hover {	background-color:#f90; }

.smallButton { display: inline-block; text-decoration: none; padding:4px 10px; border:none; border-radius:8px; background-color:#09f; color:#fff; font-weight: 700; font-size:0.85em; letter-spacing: 1px; }
.smallButton:hover { background-color:#f90; }

/* Generic centered horizontal list */
ul.centeredList {text-align:center; vertical-align:top; margin:40px 0px 0px 0px;}
ul.centeredList > li { text-align:left; display:inline-block; box-sizing: border-box; padding-top:10px; padding-right:30px; padding-bottom:20px; margin-right:30px;}

select, input, textarea { border:2px solid black;	border-radius:8px; padding:2px 10px; background-color:#fff;	font-size:0.85em; font-family: 'Raleway', sans-serif; }

textarea { resize: none;}

input[type="submit"] { display:block;  padding:5px 15px; border:none; border-radius:8px; background-color:#09f; color:#fff; font-weight: 700; font-size:0.9em; letter-spacing: 1px; }
input[type="submit"]:hover {background-color:#f90;}

.plans input[type="submit"] { margin:10px auto 40px auto; }

hr { border:none; background-color:#000; height:2px; margin:none; padding:none;  }

.clear { clear:both; line-height: 0px; height: 0px; }

/* Homepage */


.home .featuredImage { width:100%; height:450px; background-size: cover; background-position: center;}
.home #featuredPlans {width:100%; visibility: hidden;}
.home #featuredPlans.slick-initialized { visibility: visible; }
.home #featuredPlans div img {width:100%; height:auto;}
.home #featuredPlans a { text-decoration:none;	 color:#000; }
.home #featuredPlans span {margin-right:10px; font-size:1.1em; }
.home #featuredPlans .title { color:#000;}
.home #featuredPlans .details { color:#000; font-weight:700;}
.home #featuredPlans .footage { color:#999;}

.home ul.subpages {  display: flex; justify-content:center; flex-wrap: wrap; vertical-align: top; background: linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%); text-align:center; margin:0px; padding:0px; border-top:2px solid black; border-bottom:2px solid black;}
.home ul.subpages > li { font-size:1.3em; font-weight:700; flex:1; text-align:left; min-width: 400px; display:inline-block; box-sizing: border-box; padding-top:10px; padding-right:50px; padding-bottom:20px; padding-left:50px;}
.home ul.subpages > li:last-child { border-right:none; } 

@media screen and (min-width: 990px)
{ 
.home ul.subpages > li { border-right: 2px solid black;}
}

.searchResult { max-width:50%; min-width:300px; margin:auto; margin-bottom:40px; }

/* Plans */



/* About */
.about .fullSizeBox > p { width:50%; margin-left:auto; margin-right:auto;}

.about ul.subpages {  text-align:center;  margin:40px 0px 20px 0px; padding:0px; }
.about ul.subpages > li { vertical-align: top;width:300px; text-align:center; display:inline-block; box-sizing: border-box; padding:0px; margin:0px; margin-right:30px; margin-bottom:20px; }
.about ul.subpages > li:last-child { margin-right:0px; } 
.about ul.subpages > li > img { display:block; margin-bottom:10px;}
.about ul.subpages > li > h3, .about ul.subpages > li > p { text-align:left; width:auto;}


.halfWidth { max-width:50%; min-width:300px; margin:auto; margin-bottom:40px;}

/* Services */

.services img.wp-post-image { margin-top:-40px; width:100%; height:auto;}
.services ul.subpages {  display: flex; flex-wrap: wrap; vertical-align: top; background: linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%); text-align:center; margin:0px 0px 0px 0px; border-top:2px solid black; border-bottom:2px solid black;}
.services ul.subpages > li { flex:1; text-align:left; min-width: 250px; display:inline-block; box-sizing: border-box; padding-top:10px; padding-right:30px; padding-bottom:20px; margin-right:30px;}
.services ul.subpages > li:last-child { margin-right:0px; border-right:none; } 

@media screen and (min-width: 990px)
{ 
.services ul.subpages > li { border-right: 2px solid black;}
}

/* FAQs */

.faqs .fullSizeBox > ul { display:flex; flex-wrap: wrap; justify-content: space-between; vertical-align:top; text-align:left;  margin:0; padding:0; }
.faqs .fullSizeBox > ul >li {flex: 1; box-sizing:border-box; margin:0; min-width:180px; margin-right:30px; margin-bottom:30px; padding:0; text-align:left; vertical-align:top; display:block; box-sizing: border-box;  }
.faqs .fullSizeBox > ul >li:last-child {margin-right:0;}

.faqs .fullSizeBox > ul > li > ul { display:block; margin:0; padding:0; }
.faqs .fullSizeBox > ul > li > ul >li { margin:0; padding:0; display:block; font-size:0.9em; margin-bottom:10px; }
.faqs .fullSizeBox > ul > li > ul >li a { text-decoration: none; color:#000; }
.faqs .fullSizeBox > ul > li > ul >li a:visited { text-decoration: none; color:#999; }
.faqs .fullSizeBox > ul > li > ul >li a:hover { color:#f90; }

.faqs #pageHeader  input { display:inline-block;}
.faqs input[type="submit"] { margin:0; width:auto; display:inline-block; }
.faqs #pageHeader form { margin-bottom:20px; }

/* Contact */
.contact ul.subpages {  display: flex; flex-wrap: wrap; vertical-align: top; background: linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%); text-align:center; margin:0px; border-top:2px solid black; border-bottom:2px solid black;}
.contact ul.subpages > li { flex:1; text-align:left; min-width: 250px; display:inline-block; box-sizing: border-box; padding-top:10px; padding-right:30px; padding-bottom:20px; margin-right:30px; }

@media screen and (min-width: 990px)
{ 
.contact ul.subpages > li { border-right: 2px solid black;}
}

.contact ul.subpages > li:last-child { margin-right:0px; border-right:none; } 
.contact form { margin-top:20px;}
.contact label { display:block; font-weight:700; box-sizing:border-box; width:100%; margin-bottom:20px; margin-right:20px; }
.contact input[type="text"], .contact input[type="email"], .contact input[type="number"] { margin-left:20px; margin-right:20px; width:60%; }
.contact textarea { box-sizing:border-box; width:100%; height:150px; margin-right:20px;}
.contact .fullSizeBox > p {margin:0;}
.contact form br { display:none; }


/* Floor plan search */
.plans h2 {display:inline-block;}

.plans ul.subpages {  display: flex; flex-wrap: wrap; vertical-align: top; background: linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%); text-align:center; vertical-align:top; margin:40px 0px 0px 0px; border-top:2px solid black; border-bottom:2px solid black;}
.plans ul.subpages > li { text-align:left; flex:1; min-width: 200px; display:inline-block; box-sizing: border-box; padding-top:10px; padding-right:30px; padding-bottom:20px; margin-right:30px; }
.plans ul.subpages > li:last-child { margin-right:0px; border-right:none; } 

@media screen and (min-width: 990px)
{ 
.plans ul.subpages > li { border-right: 2px solid black;}
}


#searchSteps { display:inline-block; margin:0; padding:0;}
#searchSteps a { color: #000; }
#searchSteps li { display:inline-block;	font-weight:700; font-size: 1.1em; border-radius:12px; border: 2px solid black; line-height: 30px; height:30px; padding:0px 10px; text-align:center; margin-left:50px; margin-bottom:20px; }
#searchSteps li.pastStep   { border-color: #09f; background-color: #09f; color:#fff; }
#searchSteps li.pastStep:hover   { border-color: #f90; background-color: #f90; color:#fff; }
#searchSteps li.activeStep { border-color: #000; background-color: #000; color:#fff; }
#searchSteps li.futureStep { border-color: #999f; background-color: #eee; color:#999; }

ul.searchFilter { 	margin:0px 40px; text-align: center; vertical-align:bottom; }
ul.searchFilter li { display:inline-block; width:200px;  }
ul.searchFilter li a { text-decoration:none; color:#000; font-weight:700; }
ul.searchFilter li a:hover { color:#f90;  }

.unit { white-space:pre;}

.features >ul {display: inline-block; text-align:center; vertical-align:top; margin:0px;}
.features >ul > li {display:inline-block; box-sizing: border-box; padding:5px 5px; margin:4px; background-color: #ccc; border-radius: 8px;}
.features >ul > li > a { text-decoration: none; color:#000; font-weight:700;}
.features >ul > li ~ a:hover { background-color:#f90;}

#searchFilter2 { padding: 0px 100px;}
#searchFilter2 img { float:right; margin:10px; margin-left:60px;}
#searchFilter2 label { margin-left:20px; font-weight: 700;}
#searchFilter2 label:first-child { margin-left:0;}
#searchFilter2 input[type="text"] { width: 50px; margin: 0px 10px 10px 10px;}


#searchFilter3 h3, #searchFilter4 h3 { text-align:center;}

/* Custom checkboxes */
.checkboxContainer { display: block; position: relative; padding-left: 5px; padding-right:15px; font-weight:700; padding-top:25px; margin-bottom: 12px; cursor: pointer;
	-webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; float:left;  }  
.checkboxContainer input { position: absolute; opacity: 0; cursor: pointer; }  
.checkmark { position: absolute; top: 0; left: 0; height: 20px; width: 20px; background-color: #09f; }  
.checkboxContainer input:checked ~ .checkmark {	background-color: #000; }  
.checkboxContainer:hover input ~ .checkmark, .checkboxContainer:hover input:checked ~ .checkmark {	background-color: #f90; }  
.checkmark:after { content: "";	position: absolute;	display: none; }
.checkboxContainer input:checked ~ .checkmark:after { display: block; }  
.checkboxContainer .checkmark:after { left: 7px; top: 2px; width: 4px; height: 8px; border: solid white; border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }

/* Tag cloud */
ul.tagList {text-align:center; vertical-align:top; margin:0px 0px 20px 0px;}
ul.tagList li { user-select: none; cursor: pointer; text-align:left; display:inline-block; box-sizing: border-box; padding:0px 5px; margin:2px; border:2px solid black; border-radius: 8px;}
ul.tagList li:hover { background-color:#f90;}
ul.tagList input { display:none;}
ul.tagList input:checked + li { background-color:black; color:white;}

/* Other search options bar*/
ul.otherSearch { list-style: none; background: linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%); text-align:center; vertical-align:top; margin:40px 0px 0px 0px; border-top:2px solid black; border-bottom:2px solid black;}
ul.otherSearch > li { text-align:left; display:inline-block; flex: 1; box-sizing: border-box; padding-top:10px; padding-right:30px; padding-bottom:20px; margin-right:30px;}
ul.otherSearch > li:last-child { margin-right:0px; border-right:none; } 

@media screen and (min-width: 990px)
{ 
ul.otherSearch > li { border-right: 2px solid black;}
}


ul.resultsHeader {display:flex; justify-content: center; }
ul.resultsHeader:first-child {margin-top:-20px;}
ul.resultsHeader li  { text-align:left; display:inline-block; box-sizing: border-box; padding:5px;}
ul.resultsHeader li:first-child { font-weight:700; }
ul.resultsHeader li span.current {display: inline-block; padding:4px 10px; border:none; border-radius:8px; background-color:#000; color:#fff; font-weight: 700; font-size:0.85em;}
ul.resultsHeader li a {display: inline-block; text-decoration: none; padding:4px 10px; border:none; border-radius:8px; background-color:#09f; color:#fff; font-weight: 700; font-size:0.85em;}

div.results { text-align:center; margin:auto; font-weight:700;}

ul.page-numbers {display:flex; justify-content: center; list-style: none;}
ul.page-numbers li {display:inline-block; box-sizing: border-box; padding:5px; }
a.page-numbers { display: inline-block; text-decoration: none; padding:4px 10px; border:none; border-radius:8px; background-color:#09f; color:#fff; font-weight: 700; font-size:0.85em;}
span.page-numbers.current {display: inline-block; text-decoration: none; padding:4px 10px; border:none; border-radius:8px; background-color:#000; color:#fff; font-weight: 700; font-size:0.85em;}


/*	Floor plan detail */
ul.details { background: linear-gradient(to bottom, #ffffff 0%, #f0f0f0 100%); display:inline-block; margin:0px; padding:0px; display: flex; flex-wrap:wrap; vertical-align: baseline; }
.details li { display:inline-block;	flex:1;	margin:0px;	padding:10px 20px; line-height:40px; white-space: nowrap; }

.details li.stats,li.number,li.price { font-weight:700;	font-size: 1.5em; flex-grow: 1; }

@media screen and (min-width: 990px)
{ 
.details li {border: 2px solid black; border-left: none;}
.details li:first-child { border-left: 2px solid black; }
}

ul.media { margin:0px; padding:0px; text-align: center; display:inline-block; }
.media li {	display:block;	margin:20px 0px; }
.media img { max-width:100%; height: auto; max-height:800px; width: auto; }

ul#planList { display:inline-block; margin:0px; padding:0px; display: flex; flex-wrap:wrap; justify-content: center;  }
#planList li { display:inline-block; padding:10px; margin:10px; border-radius:8px; border:1px solid #e0e0e0; background: linear-gradient(to bottom, #ffffff 0%,#ffffff 50%, #f0f0f0 100%);}
#planList li .description { font-weight:700;}
#planList li .footprint { font-size:0.8em;}
#planList li .thumbnail { width:150px; height:100px; position:relative;}
#planList li .thumbnail img { max-width:150px; max-height:100px; display: block; margin-left:auto; margin-right:auto; position:absolute; bottom:0;}
#planList li a { text-decoration: none; color:black;}
#planList li:hover { border:3px solid #000000; margin:8px;}


@keyframes fadein {
    from {opacity: 0;}
    to {opacity:1;}
}

@keyframes fadeout {
    from {opacity: 1;}
    to {opacity:0;}
}