/* Main Site Styles
================================================== */

*, *:before, *:after {
  -webkit-box-sizing: border-box; 
  -moz-box-sizing: border-box; 
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
}

body, .pure-g-r [class *="pure-u"] {
	font-family: "Open Sans", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

body {
	background: #FFF;
	color: #666;
	font-size: 100%;
	font-weight: normal;
	-webkit-text-size-adjust: 100%;
}

	html, body {height: 100%;}

	.box {padding: 30px;}
	.box>*:last-child {margin-bottom: 0;}
	.box>*:first-child {margin-top: 0;}
	.wrapper {max-width: 1200px; margin: 0 auto;}
	
	img.fit-to-grid {width: 100%; float: left;}
	
	.textright {text-align: right;}
	.textcenter {text-align: center;}
	.textleft {text-align: left;}
	
	.alignright {float: right; padding: 0 0 20px 20px;}
	.alignleft {float: left; padding: 0 20px 20px 0;}
	.aligncenter {text-align: center; margin: 0 auto;}
	
    .clearfix:before,
    .clearfix:after {
      content: '\0020';
      display: block;
      overflow: hidden;
      visibility: hidden;
      width: 0;
      height: 0; }
    .clearfix:after {
      clear: both; }
    .clearfix {
      zoom: 1; }
	
/* Typography + Links + Buttons
================================================== */	

h1, h2, h3, h4, h5, h6 {
	color: #0f8d6a;
	font-family: "Miso", "Open Sans", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-weight: normal;
	font-weight: 300;
	margin: 2em 0 0.5em;
}

h1 {font-size: 2.6em; line-height: 1.2;}
h2 {font-size: 2.0em; line-height: 1.2;}
h3 {font-size: 1.6em; line-height: 1.2;}
h4 {font-size: 1.2em; line-height: 1.2;}
h5 {font-size: 1.2em; line-height: 1.2;}

p, ul, ol {
	font-size: 1.2em;
	line-height: 1.4em;
	margin: 0 0 1em;
	font-family: "Open Sans", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

a, a:visited {
	color: #912525;
	text-decoration: none;
	outline: 0; 
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;		
}

a:hover, a:focus { color: #0f8d6a; text-decoration: underline; cursor: pointer;}

.pure-button,
a.pure-button {
	background: #FFF;
	color: #0f8d6a;
	border: 1px #0f8d6a solid;
	font-family: "Miso", "Open Sans", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 26px;
	line-height: 1em;
	margin-right: 20px;
	margin-bottom: 20px;
	min-width: 200px;
	position: relative;
}

	.pure-button:before {
		content: '';
		width: 0; 
		height: 0; 
		border-left: 75px solid transparent;
		border-right: 75px solid transparent;
		border-bottom: 10px solid #0f8d6a;		
		position: absolute;
		top: -10px;
		left: 50%;
		margin-left: -75px;
	}

	.pure-button:hover,
	.pure-button:focus,
	a.pure-button:hover,
	a.pure-button:focus {
		background: none;
		background: #0f8d6a;
		color: #FFF;
		text-decoration: none;
	}

	
/* Header + Footer
================================================== */	

.slicknav_menu {display:none;}

@media screen and (max-width: 766px) {
	#menu {display: none;}
	.slicknav_menu {display:block;}
}	


/* Home Page Styles
================================================== */

.hdr {}
	
	.logo {text-align: center;}
	.logo img {margin: 60px 30px 0; max-width: 80%;}
	
	.hdr .pure-menu {
		padding: 0 0 0 15px;
	}
	
		.hdr .pure-menu li a {
			color: #912525;
			padding: 30px 10px;
			font-family: "Miso", "Open Sans", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
			font-size: 30px;
			line-height: 1em;
			text-transform: uppercase;
		}
		
		.hdr .pure-menu li.current_page_item a,
		li.current_page_item a {color: #0f8d6a;}
		
		.hdr .pure-menu li a:hover,
		.hdr .pure-menu li a:focus {
			background-color: #f3f9f7;
			color: #0f8d6a;
			text-decoration: none;
		}
	
	.hdr_box {
		background: #0f8d6a;
		color: #FFF;
		padding: 30px;
		margin: 0;
		font-family: "Miso", "Open Sans", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		font-size: 30px;
		line-height: 1em;
	}
	
		.hdr_box.haslink {padding: 0;}
	
		.hdr_box a {color: #FFF; padding: 30px; display: block;}
		.hdr_box a:hover,
		.hdr_box a:focus {color: #FFF; background: #0f8d6a}
	
.ftr {
	background: #0f8d6a;
	color: #FFF;
	padding: 30px 0;
	margin-top: 80px;
	position: relative;
}

	.ftr:before {
		content: '';
		width: 0; 
		height: 0; 
		border-left: 150px solid transparent;
		border-right: 150px solid transparent;
		border-bottom: 20px solid #0f8d6a;		
		position: absolute;
		top: -20px;
		left: 50%;
		margin-left: -150px;
	}

	.ftr img {margin-left: 30px;}
	.ftr p {
		text-align: right;
		float: right;
		font-size: 1em;
		padding-right: 30px;
	}

	.ftr a {color: #16c29b;}
	.ftr a:hover,
	.ftr a:focus {
		color: #FFF;
		text-decoration: underline;
	}
	
.feature {
	background-color: #f3f9f7;
	background-position: center center;
	background-size: cover;
	min-height: 600px;
	position: relative;
}

	.feature.short {min-height: 300px;}

	.feature .wrapper {
		bottom: 0;
		position: absolute;
		width: 1200px;
		max-width: 100%;
		left: 50%;
		margin-left: -600px;
	}
		@media (max-width:1199px) {
			.feature .wrapper {
				left: 0; margin-left: 0;
			}
		}
	
	.feature h1.hdr_box {background: #912525;}
	.feature p.hdr_box {background: none;}
	
	.shaded {background-color: #fafafa;}




/* Individual Page Styles
================================================== */


.project_list {
	list-style: none;
	padding: 0;
	padding-bottom: 20px;
}

	.project_list li:after {content: ' /'; color: #0f8d6a;}
	
	.project_list li {
		display: inline-block;
		font-family: "Miso", "Open Sans", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		font-size: 26px;
		line-height: 1.4em;
	}
	
.project_grid {
	text-align: center;
}

	.project_header {text-align: left;}
	.project_header h1 {
		margin: 1em 0 0.5em 0;
		padding: 0 20px;
	}

	.project_grid h3 {
		font-size: 1.4em;
		padding: 0 20px;
		margin: 10px 0;
	}
		
.sidebar {}

	.sidebar ul {
		list-style: none;
		padding: 0;
	}
	
	.sidebar li a {
		display: block;
		border-bottom: 1px #e9d3d3 solid;
		font-family: "Miso", "Open Sans", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
		font-size: 1.4em;
		line-height: 1em;
		padding: 20px 0 15px;
	}
	
	.sidebar li:first-of-type a {padding-top: 0;}
	.sidebar li.current_page_item a {color: #0f8d6a;}

.centered-3-5 {
	width: 60%;
	margin: 0 20%;
}

.map {padding: 0;}
	
	iframe {
		width: 100%;
		min-height: 400px;
	}

.pure-form {}

	.pure-form input[type=text], .pure-form input[type=password], .pure-form input[type=email], .pure-form input[type=url], .pure-form input[type=date], .pure-form input[type=month], .pure-form input[type=time], .pure-form input[type=datetime], .pure-form input[type=datetime-local], .pure-form input[type=week], .pure-form input[type=number], .pure-form input[type=search], .pure-form input[type=tel], .pure-form input[type=color], .pure-form select, .pure-form textarea {
		box-shadow: none;
		-webkit-transition: all 0.3s ease-out;
		-moz-transition: all 0.3s ease-out;
		transition: all 0.3s ease-out;		
		max-width: 100%;		
	}

.pure-form input[type=text]:focus, .pure-form input[type=password]:focus, .pure-form input[type=email]:focus, .pure-form input[type=url]:focus, .pure-form input[type=date]:focus, .pure-form input[type=month]:focus, .pure-form input[type=time]:focus, .pure-form input[type=datetime]:focus, .pure-form input[type=datetime-local]:focus, .pure-form input[type=week]:focus, .pure-form input[type=number]:focus, .pure-form input[type=search]:focus, .pure-form input[type=tel]:focus, .pure-form input[type=color]:focus, .pure-form select:focus, .pure-form textarea:focus {
		background: #f3f9f7;
		border-color: #0f8d6a;
	}
	
	.pure-form div.wpcf7-response-output {
		border: none;
		padding: 1em;
		background: #0f8d6a;
		color: #FFF;
	}
	
	.pure-form div.wpcf7-response-output {
		margin: 1em 0;
		padding: 1em;
	}
	
	.pure-form div.wpcf7-mail-sent-ok,
	.pure-form div.wpcf7-mail-sent-ng,
	.pure-form div.wpcf7-spam-blocked,
	.pure-form div.wpcf7-validation-errors {
		border: none;
	}

	span.wpcf7-not-valid-tip {
		display: none;
	}
	
.awards_table {}

	.awards_table .th {
		border-top: 1px #FFF solid;
		border-bottom: 1px #FFF solid;
		margin-bottom: 20px;
		padding-bottom: 20px;
		padding-top: 20px;
	}
	
	.awards_table .th:first-of-type {border-top: 0;}
	
	.awards_table .th h2 {
		margin-top: 0;
	}
	
	.awards_table .th img {
		float: right;
	}
	
	.awards_table p {
		padding-right: 20px;
	}


/* Media Queries
================================================== */


/* Retina/HiDPI */
@media 	(-webkit-min-device-pixel-ratio: 2),
		(min-resolution: 192dpi) { 
}

/* Smaller than 1200 */
@media (max-width:1199px) {
	.hdr .pure-menu li a {padding: 30px 5px; font-size: 24px;}
}

/* Tablets */
@media (max-width:768px) {
	.tablet_hide {display: none;}

	.logo {text-align: left;}
	
	.hdr .pure-menu li a {padding: 30px 0px;}
	.box,
	.hdr_box,
	.hdr_box a {padding: 20px;}
	.map {padding: 0;}

	.ftr {text-align: center; padding: 20px 0;}
	
	.feature {min-height: 300px;}	
	
	.centered-3-5 {margin: 0;}
	
	.project_grid .pure-u-1-5 {width: 33.333%;}
	.project_grid h3 {padding: 0 10px;}
}

/* Phones */
@media only screen and (max-width:480px) {
	h1 {font-size: 1.6em; line-height: 1.2;}
	h2 {font-size: 1.6em; line-height: 1.2;}
	h3 {font-size: 1.2em; line-height: 1.2;}
	h4 {font-size: 1.2em; line-height: 1.2;}
	h5 {font-size: 1.2em; line-height: 1.2;}
	
	p, ul, ol {font-size: 1.0em; line-height: 1.4em;}
	
	.logo img {margin: 10px 20px; height: 36px;}

	.pure-button,
	.hdr .pure-menu li a,
	.hdr_box,
	.project_list li {font-size: 22px;}

	.box,
	.hdr_box {padding: 15px;}

	.ftr img {margin: 0 0 20px;}
	.ftr p {text-align: center; float: left; width: 50%; padding: 1em 0; margin: 0;}
	.tomoro {display: none;}

	.feature {min-height: 200px;}	
	.feature.short {min-height: 150px;}
	
	iframe {min-height: 200px;}

	.project_grid .pure-u-1-5 {width: 50%;}	
}


/* Fonts
================================================== */

@font-face {
    font-family: 'Miso';
    src: url('../fonts/miso-bold-webfont.eot');
    src: url('../fonts/miso-bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/miso-bold-webfont.woff') format('woff'),
         url('../fonts/miso-bold-webfont.ttf') format('truetype'),
         url('../fonts/miso-bold-webfont.svg#misobold') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url('../fonts/OpenSans-Regular-webfont.eot');
    src: url('../fonts/OpenSans-Regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/OpenSans-Regular-webfont.woff') format('woff'),
         url('../fonts/OpenSans-Regular-webfont.ttf') format('truetype'),
         url('../fonts/OpenSans-Regular-webfont.svg#open_sansregular') format('svg');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'Open Sans';
    src: url('../fonts/OpenSans-Bold-webfont.eot');
    src: url('../fonts/OpenSans-Bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('../fonts/OpenSans-Bold-webfont.woff') format('woff'),
         url('../fonts/OpenSans-Bold-webfont.ttf') format('truetype'),
         url('../fonts/OpenSans-Bold-webfont.svg#open_sansbold') format('svg');
    font-weight: bold;
    font-style: normal;
}
