@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,300italic,300,400italic,600,600italic,700italic,700);
@import url(https://fonts.googleapis.com/css?family=Source+Code+Pro:400,600,700);
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css);

/*! normalize.css v1.1.3 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden]{display:none}html{font-size:100%;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}button,html,input,select,textarea{font-family:sans-serif}body{margin:0}a:focus{outline:dotted thin}a:active,a:hover{outline:0}h1{font-size:2em;margin:.67em 0}h2{font-size:1.5em;margin:.83em 0}h3{font-size:1.17em;margin:1em 0}h4{font-size:1em;margin:1.33em 0}h5{font-size:.83em;margin:1.67em 0}h6{font-size:.67em;margin:2.33em 0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}blockquote{margin:1em 40px}dfn{font-style:italic}hr{-moz-box-sizing:content-box;box-sizing:content-box;height:0}mark{background:#ff0;color:#000}p,pre{margin:1em 0}code,kbd,pre,samp{font-family:monospace,serif;font-size:1em}pre{white-space:pre;white-space:pre-wrap;word-wrap:break-word}q{quotes:none}q:after,q:before{content:'';content:none}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}dl,menu,ol,ul{margin:1em 0}dd{margin:0 0 0 40px}menu,ol,ul{padding:0 0 0 40px}nav ol,nav ul{list-style:none}img{border:0;-ms-interpolation-mode:bicubic}svg:not(:root){overflow:hidden}figure,form{margin:0}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0;white-space:normal}button,input,select,textarea{font-size:100%;margin:0;vertical-align:baseline}button,input{line-height:normal}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}textarea{overflow:auto;vertical-align:top}table{border-collapse:collapse;border-spacing:0}

/*! HTML5 Boilerplate v4.3.0 | MIT License | http://h5bp.com/ */

/*
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #222;
}

html {
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images, videos, audio and canvas and the bottom of
 * their containers: h5bp.com/i/440
 */

