/* -- Site-wide changes -- */
html {
-webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
	    box-sizing: border-box;
	background: white;
    font-family: "Myriad Pro", Myriad, "Liberation Sans", "Nimbus Sans L", "Helvetica Neue", Helvetica, Arial, sans-serif;
	margin: 0;
	-moz-osx-font-smoothing: grayscale;
}
*, *:before, *:after {
-webkit-box-sizing: inherit;
   -moz-box-sizing: inherit;
    	box-sizing: inherit;
}

img {
	display: inline-block
}

/* -- Text -- */
h1 {
	font-size: 35px;
}
h1, h2, h3 {
	font-weight: normal;
	padding: 10px 40px;
}
h2 {
	color: rgb(90,90,90);
	font-size: 25px;
}
h3 {
	color: rgb(90,90,90);
	font-size: 24px;
}
p, li {
	color: rgb(100,100,100);
	padding: 0;
	font-size: 14px;
	cursor: text;
}

.section p { line-height: 1.6; }

@media screen and (max-width: 910px) {
	section p { text-align: justify; } }

a {
	color: black;
}
a:link {
    text-decoration: none;    
}
a:visited:not(#mainhead) {
    color: black;
    text-decoration: underline;    
}
figcaption {
	padding-top: 10px;
	padding-bottom: 10px;
	font-size: 14px;
}
figcaption span {
	font-weight: 500;
}
/* -- Custom dashed list -- */
.dashed {
	margin: 0;
	list-style: none;
}
.dashed > li {
	text-indent: -10px;
	margin-bottom: 8px;
}
.dashed > li:before {
	content: "- ";
}

/* -- Page Header & Nav -- */
#primaryMenu {
	position: fixed;
	width: 100%;
	z-index: 10;
}
#primaryMenu div {
	border-left: 1px solid black;
	border-right: 1px solid black;
	border-bottom: 1px solid black;
}
#primaryMenu ul {
	list-style: none;
	background: rgba(210,210,210,1);
	margin: 0;
	padding: 0;
	
	/*Flex-cont; center-justify and wrap*/
	display: flex;
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
	
	flex-direction: row;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
	
	flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	
	justify-content: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
	
	align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;

    align-items: flex-start;
    -webkit-box-align: start;
    -moz-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;	
}
#primaryMenu li {
	height: 30px;
	width: 150px;
	transition: 0.3s;
	font-size: 16px;
	text-align: center;
	
	/*Flex-cont: defaults*/
	display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;

    flex-direction: row;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;

    flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
	-webkit-box-lines: single;
	-moz-box-lines: single;

    justify-content: flex-start;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;

    align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;

    align-items: flex-start;
    -webkit-box-align: start;
    -moz-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
}
#primaryMenu a {
	line-height: 28px;
	text-align: center;
	
	/*Flex-item: 1 1 auto*/
	flex: 1 1 auto;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
	
	align-self: auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
}
#primaryMenu li:hover {
	background: rgba(136,136,136,1); 
	cursor: pointer;
}
.menu-button {
	border-bottom: 1px solid black;
	width: 100%;
	display: none;
	font-size: 16px;
	text-align: center;
	padding: 9px;
	background: rgba(107,160,185,1);
	background: rgba(210,210,210,1);
}

/* Configure expanding menu on button click using checkbox */
input[type=checkbox]{
    display: none;
}
input[type=checkbox]:checked ~ .remove-check{
    display: none;
}
input[type=checkbox]:checked ~ #collapsable-menu{
    display: block;
}

.arrow {
    border: solid black;
    border-width: 0 2px 2px 0;
    display: inline-block;
    padding: 3px;
	margin-left: 10px;
	margin-bottom: 2.5px;
    transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
}

/* css to rotate arrow for dropdown menu on click */
.up {transform: rotate(135deg);
    -webkit-transform: rotate(135deg); }


/* Set width for mobile-friendly collapsable menu */
@media screen and (max-width: 910px) {
	.menu-button {
		display: block;
	}
	#primaryMenu {
		width: 100%;
		position: fixed;
	}
	#collapsable-menu {
		display: none;
	}
	#collapsable-menu ul {
		flex-direction: column;
		-webkit-box-direction: normal;
		-moz-box-direction: normal;
		-webkit-box-orient: vertical;
		-moz-box-orient: vertical;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
		
	   align-items: center;
		-webkit-box-align: center;
		-moz-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
	}
	#collapsable-menu li {
		height:auto;
		width: 100%;
	}
	#collapsable-menu li:nth-child(even) {background: rgba(204,204,204,1);}
	#collapsable-menu li:nth-child(odd) {background: rgba(194,194,194,1);}
	#collapsable-menu li:hover {
		background: rgba(76,135,204,1); 
		cursor: pointer;
	}
}

