/* CSS Reset */
html, body, h1, h2, h3, h4, h5, h6, p, ul, ol, dl, li, dd, dt, small, a, img {
	margin: 0;
	padding: 0;
	border: 0;
}

ul, ol, dl {
	list-style: none;
}

/* Clear-Fix */
.cf:before, .cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

/**
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.cf {
    *zoom: 1;
}

.generalClearFloat {
	clear: both;
}

/* Global Layout */

	/* Global Styles */
	html {
		background: #505050;
	}
	
	body {
		width: 100%;
		font-size: 100%;
		font-family: Helvetica, Verdana, Arial, sans-serif;
		color: #ffffff;
		text-rendering: optimizeLegibility;
		background: #222222;
	}
	
	h1, h2, h3, h4, h5, h6 {
		font-weight: lighter;
		font-style: italic;
		font-variant: small-caps;
	}
	
	h2, h3, h4, h5, h6 {
		margin-top: 1.8rem;
		margin-bottom: 1.2rem;
	}
	
	h2 {
		font-size: 1.8rem;
	}
	
	h3 {
		font-size: 1.6rem;
	}
	
	h4 {
		font-size: 1.4rem;
	}
	
	h5 {
		font-size: 1.2rem;
	}
	
	h6 {
		font-size: 1rem;
	}
	
	p {
		font-size: 1.2rem;
		margin-top: 1rem;
		margin-bottom: 1rem;
		word-spacing: .05em;
		letter-spacing: .02em;
		font-weight: lighter;
	}
	
	ul, ol, dl {
		margin-top: 1.4rem;
		margin-bottom: 1.4rem;
		font-size: 1.2rem;
		word-spacing: .05em;
		letter-spacing: .02em;
		font-weight: lighter;
	}
	
	ul :last-child, ol :last-child, dl :last-child {
		margin-bottom: 0;
	}
	
	ul {
		list-style: square;
		padding-left: 10%;
	}
	
	ol {
		list-style: decimal;
		padding-left: 10%;
	}
	
	dt {
		font-size: 1.2rem;
		font-style: italic; 
	}
	
	dd {
		margin-left: 10%;
		margin-bottom: 1rem;
	}
	
	a:link, a:visited {
		text-decoration: none;
		color: #ff0000;
	}
	
	a:hover, a:active {
		outline: 0;
		color: #8f0000;
	}
	
	a:focus {
		outline: thin dotted #ff0000;
	}
	
	/* Header Styles */
	#pageHeader h1 {
		font-size: 2.2rem;
		padding-top: 1.4rem;
		padding-bottom: 1.4rem;
		padding-left: 6rem;
		padding-right: .5rem;
		background: #ff0000;
		background-image: url(/_images/main_logo.png);
		background-repeat: no-repeat;
		background-position: left center;
		background-position-x: .5rem;
		background-size: 5rem;
	}
	
	/* Navigation Styles */
	#pageNav ul, #pageNav li{
		margin: 0;
		padding: 0;
		list-style: none;
	}
	
	#pageNav a {
		display: block;
		font-size: 1.4rem;
		padding-top: .4em;
		padding-bottom: .4em;
		padding-left: 5%;
	}
	
	#pageNav a:link, #pageNav a:visited {
		color: #000000;
		background: #fff;
	}
	
	#pageNav a:hover, #pageNav a:active {
		color: #ffffff;
		background: #000000;
	}
	
	/* Main Content Styles */
	#mainContent article {
		padding-left: 5%;
		padding-right: 5%;
		padding-top: 2rem;
		padding-bottom: 2rem;
	}
	
	#mainContent h2 {
		margin-top: 0;
	}
	
	#mainContent p {
		line-height: 1.2em;
	}
	
	#announcements dl {
		padding-left: 5%;
	}
	
	#announcements dt {
		font-style: normal;
		color: #ff0000;
		margin-bottom: 0;
	}
	
	#announcements dd {
		margin-left: 0;
	}
	
	#announcements ul {
		padding-left: 10%;
		margin: 0;
	}
	
	#mainContent .rim {
		width: 100%;
		margin-bottom: 2%;
	}
	
	#mainContent .ferrule {
		float: right;
	}
	
	#mainContent .lastChild {
		margin-bottom: 0;
	}
	
	/* Footer Styles */
	#pageFooter {
		background: #000000;
		padding-left: 5%;
		padding-right: 5%;
		padding-top: 2rem;
		padding-bottom: 2rem;
		border-top: .4rem solid red;
	}
	
	#pageFooter small {
		font-size: .6em;
	}



