/*
**		****     ****   ****   ****     ****
**		*****   *****   ****   *****    ****
**		****** ******   ****   ******   ****
**		*************   ****   *******  ****
**		**** *** ****   ****   **** *** ****
**		****  *  ****   ****   ****  *******
**		****     ****   ****   ****   ******
**		****     ****   ****   ****    *****
*/

	#contentwrapper,
	#columnwrapper {
		margin-top: 1rem;
		margin-bottom: 2.5rem;
	}


@media screen and (min-width: 556px) {

	#mainbody {
	}

	.notmobile #content {
		float: left;
		width: 100%;
		margin-right: -100%;

	}
	.notmobile.column #content {
		width: 65%;
		margin-right: -65%;
	}

	.notmobile #column {
		float: left;
		width: calc(35% - 20px);
		margin-left: calc(65% + 20px);
		margin-right: -960px;

		font-size: 0.7rem;
		line-height: 1.143;
		color: #000;

	}
	.notmobile.column #column {
		display: block;
	}

}


@media screen and (min-width: 816px) {
	.notmobile #column {
		width: calc(35% - 30px);
		margin-left: calc(65% + 30px);
	}
}


@media screen and (min-width: 1016px) {

	#mainbody {
		padding-top: 80px;
	}
	.notmobile.navsecondary.template-default #mainbody,
	.notmobile.navsecondary.template-sidenav #mainbody {
		padding-top: 120px;
	}

	.notmobile #logo {
		border-bottom: none;
	}
	.notmobile.scrolled #logo {
		-webkit-box-shadow: none;
		   -moz-box-shadow: none;
				box-shadow: none;
	}


	.notmobile #logo .widthwrapper {
		padding-top: 0;
		padding-bottom: 0;
	}
	.notmobile.scrolled #logo .widthwrapper {
		padding-top: 0;
		padding-bottom: 0;
	}



	#logo a.image {
		height: 56px;
	}
	.notmobile #logo a.image {
		position: absolute;
		top: 12px;
		left: 50%;
		-webkit-transform: translateX(-50%);
		   -moz-transform: translateX(-50%);
			-ms-transform: translateX(-50%);
				transform: translateX(-50%);
	}

	.notmobile .burger {
		display: none !important;
	}









	.notmobile #navprimary {
		display: block;

		position: absolute;
		top: -100px;
		left: 0;
		margin-top: 100px;

		width: 100%;
		z-index: 30;

		background: #fff;

		-webkit-transition: height 300ms ease, left 300ms ease, background 300ms ease, box-shadow 300ms ease;
		   -moz-transition: height 300ms ease, left 300ms ease, background 300ms ease, box-shadow 300ms ease;
				transition: height 300ms ease, left 300ms ease, background 300ms ease, box-shadow 300ms ease;
	}

	.notmobile.template-home #navprimary {
		background: none;
	}
	.notmobile.template-home.scrolldown #navprimary,
	.notmobile.template-home.scrollup #navprimary {
		background: #fff;
		-webkit-box-shadow: 0 4px 4px rgba(0,0,0,0.2);
		   -moz-box-shadow: 0 4px 4px rgba(0,0,0,0.2);
				box-shadow: 0 4px 4px rgba(0,0,0,0.2);
	}



	.notmobile.scrolled #navprimary {
		position: fixed;
		margin-top: 0;
		background: #fff;

		-webkit-box-shadow: 0 4px 4px rgba(0,0,0,0.2);
		   -moz-box-shadow: 0 4px 4px rgba(0,0,0,0.2);
				box-shadow: 0 4px 4px rgba(0,0,0,0.2);
	}

	.notmobile.scrollup #navprimary {
		position: fixed;
		-webkit-transition: height 300ms ease, left 300ms ease;
		   -moz-transition: height 300ms ease, left 300ms ease;
				transition: height 300ms ease, left 300ms ease;
	}
	.notmobile.scrollup.navheader.pinned #navprimary {
		top: -59px;
	}
	.notmobile.scrolled.scrollup #navprimary {
		top: 0;

		-webkit-transition: height 300ms ease, left 300ms ease, top 300ms ease;
		   -moz-transition: height 300ms ease, left 300ms ease, top 300ms ease;
				transition: height 300ms ease, left 300ms ease, top 300ms ease;
	}
	.notmobile.scrolled.scrollup.navheader.pinned #navprimary {
		top: 41px;
	}

}



@media screen and (min-width: 1016px) and (min-height: 600px) {
	.notmobile #navprimary {
		position: fixed;
		top: 0px;
		margin-top: 0;
	}
	.notmobile.navheader.pinned #navprimary,
	.notmobile.scrolled.navheader.pinned #navprimary,
	.notmobile.scrollup.navheader.pinned #navprimary {
		top: 41px;
	}
}


