/*
Master Colors:
	Green: 		#a0b91e rgba(160, 185, 30 ,1)
	Light Blue: #009bf0 rgba(0, 155, 240 ,1)
	Dark Blue: 	#1e3c73 rgba(30, 60, 115 ,1)
	Red: 		#be4137 rgba(90, 65, 55 ,1)
	Orange: 	#f07800 rgba(240, 120, 0 ,1)
	Gold: 		#ebb900 rgba(235, 185, 0 ,1)
	Purple: 	#6e2de1 rgba(110, 45, 225 ,1)

 */

html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body {
	font-family: 'Alegreya Sans',Helvetica,Arial,sans-serif;
	font-size: 1.2em;
	line-height: 100%;
	background-color: #1e3c73;
}
.ieBanner {
	display:none;
}





/* core */



.widthController {
	position: relative;
	max-width:40em;
	min-width: 10em;
	margin:0 auto;
}

header,
main,
footer {
	position: relative;
	padding:1em;
}
article,
div.search,
div.challengePage,
.item-page,
.itemView,
.itemListView,
.itemHome {
	position: relative;
	padding:2em;
	box-sizing: border-box;
	border-radius:1.2em;
	margin-bottom:1em;
	background-color: rgba(255, 255, 255, .9);
}



/* backgrounds */

.bgMain {
	background-color: rgba(0, 0, 0, .5);
}
.bgWhite {
	background-color: rgba(255, 255, 255, .9);
}
.bgBlue {
	background-color: rgba(30, 60, 115, .7);
}
.bgGreen {
	background-color: rgba(75, 120, 20, .6);
}
div.backgroundImage .custom {
	position: fixed;
	top:0;
	left:0;
	width:101%;
	height:101%;
	background-repeat: no-repeat;
	background-position-x: center;
	background-position-y: center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	z-index: -1000;
}



/* structure */

.wrapperBlue {
	background: rgba(220,220,220,.5);
	padding:1.5em;
	border-radius: 1em;
	margin-bottom:1em;
}
.columnWide {
	position: relative;
	box-sizing: border-box;
	float:left;
	padding-right:1em;
	width:80%;
}
.columnNarrow {
	position: relative;
	box-sizing: border-box;
	float:left;
	clear:right;
	width:20%;
}
.unit {
	position: relative;
	display: block;
	width:100%;
	padding:0 0 .6em 0;
}
aside {
	font-size: .8em;
}

	
/* base typography */

h1,h2,h3,h4,h5,h6,p,li {
	margin:0;
	padding:0;
}
h1,h2,h3,h4,h5,h6 {
	font-size: 1.2em;
	line-height: 120%;
	font-weight:800;
	color:#008cd9;
	margin-bottom:.5em;	
}
h1 {
	font-size: 2.5em;
	line-height: 100%;
	font-weight: 300;
	letter-spacing: -.06em;	
}
p,li,dd,dt {
	font-size: 1.1em;
	line-height: 135%;
	color:#444444;
	margin-bottom:.7em;
}
li {
	margin-bottom:.5em;
}
a {
	color:#009bf0;
	text-decoration: none;
}


/* header */

header div.logo {
	position: relative;
	width:60%;
	margin:0 auto;
	margin-top:-1em;
	padding:2em 0 1em 0;
	border-top:.7em solid #009bf0;
}
header div.logo img {
	width:100%;
	height:auto;
}
header p {
	font-size: 1.2em;
	line-height: 100%;
	color:#ffffff;	
	text-align: center;
	font-weight: 600;
	letter-spacing: -.01em;
	margin:0 0 1.5em 0;
}




/* header nav ***********************************************************************/


header div.navWrapper {
	position: relative;
	z-index: 1000;
}
header div.navWrapper nav.navMain {
	position: relative;
	width:100%;
	height:4em;
}
header div.navWrapper nav.navMain ul {
	width:100%;
	text-align: center;
	margin:1em 0 1em 0;
	padding:0;
	background-color: rgba(160, 185, 30, .8);
	border-radius: 100em;
}
header div.navWrapper nav.navMain ul li {
	display: inline-block;
	font-size: 1em;
	line-height: 100%;
	text-align: center;
	text-transform: uppercase;
	font-weight: 800;
	margin:0;
	padding: 0;
}
header div.navWrapper nav.navMain ul li.current a {
	color:#ffffff;
}
header div.navWrapper nav.navMain ul li a {
	display: inline-block;
	text-decoration: none;
	padding: 1em;
	color:rgba(255, 255, 255, .5);
}
header div.navWrapper nav.navMain ul li a:hover {
	color:#ffffff;
	-webkit-transition:  all 0.2s ease-in-out;
	-moz-transition:  all 0.2s ease-in-out;
	-o-transition:  all 0.2s ease-in-out;
	-ms-transition:  all 0.2s ease-in-out;
	transition:  all 0.2s ease-in-out;
}

