span.twitter-typeahead .tt-dropdown-menu {
	box-sizing: border-box;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1000;
	display: none;
	float: left;
	margin-top: -2px;
	width: 492px;
	background-color: #ffffff;
	border: 1px solid #20a1d4;
	border-top: none;
	-webkit-border-radius: 0 0 3px 3px;
	-moz-border-radius: 0 0 3px 3px;
	-ms-border-radius: 0 0 3px 3px;
	-o-border-radius: 0 0 3px 3px;
	border-radius: 0 0 3px 3px;
	list-style: none;
	text-align: left;
	-webkit-box-shadow: 0 2px 0 rgba(0, 0, 0, 0.05);
	box-shadow: 0 2px 0 rgba(0, 0, 0, 0.05), inset 0 1px 0 #ededed;
	background-clip: padding-box
}

.twitter-typeahead .tt-suggestion .ss-junior {
	display: inline-block;
	font-size: 36px
}

span.twitter-typeahead .tt-suggestion>p {
	display: block;
	padding: 3px 20px;
	clear: both;
	font-weight: normal;
	line-height: 1.5;
	color: #303030;
	white-space: nowrap
}

span.twitter-typeahead .tt-suggestion>p:hover, span.twitter-typeahead .tt-suggestion>p:focus
	{
	text-decoration: none;
	outline: 0;
	background-color: #f6f6f6
}

span.twitter-typeahead .tt-suggestion.tt-cursor {
	color: #ffffff;
	background-color: #f6f6f6;
	cursor: pointer
}

.input-group span.twitter-typeahead {
	display: block !important
}

.input-group span.twitter-typeahead .tt-dropdown-menu {
	top: 32px !important
}

.input-group.input-group-lg span.twitter-typeahead .tt-dropdown-menu {
	top: 44px !important
}

.input-group.input-group-sm span.twitter-typeahead .tt-dropdown-menu {
	top: 28px !important
}

.tt-hint {
	color: #606060 !important
}

.suggest-input {
	box-sizing: border-box;
	font-size: 16px;
	border: 1px solid #ededed;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
	margin: 0 .5em 0 0;
	line-height: 1.4;
	padding: 0 12px;
	height: 50px;
	outline: none;
	box-shadow: inset 0 2px 0 0 #f6f6f6;
	transition: all 0.1s ease
}

.suggest-input:focus {
	border-color: #20a1d4;
	-webkit-border-radius: 3px 3px 0 0;
	-moz-border-radius: 3px 3px 0 0;
	-ms-border-radius: 3px 3px 0 0;
	-o-border-radius: 3px 3px 0 0;
	border-radius: 3px 3px 0 0
}

.redux * {
	font-family: "rooney-sans", Avenir-Book, Corbel, sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale
}

.redux h1, .redux h2, .redux h3 {
	font-family: "rooney-web", "AmericanTypewriter", Rockwell, Georgia-Bold,
		serif;
	padding: 0;
	font-weight: bold;
	color: #303030;
	line-height: 1.2
}

.redux .wf-loading {
	visibility: hidden
}

.redux .wf-active, .redux .wf-inactive {
	visibility: visible
}

.redux .subheader {
	font-family: "rooney-web", "AmericanTypewriter", Rockwell, Georgia-Bold,
		serif;
	color: #606060;
	font-style: italic;
	line-height: 1.4
}

.redux .subheader em {
	font-style: normal
}

.redux h1 {
	font-size: 40px;
	font-size: 2.5rem;
	margin-bottom: 20px;
	margin-bottom: 1.25rem
}

.redux h1+.subheader {
	margin-top: -12px;
	margin-top: -.75rem;
	margin-bottom: 24px;
	margin-bottom: 1.5rem;
	font-size: 24px;
	font-size: 1.5rem
}

@media ( max-width : 40em) {
	.redux h1 {
		font-size: 32px;
		font-size: 2rem
	}
}

.redux h2 {
	font-size: 32px;
	font-size: 2rem;
	margin: 0 0 20px;
	margin: 0 0 1.25rem
}

.redux h2+.subheader {
	margin-top: -20px;
	margin-top: -1.25rem;
	margin-bottom: 24px;
	margin-bottom: 1rem;
	font-size: 20px;
	font-size: 1.25rem
}

@media ( max-width : 40em) {
	.redux h2 {
		font-size: 24px;
		font-size: 1.5rem
	}
}

.redux h3 {
	font-size: 20px;
	font-size: 1.25rem;
	margin: 0 0 12px;
	margin: 0 0 .75rem
}

.redux h3+.subheader {
	margin-top: -12px;
	margin-top: -.75rem;
	margin-bottom: 12px;
	margin-bottom: .75rem;
	font-size: 14px;
	font-size: 0.875rem
}

.redux h4 {
	color: #606060;
	text-transform: uppercase;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.5;
	margin: 0 0 8px;
	margin: 0 0 .5rem;
	font-weight: normal
}

.redux p {
	margin: 0 0 16px;
	margin: 0 0 1rem;
	line-height: 1.4
}

.redux em {
	font-style: italic
}

.redux .text-discreet {
	font-size: 14px;
	font-size: 0.875rem;
	font-family: "rooney-web", "AmericanTypewriter", Rockwell, Georgia-Bold,
		serif;
	font-style: italic;
	color: #606060;
	line-height: 1.4
}

.redux .text-discreet strong {
	color: #606060
}

.redux a {
	font-family: "rooney-sans", Avenir-Book, Corbel, sans-serif
}

.redux table p {
	margin: 0
}