/* -- Photo banners -- */
.banner-cont {
	background: rgba(240,240,240,0.9);
	height: 440px;
	overflow: hidden;
	
	/*Flex-cont; center-justify and center-align*/
    display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;

    flex-direction: row;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;

    flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
	-webkit-box-lines: single;
	-moz-box-lines: single;
	
	justify-content: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
	
	align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;

    align-items: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
}
.banner-img {
	max-height: 620px;
}


/* -- Page Formatting -- */
body {
	width: 100%;
    margin: 0 auto;
	background: white;
}

body .section:first-of-type {
	padding: 0 0 10px;
}

.section {
	padding: 0 0 30px;
	border-left: 1px solid black;
	border-right: 1px solid black;
	
	/*Flex-cont; defaults*/
	display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;

    flex-direction: row;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;

    flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
	-webkit-box-lines: single;
	-moz-box-lines: single;

    justify-content: flex-start;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;

    align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;

    align-items: stretch;
    -webkit-box-align: stretch;
    -moz-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
}

.top-section h1 {
	color: black;
	margin: 0;
	font-size: 40px;
	padding-left: 10px;
	padding-top: 52px;
}

.section:nth-child(odd):not(footer) {background-color: rgba(190,190,190,0.3);}
.section:nth-child(even):not(footer) {background-color:  rgba(243,243,243,0.2);}


/* Prevent oversized left-panels at max-width */
@media screen and (min-width: 910px) {
	.section-leftpanel:not(#footer-top):not(#news-top) h2 {
		max-width: 330px;
	}
}

.section-leftpanel:not(#footer-top):not(#news-top) {
	min-width: 25%;
	
	/*Flex-item; flex: 1 1 34%*/
	flex: 1 1 auto;
	-webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
	
	align-self: auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
	
	order: 0;
	-webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -webkit-order: 0;
    -ms-flex-order: 0;
}
.section-rightpanel {
	margin-top: 20px;
	margin-right: 4%;
	max-width: 840px;

	/*Flex-item; flex: 1 1 75%*/
	flex: 1 1 auto;
	-webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
	
	align-self: auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
	
	order: 0;
	-webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -webkit-order: 0;
    -ms-flex-order: 0;

	/*Flex-cont; wrap and align-center*/
	display: flex;
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
	
	flex-direction: row;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
	
	flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;
	
	justify-content: center;
    -webkit-box-pack: center;
    -moz-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
	
	align-content: center;
    -webkit-align-content: center;
    -ms-flex-line-pack: center;

    align-items: flex-start;
    -webkit-box-align: start;
    -moz-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
}

/* Set width for mobile-friendly collapsable menu */
@media screen and (max-width: 910px) {
	.section {
		margin-top: 0px;
		
		flex-direction: column;
		-webkit-box-direction: normal;
		-moz-box-direction: normal;
		-webkit-box-orient: vertical;
		-moz-box-orient: vertical;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
	}
	.section-leftpanel {
		background-color: rgba(196,196,196,0.4);
		border-top: 1px solid black;
		border-bottom: 1px solid black;
	}
	.section:nth-child(odd):not(footer) {background-color: white;}
	.section:nth-child(even):not(footer) {background-color: white;}
	
	.section-rightpanel { margin-left: 25px; }
	.section-leftpanel h2 { margin: 1px; }
}

/* --Style tabbed nav -- */

.unselected {
	display: none;
}
.selected {
	display: block;
}
.tabs {
	display: block;
/*	max-width: 94%;*/
	background: rgb(250,250,250);
}
div.tabbed-nav {
	padding: 0;
	margin: 0;
	width: 100%;
	height: auto;
	background: rgba(176,176,176,0.4);
	
	/*Flex-cont; wrap */
	display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;

    flex-direction: row;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;

    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
	-webkit-box-lines: multiple;
	-moz-box-lines: multiple;

    justify-content: flex-start;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;

    align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;

    align-items: flex-start;
    -webkit-box-align: start;
    -moz-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;	
}
.tabs button {
	padding: 0;
	margin: 0;
	height: 52px;
	font-size: 12px;
	border-top: 1px solid black;
	border-left: 1px solid black;
	border-right: 1px solid black;
	
	/*Flex-item: flex: 1 0 110px */
	flex: 1 0 110px;
    -webkit-box-flex: 1;
    -moz-box-flex: 1;
    -webkit-flex: 1 0 110px;
    -ms-flex: 1 0 110px;
	
	align-self: auto;
    -webkit-align-self: auto;
    -ms-flex-item-align: auto;
	
	order: 0;
	-webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -webkit-order: 0;
    -ms-flex-order: 0;	
}
div.tabbed-nav button:not(.clicked) {
	border-bottom: 1px solid black;
	background: inherit;
	outline: none;
}
div.tabbed-nav button:not(.clicked):hover {
	background: lightgrey;
}
button.clicked {
	background: rgb(250,250,250);
	outline: none;
	border-bottom: none;
}
#tab-textbox {
	width: 100%;
	padding: 10px 20px;
	margin: 0px;
	background: rgb(250,250,250); 
}
.tabs a {
	text-decoration: underline;
	color: blue;
}
.tabs a:hover {
	color: lightblue;
	cursor: pointer;
}
.tabs figcaption {
	text-align: justify;
}
.tabs img {
	text-align: center;
	padding-left: 40px;
}