/* fix nav on scroll */

header div.navWrapper nav.navMain.fixed ul {
	display:block;
	position: fixed;
	top:0;
	left:0;
	z-index: 1000;
	margin:0;
	background-color: #a0b91e;
	background-image: url('../images/logo-pivot-small1.png');
	background-repeat: no-repeat;
	background-position: .5em .3em;
	border-radius: 0;
}


/* controls for small screen nav */

header div.navWrapper input[type=checkbox]{
    display: none;
    -webkit-appearance: none;
}
header div.navWrapper input[type=checkbox]:checked ~ nav #navMain{
    display: block;
    cursor: pointer;
}
header div.navWrapper .responsiveNavActivator {
	display: none;
}







/* footer  ***********************************************************************/


footer {
	height:20em;
	font-size: .7em;
}
footer p  {
	color:#ffffff;
	text-align: center;
}
footer nav ul {
	padding:0;
	text-align: center;
}
footer nav ul li {
	display:inline-block;
	font-weight: 700;
	text-transform: uppercase;
	padding:0 .5em;
	border-left:1px solid rgba(255,255,255,.3);
} 
footer nav ul li:last-child {
	border-right:1px solid rgba(255,255,255,.3);
}
footer nav ul li a {
	color:rgba(255,255,255,.7);
}
footer nav ul li a:hover {
	color:#ffffff;
	text-decoration: none;
}

/* footer styles */






/* home intro article  ***********************************************************************/

article.itemHome h1 {
	margin-bottom:.2em;
}
article.itemHome p {
	margin-bottom:0;
}
article.itemHome.bgIconGreen {
	background-image: url(../images/bg-icon-green.png);
	background-repeat: no-repeat;
	background-position: 130% 40%;
}
article.itemHome.bgIconBlue {
	background-image: url(../images/bg-icon-blue.png);
	background-repeat: no-repeat;
	background-position: 130% 40%;
}



/* search  ***********************************************************************/

div.error {
	color:red;
}
form.searchBox  {
	font-size: .9em;
	position: absolute;
	top:1em;
	right:1em;
	background: none;
	overflow: hidden;
	border-radius: 30em;
	border:1px solid #a6d2f0;
	width: 13em;
	height:2em;
	z-index: 10;
}
form.searchBox input {
	border:none;
	background: none;
	padding-left:.7em;
	font-size: 1em;
	line-height: 200%;
}
form.searchBox input:focus {
outline:none;
background: rgba(255,255,255,.3);
}
form.searchBox > button {
	position: absolute;
	top:0;
	right:0;
	border:none;
	margin:0;
	padding:.5em 1em;
	background-color: #a0b91e;
	color:#ffffff;
	outline:none;
	font-weight: 700;
}
form.searchBox > button:hover {
	background-color: #009bf0;
	-webkit-transition:  all 0.2s ease-in-out;
	-moz-transition:  all 0.2s ease-in-out;
	-o-transition:  all 0.2s ease-in-out;
	-ms-transition:  all 0.2s ease-in-out;
	transition:  all 0.2s ease-in-out;
}
dl.searchResults dt.resultsTitle {
	font-weight: 600;
	margin-bottom:.2em;;
}
dl.searchResults dt.resultsTitle a {
	text-decoration: underline;
}
dl.searchResults dd.resultsCategory {
	font-size: .9em;
	margin-bottom:0;
}
dl.searchResults dd.resultsText {
margin-bottom:1em;
}
dl.searchResults dd.resultsText span.highlight {
background: #d8e6f0;
border-radius: 3px;
}


/* k2 challenge library ********************************************************************/


#k2Container.itemListView div.challengeItem {
	position: relative;