.subnav {
	display: none;
	position: absolute;
	top: 50px;
	right: 0;
	background: #fff;
	border: 1px solid #dcdcdc;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
	width: 190px;
	box-shadow: 0 2px 0 rgba(0, 0, 0, 0.05);
	color: #606060;
	line-height: 2.5em;
	text-align: left;
	z-index: 800
}

.subnav:after, .subnav:before {
	right: 1.5rem;
	top: -8px;
	bottom: 100%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none
}

.subnav:after {
	border-bottom-color: #fff;
	border-width: 8px;
	margin-right: -8px;
	top: -16px
}

.subnav:before {
	border-bottom-color: #cfcfcf;
	border-width: 9px;
	margin-right: -9px;
	top: -18px
}

@media ( max-width : 40em) {
	.subnav {
		width: 100%
	}
}

.subnav ul {
	list-style: none;
	margin: 0;
	padding: 0
}

.subnav ul li a {
	display: block;
	border-bottom: 1px dotted #ededed;
	padding: .25em 12px;
	margin: 0
}

.subnav ul li a:hover {
	background: #fafafa;
	text-decoration: none
}

.subnav ul li a .ss-junior {
	color: #dcdcdc;
	font-size: 16px;
	font-size: 1rem;
	margin-right: 12px;
	position: relative;
	top: 2px
}

.subnav ul li a:hover .ss-junior {
	color: #cfcfcf
}

.subnav ul li:first-child a {
	-webkit-border-radius: 3px 3px 0 0;
	-moz-border-radius: 3px 3px 0 0;
	-ms-border-radius: 3px 3px 0 0;
	-o-border-radius: 3px 3px 0 0;
	border-radius: 3px 3px 0 0
}

.subnav ul li:last-child a {
	border-bottom: 0;
	-webkit-border-radius: 0 0 3px 3px;
	-moz-border-radius: 0 0 3px 3px;
	-ms-border-radius: 0 0 3px 3px;
	-o-border-radius: 0 0 3px 3px;
	border-radius: 0 0 3px 3px
}

.subnav ul li.active a {
	color: #bdbdbd
}

.subnav ul li.active a:hover {
	background: none
}

.search-area {
	padding: 1em 0 2em;
	position: relative
}

@media ( max-width : 40em) {
	.search-area {
		padding: 1em 0
	}
	.search-area .twitter-typeahead {
		display: block !important
	}
}

.search-area .search-form {
	padding: 1em 0
}

.search-area input[type="text"] {
	width: 384px;
	margin: 0;
	height: 50px;
	font-size: 16px;
	font-size: 1rem
}

@media ( max-width : 40em) {
	.search-area input[type="text"] {
		display: block;
		width: 100%;
		margin-bottom: 1em
	}
}

.search-area .search-string {
	display: inline-block;
	color: #606060;
	font-style: italic;
	vertical-align: top;
	line-height: 50px;
	margin: 0 1em;
	height: 50px
}

@media ( max-width : 40em) {
	.search-area .search-string {
		display: none
	}
}

.search-area span.twitter-typeahead .tt-dropdown-menu {
	width: 384px
}

.search-area span.twitter-typeahead .tt-dropdown-menu .tt-suggestion:last-of-type>.suggestion:last-of-type
	{
	-webkit-border-radius: 0 0 3px 3px;
	-moz-border-radius: 0 0 3px 3px;
	-ms-border-radius: 0 0 3px 3px;
	-o-border-radius: 0 0 3px 3px;
	border-radius: 0 0 3px 3px;
	border-bottom: none
}

@media ( max-width : 40em) {
	.search-area span.twitter-typeahead .tt-dropdown-menu {
		width: 100%
	}
}

.search-area .location-holder {
	position: relative;
	display: inline-block
}

@media ( max-width : 40em) {
	.search-area .location-holder {
		display: block
	}
}

.search-area input[type="text"].location-search {
	width: 212px;
	margin-right: 1em
}

@media ( max-width : 40em) {
	.search-area input[type="text"].location-search {
		display: block;
		width: 100%;
		margin: 0 0 1em
	}
	.search-area input[type="text"].location-search::-webkit-input-placeholder:first-letter
		{
		text-transform: capitalize
	}
}

.search-area .location-holder span.twitter-typeahead .tt-dropdown-menu {
	width: 212px
}

@media ( max-width : 40em) {
	.search-area .location-holder span.twitter-typeahead .tt-dropdown-menu {
		width: 100%
	}
}

.search-area .button-redux {
	margin-bottom: 0
}

@media ( max-width : 40em) {
	.search-area .button-redux {
		display: block;
		text-align: center
	}
}

.no-suggestions {
	padding: 12px;
	color: #606060;
	font-style: italic
}

.powered-by {
	padding: 12px
}

.suggestion, .location-suggestion {
	display: block;
	padding: 12px;
	margin: 0;
	color: #303030;
	line-height: 1.4;
	font-size: 16px;
	font-size: 1rem;
	border-bottom: 1px dotted #ededed
}

.suggestion .more-suggestions, .location-suggestion .more-suggestions {
	font-size: 14px;
	font-size: 0.875rem;
	color: #20a1d4
}

.suggestion .suggestion-photo, .location-suggestion .suggestion-photo {
	height: 50px;
	width: 50px;
	background: #fafafa;
	display: inline-block;
	margin: 4px 8px 0 0;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	-ms-border-radius: 100%;
	-o-border-radius: 100%;
	border-radius: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center
}