@media screen and (min-width: 1016px) {

	.notmobile #navprimary .widthwrapper {
		border-left: 20px solid transparent;
		border-right: 20px solid transparent;
		height: 80px;
		padding: 0;
		position: relative;

		-webkit-transition: height 300ms ease, font-size 300ms ease;
		   -moz-transition: height 300ms ease, font-size 300ms ease;
				transition: height 300ms ease, font-size 300ms ease;
	}


	.notmobile #navprimary ul {
		margin: 0;
		padding: 0;
	}
	.notmobile #navprimary ul.level0 {
		position: absolute;
		bottom: 0;
		width: calc(50% - 70px);
		text-align: justify;

		-webkit-transition: top 300ms ease;
		   -moz-transition: top 300ms ease;
				transition: top 300ms ease;

		font-size: 1px;
		line-height: 0;


	}

	.notmobile #navprimary ul.level0:first-child {
		left: 0;
	}

	.notmobile #navprimary ul.level0:last-child {
		right: 0;
	}

	.notmobile #navprimary ul.level0::after {
		content: "";
		display: inline-block;
		height: 0;
		width: 100%;



	}




	.notmobile #navprimary li {
		list-style: none;
		background: none;
		margin: 0;
		padding: 0;
	}
	.notmobile #navprimary ul.level0 > li {
		position: relative;
		display: inline-block;
	}


	.notmobile #navprimary a {
		display: block;
		color: #005f9f;
	}
	.notmobile #navprimary a:hover {
		color: #42ae00;
	}
	.notmobile #navprimary .active > a,
	.notmobile #navprimary .selected > a {
		color: #42ae00;
	}

	.notmobile #navprimary:not(:hover) .level0 > li.active > a::before,
	.notmobile #navprimary:not(:hover) .level0 > li.selected > a::before,
	.notmobile #navprimary .level0 > li:hover > a::before {
		content: "";
		display: block;
		position: absolute;
		left: 50%;
		bottom: 0;
		-webkit-transform: translateX(-50%);
		   -moz-transform: translateX(-50%);
			-ms-transform: translateX(-50%);
				transform: translateX(-50%);
		border-bottom: solid 10px #45b203;
		border-left: solid 10px transparent;
		border-right: solid 10px transparent;
	}


	.notmobile #navprimary ul.level0 > li > a {
		position: relative;
		z-index: 1;
		margin: 0;
		padding: 18px 12px;
		-webkit-transition: padding 300ms ease;
		   -moz-transition: padding 300ms ease;
				transition: padding 300ms ease;
	}

	.notmobile #navprimary ul.level0 > li > a {
		font-size: 1rem;
		line-height: 1.333;
		font-weight: 400;
	}

	.notmobile #navprimary ul.level1 > li > a {
		padding: 0.3em 0;

		font-size: 0.889em;
		line-height: 1.15;
		font-weight: 400;
		color: #fff;
	}
	.notmobile #navprimary ul.level1 > li.active > a,
	.notmobile #navprimary ul.level1 > li.selected > a,
	.notmobile #navprimary ul.level1 > li > a:hover {
		color: #005f9f;
	}


	.notmobile #navprimary .menu {
		display: none;

		position: absolute;
		left: 50%;
		-webkit-transform: translateX(-50%);
		   -moz-transform: translateX(-50%);
			-ms-transform: translateX(-50%);
				transform: translateX(-50%);
		z-index: 35;
		width: 200px;
		-webkit-box-sizing: border-box;
		   -moz-box-sizing: border-box;
				box-sizing: border-box;

		padding: 0.3em 12px;
		background: rgb(69, 178, 3);

		font-size: 1rem;
		line-height: 1.444;
		text-align: center;

	}
	.notmobile.scrolled #navprimary .menu {
		border-color: transparent;

		-webkit-box-shadow: 2px 4px 4px rgba(0,0,0,0.2);
		   -moz-box-shadow: 2px 4px 4px rgba(0,0,0,0.2);
				box-shadow: 2px 4px 4px rgba(0,0,0,0.2);

	}
	.notmobile #navprimary ul.level0 > li:hover > .menu {
		display: block;
	}








	.notmobile #content {
		float: left;
		width: 100%;
		margin-right: -100%;
	}
	.notmobile.column #content,
	.notmobile.navsecondary.template-sidenav #content {
		width: 670px;
		margin-right: -670px;
	}

	.notmobile #column {
		float: left;
		width: 260px;
		margin-left: 700px;
		margin-right: -960px;
	}
	.notmobile.column #column,
	.notmobile.navsecondary #column {
		display: block;
	}

	.notmobile #contentwrapper {
		position: relative;
		min-height: 300px;
	}

















	.notmobile #mainbody > #navsecondary {
		display: block;
		position: absolute;
		top: 80px;
		left: 0;
		width: 100%;
		background-color: #eceeec;
	}

	.notmobile #mainbody > #navsecondary ul {
		margin: 0;
		padding: 0;
	}
	.notmobile #mainbody > #navsecondary ul.level1 {
		text-align: center;
		line-height: 0;
	}
	.notmobile #mainbody > #navsecondary li {
		display: inline-block;
		margin: 0;
		padding: 0 0.8em !important;
		list-style: none;
		background: none;
	}

	.notmobile #mainbody > #navsecondary a {
		position: relative;
		display: table-cell;
		height: 40px;
		vertical-align: middle;

	    white-space: nowrap;
	    overflow: hidden;
	    text-overflow: ellipsis;
	    -webkit-transition: max-width 300ms ease;
	       -moz-transition: max-width 300ms ease;
	    		transition: max-width 300ms ease;

		font-size: 0.889em;
		font-weight: 400;
		color: #005f9f;
	}
	.notmobile #mainbody > #navsecondary a:hover,
	.notmobile #mainbody > #navsecondary .active > a {
		/*max-width: 250px;*/
		color: #42ae00;
	}

	.notmobile #navsecondary .menu {
		display: none;
	}