padding-left:3.5em;
}
#k2Container.itemListView div.challengeItem h2 {
	margin-bottom:.2em;
	font-weight: 700;
}
#k2Container.itemListView div.challengeItem h2 a {
color:#00236e;
}
#k2Container.itemListView div.challengeItem p {
	margin-bottom:0;
}
#k2Container.itemListView div.challengeItem p a {
	font-weight: 800;
	color:#009bf0;
}
#k2Container.itemListView div.challengeItem p a:hover {
	text-decoration: underline;
}
#k2Container.itemListView div.challengeItem img {
	position: absolute;
	top:1.2em;
	left:1em;
	width:2em;
	height:auto;
	border-radius: 50%;
}





/* challenge finder 
NOTE: All html can be found in the pivot template folder in html->mod_filterfork2->Default_ ********************************/
	
.challengeFinder {
	position: relative;
}
.challengeFinder h1 {
	font-size: 1.6em;
	line-height: 100%;
	font-weight: 700;
	letter-spacing: -.03em;
	margin:0;
	padding: 0;
	margin-bottom:.5em;
}
.challengeFinder p {
	font-size: .95em;
	line-height: 100%;
	margin-bottom:1.5em;
}


/* widget that controls the challenge finder */


.challengeSelector {
	position: relative;
}



/* container for each selection */

.challengeSelector div.selections {
	width:100%;
	border:none;
	font-size: .9em;
}
.challengeSelector label{
display: none;
}

.challengeSelector div.selections select.chzn-select {
}
.challengeSelector div.selections div.chosen-container {
	width:100% !important;
	margin-bottom:.5em;
	border-radius: 50em;
}
.challengeSelector div.selections div.chosen-container.chosen-container-active {
	background: #bcdef0;
}
.challengeSelector div.selections div.chosen-container ul.chosen-choices {
	position: relative;
	display:block;
	width:100%;
	border:5px solid #bedcf0;
	border-radius:50em;
	background: none;
	background-color:rgba(190, 220, 240, .2);
	outline:none;
	box-shadow: none !important;
	padding:.7em 0 .7em 1em;
}
.challengeSelector div.selections div.chosen-container ul.chosen-choices:hover {
	background-color: #bedcf0;
	-webkit-transition:  all 0.2s ease-in-out;
	-moz-transition:  all 0.2s ease-in-out;
	-o-transition:  all 0.2s ease-in-out;
	-ms-transition:  all 0.2s ease-in-out;
	transition:  all 0.2s ease-in-out;
}
.challengeSelector div.selections div.chosen-container ul.chosen-choices li.search-field {
	position: relative;
	border-radius: 50em;
}
.challengeSelector div.selections div.chosen-container ul.chosen-choices li.search-field input[type="text"] {
	font-family: 'Alegreya Sans',Helvetica,Arial,sans-serif;
}
.challengeSelector div.selections div.chosen-container ul.chosen-choices li.search-choice {
}
.challengeSelector div.selections div.chosen-container div.chosen-drop {
	font-size: .8em;
	background: #bedcf0;
	width:80%;
	margin-left:10%;
	margin-top:-1px;
	border:none;
	border-radius:0 0 2em 2em;
	padding:1em;
	box-shadow: 0 20px 20px rgba(0,0,0,.1);
}
.challengeSelector div.selections div.chosen-container div.chosen-drop ul.chosen-results li {
	position: relative;
	padding:.5em 1em;
	border-radius: 20em;
}
.challengeSelector div.selections div.chosen-container div.chosen-drop ul.chosen-results li:last-child{
}
.challengeSelector div.selections div.chosen-container div.chosen-drop ul.chosen-results li.active-result {
	background: none;
}
.challengeSelector div.selections div.chosen-container div.chosen-drop ul.chosen-results li.active-result.highlighted {
	color:#5c5c5c;
	background:rgba(255,255,255,.3);
}
.challengeSelector div.selections div.chosen-container div.chosen-drop ul.chosen-results li.result-selected {
	color:#6ac1f0;
}
.challengeSelector div.selections div.chosen-container div.chosen-drop ul.chosen-results li.no-results {
	color:#ffffff;
	background: #bedcf0;
}

/* Start Over - Button */

.buttonReset {
	position: relative;
	margin:.5em 0 1em 0;
}
.buttonReset > input.reset_button {
	float:right;
}
.buttonReset p {
	position: absolute;
	left:0;
	bottom:0;
	margin:0;
	line-height: 100%;
	font-weight: 700;
}


/* Challenge list */

