html {
	height: 100%;
}
body {
	background-color: #fff;
	border-top: 30px #043064 solid;
}
body, div, th, td, p, b, i, ul, li, input, textarea, select, a, h1, h2, h3, h4, h5, h6, form {
	color: #232323;
	font-family: 'Lato', arial, verdana, helvetica, sans-serif;
	font-weight: 300;
	font-size: 16px;
	line-height: 1.6em;
}
p,ul {
	padding-bottom: 1.2em;
}

ul {
	list-style: none
}

li::before { /* blue square */
	content: "\25AA"; 
	color: #043064;
	display: inline-block; 
	width: 1em;
	margin-left: 0px;
}
.clearboth {
	clear: both;
}
.floatleft {
	margin: 0;
	float: left;
}
.floatright {
	margin: 0;
	float: right;
}
.textaligncenter {
	text-align: center;
}
.textalignright {
	text-align: right;
}
.displaytable {
	display: table; 
	width: 100%;
}
.row {
	display: table-row;
	width: 100%;
}
.cell {
	display: table-cell;
	vertical-align: top;
}
.uppercase {
	text-transform: uppercase;
}
.small {
	font-size: 14px;
}
.width100 {
	width: 100%;
}
a {
	text-decoration: none;
	color: #2BA8A4;
}
a img {
	border: 0;
}
b {
	font-weight: 400;
}
.white {
	color: white;
}
hr {
	clear: both;
	border: 0;
	border-top: 1px #D7D7D7 solid;
	color: transparent;
	margin: 15px 0 15px 0;
	height: 0px;
}

h1 {
	font-family: 'freight-text-pro', serif;
	color: #232323;
	font-size: 32px;
	line-height: 1em;
	text-transform: none;
	font-weight: 400;
}
div#homecontent h1 {
	margin-bottom: 0.5em;
}
div#internalmain h1 {
	padding-bottom: 0.5em;
}
h1.header {
	font-family: 'freight-text-pro', serif;
	font-size: 70px;
	color: #043064;
	text-transform: none;
	max-width: 800px;
	margin: 0 auto;
}
body#home h1.header,
body#home h1.subhead {
	color: white;
	max-width: 1000px;
}
h1.subhead {
	font-family: 'Lato', sans-serif;
	color: inherit;
	font-size: 16px;
	line-height: 2.5em;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	font-weight: 700;
	margin-bottom: 10px;
}
h2 {
	font-family: 'Lato', serif; 
	font-weight: 700; 
	font-size: 14px; 
	color: #043064; 
	letter-spacing: 1.5px;
	text-transform: uppercase;
}
h2#lnavheader {
	line-height: 2em;
	padding-bottom: 12px;
	border-bottom: 1px #d7d7d7 solid;
}
h3 {
	font-family: 'freight-text-pro', serif;
	color: #043064;
	font-size: 24px;
	line-height: 1.5em;
	margin-bottom: 0.5em;
}
div#main {
	margin: 0 auto;
}
div.container {
	max-width: 1100px;
	margin: 0 auto;
	width: calc(100% - 40px);
}
div.container::after {
	clear: both;
	display: table;
	content: '';
}


/* ============ TOPBAR ============== */
div#topbar {
	margin: 15px auto 0px;
	border-bottom: 1px #D7D7D7 solid;
}
div#logo {
	text-align: center;
	padding: 0 0 5px 0;
}
/* ============ END TOPBAR ============== */



/* ============ BOTBAR ============== */
div#footer {
	text-align: center;
	border-top: 1px #D7D7D7 solid;
	margin-top: 45px;
	background-color: #fff;
	padding-top: 40px;
	padding-bottom: 20px;
	font-family: 'Lato', arial, helvetica, sans-serif;
	font-size: 18px; 
	font-weight: 300;
}
div#footer h1 {
	font-weight: 400;
	font-size: 16px;
	line-height: 2.5em;
	text-transform: uppercase;
	letter-spacing: 1px;
}
div#footer a {
	font-size: inherit;
	font-weight: inherit;
}
div#footer p {
	color: #232323;
	font-size: 18px; 
}
div#footer p.copyright {
	font-size: 14px;
	letter-spacing: 1px;
}
/* ============ END BOTBAR ============== */