.notmobile #navtertiary {
	display: block;
}
.notmobile #navtertiary ul {
	display: table;
	width: calc(100% + 1.2rem);
	padding: 0;
	margin: 0 -0.6rem;
	list-style: none;
	border-spacing: 0.6rem 0;

}
.notmobile #navtertiary li {
	display: table-cell;
	background: #eceeec;
	text-align: center;
}


.notmobile #navtertiary a {
	display: block;
	padding: 0rem 0.8rem;
	font-size: 1.111em;
	font-weight: 300;
	color: #005f9f;
}
.notmobile #navtertiary a:hover,
.notmobile #navtertiary .active > a {
	background: #45b203;
	color: #fff;
}




	.notmobile #fullfooter,
	.notmobile #sitemap {
		color: #6c747b;
	}
	.notmobile #fullfooter a,
	.notmobile #sitemap a {
		color: #6c747b;
	}
	.notmobile #fullfooter a:hover,
	.notmobile #sitemap a:hover {
		color: #42ae00;
	}


	.notmobile #sitemap {
		font-size: 0.764rem;
		line-height: 1.154;
		font-weight: 300;
		letter-spacing: 0;
		text-transform: none;
	}

	#navfooter {
		line-height: 1.6;
	}


	.notmobile #sitemap {
		position: static;
		cursor: default;
		padding: 4px 0 0;
	}

	.notmobile #sitemap .widthwrapper {
		width: 1000px;
		height: auto;
		right: auto;
		overflow-y: visible;
		margin: 0 auto;
		padding: 0 20px;
		cursor: default;
		-webkit-transition: none;
		   -moz-transition: none;
				transition: none;

	}


	.notmobile #navsitemap {
	}

	.notmobile #navsitemap {
		min-height: none;
		margin-bottom: 0;
		padding: 0;
		background: none;
	}


	.notmobile #navsitemap ul.level0 {
		text-align: justify;
	}
	.notmobile #navsitemap ul.level0:after {
		content: "";
		display: inline-block;
		height: 0;
		width: 100%;
	}

	.notmobile #navsitemap ul.level0 > li {
		display: inline-block;
		vertical-align: top;
		text-align: left;
		border-bottom: none;
		max-width: 170px;
	}

	.notmobile #navsitemap li.hidesitemap {
		display: none !important;
	}



	.notmobile #navsitemap ul.level0 > li > a {
		padding: 16px 0 6px;

		font-size: 0.889rem;
		line-height: 1.125;
		font-weight: 400;
		letter-spacing: 0;
		text-transform: none;

		color: #005f9f;
	}

	.notmobile #navsitemap ul.level0 > li > a:hover {
		color: #42ae00;
	}


	.notmobile #navsitemap ul.level1 > li > a {
		padding: 5px 0;

		font-size: 0.778rem;
		line-height: 1.167;
		font-weight: 300;
		letter-spacing: 0;
		text-transform: none;
	}


	.notmobile #sitemap a span {
		display: block;
		padding: 0;
		line-height: unset;
		border-bottom: none;
	}
	.notmobile #navsitemap li.haschildren a:before,
	.notmobile #navsitemap li.haschildren a:after {
		display: none;
	}

	.notmobile #navsitemap ul.level0 > li > a > span {
		padding-top: 0px;
		padding-bottom: 0px;
	}


	.notmobile #navsitemap ul.level0:first-child > li:first-child {
		display: none;
	}




	.notmobile #sitemap .menu,
	.notmobile #sitemap ul.level0 > li > .menu {
		display: block;
		margin: 0;
		border: none;
		background: none;
	}
	.notmobile #sitemap ul.level1 > li > .menu {
		display: none !important;
	}

	.notmobile #sitemap .menu > ul {
		margin-left: 0;
	}


	.notmobile #sitemap address {
		display: block;
		font-style: normal;
	}
















	.notmobile #navfooter {

		padding-bottom: 1.5em;

		font-size: 0.667rem;
		line-height: 1.167;
		font-weight: 300;

		text-align: left;
	}

	.notmobile #navfooter > span {
		display: inline-block;
	}

	#navfooter > span > span {
		padding-right: 10px;
	}
	#navfooter > span > span:first-child {
		padding-left: 0;
	}

	.notmobile #navfooter ul {
	    display: inline-block;
		margin: 0;
		padding: 0 16px 0 6px;
	}
	.notmobile #navfooter li {
		display: inline-block;
		padding-left: 10px;

		list-style: none;
		background: none;
	}
	.notmobile #navfooter li:first-child {
		margin-left: 0;
		padding-left: 0;
		box-shadow: none;
	}

	.notmobile #navfooter > a {
		display: block;
		position: absolute;
		left: 20px;
		bottom: 1em;
	}

	.notmobile #navfooter > a img {
		width: 130px;
	}


	.notmobile #navfooter .social {
		position: absolute;
		right: 20px;
		bottom: 1.5em;
		height: 15px;
		margin: 0;
	}


}