.challengeList > div > ul {
	margin:0;
	padding:0;
}
.challengeList > div > ul li {
	position: relative;
	display: block;
	width:100% !important;
	padding:0;
	margin-bottom:.5em;
	color:#cccccc;
	background-color: rgba(30,60,115,1);
	border-radius: 20em;
	border:5px solid rgba(30,60,115,1);
	overflow: hidden;
	-webkit-transition:  all 0.2s ease-in-out;
    -moz-transition:  all 0.2s ease-in-out;
    -o-transition:  all 0.2s ease-in-out;
    -ms-transition:  all 0.2s ease-in-out;
    transition:  all 0.2s ease-in-out;
}
.challengeList > div > ul li:hover {
	background-color: rgba(30,60,115,.8);
	-webkit-transition:  all 0.2s ease-in-out;
    -moz-transition:  all 0.2s ease-in-out;
    -o-transition:  all 0.2s ease-in-out;
    -ms-transition:  all 0.2s ease-in-out;
    transition:  all 0.2s ease-in-out;
}
.challengeList > div > ul li > a {
	display: block;
	font-size: .9em;
	font-weight: 500;
	line-height: 300%;
	color:#ffffff;
	padding-left: 3.6em;
}
.challengeList > div > ul li > a:after {
	position: absolute;
	top:0;
	right:1em;
	content: 'VIEW';
	font-size: .7em;
	font-weight: 800;
	letter-spacing: .2em
}
.challengeList > div > ul li.itemFeatured a:before{
	content: 'NEW! ';
	font-weight: 800;
	color: #ffffff;
	opacity: .9;
}
.challengeList > div > div.noResultsContainer {
	font-weight: 700;
	color:#be4137;
}
.challengeList > div > ul li img.moduleItemImage {
	position: absolute;
	top:0;
	left:0;
	height:100%;
}
.challengeList > div > ul li img.moduleItemImage {
	height:100%;
	width:auto;
	border-radius: 50%;
}
.challengeList > div > ul li:hover img.moduleItemImage {
    -ms-transform: rotate(7deg); /* IE 9 */
    -webkit-transform: rotate(45deg); /* Chrome, Safari, Opera */
    transform: rotate(360deg);
    -webkit-transition:  all 0.2s ease-in-out;
    -moz-transition:  all 0.2s ease-in-out;
    -o-transition:  all 0.2s ease-in-out;
    -ms-transition:  all 0.2s ease-in-out;
    transition:  all 0.2s ease-in-out;
}




/* page listing nav at bottom */

.challengeList > div .pagination {
	position: relative;
	width:100%;
	margin-top:.5em;
	text-align: center;
}
.challengeList > div .pagination ul {
	margin:0;
	padding:0;
	text-align: center;
	margin-bottom:.8em;
}
.challengeList > div .pagination ul li {
	display:inline-block;
	font-size: .9em;
	line-height: 1em;
	font-weight: 600;
	padding:.4em .7em;
	margin:0 1px;
	overflow: hidden;
	background-color: #a0b91e;
	border-radius: .3em;
	text-transform: uppercase;
	overflow: hidden;
}
.challengeList > div .pagination ul li.pagination-start,
.challengeList > div .pagination ul li.pagination-end {
	display:none;
}
.challengeList > div .pagination ul li span {
	color:#b9d623;
}
.challengeList > div .pagination ul li a {
	color:#ffffff;
}
span.pagenav {
	color:#ffffff;
}


/* challenge pages ***********************************************************************/

div.challengePage {
	position: relative;
}
div.challengePage div.featuredBanner {
	position: absolute;
	top:0;
	right:2em;
	padding:.5em .9em .6em .9em;
	background-color: #009bf0;
	color:#ffffff;
	font-size: .7em;
	font-weight: 800;
	border-bottom-left-radius: .5em;
	border-bottom-right-radius: .5em;
}
div.challengePage h1 {
	position: relative;
	font-size:1.5em;
	line-height: 200%;
	font-weight: 600;
	letter-spacing: -.03em;
	color:#00236e;
	margin-bottom:1em;
	white-space: nowrap;
	overflow: hidden;
}
div.challengePage h1 img {
	float:left;
	width:2em !important;
	height:auto !important;
	border-radius: 50%;
	margin-right:.3em;
}


/* details box  */