#tab-textbox {
	border-left: 1px solid black;
	border-right: 1px solid black;
	border-bottom: 1px solid black;
}

/* -- Footer -- */
footer {
	padding: 0px;
	background: rgb(216,216,216);
	border-left: 1px solid black;
	border-right: 1px solid black;
	
	/*	Flex-cont: column, justify-space-around;*/
	display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;

    flex-direction: column;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: vertical;
    -moz-box-orient: vertical;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;

    flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
	-webkit-box-lines: single;
	-moz-box-lines: single;

    justify-content: flex-start;
    -webkit-box-pack: start;
    -moz-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;

    align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;

    align-items: stretch;
    -webkit-box-align: stretch;
    -moz-box-align: stretch;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
}

#footer-top {
	margin-bottom: 10px;
	text-align: center;
	display: block;
	background: rgba(200,200,200,1);
	border-top: 1px solid black;
}

#footer-top h2 {
	margin-top:    10px;
	margin-bottom: 10px;
}

#footer-content {
	padding: 0 10px;
	margin-bottom: 20px;
}
.footer-card:first-of-type {
	/*	Flex-cont: justify-space-around, item align-center;*/
	display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;

    flex-direction: row;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;

    flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
	-webkit-box-lines: single;
	-moz-box-lines: single;

	justify-content: space-around;
	-webkit-box-pack: justify;
    -moz-box-pack: justify;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;

    align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;

    align-items: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;	
}
.footer-card {
	text-align: center;
	line-height: 0.5;
}

.footer-card .title {
	padding-top: 16px;
	margin-bottom: 15px;
	font-weight: 300;
}
footer p {
	font-size: 17px;
	color: black;
	margin: 0 0 10px 0;
}
.footer-card p a { text-decoration: underline; }

#external-contacts p { text-decoration: underline; }

#company-logos {
	padding-bottom: 5px;
	
/*	Flex-cont: justify space-around, item align-center */
	display: flex;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;

    flex-direction: row;
    -webkit-box-direction: normal;
    -moz-box-direction: normal;
    -webkit-box-orient: horizontal;
    -moz-box-orient: horizontal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;

    flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
	-webkit-box-lines: single;
	-moz-box-lines: single;

	justify-content: space-around;
	-webkit-box-pack: justify;
    -moz-box-pack: justify;
    -webkit-justify-content: space-around;
    -ms-flex-pack: distribute;

    align-content: stretch;
    -webkit-align-content: stretch;
    -ms-flex-line-pack: stretch;

    align-items: center;
    -webkit-box-align: center;
    -moz-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
}

@media screen and (max-width: 910px) {
	.footer-card p { font-size: 15px; }
	#external-contacts p {
		font-size: 15px;
		text-align: center;
	}
	.footer-card:first-of-type {
	    flex-direction: column;
		-webkit-box-direction: normal;
		-moz-box-direction: normal;
		-webkit-box-orient: vertical;
		-moz-box-orient: vertical;
		-webkit-flex-direction: column;
		-ms-flex-direction: column;
	}
	#company-logos {
		flex-direction: column-reverse;
		-webkit-box-direction: reverse;
		-moz-box-direction: reverse;
		-webkit-box-orient: vertical;
		-moz-box-orient: vertical;
		-webkit-flex-direction: column-reverse;
		-ms-flex-direction: column-reverse;
	}
}

@media screen and (min-width: 910px) {
	#company-logos div { margin: 10px 0px; padding-right: 60px;}
}

#company-logos div { margin: 10px 0px; }

#company-logos div:last-of-type { margin-left: 20px; }

#footer-bottom {
	padding-top: 15px;
	padding-bottom: 5px;
}

#footer-bottom p {
	margin: 0px;
	font-size: 11px;
	text-align: center;
}
