/* mulish-800 - latin */
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 800;
  src: url('/extras/etc/fonts/mulish-v5-latin-800.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/extras/etc/fonts/mulish-v5-latin-800.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/extras/etc/fonts/mulish-v5-latin-800.woff2') format('woff2'), /* Super Modern Browsers */
       url('/extras/etc/fonts/mulish-v5-latin-800.woff') format('woff'), /* Modern Browsers */
       url('/extras/etc/fonts/mulish-v5-latin-800.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/extras/etc/fonts/mulish-v5-latin-800.svg#Mulish') format('svg'); /* Legacy iOS */
}

/* source-sans-3-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 400;
  src: url('/extras/etc/fonts/source-sans-3-v9-latin-regular.eot'); /* IE9 Compat Modes */
  src: url('/extras/etc/fonts/source-sans-3-v9-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/extras/etc/fonts/source-sans-3-v9-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/extras/etc/fonts/source-sans-3-v9-latin-regular.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('/extras/etc/fonts/source-sans-3-v9-latin-regular.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('/extras/etc/fonts/source-sans-3-v9-latin-regular.svg#SourceSans3') format('svg'); /* Legacy iOS */
}
/* source-sans-3-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 600;
  src: url('/extras/etc/fonts/source-sans-3-v9-latin-600.eot'); /* IE9 Compat Modes */
  src: url('/extras/etc/fonts/source-sans-3-v9-latin-600.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/extras/etc/fonts/source-sans-3-v9-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/extras/etc/fonts/source-sans-3-v9-latin-600.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('/extras/etc/fonts/source-sans-3-v9-latin-600.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('/extras/etc/fonts/source-sans-3-v9-latin-600.svg#SourceSans3') format('svg'); /* Legacy iOS */
}
/* source-sans-3-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 700;
  src: url('/extras/etc/fonts/source-sans-3-v9-latin-700.eot'); /* IE9 Compat Modes */
  src: url('/extras/etc/fonts/source-sans-3-v9-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/extras/etc/fonts/source-sans-3-v9-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('/extras/etc/fonts/source-sans-3-v9-latin-700.woff') format('woff'), /* Chrome 5+, Firefox 3.6+, IE 9+, Safari 5.1+, iOS 5+ */
       url('/extras/etc/fonts/source-sans-3-v9-latin-700.ttf') format('truetype'), /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
       url('/extras/etc/fonts/source-sans-3-v9-latin-700.svg#SourceSans3') format('svg'); /* Legacy iOS */
}


/* 
font-family: 'Mulish', sans-serif;
font-family: 'Source Sans 3', sans-serif;
*/

body {
	font-size: 1.250em;
	margin: 0px;
	font-family: 'Source Sans 3', sans-serif;
	color: #000000;
}
p,li {line-height:140%;}

body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
footer {
  margin-top: auto;
}

/**************** header *****************************/

.header {
	position:fixed;
	width:100%;
	z-index: 100;
	background-color: rgba(255, 255, 255, 0.6);
	backdrop-filter: blur(20px) brightness(160%);
	border-bottom: 2px solid #F2F6F7;
}
.banner {
	width:1640px;
	margin:auto;
}
.main {padding-top:0;}
.main.editOn {padding-top: 98px;}

.logo	{
	width:255px;
	float:left;
	margin:20px 0;
	transition: margin 1s ease;
}
.menuCont {
	width:calc(100% - 255px);
	float:right;
	padding:34px 0 0 50px;
	transition: padding 1s ease;
	max-width:700px;
}
.topRight {
	width:205px;
	float:right;
	text-align:right;
	position: relative;
	top: -3px;
}
.topmenu{
	width:calc(100% - 205px);
	float:left;
	text-align:right;
	padding-right:50px;
	transition: padding 1s ease;
}

.logo img {max-width:100%;transition: max-width 1s ease;}
.topRight .linkButton {}
.topRight .linkButton:hover {}

.shrink .logo {margin-top:6px;margin-bottom:5px;}
.shrink .logo img {max-width:70%;}
.shrink .menuCont {padding-top:5px;}
.shrink .topRight {top:0;}
	
/**************** nav - topnav *************************/


html .mlddm {display:flex;justify-content:space-between;}

/* top level */
.mlddm li a, .mlddm li a#buttonnohover {	
		padding: 0 2px;
		line-height: 40px;
		color: #1D1E1E;
		font-size: 1.125rem;
		border-bottom:2px solid transparent;
}
.mlddm li a:hover, .mlddm li a#buttonhover,
.mlddm li a.selected, .mlddm li a.selected#buttonnohover,
.mlddm li a.selected:hover, .mlddm li a.selected#buttonhover	{color:#1D1E1E;border-bottom:2px solid #435C73;}

