html, body, div, span, object, iframe, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

html {
    box-sizing: border-box;
    font-size: 62.5%;
}

body {
    /* padding-top: 144px; */
    font-family: "Open Sans","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 400;
    color: #1D1D1D;
    -webkit-font-smoothing: antialiased !important;
    overflow-x: hidden;
    -webkit-transition: padding 0.2s ease-out;
    transition: padding 0.2s ease-out;
	    line-height: 1;
}

h1, h2, h3, h4, h5, h6 {
	color: #003399;
}

#body {
	margin-top: 235px /* 150px */;
	-webkit-transition: margin 0.2s ease-out;
	transition: margin 0.2s ease-out;
}
	#body.shrink {
		margin-top: 235px;
		-webkit-transition: margin 0.2s ease-out;
		transition: margin 0.2s ease-out;
	}
@media (min-width: 768px) {
	#body {
		margin-top: 345px /* 220px */;
		-webkit-transition: margin 0.2s ease-out;
		transition: margin 0.2s ease-out;
	}
		#body.shrink {
			margin-top: 285px;
			-webkit-transition: margin 0.2s ease-out;
			transition: margin 0.2s ease-out;
		}
}
#body.admin {
	margin-top: 60px;
	padding-top: 2em;
}
.page-content, .site-nav {
	margin: 0 auto;
    padding: 0 20px;
}

.header {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    padding: 0;
    -webkit-transition: padding 0.2s ease-out;
    transition: padding 0.2s ease-out;
    background-color: #fff;
    z-index: 9000;
	text-align: center;
}
@media only screen and (min-width: 768px) {
	.header {
		/* padding-bottom: 50px; */
	}
	.shrink .header {
		/* padding-bottom: 20px; */
	}
}
#topNav {
	background-color: #fff;
}
header .logo {
	margin: 0 auto;
	height: 150px;
	width: auto;
	-webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    transition: all .3s ease;
}
@media (min-width: 768px) {
	header .logo {
		margin: 0 auto;
		height: 200px;
		width: auto;
		-webkit-transition: all .3s ease;
		-moz-transition: all .3s ease;
		transition: all .3s ease;
	}
}
.shrink header .logo {
	height: 100px;
	width: auto;
	-webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    transition: all .3s ease;
}
.branding {
	margin-bottom: 25px;
	-webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    transition: all .3s ease;
}
.shrink  .branding {
	margin-bottom: 10px;
	-webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    transition: all .3s ease;
}
.navbar-brand {
    padding-bottom: 0;
	margin-right: 0;
    font-size: inherit;
}
#site-name {
	font-size: 2rem;
	margin-top: 0;
	margin-bottom: 0.5em;
}
#site-name.black {
	color: #1D1D1D;
}
#site-name.caps {
	text-transform: uppercase;
}
.slogan {
	font-style: italic;
	height: 1em;
	-webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    transition: all .3s ease;
	overflow: hidden;
}
.shrink .slogan {
	height: 0;
	-webkit-transition: all .3s ease;
    -moz-transition: all .3s ease;
    transition: all .3s ease;
}
.site-nav a {
    position: relative;
    display: inline-block;
    font-size: 1.4rem;
    font-weight: 600;
    letter-spacing: 0.3rem;
    text-transform: uppercase;
    text-decoration: none;
    color: #1D1D1D;
	padding: 5px 10px;
}

.site-nav li:not(:last-child) {
    margin-bottom: 20px;
}
@media only screen and (min-width: 576px) {
	.site-nav li {
		-webkit-transform: none !important;
		transform: none !important;
		opacity: 1 !important;
	}
	.site-nav li:not(:last-child) {
		margin-bottom: 0;
		margin-right: 1em;
	}
}
nav ul {
    list-style: none;
}
.site-nav ul {
	margin: 0;
    padding: 0;
    list-style-type: none;
	padding-bottom: 20px;
}

@media only screen and (min-width: 768px) {
	.site-nav ul, .site-nav.visible ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		margin: auto;
	}