@media ( max-width : 40em) {
	.suggestion .suggestion-photo, .location-suggestion .suggestion-photo {
		display: none
	}
}

.suggestion .suggestion-info, .location-suggestion .suggestion-info {
	display: inline-block;
	vertical-align: top;
	width: 290px;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis
}

@media ( max-width : 40em) {
	.suggestion .suggestion-info, .location-suggestion .suggestion-info {
		width: 100%
	}
}

.suggestion .suggestion-primary, .location-suggestion .suggestion-primary
	{
	display: block;
	font-style: normal
}

.suggestion .suggestion-primary.teacher-name, .location-suggestion .suggestion-primary.teacher-name
	{
	padding-top: 6px
}

@media ( max-width : 40em) {
	.suggestion .suggestion-primary, .location-suggestion .suggestion-primary
		{
		padding-top: 0
	}
}

.suggestion .suggestion-secondary, .location-suggestion .suggestion-secondary
	{
	font-size: 14px;
	font-size: 0.875rem;
	font-style: italic;
	color: #606060
}

.suggestion .ss-junior, .location-suggestion .ss-junior {
	display: inline-block;
	font-size: 36px;
	font-size: 2.25rem;
	color: #dcdcdc;
	padding: 10px 15px 0 7px;
	line-height: 1
}

@media ( max-width : 40em) {
	.suggestion .ss-junior, .location-suggestion .ss-junior {
		display: none
	}
}

.suggestion:hover, .suggestion:focus, .location-suggestion:hover,
	.location-suggestion:focus {
	background-color: #fafafa
}

.separator {
	background: #fafafa;
	display: block;
	color: #606060;
	font-size: 14px;
	font-size: 0.875rem;
	text-transform: uppercase;
	padding: 12px;
	margin-top: -1px;
	border-top: 1px solid #ededed;
	border-bottom: 1px solid #ededed
}

@media ( max-width : 40em) {
	.separator {
		background: #20a1d4;
		color: #fff;
		font-size: 12px;
		font-size: 0.75rem
	}
}

.location-geosuggestion {
	left: 0;
	top: 60px;
	font-size: 16px;
	font-size: 1rem;
	width: 262px;
	color: #606060
}

.location-geosuggestion:after, .location-geosuggestion:before {
	left: 1.5rem;
	top: -8px;
	bottom: 100%;
	border: solid transparent;
	content: " ";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none
}

.location-geosuggestion:after {
	border-bottom-color: #fff;
	border-width: 8px;
	margin-left: -8px;
	top: -16px
}

.location-geosuggestion:before {
	border-bottom-color: #cfcfcf;
	border-width: 9px;
	margin-left: -9px;
	top: -18px
}

@media ( max-width : 40em) {
	.location-geosuggestion {
		width: 100%;
		top: 58px
	}
}

.location-geosuggestion .suggestion-label {
	display: block;
	color: #606060;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1;
	padding-top: 12px;
	font-style: italic
}

@
-webkit-keyframes FADEY { 0%{
	opacity: 0
}

100%{
opacity
:
1
}
}
body {
	width: 100%
}

#mainBody {
	width: 100%;
	max-width: 100%;
	padding: 0
}

#mainHeader, #mainFooter {
	margin: 0
}

@media ( max-width : 40em) {
	ul, ol {
		padding-left: 0
	}
}

.container {
	position: relative;
	width: 100%;
	max-width: 980px;
	margin: 0 auto
}

@media ( max-width : 40em) {
	.container {
		padding: 0 1em
	}
}

.redux {
	font-family: "rooney-sans", Avenir-Book, Corbel, sans-serif
}

.redux * {
	box-sizing: border-box
}

@media ( max-width : 40em) {
	.redux .button-redux {
		width: 100%
	}
}

section {
	background: #fafafa;
	text-align: center;
	padding: 7em 0;
	border-bottom: 1px solid #dcdcdc;
	position: relative;
	z-index: 1;
	-webkit-animation-name: FADEY;
	-webkit-animation-duration: 1s;
	-webkit-animation-timing-function: ease-in-out;
	-webkit-animation-iteration-count: 1;
	text-overflow: hidden
}

@media only screen and (max-width: 640px) {
	section {
		padding: 5em 0
	}
}

@media ( max-width : 40em) {
	section h1 {
		font-size: 32px;
		font-size: 2rem
	}
}

section h2 {
	color: #303030;
	margin-bottom: 1em;
	clear: both
}

@media ( max-width : 40em) {
	section h2 {
		font-size: 24px;
		font-size: 1.5rem
	}
}

section hr {
	width: 137px;
	border: 0;
	border-bottom: 1px solid #303030;
	margin: 0 auto 32px;
	opacity: .3
}

@media ( max-width : 40em) {
	section hr {
		margin-bottom: 24px
	}
}

section .subheader {
	font-family: "rooney-sans", Avenir-Book, Corbel, sans-serif !important;
	color: #303030;
	font-style: normal !important;
	font-size: 20px;
	margin: 0 5em 2em;
	font-weight: 300
}

@media ( max-width : 40em) {
	section .subheader {
		font-size: 16px;
		font-size: 1rem;
		margin: 0 auto 2em
	}
}

section.intro .subheader {
	font-size: 24px;
	font-size: 1.5rem
}

@media ( max-width : 40em) {
	section.intro .subheader {
		font-size: 16px;
		font-size: 1rem
	}
}

.blurb span {
	font-weight: bold
}

.image h2, .image p {
	color: #fff
}

.image hr {
	border-color: #fff
}