.mlddm>li:first-child>a {}
.mlddm>li:last-child>a {}

/* drop down list */
	.mlddm ul {margin-top: 24px !important;transition: margin 1s ease;}
	.shrink .mlddm ul {margin-top: 13px !important;}
	.mlddm ul li a {	
		line-height: 40px;
		padding: 0 32px 0 16px;
		text-align:left;
		height:auto;
		background-color: #435C73;	
		color:#ffffff; 
		font-size:0.875rem;
	}
	
	.mlddm ul li a:hover:before,
	.mlddm ul li a.selected:before {
		content:url('arrow-drop-down-menu.png');
		margin-right: 6px;
		position: relative;
		bottom: 1px;
	}
	
	.mlddm ul li a:hover,
	.mlddm ul li a.selected,
	.mlddm ul li a:hover.selected,
	.mlddm .hsub:hover, .mlddm .selectedhsub:hover	{color:#ffffff;}

/**************** nav - mobile header *************************/

/* hamburger menu positioning & style */

.slicknav_btn {right:16px;}
.slicknav_btn.btnBottom {bottom:4px;}

.btnBottom .slicknav_icon-bar {background-color:#484b4c;}
.btnBottom .slicknav_menutxt {color:#484b4c;}

.slicknav_icon-bar {background-color:#4E5964;}
.slicknav_icon-bar:nth-child(1) {width:19px;}
.slicknav_icon-bar:nth-child(2) {width:24px;}
.slicknav_icon-bar:nth-child(3) {width:17px;}

.slicknav_menutxt {display: none;}

.slicknav_menu {background-color:transparent;padding:0;}
.slicknav_nav {z-index:10000000;}
.slicknav_nav {font-size:1.750em;}
.slicknav_nav .slicknav_arrow	{background-color:transparent;font-size:1.5em;}
.slicknav_nav .slicknav_row	{padding: 12px 20px;} /* row is for subs that are parents */
.slicknav_nav a					{padding: 12px 20px;font-size:1.125rem;}

/* first level */
li.slicknav_collapsed.slicknav_parent > a .slicknav_arrow	{color:var(--almost-black);}
li.slicknav_parent.slicknav_open > a .slicknav_arrow			{color:#ffffff;}

.slicknav_nav > li:nth-of-type(1)	{border-top:none;}
.slicknav_nav > li:not(:last-child) {border-bottom: none;}
.slicknav_nav > li 						{background-color:#002647;}
.slicknav_nav a 							{color: #1D1E1E;background-color: #EDEEEF;}
.slicknav_nav a:hover					{background-color:#435C73;color:#ffffff;}
.slicknav_row:hover, 
li.slicknav_collapsed .slicknav_row:hover a	{background-color:#435C73;color:#ffffff;}
.slicknav_nav li.slicknav_open,
.slicknav_nav li.slicknav_open > a,
.slicknav_nav li.slicknav_open > a a,
.slicknav_nav li.slicknav_open > a:hover 		{background-color:#435C73;color:#ffffff;border:none;}

/* second level */
ul li ul li.slicknav_collapsed.slicknav_parent > a .slicknav_arrow	{}

.slicknav_nav ul li 						{}
.slicknav_nav ul li a 					{color:#1D1E1E;}	
.slicknav_nav ul li a 					{padding: 12px 20px 12px 30px;}
.slicknav_nav ul li .slicknav_row	{padding: 12px 20px 12px 30px;}

.slicknav_nav ul li.slicknav_parent.slicknav_open,
.slicknav_nav ul li.slicknav_parent.slicknav_open > a,
.slicknav_nav ul li.slicknav_parent.slicknav_open > a a,
.slicknav_nav ul li.slicknav_parent.slicknav_open > a:hover 	{color:#ffffff;}

/* third levels */
.slicknav_nav ul li ul li 					{background-color:var(--light-grey);}
.slicknav_nav ul li ul li a 				{color:var(--almost-black);}
.slicknav_nav ul li ul li a 				{padding-left: 60px;}
	
.slicknav_nav ul li .slicknav_arrow	{}
.slicknav_nav ul li.slicknav_parent.slicknav_open  .slicknav_arrow:before {content:"-";}


/* overrides */

.slicknav_nav li:nth-child(even) 	{}
.slicknav_nav ul li:nth-child(even) {}
.slicknav_nav ul li ul li:nth-child(even) {}
.slicknav_nav .slicknav_item a, .slicknav_nav .slicknav_parent-link a {font-size: 1.125rem;}
.slicknav_nav .slicknav_row {padding: 12px 20px;}
.slicknav_nav .slicknav_arrow {background-color: transparent;width: 44px;}
.slicknav_nav .slicknav_row:hover, li.slicknav_collapsed .slicknav_row:hover a {background-color:#435C73;color:#ffffff;}	
	
	
/**************** footer *****************************/

.footer {background-color:#435C73;color:#ffffff;}
.footerInfo	{width:1640px;margin:auto;padding:20px 0;}
.footerInfo .sideBySide-Col2 {text-align:right;}
.footerInfo p {margin-bottom:8px;line-height:160%;}
.footerInfo	a {color:#ffffff;text-decoration:none;}
.footerInfo a:hover {color:#ffffff;}

.footerLine {
	background-image: url(wavy-line-repeat.png);
	background-position: center;
	background-repeat: repeat-x;
	text-align: center;
	height: 7px;
	margin-top: 40px;
}

.footerBase	{width:1640px;margin:auto;padding: 10px 0;color: #ffffff;line-height:140%;}
.footerLeft	{width:66%;float: left;font-size:0.563em;}
.footerRight {width:33%;float: right;text-align:right;font-size:0.563em;}
.footerBase a {font-size: 1em;color:#ffffff;}
.footerBase a:hover	{color:#dedede;}

/**************** Top Banner *****************************/

.topBanner {background-position:center;background-size:cover;padding-bottom:28px;}
.topBanner .middleHome {width:70%;margin:auto;text-align:center;color:#fff;}
.topBanner h1 {color:#fff;}


/**************** content *****************************/

/* layout */

.home .middle	{max-width:1640px;}
.middle		{padding: 0 0 32px 0; max-width:1200px;margin:auto;}
.middle.noPad {padding-bottom:0;}
.crumb		{padding: 24px 0 24px 3px;font-size:0.875rem;color:#999999;}
.crumb a    {color:#999999;font-size:0.875rem;}
.crumb a:hover {color:#325678;}
.colourRow	{background: #f0f0f0;}
.center {text-align:center;}
.bgCenter {background-position: center;}

/* general */
a 			{color: #1D1E1E;font-size:1em;}
a:hover	{color: #435c73;}
a img		{border:0;}

h1, h2, h3, h4, h5 {}
h1 		{font-size: 3.375rem;color:#435c73;font-weight:800;font-family: 'Mulish', sans-serif;margin-top:0;}
h2 		{font-size: 2.188rem;color:#1d1e1e;font-weight:400;}
h3 		{font-size: 1.750rem;color:#435c73;font-weight:400;margin:20px 0}
h4 		{font-size: 1.500rem;color:#435c73;font-weight:600;}
h5 		{font-size: 1.500rem;color:#ffffff;font-weight:400;margin-top: 30px;margin-bottom: 8px;}

.home h1 {margin-top:36px;}
.home h3 {font-size:1.750rem;}
.home h3 a {color:#435c73;text-decoration:none;}

.introText {font-size:1.125rem;}

p, ul, li		{margin-top:0;}
.formRequired	{color:#cc0000;font-size:0.625rem;}

.linkButton,
.dataForm .button {
	display: inline-block;
	padding: 9px 24px;
	background-color: #99BAD6;
	border: 2px solid #99BAD6;
	color: #1D1E1E;
	text-decoration: none;
	text-align: center;
	font-size: 1.125rem;
	transition: ease 0.3s;
	min-width: 205px;
}
.linkButton:hover,
.dataForm .button {
	background-color: #ffffff;
	color:#1D1E1E;
}

.topBanner .linkButton {background-color: #8e2836;}
.topBanner .linkButton:hover {background-color: #fff;color:#e3b43a;}

.dataForm input[type=text],
.dataForm select {
    padding:8px;
}



/**************** home *****************************/

@media (max-width:660px){.highlightBox {width:100%;}}
@media (max-width:560px) {.highlightBox h2 span {display:block;}.supportRow {padding-top:35px;padding-bottom:30px;background-size:cover;}}

.highlightBox {text-align:center;}

.highlightBox a img {
    transform: scale(1);
    transition: all 0.3s ease-in-out;
	padding-top: 3px;
}
.highlightBox a img:hover {transform: scale(1.05);}

/***** Half Images *****/


@media (min-width:801px){
	.halfContent {display:flex;justify-content:center;}
	.halfImageLeft > div {width:50%;}
	.halfImageRight > div {width:50%;}
	.halfContent .wobject, 
	.halfContent .wobjectArticle {
		height:100%;
	}
	.halfImage {
		height:100%;
		background-position:top center;
		background-repeat: no-repeat;
		background-size:cover;
	}
	.halfText .wobjectArticle {max-width:817px;}
	.halfText.htLeft .wobjectArticle {float:right;padding:0 56px 26px 0;}
	.halfText.htRight .wobjectArticle {float:left;padding:30px 0 30px 56px;}
}
@media (max-width:1672px){
	.halfText.htLeft .wobjectArticle {padding-left:16px;}
	.halfText.htRight .wobjectArticle {padding-right:16px;}
}
@media (max-width:1671px){
	.halfText.htLeft .wobjectArticle {padding-right:16px;}
	.halfText.htRight .wobjectArticle {padding-left:16px;}
}
@media (max-width:800px){
	.halfContent {display:flex;flex-wrap:wrap}
	.halfImageLeft > div:first-child {width:100%;order:1}
	.halfImageLeft > div:last-child {width:100%;order:2;padding-bottom:30px;}
	.halfImageRight > div:first-child {width:100%;order:2;padding-bottom:30px;}
	.halfImageRight > div:last-child {width:100%;order:1;}

	.halfText {padding:30px 0}
	.halfImage {
		height:260px;
		background-position:center center;
		background-repeat: no-repeat;
		background-size:cover;
	}
}


/**************** CTA Row ****************/

.ctaRow {min-height:480px;position: relative;}
.ctaRow .middle {
  bottom: 104px;
  left: calc(50% - 600px);
  text-align: center;
  position: absolute;
}
.home .ctaRow .middle {left: calc(50% - 820px);}

.ctaRow h2 {font-size:3.125rem;color:#ffffff;}
.ctaRow .linkButton {font-size:1.500rem;padding: 14px 24px;min-width: 305px;}

@media (min-width:1641px) {
	.home .ctaRow .middle {width: 1640px;}
}
@media (max-width:1640px) {
	.home .ctaRow .middle {width: 100%;left: unset;}
}

@media (min-width:1201px) {
	.ctaRow .middle {width: 1200px;}
}
@media (max-width:1200px) {
	.ctaRow .middle {width: 100%;left: unset;}
}

/******/

/**************** Image Before Link on Hover ****************/

a.hoverArrow {text-decoration: none;color: #435c73;font-size:1.750rem;transition:all ease 0.3s;}
a.hoverArrow:before {
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	transition: width 0.3s, height 0.3s, margin 1s;
	background-image: url('blue-service-arrow.png');
	background-size: contain;
	background-repeat: no-repeat;
}

@media (min-width:641px) {
	a.hoverArrow:hover {text-decoration: underline;}
	a.hoverArrow:hover:before {
		width: 20px; /* Adjust to the desired width */
		height: 11px; /* Adjust to the desired height */
		position: relative;
		bottom: 3px;
		margin-right: 16px;
	}
}
@media (max-width:640px) {
	a.hoverArrow {text-decoration: underline;}
	a.hoverArrow:before {
	width: 20px; /* Adjust to the desired width */
	height: 11px; /* Adjust to the desired height */
	position: relative;
	bottom: 3px;
	margin-right: 16px;
	}
}

/****** Project Blog - Top Level ******/

a.noUnderline {text-decoration: none;}

.projectHeading {
	display: flex;
	justify-content: space-between;
	padding-top: 24px;
}
a .projectHeading h2 {
	margin-top:0;
	width: 100%;
	text-decoration:none;
	}

a:hover .projectHeading h2 {color:#1D1E1E;text-decoration:underline;}
.projectHeading h2 img {
	float: right;
	top: 19px;
	position: relative;
	transition: margin ease 1s;
}
a:hover .projectHeading h2 img {
	margin-right: 16px;
}

.submissionInList {border-bottom:2px solid #435C73;padding-bottom: 30px;margin-bottom: 55px;}
.submissionInList .mainImg {margin: 0;}

/****** Project Blog - Detail ******/

.projectContainer {float: left;margin-bottom: 24px;}

.projectImages {
	display: grid;
	grid-template-columns: repeat(2, 1fr); /* Two equal columns */
	grid-gap: 10px; /* Optional: Add some spacing between images */
}

.projectImages img {
	width: 100%; /* Make sure images take up the full width of their container */
	cursor: pointer;
}

/********** Contact Form Rework ******************/

.dataForm input[type="text"], .dataForm textarea {
  padding: 10px 6px;
  border-radius: 6px;
  border: 1px solid #bbbcbd;
  -webkit-appearance: none;
}

.dataForm .button {
  display: inline-block;
  padding: 10px 24px;
  background: #99BAD6;
  border: 2px solid #99BAD6;
  color: #1D1E1E;
  text-decoration: none;
  font-size: 0.750rem;
  transition: ease 0.3s;
  min-width: 125px;
}

.dataForm .button:hover {
  background: #ffffff;
  color: #1D1E1E;
}

/****** Panel Specific ******/

#rowContainer127 {}
#rowContainer127 .linkButton {margin-top: 32px;margin-bottom: 24px;}

#rowContainer128 .linkButton_Cont {margin: 32px 0 16px;}