/*  ============  UNAV  ==============  */
div#unav {
	white-space: nowrap;
	text-align: center;
	margin: 10px 0;
	background-color: #fff;
	display: block;
	/*
	visibility: visible;
	position: static;
	*/
}
div#unav a {
	font-family: 'Lato', arial, helvetica, sans-serif;
	font-weight: 400;
	font-size: 16px;
	line-height: 2em;
	color: #2BA8A4;
	text-transform: uppercase;
	padding: 0 20px;
	letter-spacing: 1px;
	display: inline-block;
}
div#unav a:hover,
div#unav a.unavon {
	color: #424242;
}
div#navindicator {
	display: none;
	cursor: pointer;
	text-align: center;
	padding: 0 0 10px 0;
	font-weight: 700;
	color: #043064;
	letter-spacing: 1.5px;
}	
/* ============ END UNAV ============== */


/* ============ START LNAV ============== */
div#lnav {
	white-space: nowrap;
	text-align: left;
	margin: 0 0 80px;
}
div#lnav a {
	text-decoration: none;
	font-family: 'Lato', arial, helvetica, sans-serif;
	font-weight: 400;
	font-size: 14px;
	line-height: 2.5em;
	color: #2BA8A4;
	text-transform: uppercase;
	padding: 0;
	letter-spacing: 1px;
	display: block;
	border-bottom: 1px #d7d7d7 solid;
}
div#lnav a:hover,
div#lnav a.lnavon {
	color: #424242;
}
div#lnav span.lnavplaceholder {
	font-weight: 400;
	font-size: 14px;
	line-height: 2.5em;
	text-transform: uppercase;
	padding: 0;
	letter-spacing: 1px;
	display: block;
	border-bottom: 1px #d7d7d7 solid;
}	
/* ============ END LNAV ============== */



/*  ============ BUTTONS ============== */
input[type="submit"],
.button {
	clear: both;
	display: inline-block;
	margin: 20px 0 15px 0;
	padding: 11px 30px 11px 30px;
	background-color: #fff;
	color: #2BA8A4;
	border: 2px #2BA8A4 solid;
	font-family: 'Lato';
	font-weight: 400;
	font-size: 14px;
	letter-spacing: 1px;
	text-transform: uppercase;
	line-height: 1.2em;
	cursor: pointer;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}
.button.on {
	background-color: #2BA8A4;
	cursor: pointer;
	color: white;
}
@media (hover: hover) {
	.button:hover {
		background-color: #2BA8A4;
		cursor: pointer;
		color: white;
	}
}
/* ============ END BUTTONS ============== */


/* ============== FORMS ================ */
input[type="text"],
input[type="password"],
input[type="email"],
textarea,
select {
	font-family: 'freight-text-pro', serif;
	background-color: #fff;
	margin: 6px 0 15px; /* changing margin requires changing line height of <label> below */
	border: 1px solid #cbcbcb;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	font-size: 17px;
	line-height: 1.25em;
	padding: 8px;
	width: 80%;
	min-width: 200px;
	max-width: 335px;
}
textarea {
	width: 80%;
	max-width: 670px;
}
input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
textarea:focus {
	border-color: #043064; /* navy */
}
input[type="checkbox"] {
	vertical-align: 2px;
	margin-right: 5px;
}

div.displaytable.form div.row div.cell {
	width: 48%;
	padding-right: 2%;
	white-space: nowrap;
}
div.displaytable.form {
	width: 100%;
}
label {
	font-family: 'Lato', serif;
	font-weight: 700;
	font-size: 14px;
	color: #043064;
	letter-spacing: 1.5px;
	text-transform: uppercase;
}
form h3 {
	margin-top: 20px;
}
form h3:first-child {
	margin-top: 5px;
}
/* ============ END FORMS ============== */



/* ============ START HOME ============== */
div#homebanner {
	background-color: #043064;
	background-image: url('../img/home_banner.jpg');
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: center;
	padding: 110px 0;
	margin-bottom: 90px;
}
div#homecontent {
	float: left;
	width: 65%;
}
body#home div#zone {
	float: right;
	width: 28%;
	padding-top: 0;
}
body#home div#zone h2 br {
	display: block;
}
body#home div#zone a.button {
	margin-bottom: 0;
}
/* ============ END HOME ============== */