.navigation {
	padding: 1em;
	background: rgba(255, 255, 255, 0.9);
	box-shadow: 0 2px 0 rgba(0, 0, 0, 0.035);
	position: static
}

.navigation ul {
	list-style: none;
	padding: 0;
	margin: 0 auto;
	max-width: 100%;
	text-align: center
}

.navigation ul li {
	display: inline;
	font-size: 14px;
	font-size: 0.875rem;
	text-transform: uppercase;
	letter-spacing: .1em;
	font-weight: bold
}

@media ( max-width : 40em) {
	.navigation ul li {
		font-size: 12px;
		font-size: 0.75rem;
		line-height: 2
	}
}

.navigation ul li:after {
	content: '\2022';
	padding: 0 .75em;
	color: #dcdcdc
}

@media ( max-width : 40em) {
	.navigation ul li:after {
		padding: 0 .15em
	}
}

.navigation ul li:last-child:after {
	display: none
}

@media ( max-width : 40em) {
	.navigation ul li .no-mobile {
		display: none
	}
}

.fixed {
	position: fixed;
	top: 0;
	z-index: 100;
	width: 100%
}

.pad-top {
	margin-top: 52px
}

a.back-to-top {
	display: inline-block;
	margin-top: 2em;
	color: #dcdcdc;
	-webkit-transition-property: all;
	-moz-transition-property: all;
	-o-transition-property: all;
	transition-property: all;
	-webkit-transition-duration: 0.1s;
	-moz-transition-duration: 0.1s;
	-o-transition-duration: 0.1s;
	transition-duration: 0.1s;
	-webkit-transition-timing-function: ease;
	-moz-transition-timing-function: ease;
	-o-transition-timing-function: ease;
	transition-timing-function: ease;
	padding: 1em
}

a.back-to-top .ss-junior {
	display: block;
	font-size: 12px;
	font-size: 0.75rem
}

a.back-to-top:hover {
	color: #c3c3c3;
	text-decoration: none
}

.loader {
	width: 42px;
	margin: 0 auto
}

.button .loader {
	width: auto;
	margin: 0 auto;
	padding: 0 40px;
	line-height: 46px
}

.page-loader {
	position: fixed;
	right: 0;
	left: 0;
	margin: auto;
	margin-right: auto;
	margin-left: auto;
	top: 15em;
	text-align: center;
	z-index: 1000;
	background: #fff;
	background: rgba(255, 255, 255, 0.9);
	padding: 2em 0;
	width: 200px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
	border: 1px solid #ededed;
	box-shadow: 0 2px 0 rgba(0, 0, 0, 0.025)
}

@media ( max-width : 40em) {
	.page-loader {
		top: 8em
	}
}

.dot {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 8px;
	background: #ef5f3c;
	margin-right: 4px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.15)
}

.button .dot {
	background: #fff
}

.button.secondary .dot {
	background: #aaa
}

.dot.one {
	-webkit-animation: scale-one 1.5s infinite;
	-moz-animation: scale-one 1.5s infinite;
	animation: scale-one 1.5s infinite
}

.dot.two {
	-webkit-animation: scale-two 1.5s infinite;
	-moz-animation: scale-two 1.5s infinite;
	animation: scale-two 1.5s infinite
}

.dot.three {
	-webkit-animation: scale-three 1.5s infinite;
	-moz-animation: scale-three 1.5s infinite;
	animation: scale-three 1.5s infinite;
	margin-right: 0
}