/* Small Layout */

	@media only screen and (min-width: 46em) {
		
		/* Global Styles */
		html {
			background: #505050;
		}
		
		body {
			width: 85%;
			margin: 0 auto;
			font-size: 100%;
			font-family: Helvetica, Verdana, Arial, sans-serif;
			color: #ffffff;
			text-rendering: optimizeLegibility;
			background: #222222;
		}
		
		h1, h2, h3, h4, h5, h6 {
			font-weight: lighter;
			font-style: italic;
			font-variant: small-caps;
		}
		
		h2, h3, h4, h5, h6 {
			margin-top: 1.8rem;
			margin-bottom: 1.2rem;
		}
		
		h2 {
			font-size: 1.8rem;
		}
		
		h3 {
			font-size: 1.6rem;
		}
		
		h4 {
			font-size: 1.4rem;
		}
		
		h5 {
			font-size: 1.2rem;
		}
		
		h6 {
			font-size: 1rem;
		}
		
		p {
			font-size: 1.2rem;
			line-height: 1.2em;
			margin-top: 1rem;
			margin-bottom: 1rem;
			word-spacing: .05em;
			letter-spacing: .02em;
			font-weight: lighter;
		}
		
		ul, ol, dl {
			margin-top: 1.4rem;
			margin-bottom: 1.4rem;
			font-size: 1.2rem;
			word-spacing: .05em;
			letter-spacing: .02em;
			font-weight: lighter;
		}
		
		ul :last-child, ol :last-child, dl :last-child {
			margin-bottom: 0;
		}
		
		ul {
			list-style: square;
			padding-left: 10%;
		}
		
		ol {
			list-style: decimal;
			padding-left: 10%;
		}
		
		dt {
			font-size: 1.2rem;
			font-style: italic; 
		}
		
		dd {
			margin-left: 10%;
			margin-bottom: 1rem;
		}
		
		a:link, a:visited {
			text-decoration: none;
			color: #ff0000;
		}
		
		a:hover, a:active {
			outline: 0;
			color: #8f0000;
		}
		
		a:focus {
			outline: thin dotted #ff0000;
		}
		
		/* Header Styles */
		#pageHeader h1 {
			font-size: 2.8rem;
			padding-top: 1.4rem;
			padding-bottom: 1.4rem;
			padding-left: 7rem;
			padding-right: 1rem;
			background: #ff0000;
			background-image: url(/_images/main_logo.png);
			background-repeat: no-repeat;
			background-position: left center;
			background-position-x: 1rem;
			background-size: 5rem;
		}
		
		/* Navigation Styles */
		#pageNav ul, #pageNav li, #pageNav a{
			margin: 0;
			padding: 0;
			border: 0;
			list-style: none;
		}
		
		#pageNav li {
			float: left;
			width: 20%;
		}
		
		#pageNav a {
			display: block;
			font-size: 1.4rem;
			text-align: center;
			padding-top: .4em;
			padding-bottom: .4em;
		}
		
		#pageNav a:link, #pageNav a:visited {
			color: #000000;
			background: #fff;
		}
		
		#pageNav a:hover, #pageNav a:active {
			color: #ffffff;
			background: #000000;
		}
		
		/* Main Content Styles */
		#mainContent article {
			padding-left: 5%;
			padding-right: 5%;
			padding-top: 2rem;
			padding-bottom: 2rem;
		}
		
		#mainContent h2 {
			margin-top: 0;
		}
		
		#mainContent p {
			line-height: 1.2em;
		}
		
		#announcements dl {
			padding-left: 5%;
		}
		
		#announcements dt {
			font-style: normal;
			color: #ff0000;
			margin-bottom: 0;
		}
		
		#announcements dd {
			margin-left: 0;
		}
		
		#announcements ul {
			padding-left: 10%;
			margin: 0;
		}
		
		#mainContent .rim {
			float: right;
			width: 50%;
			margin-left: 2%;
			margin-bottom: 2%;
		}
		
		#mainContent .ferrule {
			float: right;
		}
		
		#mainContent .lastChild {
			margin-bottom: 0;
		}
		
		/* Footer Styles */
		#pageFooter {
			background: #000000;
			padding-left: 5%;
			padding-right: 5%;
			padding-top: 2rem;
			padding-bottom: 2rem;
			border-top: .4rem solid red;
		}
		
		#pageFooter :first-child {
			margin-top: 0;
		}
		
		#pageFooter :last-child {
			margin-bottom: 0;
		}
		#pageFooter small {
			font-size: .6em;
		}
	}



