/*
Sticky Footer Solution
by Steve Hatcher
http://stever.ca
http://www.cssstickyfooter.com
*/

* {margin:0;padding:0;}

/* must declare 0 margins on everything, also for main layout components use padding, not
vertical margins (top and bottom) to add spacing, else those margins get added to total height
and your footer gets pushed down a bit more, creating vertical scroll bars in the browser */

html, body, #wrap {height: 100%;}

body > #wrap {height: auto; min-height: 100%;}

#main {padding-bottom: 127px;}  /* must be same height as the footer */

#footer {position: relative;
	margin-top: -127px; /* negative value of footer height */
	height: 127px;
	clear:both;}

/* CLEAR FIX*/
.clearfix:after {content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;}
.clearfix {display: inline-block;}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */

/*
GENERAL
*/
body {
	background-repeat: repeat-x;
	background-image: url(../images/pages/header_bg.jpg);
}
.green {
	color: #487827;
}
.darkgreen {
	color: #145167;
}
.purple {
	color: #97338e;
}
.darkpurple {
	color: #411f67;
}
.grey {
	color: #678d9b;
}
.blue {
	color: #003C62;
}
.lighblue {
	color: #2d3b84;
}
.yellow {
	color: #d2f34c;
}
.pink {
	color: #ff98f6;
}
a {
	text-decoration: none;
}
a img {
	border: none;
}

h1 {
	position: absolute;
	left: 0px;
	top: 20px;
}
h1 a {
	width: 160px;
	height: 108px;
	display: block;
}
h1 a img {
	border: none;
	position: absolute;
	left: 0px;
	top: 0px;
}

div#main {
	width: 960px;
	margin-left: auto;
	margin-right: auto;
}

/*
HEADER
*/
div#header {
	background-image: url(../images/header.jpg);
	background-repeat: no-repeat;
	background-color: #003e64;
	height: 176px;
	position: relative;
}
div#header_words {
	position: absolute;
	right: 0px;
	top: 33px;
}
div#header_words p.large_bold_white {
	margin-bottom: 7px;
}
div#header-links {
	position: absolute;
	left: 0px;
	bottom: 0px;
}
div#header-links a {
	border-left: 1px solid #025378 ;
	padding-top: 6px;
	padding-right: 12px;
	padding-left: 12px;
	height: 25px;
	display: block;
	float: left;
}
div#header-links a:hover {
	background-color: #025378;
	text-decoration: none;
}
div#header-links a#media_link {
	border-right: 1px solid #025378 ;
}

.index a#home_link, .resources a#resources_link, .contact a#contact_link, .media a#media_link, .login a#login_link {
	background-color: #d7ebf8;
}


div#header-sublinks {
	position: absolute;
	right: 0px;
	bottom: 0px;
	z-index: 40;
	display: inline;
}
div#header-sublinks a {
	background-image: url(../images/section_links_bg.jpg);
	background-repeat: no-repeat;
	padding-top: 12px;
	height: 31px;
	display: block;
	float: left;
	margin-left: 1px;
	text-align: center;
}
div#header-sublinks a:hover {
	color: #FFF;
	text-decoration: none;
}

a#personal_link {
	width: 139px;
}
a#personal_link:hover {
	background-position: 0px -43px;
}
body.personal a#personal_link {
	background-position: 0px -86px;
	margin-bottom: -9px;
	height: 40px;
	background-color: #d7ebf8;
	z-index: 20;
}

a#school_link {
	background-position: -139px 0px;
	width: 139px;
}
a#school_link:hover {
	background-position: -139px -43px;
}
body.school a#school_link {
	background-position: -139px -86px;
	margin-bottom: -9px;
	height: 40px;
	background-color: #d7ebf8;
	z-index: 20;
}

a#university_link {
	background-position: -279px 0px;
	width: 159px;
}
a#university_link:hover {
	background-position: -279px -43px;
}
body.university a#university_link {
	background-position: -279px -86px;
	margin-bottom: -9px;
	height: 40px;
	background-color: #d7ebf8;
	z-index: 20;
}

.free_resource_flash {
	margin-top: 20px;
}
.free_resource_flash p {
	margin-top: 20px;
}

/*
FOOTER
*/
div#footer {
	/*background-color: #003f5c; */
	background: url(../images/footer_bg.gif) repeat-x bottom;
	padding-top:20px;
	background-color: #FFF;
}
div#footer_content {
	width: 960px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	height: 127px;
}


div#index_footer {
	background-image: url(../images/index/index_footer.jpg);
	background-repeat: no-repeat;
	padding-top: 17px;
	height: 60px;
	width: 960px;
	clear: both;
	margin-bottom: 20px;
	position: relative;
}
div#index_footer div {
	padding-top: 10px;
}
div#index_footer div span {
	padding-top: 10px;
	height: 27px;
	display: block;
	float: left;
	margin-right: 20px;
}
#created_by {
	position: absolute;
	left: 40px;
}
#our_partners {
	position: absolute;
	right: 40px;
}
#our_partners a {
	margin-right: 20px;
}


div#footer_content a.footer_img_link {
	position: absolute;
	left: 0px;
	bottom: 2px;
}
div#footer_content p.copywrite {
	position: absolute;
	left: 135px;
	bottom: 6px;
	background-color: #003f5c;
	margin: 0px;
	border: 0px;
}
div#footer_content p.footer_links {
	position: absolute;
	right: 0px;
	bottom: 6px;
	background-color: #003f5c;
	margin: 0px;
	border: 0px;
	width: 400px;
}
div#footer_content p.footer_links a {
	float: right;
	display: block;
	margin-left: 20px;
}