@
-webkit-keyframes scale-one { 0%{
	-webkit-transform: scale(0);
	transform: scale(0);
	opacity: 0
}

20%{
-webkit-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
80%{
-webkit-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
90%{
-webkit-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
100%{
-webkit-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
}
@
keyframes scale-one { 0%{
	-moz-transform: scale(0);
	transform: scale(0);
	opacity: 0
}

20%{
-moz-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
80%{
-moz-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
90%{
-moz-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
100%{
-moz-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
}
@
-webkit-keyframes scale-two { 0%{
	-webkit-transform: scale(0);
	transform: scale(0);
	opacity: 0
}

20%{
-webkit-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
40%{
-webkit-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
80%{
-webkit-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
90%{
-webkit-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
100%{
-webkit-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
}
@
keyframes scale-two { 0%{
	-moz-transform: scale(0);
	transform: scale(0);
	opacity: 0
}

20%{
-moz-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
40%{
-moz-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
80%{
-moz-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
90%{
-moz-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
100%{
-moz-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
}
@
-webkit-keyframes scale-three { 0%{
	-webkit-transform: scale(0);
	transform: scale(0);
	opacity: 0
}

40%{
-webkit-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
60%{
-webkit-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
80%{
-webkit-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
90%{
-webkit-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
100%{
-webkit-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
}
@
keyframes scale-three { 0%{
	-moz-transform: scale(0);
	transform: scale(0);
	opacity: 0
}

40%{
-moz-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
60%{
-moz-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
80%{
-moz-transform
:scale(1)
;transform
:scale(1)
;opacity
:
1
}
90%{
-moz-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
100%{
-moz-transform
:scale(0)
;transform
:scale(0)
;opacity
:
0
}
}
.search-projects {
	background: #f4fafd;
	padding: 3em 2em;
	text-align: center;
	border-bottom: 1px solid #dcdcdc
}

@media ( max-width : 40em) {
	.search-projects {
		padding: 1em
	}
}

.search-projects .search-area {
	padding: 0
}

.redux section {
	padding: 5em 0
}

@media ( max-width : 40em) {
	.redux section {
		padding: 2em 0
	}
}

.redux section h2 {
	margin-bottom: 8px
}

.redux section h4 {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: normal;
	color: #fff;
	margin: 0 0 2em;
	text-transform: uppercase;
	letter-spacing: .1em
}

.redux section hr {
	width: 137px;
	border: 0;
	border-bottom: 1px solid #fff;
	margin: 0 auto 24px;
	opacity: .3
}

.redux section p {
	font-size: 20px;
	font-size: 1.25rem;
	margin: 0 auto 1em;
	font-weight: 300;
	max-width: 30em;
	line-height: 1.5
}

@media ( max-width : 40em) {
	.redux section p {
		font-size: 16px;
		font-size: 1rem
	}
}

.redux section .no-wrap {
	white-space: nowrap
}

.redux .intro {
	background: #fff;
	position: relative
}

.redux .intro:after {
	content: '';
	background-image: url("/images/homepage-intro-b.jpg");
	-webkit-background-size: cover cover;
	-moz-background-size: cover cover;
	background-size: cover cover;
	background-position: 100% 50%;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: .2;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	position: absolute;
	z-index: -1
}

@media ( -webkit-min-device-pixel-ratio : 1.5) , ( min--moz-device-pixel-ratio :
		1.5) , ( -o-min-device-pixel-ratio : 3 / 2) , ( min-device-pixel-ratio
		: 1.5) , ( min-resolution : 1.5dppx) , ( min-width : 1600px) {
	.redux .intro:after {
		background-image: url("/images/homepage-intro-b@2x.jpg")
	}
}

@media ( max-width : 40em) {
	.redux .intro:after {
		background-image: url("/images/homepage-intro-mobile-b.jpg")
	}
}

.redux .intro h1 {
	font-family: "rooney-web", "AmericanTypewriter", Rockwell, Georgia-Bold,
		serif;
	font-weight: normal;
	margin-bottom: .125em
}

.redux .intro h1 * {
	font-family: "rooney-web", "AmericanTypewriter", Rockwell, Georgia-Bold,
		serif
}

.redux .intro p {
	font-size: 24px;
	margin-bottom: 0
}

@media ( max-width : 40em) {
	.redux .intro p {
		font-size: 18px;
		font-size: 1.125rem
	}
}

.redux .intro h4 {
	margin-bottom: 0
}

.redux .teacher-intro {
	padding: 2em 0
}

@media ( max-width : 40em) {
	.redux .teacher-intro {
		padding: 1em 0
	}
}

.redux .teacher-intro:after {
	display: none
}

.redux .teacher-intro p {
	margin: 0 auto;
	font-size: 24px;
	font-size: 1.5rem;
	color: #303030
}

.redux .teacher-intro p a {
	color: #20a1d4
}

.redux .teacher-intro .links {
	padding: 0
}

.redux .teacher-intro .links li {
	list-style: none;
	display: inline-block
}

.redux .teacher-intro .links li:not (:last-of-type ){
	margin-right: .5em
}

.redux .teacher-intro .links li:not (:last-of-type ):after {
	content: '\02022';
	color: #606060;
	padding-left: .5em
}

@media ( max-width : 40em) {
	.redux .teacher-intro .links li {
		display: block
	}
	.redux .teacher-intro .links li:not (:last-of-type ){
		margin: .5em 0
	}
	.redux .teacher-intro .links li:not (:last-of-type ):after {
		display: none
	}
	.redux .teacher-intro .links li a {
		display: block;
		padding: .5em
	}
}

.redux .existing-donor-intro {
	background: #fad961;
	background: -moz-linear-gradient(-45deg, #fad961 0%, #f76b1c 52%, #f76b1c 100%);
	background: -webkit-gradient(left top, right bottom, color-stop(0%, #fad961),
		color-stop(52%, #f76b1c), color-stop(100%, #f76b1c));
	background: -webkit-linear-gradient(-45deg, #fad961 0%, #f76b1c 52%, #f76b1c 100%);
	background: -o-linear-gradient(-45deg, #fad961 0%, #f76b1c 52%, #f76b1c 100%);
	background: -ms-linear-gradient(-45deg, #fad961 0%, #f76b1c 52%, #f76b1c 100%);
	background: linear-gradient(135deg, #fad961 0%, #f76b1c 52%, #f76b1c 100%)
}

.redux .existing-donor-intro:after {
	content: "";
	background-image: url("/images/homepage-donor-intro.jpg");
	-webkit-background-size: cover cover;
	-moz-background-size: cover cover;
	background-size: cover cover;
	background-position: left top;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: .2;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	position: absolute;
	z-index: -1
}

@media ( -webkit-min-device-pixel-ratio : 1.5) , ( min--moz-device-pixel-ratio :
		1.5) , ( -o-min-device-pixel-ratio : 3 / 2) , ( min-device-pixel-ratio
		: 1.5) , ( min-resolution : 1.5dppx) , ( min-width : 1600px) {
	.redux .existing-donor-intro:after {
		background-image: url("/images/homepage-donor-intro@2x.jpg")
	}
}

@media ( max-width : 40em) {
	.redux .existing-donor-intro:after {
		background-image:
			url("/images/homepage-donor-intro-mobile.jpg")
	}
}

.redux .existing-donor-intro h1 {
	color: #fff
}

.redux .projects {
	padding: 4em 0
}

@media ( max-width : 40em) {
	.redux .projects {
		padding: 2em 0
	}
}

.redux .projects h2 a {
	color: #303030;
	font-family: "rooney-web", "AmericanTypewriter", Rockwell, Georgia-Bold,
		serif
}

.redux .projects h2 a:hover {
	color: #20a1d4;
	text-decoration: none
}

.redux .projects h4 {
	color: #606060
}

.redux .projects .project-loading-holder {
	position: relative;
	padding-bottom: 1em
}

@media ( max-width : 40em) {
	.redux .projects .project-loading-holder {
		border: 1px dashed #dcdcdc;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		-ms-border-radius: 3px;
		-o-border-radius: 3px;
		border-radius: 3px;
		margin-bottom: 1em
	}
}

.redux .projects .project-loading-holder .loader {
	position: absolute;
	top: 50px;
	left: 50%;
	margin-left: -21px
}

.redux .projects .project-loading-holder .no-projects {
	position: absolute;
	top: 50px;
	width: 640px;
	left: 50%;
	margin-left: -320px;
	font-family: "rooney-web", "AmericanTypewriter", Rockwell, Georgia-Bold,
		serif;
	color: grey;
	font-style: italic;
	text-shadow: -1px 0 0 #fafafa, 1px 0 0 #fafafa, 0 1px 0 #fafafa, 0 -1px
		0 #fafafa;
	line-height: 1.2;
	font-size: 40px;
	font-size: 2.5rem
}

@media ( max-width : 40em) {
	.redux .projects .project-loading-holder .no-projects {
		width: 100%;
		margin-left: 0;
		left: 0;
		text-shadow: none;
		font-size: 24px;
		font-size: 1.5rem;
		top: 16px
	}
}

.redux .projects .project-loading-holder .project-loading {
	height: 404px;
	border: 1px dashed #dcdcdc;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px
}

@media ( max-width : 40em) {
	.redux .projects .project-loading-holder .project-loading {
		height: 22px;
		width: 100%;
		border: none
	}
}

.redux .projects .view-all {
	margin-bottom: 0
}

.project-card {
	display: block;
	background: #fff;
	border: 1px solid #dcdcdc;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
	color: #303030;
	text-align: left;
	margin-bottom: 1em;
	position: relative;
	box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.025);
	-webkit-transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media ( max-width : 40em) {
	.project-card {
		margin-bottom: 2em
	}
}

.project-card:after {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	border-radius: 3px;
	box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.05);
	opacity: 0;
	-webkit-transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition: all 0.5s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.project-card:hover {
	border-color: #cfcfcf;
	text-decoration: none;
	-webkit-transform: scale(1.025, 1.025);
	transform: scale(1.025, 1.025)
}

@media ( max-width : 40em) {
	.project-card:hover {
		-webkit-transform: scale(1, 1);
		transform: scale(1, 1)
	}
}

.project-card:hover:after {
	content: '';
	opacity: 1
}

.project-card .classroom-photo {
	height: 180px;
	background-size: cover;
	background-position: center center;
	position: relative;
	padding: 8px 14px;
	border-radius: 2px 2px 0 0
}

.project-card .classroom-photo:after {
	content: '';
	height: 120px;
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 0;
	display: block;
	z-index: 1;
	background: -moz-linear-gradient(top, rgba(48, 48, 48, 0) 0%,
		rgba(48, 48, 48, 0.75) 100%);
	background: -webkit-linear-gradient(top, rgba(48, 48, 48, 0) 0%,
		rgba(48, 48, 48, 0.75) 100%);
	background: linear-gradient(to bottom, rgba(48, 48, 48, 0) 0%,
		rgba(48, 48, 48, 0.75) 100%)
}

@media ( max-width : 40em) {
	.project-card .classroom-photo {
		height: 100px
	}
	.project-card .classroom-photo:after {
		height: 80px
	}
}

.project-card .classroom-photo .project-title {
	position: absolute;
	bottom: 8px;
	margin-right: 8px;
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 1.2;
	font-weight: bold;
	color: #fff;
	z-index: 2;
	font-family: "rooney-web", "AmericanTypewriter", Rockwell, Georgia-Bold,
		serif
}

.project-card .project-description {
	padding: 8px 14px 0;
	margin-bottom: 14px;
	font-size: 14px;
	font-size: 0.875rem;
	color: #303030;
	line-height: 1.4;
	height: 103px;
	overflow: hidden
}

@media ( max-width : 40em) {
	.project-card .project-description {
		height: auto
	}
}

.project-card .teacher-info {
	padding: 0 14px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 1.4;
	height: 38px;
	overflow: hidden;
	color: #606060;
	font-style: italic
}

.project-card .teacher-info .school-separator {
	padding: 0 4px
}

.project-card .teacher-info .name {
	font-weight: bold;
	display: block;
	color: #303030;
	font-style: normal
}

.project-card .progress-bar-holder {
	margin: 14px;
	display: block;
	height: 8px;
	background: #dcdcdc;
	position: relative;
	border-radius: 8px
}

.project-card .progress-bar-holder span {
	background: #ef5f3c;
	display: block;
	height: 8px;
	border-radius: 8px
}

.project-card .progress-bar-holder .match-offer-fill {
	background:
		url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAKklEQVQIW2P89evXfwYoUFt+u4ERJgDi3IpUhQjAOCCFjAoLr9aDZGDaAOG4GeEy0IDKAAAAAElFTkSuQmCC)
		repeat;
	height: 8px;
	right: 0;
	position: absolute;
	top: 0;
	background-size: 4px 4px;
	border: 1px solid #addaed;
	border-left-color: #98d1e8;
	-webkit-border-radius: 0 8px 8px 0;
	-moz-border-radius: 0 8px 8px 0;
	-ms-border-radius: 0 8px 8px 0;
	-o-border-radius: 0 8px 8px 0;
	border-radius: 0 8px 8px 0
}

.project-card .project-data {
	text-align: center;
	margin: 0 1em 1em;
	font-weight: bold;
	color: #606060
}

.redux .infotainment {
	padding: 4em 0;
	background: #303030;
	position: relative
}

@media ( max-width : 40em) {
	.redux .infotainment {
		padding: 2em 0
	}
}

.redux .infotainment:after {
	content: "";
	background-image: url("/images/blackboard.jpg");
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: .4;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	position: absolute;
	z-index: -1
}

@media ( -webkit-min-device-pixel-ratio : 1.5) , ( min--moz-device-pixel-ratio :
		1.5) , ( -o-min-device-pixel-ratio : 3 / 2) , ( min-device-pixel-ratio
		: 1.5) , ( min-resolution : 1.5dppx) , ( min-width : 1600px) {
	.redux .infotainment:after {
		background-image: url("/images/blackboard@2x.jpg")
	}
}

.redux .infotainment h2 {
	color: #fff
}

.redux .infotainment p {
	font-family: "rooney-web", "AmericanTypewriter", Rockwell, Georgia-Bold,
		serif;
	color: #fff
}

.redux .infotainment p.subheader {
	color: #fff;
	font-size: 24px;
	font-size: 1.5rem;
	font-style: normal
}

@media ( max-width : 40em) {
	.redux .infotainment p.subheader {
		font-size: 18px;
		font-size: 1.125rem
	}
}

.redux .infotainment p.charity-navigator {
	color: #fdd000;
	max-width: 22em;
	font-size: 16px;
	font-size: 1rem;
	font-style: italic;
	margin-bottom: 2em
}

.redux .infotainment .stars {
	margin: 2em 0 .5em
}

.redux .infotainment .stars .ss-star {
	color: #fdd000;
	font-size: 24px;
	font-size: 1.5rem;
	margin: 1em 4px
}

.redux .infotainment .tertiary {
	background: transparent;
	-webkit-box-shadow: 0 0 0 0;
	-moz-box-shadow: 0 0 0 0;
	box-shadow: 0 0 0 0;
	text-shadow: none;
	border: 1px solid #fff;
	color: #fff !important
}

.redux .infotainment .tertiary:hover, .redux .infotainment .tertiary:focus
	{
	background: #fff;
	color: #303030 !important
}

.redux .light {
	background: #fafafa
}

.redux .light h4 {
	color: #606060
}

.redux .light hr {
	border-color: #606060
}

.redux .light h2 {
	color: #303030
}

.redux .light p.subheader {
	color: #303030
}

.redux .light p {
	color: #303030
}

.redux .light:after {
	display: none;
	background: none
}

@media ( max-width : 40em) {
	.redux .light:after {
		display: none;
		background: none
	}
}

.redux .light .tertiary {
	background: transparent;
	-webkit-box-shadow: 0 0 0 0;
	-moz-box-shadow: 0 0 0 0;
	box-shadow: 0 0 0 0;
	text-shadow: none;
	border: 1px solid #20a1d4;
	color: #20a1d4 !important
}

.redux .light .tertiary:hover, .redux .light .tertiary:focus {
	background: #20a1d4;
	color: #fff !important
}

.about-us {
	background: #fad961;
	background: -moz-linear-gradient(-45deg, #fad961 0%, #f76b1c 52%, #f76b1c 100%);
	background: -webkit-gradient(left top, right bottom, color-stop(0%, #fad961),
		color-stop(52%, #f76b1c), color-stop(100%, #f76b1c));
	background: -webkit-linear-gradient(-45deg, #fad961 0%, #f76b1c 52%, #f76b1c 100%);
	background: -o-linear-gradient(-45deg, #fad961 0%, #f76b1c 52%, #f76b1c 100%);
	background: -ms-linear-gradient(-45deg, #fad961 0%, #f76b1c 52%, #f76b1c 100%);
	background: linear-gradient(135deg, #fad961 0%, #f76b1c 52%, #f76b1c 100%);
	color: #fff
}

.about-us:after {
	content: "";
	background-image: url("/images/homepage-about.jpg");
	-webkit-background-size: cover cover;
	-moz-background-size: cover cover;
	background-size: cover cover;
	background-position: left top;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: .2;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	position: absolute;
	z-index: -1
}

@media ( -webkit-min-device-pixel-ratio : 1.5) , ( min--moz-device-pixel-ratio :
		1.5) , ( -o-min-device-pixel-ratio : 3 / 2) , ( min-device-pixel-ratio
		: 1.5) , ( min-resolution : 1.5dppx) , ( min-width : 1600px) {
	.about-us:after {
		background-image: url("/images/homepage-about@2x.jpg")
	}
}

.about-us .tertiary {
	background: transparent;
	-webkit-box-shadow: 0 0 0 0;
	-moz-box-shadow: 0 0 0 0;
	box-shadow: 0 0 0 0;
	text-shadow: none;
	border: 1px solid #fff;
	color: #fff !important
}

.about-us .tertiary:hover, .about-us .tertiary:focus {
	background: #fff;
	color: #ef5f3c !important
}

@
-webkit-keyframes Banner-reveal { 0%{
	bottom: -56px
}

100%{
bottom
:
0
}
}
@
-moz-keyframes Banner-reveal { 0%{
	bottom: -56px
}

100%{
bottom
:
0
}
}
@
keyframes Banner-reveal { 0%{
	bottom: -58px
}

60%{
bottom
:
0
}
80%{
bottom
:
-4px
}
100%{
bottom
:
-2px
}
}
#tffCodeCallout {
	text-align: center;
	padding: 1em 0px 0px 0px;
	position: relative
}

#tffCodeCallout .popup {
	display: none;
	text-align: left;
	position: absolute;
	top: 0px;
	right: 180px;
	width: 400px;
	background-color: #ffffff;
	padding: 1.5em;
	border: 1px solid #e9e9e9;
	z-index: 100;
	-webkit-box-shadow: 0px 0px 20px;
	-moz-box-shadow: 0px 0px 20px;
	box-shadow: 0px 0px 20px
}

@media ( max-width : 40em) {
	#tffCodeCallout .popup {
		top: 0px;
		bottom: auto;
		left: 0px;
		right: auto;
		text-align: left;
		width: auto;
		margin-left: 0px;
		padding: .5em
	}
}

#tffCodeCallout .popup a {
	display: inline
}

#tffCodeCallout .popup .close {
	background-color: #dbdbdb;
	height: 28px;
	cursor: pointer;
	margin: -1.5em -1.5em 1.5em -1.5em;
	position: relative;
	border-bottom: 1px solid #cccccc;
	text-align: right
}

#tffCodeCallout .popup .close:before {
	content: " ";
	display: block;
	position: absolute;
	top: -2px;
	right: -.7em;
	background: url(/images/close_right.png) no-repeat top right;
	width: 32px;
	height: 31px
}

#tffCodeCallout .popup .close:after {
	content: "close ";
	padding: 4px 28px 0 0;
	display: block;
	text-decoration: underline
}

#tffCodeCallout .headline {
	font-size: 1.15em
}

#tffCodeCallout .headline img {
	max-width: 160px;
	vertical-align: middle;
	padding: 0px .25em;
	display: inline;
	margin: 2px auto
}

@media ( max-width : 40em) {
	#tffCodeCallout .headline img {
		display: block
	}
}

#tffCodeCallout .popup {
	top: 5em;
	right: auto;
	bottom: auto;
	left: 50%;
	margin-left: -200px;
	text-align: left
}

@media ( max-width : 40em) {
	#tffCodeCallout .popup {
		width: auto;
		left: 0px;
		margin-left: 0px
	}
}

#tffCodeCallout .headline {
	font-size: 1.2em
}

@media ( max-width : 40em) {
	#tffCodeCallout .headline {
		font-size: 1.1em
	}
}

#tffCodeCallout .popup {
	top: auto;
	bottom: 3em
}

#mainHome {
	width: 980px;
	margin: 0 auto;
	position: relative;
	padding: 2em 0
}

@media ( max-width : 40em) {
	#mainHome {
		padding: 1em;
		width: 100%;
		box-sizing: border-box
	}
}

.redux .BSD-info {
	background: #ef5f3c;
	background-image: url("/images/homepage-teacher-BSD.jpg");
	-webkit-background-size: cover cover;
	-moz-background-size: cover cover;
	background-size: cover cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover
}

@media ( -webkit-min-device-pixel-ratio : 1.5) , ( min--moz-device-pixel-ratio :
		1.5) , ( -o-min-device-pixel-ratio : 3 / 2) , ( min-device-pixel-ratio
		: 1.5) , ( min-resolution : 1.5dppx) , ( min-width : 1600px) {
	.redux .BSD-info {
		background-image: url("/images/homepage-teacher-BSD@2x.jpg")
	}
}

.redux .BSD-info:after {
	display: none
}

.redux .BSD-info .tertiary {
	background: transparent;
	-webkit-box-shadow: 0 0 0 0;
	-moz-box-shadow: 0 0 0 0;
	box-shadow: 0 0 0 0;
	text-shadow: none;
	border: 1px solid #fff;
	color: #fff !important
}

.redux .BSD-info .tertiary:hover, .redux .BSD-info .tertiary:focus {
	background: #fff;
	color: #ef5f3c !important
}

.BSD-overlay {
	background: rgba(239, 95, 60, 0.95);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1000
}

.BSD-overlay .content-container {
	position: relative;
	max-width: 700px;
	margin: 4em auto 0;
	text-align: center;
	color: #fff
}

.BSD-overlay .content-container h2 {
	color: #fff;
	font-size: 40px;
	font-size: 2.5rem
}

.BSD-overlay .content-container p {
	font-size: 24px;
	font-size: 1.5rem;
	margin: 0 0 1em
}

.BSD-overlay .content-container .tertiary {
	background: transparent;
	-webkit-box-shadow: 0 0 0 0;
	-moz-box-shadow: 0 0 0 0;
	box-shadow: 0 0 0 0;
	text-shadow: none;
	border: 1px solid #ef5f3c;
	color: #ef5f3c !important;
	background: #fff
}

.BSD-overlay .content-container .tertiary:hover, .BSD-overlay .content-container .tertiary:focus
	{
	background: #ef5f3c;
	color: #fff !important
}

.BSD-overlay .content-container .tertiary:hover, .BSD-overlay .content-container .tertiary:focus
	{
	border-color: #fff
}

.BSD-overlay .content-container .no-thanks {
	display: block;
	margin-top: 1em;
	color: #fff;
	font-size: 14px;
	font-size: 0.875rem;
	text-decoration: underline
}

.BSD-overlay .content-container .no-wrap {
	white-space: nowrap
}