/* Medium Layout */

	@media only screen and (min-width: 62em) {
		
		/* Global Styles */
		html {
			background: #505050;
		}
		
		body {
			width: 70%;
			margin: 0 auto;
			font-size: 100%;
			font-family: Helvetica, Verdana, Arial, sans-serif;
			color: #ffffff;
			text-rendering: optimizeLegibility;
			background: #222222;
		}
		
		h1, h2, h3, h4, h5, h6 {
			font-weight: lighter;
			font-style: italic;
			font-variant: small-caps;
		}
		
		h2, h3, h4, h5, h6 {
			margin-top: 1.8rem;
			margin-bottom: 1.2rem;
		}
		
		h2 {
			font-size: 1.8rem;
		}
		
		h3 {
			font-size: 1.6rem;
		}
		
		h4 {
			font-size: 1.4rem;
		}
		
		h5 {
			font-size: 1.2rem;
		}
		
		h6 {
			font-size: 1rem;
		}
		
		p {
			font-size: 1.2rem;
			line-height: 1.2em;
			margin-top: 1rem;
			margin-bottom: 1rem;
			word-spacing: .05em;
			letter-spacing: .02em;
			font-weight: lighter;
		}
		
		ul, ol, dl {
			margin-top: 1.4rem;
			margin-bottom: 1.4rem;
			font-size: 1.2rem;
			word-spacing: .05em;
			letter-spacing: .02em;
			font-weight: lighter;
		}
		
		ul :last-child, ol :last-child, dl :last-child {
			margin-bottom: 0;
		}
		
		ul {
			list-style: square;
			padding-left: 10%;
		}
		
		ol {
			list-style: decimal;
			padding-left: 10%;
		}
		
		dt {
			font-size: 1.2rem;
			font-style: italic; 
		}
		
		dd {
			margin-left: 10%;
			margin-bottom: 1rem;
		}
		
		a:link, a:visited {
			text-decoration: none;
			color: #ff0000;
		}
		
		a:hover, a:active {
			outline: 0;
			color: #8f0000;
		}
		
		a:focus {
			outline: thin dotted #ff0000;
		}
		
		/* Header Styles */
		#pageHeader h1 {
			font-size: 2.8rem;
			padding-top: 1.4rem;
			padding-bottom: 1.4rem;
			padding-left: 7rem;
			padding-right: 1rem;
			background: #ff0000;
			background-image: url(/_images/main_logo.png);
			background-repeat: no-repeat;
			background-position: left center;
			background-position-x: 1rem;
			background-size: 5rem;
		}
		
		/* Navigation Styles */
		#pageNav ul, #pageNav li, #pageNav a{
			margin: 0;
			padding: 0;
			border: 0;
			list-style: none;
		}
		
		#pageNav li {
			float: left;
			width: 20%;
		}
		
		#pageNav a {
			display: block;
			font-size: 1.4rem;
			text-align: center;
			padding-top: .4em;
			padding-bottom: .4em;
		}
		
		#pageNav a:link, #pageNav a:visited {
			color: #000000;
			background: #fff;
		}
		
		#pageNav a:hover, #pageNav a:active {
			color: #ffffff;
			background: #000000;
		}
		
		/* Main Content Styles */
		#mainContent article {
			padding-left: 5%;
			padding-right: 5%;
			padding-top: 2rem;
			padding-bottom: 2rem;
		}
		
		#mainContent h2 {
			margin-top: 0;
		}
		
		#mainContent p {
			line-height: 1.2em;
		}
		
		#announcements dl {
			padding-left: 5%;
		}
		
		#announcements dt {
			font-style: normal;
			color: #ff0000;
			margin-bottom: 0;
		}
		
		#announcements dd {
			margin-left: 0;
		}
		
		#announcements ul {
			padding-left: 10%;
			margin: 0;
		}
		
		#mainContent .rim {
			float: right;
			width: 50%;
			margin-left: 2%;
			margin-bottom: 2%;
		}
		
		#mainContent .ferrule {
			float: right;
		}
		
		#mainContent .lastChild {
			margin-bottom: 0;
		}
		
		/* Footer Styles */
		#pageFooter {
			background: #000000;
			padding-left: 5%;
			padding-right: 5%;
			padding-top: 2rem;
			padding-bottom: 2rem;
			border-top: .4rem solid red;
		}
		
		#pageFooter :first-child {
			margin-top: 0;
		}
		
		#pageFooter :last-child {
			margin-bottom: 0;
		}
		#pageFooter small {
			font-size: .6em;
		}
	}



