html, body {
	margin: 0;
	padding: 0;
	height: 100%;
	font-family: arial,tahoma,verdana,sans-serif;
	color: #6D6E71;
	line-height: 25px;
}
a { color: #6D6E71; }
.left { text-align: left; }
.center { text-align: center; }
.right { text-align: right; }
.justify { text-align: justify; }

.fright { float: right; }
.fleft { float: left; }

#wrapper {
	position: relative;
	min-height: 100%;
}

h1 { 	font-size: 1.25em; }

#header {
	position: relative;
	margin: 5px auto;
	height: 110px;
	width: 100%;
	max-width: 950px;
}
	#header img.logo {
		float: left;
		height: 100px;
	}
	#mnu {
		position: absolute;
		top: 15px;
		right: 0;
		text-align: right;
	}
	#mnu .phonenum {
		color: #130E45;
		font-weight: bold;
	}
	#mnu .social {
		position: absolute;
		top: 50px;
		right: 1px;
		margin: 0 0 0 10px;
		padding: 0;
	}
	#mnu ul {
		position: absolute;
		top: 50px;
		right: 50px;
		margin: 3px 0;
		padding: 0;
		padding-bottom: 10px;
		width: 500px;
	}
	#mnu li {
		display: inline;
	}
	#mnu li a {
		margin: 0 0 0 10px;
		padding: 5px 10px ;
		border: 1px solid #444;
		background-color: #FEFEFE;
		border-radius: 5px;
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		-khtml-border-radius: 5px;
		color: #555;
		font-weight: bold;
		font-size: .9em;
		text-decoration: none;
	}
	#mnu li a: hover {
		color: #130E45;
		border: 1px solid #130E45;
		box-shadow: -5px 5px 5px 0px rgba(50, 50, 50, 0.5);
	}

#msg_bar {
	position: relative;
	width: 100%;
	min-height: 10px;
	overflow: hidden;
	/*min-width: 0;*/
	background: #130E45 url(/pics/bg-bl.png) top center no-repeat;
}
#msg_bar .msg_bg {
	margin: 0 auto;
	height: 100%;
	width: 100%;
	max-width: 950px;
}
#msg_bar h2 {
	margin: 15px;
	padding: 0;
	color: #FFF;
	font-size: 2em;

	text-shadow: 2px 2px #444;
}

#content {
	clear: both;
	overflow: hidden;
	position: relative;
	margin: 5px auto 0 auto;
	padding: 0 0 100px 0;
	width: 100%;
	max-width: 950px;
	min-width: 0;
}

#footer {
	position: absolute;
	margin: 0;
	padding: 0;
	bottom: 0;
	width: 100%;
	background: #DDD url(/pics/bg-gr.jpg) top center no-repeat;
	font-size: .8em;
	color: #222;
}
#footer a {
	color: #222;
}

.centered {
	position: relative;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	max-width: 950px;
}
#content img {
	max-width: 100%;
	height: auto;
	padding: 5px 10px;
	box-sizing: border-box;
}

.bluebox {
	position: relative;
	z-index: 2;
	margin: 20px 25px;
	padding: 0 15px 15px 15px;
	min-height: 83px;
	line-height: 25px;
	border: 1px solid #150044;
	background-color: #150044;
	background-image: url(/pics/bg-bl.png);
	border-radius: 15px;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	-khtml-border-radius: 15px;
	color: #FFF;
	font-weight: bold;
	font-size: 1em;
	text-shadow: 1px 1px #444;
	text-indent: 30px;
	box-shadow: 10px 10px 5px #888888;
}

	.quotestart {
		z-index: -1;
		position: absolute;
		top: -30px;
		left: -80px;
	}
	.quoteend {
		z-index: -1;
		position: absolute;
		bottom: 50px;
		right: -40px;
	}
	.sig {
		float: right;
		font-size: .9em;
		font-style: italic;
		font-weight: normal;
		line-height: 15px;
		text-align: right;
	}

.news_sct {
	margin: 10px 0;
	font-weight: bold;
	font-size: 1.5em;
	line-height: 25px;
	color: #150044;
}
.news_title {
	font-weight: bold;
	font-size: 1.0em;
}
.news_date {
	font-size: .9em;
	font-weight: normal;
}
.news_article { font-size: 1em; }

.error {
	position: absolute;
	top: 100px;
	padding: 10px;
	width: 90%;
	line-height: 20px;
	background-color: #FFE;
	border: 1px solid #D00;
	font-weight: bold;
	font-size: 1.2em;
}

.clear { clear: both; }

.w200 { width: 200px; }.w300 { width: 300px; }.w400 { width: 400px; }.w500 { width: 500px; }.w600 { width: 600px; }.w700 { width: 700px; }.w800 { width: 800px; }.w900 { width: 900px; }.w100p { width: 100%; }

a.external {
 padding-right: 13px;
 background: transparent url("../pics/external.png") no-repeat scroll right center;
}


/* Responsive layout additions -- preserve the existing desktop design */
@media screen and (max-width: 980px) {
	#header,
	#content,
	.centered {
		padding-left: 15px;
		padding-right: 15px;
		box-sizing: border-box;
	}
	#msg_bar .msg_bg {
		max-height: 100%;
		object-fit: cover;
	}
	#msg_bar h2 {
		text-align: center;
	}
	#content {
		overflow-wrap: anywhere;
	}
}

@media screen and (max-width: 850px) {
	html,
	body {
		height: auto;
		min-height: 100%;
		line-height: 1.5;
	}
	#wrapper {
		display: flex;
		flex-direction: column;
		min-height: 100vh;
	}
	main {
		flex: 1 0 auto;
		min-width: 0;
	}
	#header {
		display: flex;
		flex-direction: column;
		align-items: center;
		height: auto;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	#header > a {
		display: block;
		max-width: 100%;
	}
	#header img.logo {
		float: none;
		max-width: 100%;
		height: auto;
		max-height: 100px;
	}
	#mnu {
		position: static;
		width: 100%;
		text-align: center;
	}
	#mnu .phonenum {
		display: block;
		margin: 8px 0;
	}
	#mnu .social {
		position: static;
		display: inline-block;
		margin: 0 0 8px 0;
	}
	#mnu ul {
		position: static;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 8px;
		width: auto;
		margin: 0;
		padding: 0;
		list-style: none;
	}
	#mnu li {
		display: block;
	}
	#mnu li a {
		display: block;
		margin: 0;
		padding: 7px 10px;
	}
	#msg_bar {
		height: auto;
	}
	#msg_bar h2 {
		font-size: 1.5em;
	}
	#content {
		overflow: visible;
		margin-top: 10px;
		padding-bottom: 25px;
	}
	.bluebox,
	.fright.bluebox,
	.fleft.bluebox {
		float: none;
		width: auto !important;
		max-width: 100%;
		margin: 20px 0;
		box-sizing: border-box;
		text-indent: 0;
		overflow: hidden;
	}
	.quotestart,
	.quoteend {
		display: none;
	}
	.sig {
		float: none;
		margin-top: 10px;
	}
	#footer {
		position: static;
		padding: 10px 0;
	}
	#footer .centered {
		padding-left: 15px;
		padding-right: 15px;
	}
	#footer .fright {
		float: none;
		margin: 0 0 10px 0;
		text-align: left;
	}
}

@media screen and (max-width: 420px) {
	#mnu li {
		flex: 1 1 calc(50% - 8px);
	}
	#mnu li a {
		min-height: 42px;
		box-sizing: border-box;
	}
}