div.challengePage div.itemExtraFields ul {
	font-size: .9em;
	margin:0;
	padding:0;
}
div.challengePage div.itemExtraFields ul li:first-child {
		border-top:1px solid #bbbbbb;
}
div.challengePage div.itemExtraFields ul li {
	font-size: 1em;
	line-height: 120%;
	list-style: none;
	margin:0;
	padding:.5em .7em;
	border-bottom:1px solid #bbbbbb;
}
div.challengePage div.itemExtraFields ul li span:first-child {
	display:inline-block;
	width:7em;
	font-weight: 700;
}


/* attachments box  */


div.challengePage div.itemAttachments a {
	display:block;
	padding-bottom:.5em;
	text-decoration: underline;
}




/* video box  */

div.challengePage div.itemVideoBlock p {
	font-size: .9em;
	line-height: 100%;
	margin:0;
	padding:0;
	margin-bottom:.5em;
}
div.challengePage div.itemVideoBlock div.itemVideoEmbedded {
	position: relative;
	width:100%;
	margin:0 auto;
	margin-bottom:1em;
	margin-top:1em;
	border:none;
	box-sizing: border-box;
	background: none;
	box-shadow: .5em .5em 1em rgba(0,0,0,.4);
}
div.challengePage div.itemVideoBlock div.itemVideoEmbedded iframe {
	position: relative;
	display:block;
	margin: 0 auto;
	border:none;
	width:100%;
	height:22em;
}


/* challenge page sharing features */


div.challengePage div.itemShare {
}
div.challengePage div.sharingUtilities {
	margin-bottom:1em;
}
div.challengePage div.itemSocialSharing {
	display: block;
	width:100%;
	padding-bottom: 1em;
}
div.challengePage div.itemSocialSharing div.service {	
	display:inline-block;
	float:left;
	margin-right:.5em;
}


/*  back to top */

.itemBackToTop {
	position:relative;
	width:100%;
	margin-top:2em;
	margin-bottom:-2em;
}
.itemBackToTop a {
	display:block;
	max-width: 10em;
	margin:0 auto;
	text-align: center;
	color:#ffffff;
	text-transform: uppercase;
	font-size: .8em;
	font-weight: 800;
	background: #a0b91e;
	padding: .5em 1em;
	border-top-left-radius: .8em;
	border-top-right-radius: .8em;
	-webkit-transition:  all 0.2s ease-in-out;
	-moz-transition:  all 0.2s ease-in-out;
	-o-transition:  all 0.2s ease-in-out;
	-ms-transition:  all 0.2s ease-in-out;
	transition:  all 0.2s ease-in-out;
}
.itemBackToTop a:hover {
	background: #009bf0;
	-webkit-transition:  all 0.2s ease-in-out;
	-moz-transition:  all 0.2s ease-in-out;
	-o-transition:  all 0.2s ease-in-out;
	-ms-transition:  all 0.2s ease-in-out;
	transition:  all 0.2s ease-in-out;
}



a.itemEmailLink {
	position: relative;
	display:block;
	background: transparent url('../images/icon-email.png') no-repeat top left;
	background-size: contain;
	color:transparent;
	overflow: hidden;
	width:2.3em !important;
	height:2.3em !important;
}
a.itemEmailLink:hover {
	opacity: .7;
}






/* forms **********************************************************************************/

input[type="text"] {
	font-family: 'Alegreya Sans',Helvetica,Arial,sans-serif;
}
input[type="button"],
a.button {
	font-size: .9em;
	line-height: 100%;
	text-transform: uppercase;
	font-weight: 800;
	border:none;
	border-radius: .5em;
	padding:.6em .8em .4em .8em;
	color:#ffffff;
	outline: none;
	background-color: #a0b91e;
	-webkit-transition:  all 0.2s ease-in-out;
	-moz-transition:  all 0.2s ease-in-out;
	-o-transition:  all 0.2s ease-in-out;
	-ms-transition:  all 0.2s ease-in-out;
	transition:  all 0.2s ease-in-out;
}
input[type="button"]:hover,
a.button:hover {
	background-color: #009bf0;
	-webkit-transition:  all 0.2s ease-in-out;
	-moz-transition:  all 0.2s ease-in-out;
	-o-transition:  all 0.2s ease-in-out;
	-ms-transition:  all 0.2s ease-in-out;
	transition:  all 0.2s ease-in-out;
}
a.button:hover {
	text-decoration: none;
}

a.button.contribute {
	display:block;
	text-align: center;
	margin:2em 5em;
	border-radius: 20em;
	padding:.7em .8em;
}















.slicknav_menu {
	display:none;
}

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