/* Large Layout */

	@media only screen and (min-width: 120em) {
		
		/* Global Styles */
		html {
			background: #505050;
		}
		
		body {
			width: 60%;
			margin: 0 auto;
			font-size: 100%;
			font-family: Helvetica, Verdana, Arial, sans-serif;
			color: #ffffff;
			text-rendering: optimizeLegibility;
			background: #222222;
		}
		
		h1, h2, h3, h4, h5, h6 {
			font-weight: lighter;
			font-style: italic;
			font-variant: small-caps;
		}
		
		h2, h3, h4, h5, h6 {
			margin-top: 1.8rem;
			margin-bottom: 1.2rem;
		}
		
		h2 {
			font-size: 1.8rem;
		}
		
		h3 {
			font-size: 1.6rem;
		}
		
		h4 {
			font-size: 1.4rem;
		}
		
		h5 {
			font-size: 1.2rem;
		}
		
		h6 {
			font-size: 1rem;
		}
		
		p {
			font-size: 1.2rem;
			line-height: 1.2em;
			margin-top: 1rem;
			margin-bottom: 1rem;
			word-spacing: .05em;
			letter-spacing: .02em;
			font-weight: lighter;
		}
		
		ul, ol, dl {
			margin-top: 1.4rem;
			margin-bottom: 1.4rem;
			font-size: 1.2rem;
			word-spacing: .05em;
			letter-spacing: .02em;
			font-weight: lighter;
		}
		
		ul :last-child, ol :last-child, dl :last-child {
			margin-bottom: 0;
		}
		
		ul {
			list-style: square;
			padding-left: 10%;
		}
		
		ol {
			list-style: decimal;
			padding-left: 10%;
		}
		
		dt {
			font-size: 1.2rem;
			font-style: italic; 
		}
		
		dd {
			margin-left: 10%;
			margin-bottom: 1rem;
		}
		
		a:link, a:visited {
			text-decoration: none;
			color: #ff0000;
		}
		
		a:hover, a:active {
			outline: 0;
			color: #8f0000;
		}
		
		a:focus {
			outline: thin dotted #ff0000;
		}
		
		/* Header Styles */
		#pageHeader h1 {
			font-size: 2.8rem;
			padding-top: 1.4rem;
			padding-bottom: 1.4rem;
			padding-left: 7rem;
			padding-right: 1rem;
			background: #ff0000;
			background-image: url(/_images/main_logo.png);
			background-repeat: no-repeat;
			background-position: left center;
			background-position-x: 1rem;
			background-size: 5rem;
		}
		
		/* Navigation Styles */
		#pageNav ul, #pageNav li, #pageNav a{
			margin: 0;
			padding: 0;
			border: 0;
			list-style: none;
		}
		
		#pageNav li {
			float: left;
			width: 20%;
		}
		
		#pageNav a {
			display: block;
			font-size: 1.4rem;
			text-align: center;
			padding-top: .4em;
			padding-bottom: .4em;
		}
		
		#pageNav a:link, #pageNav a:visited {
			color: #000000;
			background: #fff;
		}
		
		#pageNav a:hover, #pageNav a:active {
			color: #ffffff;
			background: #000000;
		}
		
		/* Main Content Styles */
		#mainContent article {
			padding-left: 5%;
			padding-right: 5%;
			padding-top: 2rem;
			padding-bottom: 2rem;
		}
		
		#mainContent h2 {
			margin-top: 0;
		}
		
		#mainContent p {
			line-height: 1.2em;
		}
		
		#announcements dl {
			padding-left: 5%;
		}
		
		#announcements dt {
			font-style: normal;
			color: #ff0000;
			margin-bottom: 0;
		}
		
		#announcements dd {
			margin-left: 0;
		}
		
		#announcements ul {
			padding-left: 10%;
			margin: 0;
		}
		
		#mainContent .rim {
			float: right;
			width: 50%;
			margin-left: 2%;
			margin-bottom: 2%;
		}
		
		#mainContent .ferrule {
			float: right;
		}
		
		#mainContent .lastChild {
			margin-bottom: 0;
		}
		
		/* Footer Styles */
		#pageFooter {
			background: #000000;
			padding-left: 5%;
			padding-right: 5%;
			padding-top: 2rem;
			padding-bottom: 2rem;
			border-top: .4rem solid red;
		}
		
		#pageFooter :first-child {
			margin-top: 0;
		}
		
		#pageFooter :last-child {
			margin-bottom: 0;
		}
		#pageFooter small {
			font-size: .6em;
		}
	}