@media screen and (min-width: 1216px) {
	html {
		font-size: 20px;
	}
	.widthwrapper,
	.notmobile #sitemap .widthwrapper {
		width: 1200px;
	}


	.notmobile.column #content,
	.notmobile.template-sidenav.navsecondary #content {
		width: 860px;
		margin-right: -860px;
	}

	.notmobile #column {
		margin-left: 900px;
		margin-right: -1160px;
	}

}



body.opennav.mobile #sitemap {
	background: rgba(237, 241, 242, 0.75);
	z-index: 2000;
	-webkit-transition: z-index 0ms linear, background 300ms ease;
	   -moz-transition: z-index 0ms linear, background 300ms ease;
			transition: z-index 0ms linear, background 300ms ease;
}
body.opennav.mobile #sitemap .widthwrapper {
	right: 0;
	box-shadow: 0 0 20px rgba(0,0,0,0.2);
}


@media screen and (max-width: 1015px) {
	body.opennav #sitemap {
		background: rgba(237, 241, 242, 0.75);
		z-index: 2000;
		-webkit-transition: z-index 0ms linear, background 300ms ease;
		   -moz-transition: z-index 0ms linear, background 300ms ease;
				transition: z-index 0ms linear, background 300ms ease;
	}
	body.opennav #sitemap .widthwrapper {
		right: 0;
		box-shadow: 0 0 20px rgba(0,0,0,0.2);
	}
}



@media screen and (max-width: 1015px) {
	html {
		font-size: 16px;
	}
	.widthwrapper {
		width: 800px;
	}
}

@media screen and (max-width: 815px) {
	.widthwrapper {
		width: 100%;
	}
}



@media screen and (min-width: 763px) {
	body.navheader.pinned {
		border-top: solid 41px transparent;
		padding-top: 0;
	}
	body.navheader.pinned #sitemap {
		top: 41px;
	}
}
@media screen and (min-width: 763px) and (max-height: 599px) {
	body.navheader.pinned.scrolled.scrollup #logo {
		top: 41px;
	}
}

@media screen and (min-width: 763px) and (min-height: 600px) {
	body.navheader.pinned #logo,
	body.navheader.pinned.scrolled.scrollup #logo {
		top: 41px;
	}
}




@media screen and (max-width: 640px) {
	html {
		font-size: 15px;
	}
}




@media screen and (min-width: 500px) and (max-width: 1015px) {
	#sitemap .widthwrapper{
		right: -400px;
		width: 420px;
	}
}


@media screen and (min-width: 500px) {
	.mobile #sitemap .widthwrapper {
		right: -400px;
		width: 420px;
	}
}

@media print {
	html {
		font-size: 16px;
	}
}