audio,
canvas,
img,
video {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Browse Happy prompt
   ========================================================================== */

.browsehappy {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

html {overflow-y: scroll; /* force scroll bar */}

body {
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	background:url(../img/seal.gif) right bottom no-repeat;
}
	body.home { background: none; }


a { color: #ef8f1a; text-decoration: none; transition: all 0.4s ease;}
a:hover { text-decoration: underline; color: #333; }
p { margin: 0 0 1.5em 0; }

h1, h2, h3, h4, h5, h6 {color:#000; letter-spacing: .25ex;  font-family:'Source Code Pro'; }

h1, h2 { font-weight: 600; text-transform: uppercase; margin-top: 0; margin-bottom: .5em; line-height: 1.2em; }
	h2 { margin-bottom: .25em; }


.wrap { max-width: 1000px; margin: 0 auto; padding: 0 10px; position: relative; }

.content { font-weight: 300; padding-right: 25%;}
	body.full .content, body.updates .content { padding-right: 0; }
	.content strong { font-weight: 600; }

header nav#primary * { transition: all 0.4s ease; }
header nav#primary ul { z-index: 10; display: table; width: 100%; margin: 0; padding: 0; text-align: center; font-size: 14px; margin-bottom: 35px; font-family:'Source Code Pro'; }
	header nav#primary li { display: table-cell; position: relative; background-color:#58595b; text-align:center;  border: 1px solid #fff; vertical-align: middle; white-space: nowrap;}
			header nav#primary li a { color: #fff; /*background-color: #f00;*/ text-decoration: none; text-transform:uppercase; line-height: 1.4em; letter-spacing: .2ex; display: block; padding: 1.25em 1.75em; }
				header nav#primary li a span { display: inline-block; vertical-align: middle;  }
				
				header nav#primary li:hover, header nav#primary a:hover {background-color: #788CD2;}
				
				
				
				/* subs */
				header nav#primary li:hover ul, header nav#primary ul.focused { display: block; }
				
				
				header nav#primary li ul {
					font-size: 13px; letter-spacing: .1ex;
					position: absolute; left: 0;
					display: block;
					margin: 0; padding: 1px 0 0 0;
					width: 240px;
					
					display: none;
				}
					header nav#primary li ul li { background-color: #788CD2; display: block; border-left: none; border-right: none; border-bottom: none; white-space: normal; }
						header nav#primary li ul li a { padding-left: 4px; padding-right: 4px; }
					header nav#primary li ul li:hover, header nav#primary li ul a:hover { background-color:#58595b; }
				
			
			header nav#primary li.search { width: 22px; text-transform: uppercase; /*padding-left: 5px; padding-right: 5px;*/ }	
				/*header nav#primary li.search a span {
					background: url(../img/search-icon.png) no-repeat center center;
					text-indent: 100%;
					white-space: nowrap;
					overflow: hidden
				}*/
				
				header nav#primary li.search ul { left: auto; right: 0; width: 300px; text-align: left; color: #fff; }
					header nav#primary li.search ul li { text-align: left; padding: 1.25em 1em;}
						header nav#primary li.search ul li:hover {background-color: #788CD2;}
					header nav#primary li.search ul input { border: 0; width: 200px; }
					
	header #navicon { display: none; cursor: pointer; z-index: 10; margin-left:1em; position: relative; }
	
	header .breadcrumbs { 
		text-transform: uppercase;
		color: #ef8f1a;
		font-size: 16px;
		font-family:'Source Code Pro';
	}
		header .breadcrumbs a {  color: #000; }
		header .breadcrumbs .sep { margin: 0 0.3ex; font-size: 18px;}




#masthead {	padding: 10px 0 40px 0; }
	#masthead .logo { width: 23%; float: left; }
		#masthead .logo img { max-width: 100%; }
	#masthead .content { float: right; font-size: 20px; width: 73%; padding-right: 1%; font-size: 26px; font-weight: 300; }
	#masthead .content p { margin-top: 1em; }






#carousel {
	height: 265px;
	background-color: #eee;
	margin-bottom: 60px;
}

	#carousel img { max-height: 265px; width: auto; }
	.no-js #carousel { overflow: hidden; }
	.no-js #carousel img { float: left; }
	
	
	
	
.homepage-announcements { width: 74.5%; }	
	.homepage-announcements h1 { padding-left: 37px; }
	.homepage-announcements ul { margin: 0; padding: 0; list-style-type: none; }
		.homepage-announcements ul li { 
			border-top: 2px solid #ef8f1a;
			border-right: 2px solid #ef8f1a;
			border-left: 2px solid #ef8f1a;
			
			padding: 24px 35px 0 35px;
			margin-bottom: 2.0em;
	
		}
			.homepage-announcements ul li.more  {  border: none; padding-top: 0; }
			.homepage-announcements .more { text-transform: uppercase; letter-spacing: .25ex; white-space:nowrap; }
			
			
			
			
			
.note { position: absolute; right: 10px; width: 22.5%; border: 1px solid #8cb9af; font-style: italic; font-weight: 300; margin-bottom: 2em; margin-left: 1em; }
	.note h3 { background-color: #8cb9af; color: #fff; margin: 0 0 1em 0; padding: 5% 10%; font-weight: 400; font-style: normal; text-transform: uppercase; font-size: 13px; }
	.note p { padding: 0 10%; }


ul.updates { list-style-type: none; padding: 0; }
	ul.updates li {
		padding-left: 200px; 
		position: relative;
	}
		ul.updates li .date {
			display: block; white-space: nowrap; text-transform: uppercase;
			padding: .5em 1em;
			border: 1px solid #ef8f1a;
			color: #ef8f1a;
			font-family:'Source Code Pro';
			width: 120px;
			position: absolute;
			left: 0; top: 10px;
			text-align: center;
			font-size: 1.2em;
		}


footer { font-size: 14px; background-color: #58595b; color: #fff; margin-top: 3em; padding: 1.0em 0; }
	
	footer a { color: #fff; }
	footer p.copy { margin: 0; text-transform: uppercase; letter-spacing: .25ex; float: left; padding-top: .5em; }

	footer ul { margin: 0; padding: 0; float: right; list-style-type: none; }
		footer ul li { display: inline-block; margin-left: 1ex; }
	footer .fa-inverse { color: #58595b; }
		footer a:hover .fa-inverse { color:#fff; }


a.button {
	display: inline-block; white-space: nowrap; text-transform: uppercase;
	padding: .5em 1em;
	border: 1px solid;
	font-family:'Source Code Pro';
}
	a.button:hover { text-decoration: none; border-color: #333; }



/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

/************************/
/*   RESPONSIVE STUFF   */
/************************/





/* MASTHEAD TWEAKS */

@media handheld, only screen and (max-width: 900px) {  #masthead .content { font-size: 24px; } }
@media handheld, only screen and (max-width: 768px) {  #masthead .content { font-size: 20px; } }
@media handheld, only screen and (max-width: 600px) {  #masthead .content { font-size: 18px; } }
@media handheld, only screen and (max-width: 700px) {  
	#masthead .logo { float: none; width: 80%; margin: 0 auto; text-align: center; } 
	#masthead .content { padding: 0; width: auto; float: none; } 
}

/* catch if nav is closed when browser is narrow, then widened */
@media handheld, only screen and (min-width: 701px) {	header nav#primary { display: block !important; } }

@media handheld, only screen and (max-width: 768px) {

 /*.wrap { width: 96%; padding: 0 2%;}*/

}

@media handheld, only screen and (max-width: 700px) {
	
	.content { padding-right: 0; }
	.note { float: none; position: relative; width: auto; margin: 1em 0; }
	 .note p { padding-left: 35px; padding-right: 35px; }
	 .note h3 { padding: 4px 35px; }

	
	.homepage-announcements { width: auto; float: none; }

	
	#carousel {	height: 215px; }
	#carousel img { max-height: 215px; }
	
	footer p.copy { float: none; text-align: center; }

	footer ul { float: none; text-align: center; width: 100%; padding-top: 1em; }
	
	
	
	/* nav */
	.js header nav#primary {display: none; clear: both;}
	
	.js header #navicon {
		display: block; float: right; 
		font-size: 36px;
		color:#58595b;
	}
	
	
	header nav#primary ul, header nav#primary ul li {display: block;}
	header nav#primary li ul { display: block; position: relative; width:100%; }
	header nav#primary li:hover, header nav#primary a:hover {  }

	header nav#primary li {
	 font-weight: 600;
	 background-color: #788CD2;
	 font-size: 15px;
	}

	header nav#primary li ul li {
	 text-align: left; font-weight: 300;
	 background-color:#58595b;
	}
		header nav#primary li ul li a {	 padding-left: 1em; }
	
	
	.js header nav#primary li.search a.toggle { display: none; }
	.js header nav#primary li.search, .js header nav#primary li.search ul, .js header nav#primary li.search ul li { width: auto; border-top: none;  }
		
		
		
	ul.updates li {
		padding-left: 0; 
		position: relative;
	}
		ul.updates li .date { position: relative; top: auto; margin-bottom: .5em;}		
}


/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group; /* h5bp.com/t */
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}
