
/*******************************
/ PAGE STRUCTURE
/******************************/
html, body {
	padding: 0;
	margin: 0;
}

html {
	min-height: 100%;
}

body {
	font-size: 0.875em;
	font-family: san-serif;
	font-weight: normal;
	color: black;
	background: white;
	min-height: 100%;
}

header, footer, section, main {
	box-sizing: border-box;
}

#page {
	min-width: 480px;
	max-width: 1280px;
	margin: 0 auto;
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	flex-flow: column nowrap;
	align-content: stretch;
}

.sticky {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
}

/*******************************
/ HEADINGS
/******************************/


/*******************************
/ GLOBAL BITS AND PIECES
/******************************/

a, a:visited {
	color: silver;
}
.center {
	text-align: center;
}
.block {
	display: block !important;
}
.no-margin {
	margin: 0 !important;
}
.page-width {
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
}
.inner-width {
	width: 100%;
	max-width: 800px;
	margin: 0 auto;
	padding: 16px;
	box-sizing: border-box;
}
.small.round.button {
	display: inline-block;
	color: #008FA9;
	border: 1px solid silver;
	border-radius: 12px;
	padding: 2px 10px;
	text-transform: uppercase;
	text-decoration: none;
	cursor: pointer;
}
.small.read-more.button,
.small.watch-video.button {
	display: inline-block;
	width: 84px;
	height: 18px;
}
.small.read-more.button:hover {
}
.small.white.read-more.button {
}
.small.white.read-more.button:hover {
}
.small.watch-video.button {
}
.small.watch-video.button:hover {
}
ul, ol {
	margin-left: 0;
	padding-left: 1.1em;
}
ol {
	padding-left: 1.5em;
}
.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.content img {
	max-width: 100% !important;
}

/*******************************
/ CMS EDITOR CONTENT
/******************************/

body.cke_editable h1,
.cms_content h1 {
	text-align: left;
	margin: 0;
}

/*******************************
/ SECTIONS
/******************************/

.section {
	padding: 20px;
	margin: 25px 0;
	min-height: 100px;
}
.section .section {
	padding: 0;
	min-height: auto;
}
.section.collapsed {
	display: none;
	opacity: 0;
}
.cms_inline_block.editable .section.collapsed {
	display: block;
}


/*******************************
/ HEADER
/******************************/

header {
	display: flex;
	justify-content: space-between;
}
#main_logo {
	flex: 0 1 auto;
	max-width: 200px;
	text-decoration: none;
}
#header_contact {
	margin-left: auto;
}


/*******************************
/ MAIN MENU
/******************************/

#menu_bar {
	flex: 1 1 auto;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	position: relative;
	overflow: visible;
	z-index: 100;
}

#main_menu {
	flex: 0 1 auto;
}
#main_menu > ul > li {
	margin: 0 9px;	
}
#main_menu a {
	text-transform: uppercase;
}
#main_menu a:hover {
	color: black;
}
#main_menu a.with_submenu {
	background: url(/base/images/icons/menu_caret.png) no-repeat right center;
	padding-right: 16px;
	margin-right: 16px;
}

/* Responsive Mobile Menu */
#mobile_menu_toggle {
	padding: 20px;
	display: none;
}

/*******************************
/ LIGHTBOX
/******************************/

.lity-content > div {
	background-color: white;
	border-radius: 10px;
	min-height: 400px;
	margin: 0 auto;
	padding: 20px;
	width: 85vw;
}

/*******************************
/ INLINE MESSAGES: display messages at top of page
/******************************/

#inline_messages {
	clear: both;
	color: black;
	background-color: #eee;
	box-sizing: border-box;
	width: 100%;
}

/*******************************
/ MAIN CONTENT
/******************************/

main {
	display: flex;
	flex-flow: row wrap;
	align-items: stretch;
	height: 100%;
	flex: 1;
	padding: 0;
	max-width: 100%;
	min-height: 400px;
	position: relative;
}

/*******************************
/ MAIN PANEL
/******************************/

section.main_panel {
	flex: 1 1 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}
main.sidebar section.main_panel {
	width: 75%;
	flex: 1 0 75%;
	float: left; /* IE8 */
	
	position: relative;
	display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	
	flex-direction: row;
	flex-wrap: wrap;
	
	align-content: flex-start;
	align-items: stretch;
}


/*******************************
/ MEDIA PANEL
/******************************/

.media_panel {
	width: 100%;
}


/*******************************
/ CONTENT PANEL
/******************************/

.content_panel {
	padding: 58px 50px;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	
	min-height: 350px;
	margin-bottom: 20px;
	flex: 2;
}

main.no-padding .content_panel {
	padding: 0;
}
main.no-padding .content_panel {
	padding: 0;
}

main.rightbar .content_panel {
	width: 70%;
	-webkit-flex: 1 0 75%;
	flex: 1 0 auto;
	-ms-flex: 1 70%;
}
.content_panel .intro {
	margin: auto;
	box-sizing: border-box;
	max-width: 990px;
	padding: 0 20px;
}
.content_panel .intro h2 {
	font-size: 15.5pt;
	margin: 1.4em 0;
}
.content_panel .intro p {
	font-size: 10pt;
}
.content_panel p
{
	margin: 0 0 1em 0;
}

/*******************************
/ RIGHT PANEL
/******************************/

.right_panel {
	width: 30%;
	box-sizing: border-box;
	-ms-box-sizing: border-box;
	-webkit-flex: 1 0 20%;
	flex: 1 0 20%;
	-ms-flex: 1 0 20%;
}

/*******************************
/ FOOTER
/******************************/

footer {
	padding: 20px;
}

/*******************************
/ ABOUT US
/******************************/


/*******************************************************************************************
/	RESPONSIVE                                                   
/******************************************************************************************/	

@media only screen and (max-width: 1200px) {

}

/*******************************  Mobile Landscape (.ml) *******************************/
@media only screen and (max-width: 1000px) {

}

@media only screen and (max-width: 800px) {
	body {
		font-size: 0.9em;
	}
	#main_logo img {
		max-width: 100%;
	}

}/* End */


/*******************************  Mobile Portrait (.mp) *******************************/
@media only screen and (max-width: 640px) {

} /* End */