/*----------------Core---------------------------*/
body{
	margin: 0px;
	background: #fff;
	font: 16px 'Lato', Arial, sans-serif;
	line-height: 1.5em;
	color: #333;
}
img, input[type=image] { border: 0px; vertical-align: middle; }
a:link, a:visited, a:active { color: #7160a1; text-decoration: underline; }
a:focus {outline: 0; }
a:hover { color: #f89321; text-decoration: underline;}
form { margin: 0px; padding: 0px; }

.container {
	max-width: 920px;
}
h1,h2,h3,h4,h5,h6 { font-family: 'Lato', Arial, sans-serif; }

/*------------ Utilities ----------------------*/
.clear{ clear: both; height: 0px; margin: 0px; overflow: hidden; }

.form-control { border-radius: 0; font-size: 16px; padding: 8px 12px; height: 40px; border: 1px solid #ddd; border-bottom: 1px solid #aaa; box-shadow: unset; background: #fcfcfc; color: #000;}
label { font-weight: bold; font-size: 14px;  }

.no-padding { margin-left: 0px; margin-right: 0px; }
.no-padding .col-sm-1, .no-padding .col-sm-2, .no-padding .col-sm-3, .no-padding .col-sm-4, .no-padding .col-sm-5, .no-padding .col-sm-6, .no-padding .col-sm-7, .no-padding .col-sm-8, .no-padding .col-sm-9, .no-padding .col-sm-10, .no-padding .col-sm-11, .no-padding .col-sm-12,
.no-padding .col-xs-1, .no-padding .col-xs-2, .no-padding .col-xs-3, .no-padding .col-xs-4, .no-padding .col-xs-5, .no-padding .col-xs-6, .no-padding .col-xs-7, .no-padding .col-xs-8, .no-padding .col-xs-9, .no-padding .col-xs-10, .no-padding .col-xs-11, .no-padding .col-xs-12 { padding: 0 0px; }

.small-padding { margin-left: -5px; margin-right: -5px; }
.small-padding .col-sm-1, .small-padding .col-sm-2, .small-padding .col-sm-3, .small-padding .col-sm-4, .small-padding .col-sm-5, .small-padding .col-sm-6, .small-padding .col-sm-7, .small-padding .col-sm-8, .small-padding .col-sm-9, .small-padding .col-sm-10, .small-padding .col-sm-11, .small-padding .col-sm-12,
.small-padding .col-xs-1, .small-padding .col-xs-2, .small-padding .col-xs-3, .small-padding .col-xs-4, .small-padding .col-xs-5, .small-padding .col-xs-6, .small-padding .col-xs-7, .small-padding .col-xs-8, .small-padding .col-xs-9, .small-padding .col-xs-10, .small-padding .col-xs-11, .small-padding .col-xs-12 { padding: 0 5px; }

.btn-primary, a.btn-primary { text-transform: uppercase; text-decoration: none; background-color: #7160a1; border: 0; padding: 8px 45px; color: #fff; border-radius: 2px; }
	.btn-primary:hover, .btn-primary:active .btn-primary:focus, a.btn-primary:hover, a.btn-primary:active a.btn-primary:focus  { background: #f89321; color: #fff; }
	
.btn-white, a.btn-white { text-transform: uppercase; text-decoration: none; background-color: transparent; border: 0; padding: 8px 15px; color: #fff; border: 2px solid #fff; border-radius: 2px; }
	.btn-white:hover, .btn-white:active .btn-white:focus, a.btn-white:hover, a.btn-white:active a.btn-white:focus  { background: transparent; color: #fff; }

.action-btn { margin-top: 15px; }

.large-heading { font-size: 36px; line-height: 1em; text-transform: uppercase; margin: 0 0 30px; font-weight: normal; }
.v-line { width: 1px; overflow: hidden; text-indent: -999em; background: #f89321; height: 25px; display: inline-block; margin: 0 15px -8px; }

.top-arrow-container {  }
.bot-arrow-container {  }
.top-arrow { position: absolute; top: 1px; left: 50%; margin-left: -63px; width: 126px;  height: 33px; }
.bot-arrow { position: absolute; bottom: 0px; left: 50%; margin-left: -63px;  width: 126px; height: 66px;  }

.green { color: #f89321; }

#alert { padding: 15px 0; text-align: center; background: #CC0000; color: #fff; text-transform: uppercase; letter-spacing: 1px; text-shadow: 0 0 2px #000; font-size: 12px; line-height: 1.3em;  }
	#alert a { color: #fff;   }

/*------------ Header & Menu ----------------------*/
#header { border-top: 8px solid #7160a1; padding: 15px 0; }
.sf-menu {  text-align: right; text-transform: uppercase; padding-top: 35px; }
.sf-menu ul li { display: inline-block; vertical-align: middle; padding: 6px 0; line-height: 1em; margin: 0; float: none; border-right: 1px solid #ccc;   }
	.sf-menu li a { width: 100%; display: block; font-weight: normal; line-height: 1em; padding: 0 18px; text-decoration: none; font-size: 18px; font-weight: bold; color: #333; text-align: center;  }
		.sf-menu li.selected a { color: #7160a1;  }
		.sf-menu li:hover a { color: #f89321; }
	.sf-menu li.last { border: 0px;   }
	.sf-menu li.last a { padding-right: 0;   }
	.sf-menu li ul { transition: all 0s ease-in-out 0s; border: 1px solid #ccc; border-radius: 6px; overflow: hidden; box-shadow: 2px 2px 2px rgba(0,0,0,0.1);  }
	.sf-menu li li, .sf-menu li.selected li {  border-radius: 0; transition: all 0.1s ease-in-out 0s; background: #fff; padding: 0px 0px; display: block; text-align: left; border: 0; border-bottom: 1px solid rgba(0,0,0,0.1); }
	.sf-menu li li a, .sf-menu li:hover li a, .sf-menu li.selected li a { display: block; color: #333; background: transparent; text-align: left; transition: all 0.1s ease-in-out 0s; border: 0;  font-size: 14px; line-height: 1em; padding: 8px 12px; }
		.sf-menu li li:hover { background: #7160a1; border-radius: 0;  }
		.sf-menu li li:hover a{ color: #fff; text-decoration: none; }
		.sf-menu li li.last { border: 0px; }
		
.sf-menu ul li:hover ul, .sf-menu ul li.sfHover ul { top: 30px; }

		
.mobile-trigger{ }
	.mobile-text { font-size: 16px; color: #333; font-weight: normal; display: inline-block; padding: 15px 20px 0 0;  }
#mobile-menu-btn { float: right; margin-left: 15px; background: none; z-index: 9899; cursor: pointer; width: 45px; margin-top: 11px; padding: 5px 0px; overflow: hidden; text-decoration: none;  }
	#mobile-menu-btn .icon-bar { height: 2px; background: #333; display: block; margin: 4px 5px; border-radius: 0px; }
		#mobile-menu-btn:hover .icon-bar { background: #333; opacity: 0.8; color:#ffffff }

#mobile-menu { display: none; text-align: left; margin-bottom: 10px; padding: 0px 0px; width: 100%; overflow: auto; z-index: 900; text-transform: uppercase; font-size:16px;  }
	#mobile-menu a { text-decoration: none; }
	#mobile-menu ul { margin: 0px; padding: 0px; list-style: none; width: auto; }
	#mobile-menu li { margin: 0px; padding: 0px 0px; background: none; list-style: none; font-weight: normal;  }
	#mobile-menu li a{ display: block; padding: 6px 15px 6px 0; font-size: 16px; color: #7160a1; border-bottom: 1px solid rgba(0,0,0,0.1); }
	#mobile-menu li.last a{ border: 0; }
	#mobile-menu li a:hover { opacity: 0.8; background: none; }
		#mobile-menu li li { margin: 0px; padding: 0px; border-bottom: 0px solid #000; background: none; font-weight: normal;  }
		#mobile-menu li li a{ border-left: 2px solid #f89321; display: block; padding: 4px 15px 6px 0; padding-left: 15px; font-size: 16px; color: #333; }
		#mobile-menu li li a:hover { background: none; opacity: 0.8; }
		#mobile-menu li li.last a { border-left: 2px solid #f89321; border-bottom: 1px solid rgba(0,0,0,0.1); }	

/*------------ Footer ----------------------*/
#footer { background: #313131 url('../images/pattern-overlay.png'); color: #fff; padding: 96px 0 45px 0; text-align: center; position: relative; }
	#footer .top-arrow-container { background: #fff; position: absolute; top: 0; left: 0; width: 100%; height: 30px; }
	#footer .top-arrow .decor { fill: #313131; }
	#footer a { color: #fff; text-decoration: none; }
	#footer .footer-social { margin-top: 30px; }
		#footer .footer-social .fa { margin: 0 5px; }
#copyright { font-size: 12px; padding: 15px 0; text-align: center; }
/*------------ Banner ----------------------*/
#banner { position: relative; overflow: hidden; }
	#banner .overlay { position: absolute; top: 37%; left: 0; width: 100%; text-align: center; color: #fff; text-transform: uppercase; font-size: 48px; line-height: 1.4em; font-weight: 300; }
	#banner .overlay span { color: #fff; display: block; font-size: 28px; line-height: 1.5em; padding: 10px 18px; font-weight: bold; }
#arrow { position: absolute; width: 100%; bottom: 20px; left: 0; z-index: 9999; -webkit-animation-name: bounce; -webkit-animation-iteration-count: infinite; -webkit-animation-duration: 2s; animation-name: bounce; animation-iteration-count: infinite; animation-duration: 2s; } 
	
@-webkit-keyframes bounce { from, to  { bottom: 20px; -webkit-animation-timing-function: ease-out; } 50% { bottom: 50px; -webkit-animation-timing-function: ease-in; } }
@keyframes bounce { from, to  { botttom: 20px; animation-timing-function: ease-out; } 50% { bottom: 50px; animation-timing-function: ease-in; } }

/*------------ CONTENT ----------------------*/
.content { padding: 45px 0; font-size: 18px; line-height: 1.5em; }
	.content.home-text { font-size: 22px; line-height: 1.5em; }
	.content h1 { font-size: 36px; margin: 0 0 15px; color: #333; font-weight: bold; }
	.content h2 { font-size: 24px; margin: 20px 0 8px; color: #7160a1; font-weight: bold; }
	
.home-heading { padding: 65px 0; text-align: center; color: #fff; background-image: url('../images/pattern-overlay.png'); }
	.home-heading .large-heading { margin: 0; }
.home-content { padding: 45px 0; overflow: hidden; }
	
#where-we-shine { background-color: #7160a1; }
	#where-we-shine-content { padding: 25px 0;   }
#where-we-soar { background-color: #f89321; }
	a.soar-icon { display: block; min-height: 105px; color: #333; text-transform: uppercase; text-decoration: none; text-align: center; padding: 0px 10px 10px; font-size: 14px; line-height: 1.3em; border-right: 1px solid #ccc; }
	a.soar-icon.last { border: 0; }
	a.soar-icon.selected { border-bottom: 4px solid #7160a1; }
	a.soar-icon .icon { display: block; margin: 0px auto 5px; width: 50px; height: 50px; background-position: 50% 0%; overflow: hidden;  }
	a.soar-icon:hover { color: #000; }
	a.soar-icon:hover .icon { background-position: 50% 100%; }
	#icon-1 { background-image: url('../images/enviro.png'); }
	#icon-2 { background-image: url('../images/land.png'); }
	#icon-3 { background-image: url('../images/buss.png'); }
	#icon-4 { background-image: url('../images/comm.png'); }
	#icon-5 { background-image: url('../images/gov.png'); }
	#icon-6 { background-image: url('../images/org.png'); }
	
#who-we-are { background-color: #7160a1; }
	.bio-pic { position: relative; overflow: hidden; border: 1px solid #ddd; border-radius: 4px; }
		.bio-pic a.overlay { opacity: 0; transition: all 0.25s ease-in-out 0s; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 2; background: rgba(60, 60, 60, 0.85); color: #fff; text-decoration: none; text-align: center; font-size: 18px; line-height: 1em; }
		.bio-pic:hover a.overlay { opacity: 1;}
		.bio-pic a.overlay span { display: block; text-transform: uppercase; position: absolute; top: 50%; margin-top: -9px; font-weight: 300; left: 0; width: 100%; z-index: 3; color: #fff;  }
	.bio-name { padding: 6px 0 30px; text-align: center; line-height: 1.3em; }
		.bio-name .name { font-size: 18px; font-weight: bold; color: #7160a1; text-transform: uppercase; }
		.bio-name .firefly-title { font-size: 16px; font-weight: bold; color: #000;  }
		.bio-name .title { font-size: 12px; color: #666; line-height: 1.4em; }

#map-canvas { height: 300px; }

#contact-sidebar a { color: #333; }
	#contact-sidebar .fa { margin-right: 4px; }
	
a.icon-box { transition: background 0.3s ease-in-out 0s; background: #fff; display: block; overflow: hidden;  text-decoration: none; margin: 15px 0; }
	a.icon-box .img-responsive { border: 1px solid #ddd; border-top-right-radius: 4px; border-top-left-radius: 4px; }
	a.icon-box .img-responsive.no-border { border: 1px solid #fff;  }
	a.icon-box.logo .img-responsive { padding: 15px; /*-webkit-filter: grayscale(100%); filter: grayscale(100%); */ }
	a.icon-box span { font-size: 16px; line-height: 1.5em; display: block; border-bottom-right-radius: 4px; border-bottom-left-radius: 4px;padding: 8px; border: 1px solid #ddd; border-top: 0px;  background: #f6f6f6; color: #333; text-align: center; text-transform: uppercase;  }
	a.icon-box:hover .img-responsive { background: #f0f0f0; border-color: #ccc; }
	a.icon-box.logo:hover .img-responsive { background: #fff; border-color: #ccc; /*-webkit-filter: grayscale(0%); filter: grayscale(0%); */ }
	a.icon-box:hover span { background: #7160a1; color: #fff; border-color: #ccc; }
	a.icon-box span.website-title { font-size: 12px; text-transform: none; }
	
#newsroom { background-color: #7160a1; }
.img-box { border: 1px solid #ddd; margin: 0 0 30px; height: 200px; background-color: #ccc; background-position: 50% 50%; background-size: cover;  border-radius: 4px; overflow: hidden; position:relative; }
	.img-box a { display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; text-decoration: none; color: #fff; }
		.img-box a span { display: block; position: absolute; top: 50%; left: 0; width: 100%; margin-top: -1em; color: #fff; text-indent: -999em; }
	.img-box a:hover { background: rgba(100,100,100,0.8); }
		.img-box a:hover span { text-indent: 0; text-align: center; }
a.news-box { min-height: 420px; padding: 15px; transition: background 0.3s ease-in-out 0s; background: #fff; display: block; overflow: hidden;  text-decoration: none; margin: 0 0 30px; border: 1px solid #ddd; border-radius: 4px; }
	a.news-box:hover { background: #eee; }
	a.news-box .img-box { border: 0; border-bottom: 1px solid #ddd; margin: -15px -15px 15px; }
	a.news-box .title { font-size: 18px; font-weight: bold; color: #7160a1; line-height: 1.4em;  }
	a.news-box .date { font-size: 12px; line-height: 1.2em; color: #888; margin-bottom: 4px; }
	a.news-box .readmore { font-size: 14px; font-weight: bold; color: #f89321; }
	
.sidebar { background: #eee; color: #333; border-radius: 4px; padding: 15px; }
	.sidebar h3 { font-size: 18px; margin: 0 0 15px; font-weight: bold; color: #333; }
	.sidebar ul { list-style: none; padding: 0; margin: 0; }
	.sidebar li { display: block; padding: 6px 0; font-size: 16px; line-height: 1.2em;   border-top: 1px solid rgba(0,0,0,0.1);  }
	.sidebar li a { display: block; color: #333; text-decoration: none; }
		.sidebar li.selected a { color: #7160a1; font-weight: bold; }
		.sidebar li a:hover { opacity: 0.8; }

@media all and (max-width:765px) {
	#header .img-responsive { max-width: 150px; }
	a.soar-icon { margin: 5px 0; }
	a.soar-icon.mobile-last { border: 0; }
	.large-heading { font-size: 26px; }
	.v-line { display: block; width: 0px; height: 10px; }
}