/* Global styles.*/

* {
	margin:0;
	padding:0;
}

html, body, form, fieldset, table {
	font: 100% 'PT Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif;;
}

a img {
	border:none;
}

/* HTML5 elements. Silly IE! */
main, article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {
	display:block;
}

body {
	width:100%;
	margin:0 auto;
	background:#fafafa url(/media/mainbg.png) repeat-y center;
	color:#333;
}

/* Template styles */

#headcontainer {
	background-repeat:no-repeat;
	background-position: 50% 140px;
	margin-bottom:20px;
	height:433px;
	position:relative;
	background-image: url(/media/banner.jpg);
}

header h2 {
	position: absolute;
	top:10px;
	margin: 0px 10px;
}

header, main, #footerresources {
	margin-left: auto;
	margin-right: auto;
	max-width: 1024px;
}

header nav {
	width:auto;
	display:inline;
	float: right;
	position: relative;
	top:40px;
	margin-left: 270px;
	margin-right: 30px;
}

header nav ul {
	float: right;
	margin:0 70px 0 0;
}

header nav ul li {
	float: left;
	list-style: none;
}

header nav ul li a {
	text-decoration: none;
	font-weight: bold;
	color: #363636; 
	font: normal 120% 'Raleway', Helvetica, Arial, sans-serif;
	display: block;
	padding: 1px 13px 3px 13px;
}

header nav ul li.current a {
	background-color: #d3f2ff;
	border-radius: 12px;
}

header nav ul li a:hover, header nav ul li a:focus {
	color: #BF1722;
	-webkit-transition:color 0.2s ease-in, text-shadow 0.2s ease-in;
	transition:color 0.2s ease-in, text-shadow 0.2s ease-in;
	text-shadow: #bbb 1px 1px 1px;
}

header #social {
	position: absolute;
	top:48px;
	right:14px;
	width:100px;
}

header #details {
	position: absolute;
	top:48px;
	right:114px;
	width:420px;
	color:#858585;
}

main {
	min-width:920px;
}

article {
	width:72%;
	display:inline;
	position: relative;
	float: left;
	font-size:1em;
	margin-bottom: 20px;
	margin-left: 1%;
	margin-right: 1%;
}

aside {
	width:23%;
	border:1px solid #eee;
	border-radius: 5px;
	float: left;
	position: relative;
	text-align: center;
	padding:5px 2px;
	margin-left: 1%;
	margin-right: 1%;
	margin-bottom: 10px;
}

aside h2 {
	font-family: 'Kameron',Georgia,Times,serif;
	color:#2fade5;
}

aside p {width:195px;float:left;padding:8px 10px 5px 10px;min-height:90px;display:flex;justify-content: center;flex-direction: column;border:1px solid #eee;border-radius: 7px;margin:10px;
}

aside p a {border: none; background:none; margin:0; padding:0; vertical-align:text-bottom; outline:0; !important}

footer {
	background:url(/media/footerbg.png) 50% top repeat-y;
	color:#333;
	margin:auto;
	padding:15px 0;
	font-size: 90%;
}

footer a:link, footer a:visited {
	color: #20399D;
}

footer a:hover,
footer a:active,
footer a:focus {
	color:#2161f8;
}

#footerresources ul {
	margin-left:14px;
}

#footerlinks {
	text-align: center;
	margin-left: 10px;
	margin-right: 10px;
}

#footerlinks ul {
	margin-left:0;
}

#footerlinks ul li {
	display:inline;
	list-style-type:none;
	padding:0px 7px;
}

#footerlinks ul li a {
	padding:0 0 2px 22px;
}

/* Various element styles */

.hidden {
	position:absolute; 
	left:0;
	top:-500px;
	width:1px;
	height:1px;
	overflow:hidden;
}

input, select {
	vertical-align:middle;
}

/* LINKS */
main a:link, main a:visited {
    border-bottom: 1px solid #20399D; /* Or whatever color you want */
	padding-bottom: 0px;
    text-decoration: none;
}

main a:link, main a:visited, aside a:link, aside a:visited {
	color: #20399D;
	outline:0;
	-webkit-transition:background-color .25s linear;
    transition:background-color .25s linear;
}

aside a:link, aside a:visited {
	border:none;
}

main a:active, main a:focus, main a:hover {
	background-color:#ffffcc;
	color: #BF1722;
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ccc;
	outline:none;
	border-radius: 5px;
}

aside a:hover {
	background-color:#fff !important;
	border:none;
}

/* Clearfix
http://www.yuiblog.com/blog/2010/09/27/clearfix-reloaded-overflowhidden-demystified */
.clearfix:before,
.clearfix:after {
  content: '\0020';
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

.clearfix:after {
  clear: both;
}

/*
  The following zoom:1 rule is specifically for IE6 + IE7.
*/
.clearfix {
  zoom: 1;
}

.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

/* Document styles */

article h1 {
	font-family: 'Raleway',Georgia,Times,serif;
	font-weight: normal;
}

article h1 {
	color:#1c6885;
	margin:0 0 12px 0;
	font-size: 200%;
	line-height:90%;
}

article h2 {
	font-family: 'Kameron',Georgia,Times,serif;
	color: #2fade5;
	font-size: 130%;
	margin:0;
	margin-bottom:6px;
	line-height:1.25em;
}

article h3 {
	padding: 0 0 0px 0;
	margin-bottom: 4px;
	color:#1C205B;
	border-bottom: 1px dashed #ccc;
	font-family:'Kameron',Georgia,Times,serif;
	font-weight: normal;
	font-size:120%;
}
article h4 {
	font-family:'Kameron',Georgia,Times,serif;
}

article p, pre {
	line-height:1.5em;
	padding-bottom:1em;
}

article *::selection {
	background: #fff2a8;
}

.section {
	outline:0;
}

.section .section {
	margin:.5em 15px .5em 15px;
	padding-left:10px;
	outline:0;
}

.section ul, .section ol {
	line-height:1.5em;
	margin-left:20px;
	margin-bottom:1em;
}

.section ul ul, .section ol ol {
	margin-bottom:0;
}

.section dl dt {
	font-weight: bold;
}

.section dl dd {
	margin: 0 0 10px 20px;
}

table {
	margin-bottom:1em;
	border-collapse:collapse;
	border-spacing:0;
	border:none;
}

td, th {
	padding:4px;
	border:none;
	border-collapse: separate;
}

main table td a {
	background:none !important;
	border:none !important;
}

blockquote {
	margin:.5em auto 1em auto;
	text-align: center;
	width:70%;
	border:1px #666 dashed;
	border-radius: 4px;
	padding:.5em;
	padding-bottom:0px;
	background-color: #f1f1f1;
	font-family: Geneva, Times, serif;
}

.floatright {
	float:right;
	margin:8px 0px 1px 10px;
}

.floatleft {
	float:left;
	margin:8px 10px 1px 0px;
}

.border {
	border:gray solid 1px;
}

.center {
	text-align:center;
}