/* ============ START INTERNAL ============== */
div#internalbanner {
	text-align: center;
	border-bottom: 1px #D7D7D7 solid;
	padding: 80px 0 75px;
}
div#internal {
	padding-top: 60px;
}
div#internal::after {
	content: "";
	display: table;
	clear: both;
}
div#internalmain {
	width: 68%;
	float: left;
}
div#sidebar {
	float: right;
	width: 25%
}
div#widecontent {
	padding: 0 5%;
}
div.mgtheader {
	display: table-row;
}
img.inheader {
	display: table-cell;
	padding-right: 20px;
	float: none;
	max-width: auto;
}
img.belowheader {
	display: block;
	margin-right: 20px;
	float: left;
	max-width: 45%;
}
div.mgtheader h1 {
	display: table-cell;
	vertical-align: middle;
	margin: 0;
}
div.mgtheader::after {
	content: '';
	display: table;
	clear: both;
	margin-bottom: 30px;
}
/* ============ END INTERNAL ============== */


/* ============ START ACCORDION ============== */
div#qualifications {
	border-top: 1px #D7D7D7 solid;
	margin-top: 20px;
}
div.qualification {
	padding-left: 28px;
	border-bottom: 1px #D7D7D7 solid;
	background-repeat: no-repeat;
	background-position: 10px 16px;
	background-size: 14px;
}
div.qualification.plus {
	background-image: url('../img/icon_circle_plus.svg');
}
div.qualification.minus {
	background-image: url('../img/icon_circle_minus.svg');
}
div.qualification h3 {
	cursor: pointer;
	text-decoration: none;
	color: #2BA8A4;
	font-family: 'Lato', serif; 
	font-weight: 700; 
	font-size: 13px; 
	letter-spacing: 1.5px;
	text-transform: uppercase;
	margin: 0;
	line-height: 3.5em;
}
div.qualificationdescription {
	padding-bottom: 0;
	display: none;
}
/* ============ END ACCORDION ============== */


/* ============================= MOBILE ================================ */
@media only screen and (max-width: 1050px) {
}
@media only screen and (max-width: 950px) {
}
@media only screen and (max-width: 800px) {
	div.container {
		width: 96%;
	}
	div#internalbanner {
		padding: 50px 0 50px;
	}
	div#internal {
		padding-top: 40px;
	}
	div#homecontent {
		float: none;
		width: 100%;
	}
	body#home div#zone {
		float: none;
		width: 100%;
		padding-top: 50px;
	}
	body#home div#zone h2 br {
		display: none;
	}
	div#unav {
		position: absolute;
		display: none;
		/*
		visibility: visible;
		height: 0px;
		*/
		z-index: 999;
		margin: 0;
		padding: 0;
		margin: 0;
		width: 100%;
		text-align: center;
		background-color: #eeeee;
	}
	div#unav a {
		border-bottom: 1px #e1e1e1 solid;
		padding: 0;
		margin: 0;
		display: block;
	}
	div#navindicator {
		display: block;
	}
	div#homebanner {
		padding-top: 100px;
	}
	div#footer  {
	}
	div#internalmain {
		padding-top: 5px;
		width: 100%;
		float: none;
	}
	div#sidebar {
		margin-top: 50px;
		float: none;
		width: auto;
	}
	div#widecontent {
		padding: 0 2% 0 2%;
	}
	div#lnav  {
	}
	div#lnav a {
	}
	input[type="text"],
	input[type="password"],
	input[type="email"],
	textarea,
	select {
		width: 90%
	}
	div.displaytable.form div.row div.cell {
		width: 49%;
		padding-right: 1%;
	}
	h1.header {
		font-size: 60px;
	}
}
@media only screen and (max-width: 600px) {
	h1.header {
		font-size: 56px;
		line-height: 1.1em;
	}
}
@media only screen and (max-width: 510px) {
	div.displaytable.form,
	div.displaytable.form div.row,
	div.displaytable.form div.row div.cell {
		display: block;
		padding: 0;
		width: 100%;
	}
	div.displaytable.form div.row div.cell {
		padding-top: 13px;
	}
	h1.header {
		font-size: 50px;
		margin: 0 5px;
	}
}
@media only screen and (max-width: 480px) {
	h1.header {
		font-size: 44px;
		margin: 0 5px;
	}
}
/* for non-mobile - where hover won't mess up clicks */
@media only screen and (min-width: 801px) {
	div#unav a:hover {
	}
	div#toolbar a:hover {
	}
	div#footer a:hover {
		
	}
	div#lnav a:hover {
		
	}
}