/* 	.page-content, .site-nav {
		max-width: 1020px;
	} */
}
.site-nav a:hover::after, .site-nav li.current a::after {
    width: calc(100% - 3px);
}
.site-nav a::after {
    position: absolute;
    left: 0;
    bottom: -10px;
    display: block;
    content: '';
    width: 0;
    height: 2px;
    background-color: #003399;
    -webkit-transition: width 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0.1s;
    transition: width 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0.1s;
}

.nav-wrapper-blue {
	background: #003399;
}
.nav-wrapper-blue .site-nav ul {
    padding-top: 20px;
	padding-bottom: 20px;
}
.nav-wrapper-blue .site-nav a {
	color: #ffffff;
}
.nav-wrapper-blue  .site-nav a::after {
    background-color: #ffffff;
}

.navbar-toggle {
    padding: 9px 10px;
    background-color: transparent;
    border: 1px solid transparent;
    border-radius: 4px;
}
.site-nav {
	/* height: 0;
	overflow: hidden; */
/* 	-webkit-transition: height 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0.1s;
	transition: height 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0.1s; */
}
.site-nav.open {
	height: 100%;
	text-align: left;
/* 	-webkit-transition: height 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0.1s;
	transition: height 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0.1s; */
}
@media (min-width: 768px) {
	.navbar-toggle {
		display: none;
		-webkit-transition: height 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0.1s;
		transition: height 0.6s cubic-bezier(0.23, 1, 0.32, 1) 0.1s;
	}
	.site-nav {
		height: auto;
	}
}
.navbar-toggle .icon-bar {
    background-color: #ccc;
}
.icon-bar+.icon-bar {
    margin-top: 4px;
}
.navbar-toggle .icon-bar {
    display: block;
    width: 22px;
    height: 2px;
    border-radius: 1px;
}

.page-content {
	padding-bottom: 6rem;
}
p {
    margin-bottom: 3rem;
    font-size: 1.5rem;
    line-height: 3.2rem;
    letter-spacing: 0.1rem;
}
.page-content ul {
	margin-left: 3em;
}
.page-content li {
	line-height: 3.2rem;
}
.page-content img {
	padding: 5px;
	border: 1px solid #A8A8A8;
	margin: 10px;
	margin-bottom: 0;
}
.page-content img[align="left"],
.page-content img[style*="float: left"],
.page-content img[style*="float:left"] {
	clear: left;
	margin-left: 0;
}
.page-content img[align="right"],
.page-content img[style*="float: right"],
.page-content img[style*="float:right"] {
	clear: right;
	margin-right: 0;
}
.page-content a, .page-content a:visited {
    color: #1D1D1D;
    text-decoration: underline;
}
.page-content a:hover {
    text-decoration: none;
}

table {
    max-width: 100%;
    margin-bottom: 3rem;
	background-color: transparent;
	border-spacing: 0;
    border-collapse: collapse;
}
td {
    border: 1px solid #cccccc;
    padding: 10px 25px;
	font-size: 1.5rem;
    line-height: 3.2rem;
    letter-spacing: 0.1rem;
}

footer.footer {
	padding: 6vw 0 5px;
	background-color: #1D1D1D;
/* 	background-image: repeating-linear-gradient(90deg, transparent, transparent 20px, rgba(0, 51, 153, 0.2) 20px, rgba(0, 51, 153, 0.2) 40px), repeating-linear-gradient(180deg, transparent, transparent 20px, rgba(0, 51, 153, 0.2) 20px, rgba(0, 51, 153, 0.2) 40px); */
	text-align: center;
/* 	border-bottom: 3px solid #fff;
	border-top: 3px solid #fff; */
	/*outline: 5px double #003399 ;*/
}
footer.footer .footer-wrapper {
    margin: 0 auto;
    padding: 0 20px;
    max-width: 1168px;
}
footer.footer p, footer.footer a {
    display: block;
    font-size: 1.1rem;
    line-height: 2.1rem;
    letter-spacing: 0.2rem;
    color: #A8A8A8;
}
@media only screen and (min-width: 1000px) {
	footer.footer {
		padding: 60px 0 5px;
	}
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}