* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
a {
  color: #004862;
}
a:hover {
  color: #00232f;
}
:root {
  --primaryColor: #004862;
  --highlightColor: #57ae8a;
  --bs-link-color: #15528D;
  --bs-primary-rgb: 21, 82, 141;
  --swiper-pagination-color: #57ae8a;
  --swiper-navigation-color: #57ae8a;
}
.flxSection .flxGrid:last-child {
  margin-bottom: 0 !important;
}
#introVideoContainer {
  text-align: center;
}
#introVideoContainer video {
  width: 80%;
  margin: auto;
  box-shadow: 0px 0px 25px rgba(0, 0, 0, 0.3);
}
@media (min-width: 767px) {
  #introVideoContainer video {
    /*margin-top: -30px;
			margin-bottom: -80px;*/
    width: auto;
    height: 400px;
  }
}
.bylineContainer {
  position: absolute;
  left: 150px;
  top: 50%;
  translate: 0 -54%;
}
.bylineContainer #byline {
  width: 100%;
  display: block;
  font-size: 18px !important;
  font-weight: 300;
  text-align: center;
}
@media (max-width: 767px) {
  .bylineContainer #byline {
    font-size: 15px !important;
  }
}
.nav-pills {
  --bs-nav-pills-link-active-bg: #15528D;
  --bs-nav-pills-border-radius: 100px;
}
.progress-bar {
  --bs-progress-bar-bg: green;
}
/*.alert-danger {
	--bs-alert-color: #fff;
	--bs-alert-bg: #DD1C1A;
	--bs-alert-border-color: #DD1C1A;
	a {
		color: #fff;
	}
}*/
/*.alert-warning {
	--bs-alert-color: var(--bs-warning-text-emphasis);
	--bs-alert-bg: #F0C808;
	--bs-alert-border-color: #F0C808;
	--bs-alert-link-color: var(--bs-warning-text-emphasis);
}*/
.scoreGraph.score0 .scoreGraphBar {
  background-color: #bbb;
}
.scoreGraph.score1 .scoreGraphBar {
  background-color: red;
}
.scoreGraph.score2 .scoreGraphBar {
  background-color: orange;
}
.scoreGraph.score3 .scoreGraphBar {
  background-color: #666;
}
.scoreGraph.score4 .scoreGraphBar {
  background-color: #10ba10;
}
.scoreGraph.score5 .scoreGraphBar {
  background-color: green;
}
.scoreGraphBar {
  padding: 2px 5px;
  border-radius: 3px;
  color: #fff;
  font-size: 0.8em;
}
#flxPageLoadMessage .inner {
  padding: 2rem;
  padding-left: 3rem;
}
#flxPageLoadMessage .inner.error {
  background-image: none;
}
#flxPageLoadMessage .inner.error:before {
  position: absolute;
  color: #fff;
  left: 1rem;
  font-family: 'Font Awesome 5 Pro';
  font-size: 1.2em;
  content: "\f071";
  font-weight: 200;
  /* <-- add this or 400 for other styles */
  display: block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}
#preHeader {
  background-color: #004862;
}
#preHeader .inner {
  padding: 0 20px;
}
#preHeader .inner > ul {
  max-width: 1180px;
  padding: 0;
  margin: auto;
}
#preHeader .inner > ul li {
  float: left;
  list-style: none;
}
#preHeader .inner > ul li a {
  display: block;
  padding: 10px 20px;
  color: #fff;
  border-right: 1px solid rgba(255, 255, 255, 0.14);
  text-decoration: none;
}
#preHeader .inner > ul li a.active {
  background-color: #fff;
  color: #004862;
}
#preHeader .inner > ul::after {
  content: "";
  clear: both;
  display: table;
}
#preHeader .inner {
  max-width: 1180px;
  margin: auto;
  position: relative;
}
#preHeader .inner .loginContainer {
  position: absolute;
  right: 20px;
  top: 50%;
  translate: 0 -50%;
  color: #fff;
}
#preHeader .inner .loginContainer a {
  color: #fff;
  text-decoration: none;
}
#preHeader .inner .loginContainer a:hover {
  text-decoration: underline;
}
/*************************************************************/
/* MISC. */
/*************************************************************/
html,
body {
  background: #f9f9f9;
  font-family: 'IBM Plex Sans', sans-serif;
  font-size: 15px;
  width: 100%;
  color: #333;
  min-height: 100vh;
}
body {
  position: relative;
}
@media (max-width: 767px) {
  html {
    /*font-size: 12px;*/
  }
}
#pagecontainer {
  min-height: 100vh;
  position: relative;
}
#pagecontainer::after {
  content: '';
  display: block;
  height: 120px;
  /* Set same as footer's height */
}
.footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 120px;
}
p,
.flxElement p {
  line-height: 1.5em;
}
h1,
.elementNormal1 h1,
.elementNormal2 h1,
.elementNormal3 h1,
.elementBox1 h1,
.elementBox2 h1,
.elementBox3 h1 {
  font-family: 'IBM Plex Serif', serif;
  font-size: 42px;
  font-weight: 300;
  color: #333;
  line-height: 1.1em;
  margin-bottom: 15px;
}
h2,
.elementNormal1 h2,
.elementNormal2 h2,
.elementNormal3 h2,
.elementBox1 h2,
.elementBox2 h2,
.elementBox3 h2 {
  font-family: 'IBM Plex Serif', serif;
  font-size: 2rem;
  margin-bottom: 0.4em;
  line-height: 1.1em;
  font-weight: 600;
  color: #004862;
}
h2 span,
.elementNormal1 h2 span,
.elementNormal2 h2 span,
.elementNormal3 h2 span,
.elementBox1 h2 span,
.elementBox2 h2 span,
.elementBox3 h2 span {
  font-weight: 200;
}
h3,
.elementNormal1 h3,
.elementNormal2 h3,
.elementNormal3 h3,
.elementBox1 h3,
.elementBox2 h3,
.elementBox3 h3 {
  font-family: 'IBM Plex Serif', serif;
  font-size: 18px;
  font-weight: 600;
  color: #555;
  margin: 25px 0 15px 0;
}
.flxElement .ImgCenter + h2 {
  margin-top: 0.5em;
}
.elementNormal1 h4,
.elementNormal2 h4,
.elementNormal3 h4,
.elementBox1 h4,
.elementBox2 h4,
.elementBox3 h4 {
  font-family: 'IBM Plex Serif', serif;
  font-size: 18px;
  line-height: 1.3em;
  font-weight: 300;
  color: #888;
}
.elementNormal2 > h1,
.elementNormal2 > h2 {
  font-size: 18px;
}
.red {
  color: #57ae8a;
}
.flxElement ul {
  margin: 1.2em 0;
  padding-left: 2em;
}
.flxElement ul li {
  margin-bottom: 5px;
  /*font-weight: 300;*/
  list-style: disc;
}
.flxElement ul li > ul {
  margin: 0.6em 0;
}
.flxElement ul li > ul > li {
  list-style: circle;
}
.flxElement ul.checklist li {
  list-style: none;
  list-style-type: none;
  position: relative;
  font-family: 'IBM Plex Serif', serif;
  padding: 0;
  font-weight: 300;
  line-height: 1.2em;
  margin-bottom: 0.5em;
}
.flxElement ul.checklist li:before {
  position: absolute;
  color: #6CAC21;
  left: -30px;
  font-family: 'Font Awesome 5 Pro';
  font-size: 1.2em;
  content: "\f00c";
  font-weight: 200;
  /* <-- add this or 400 for other styles */
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
}
.flxElement ul.checklist.inline {
  padding-left: 0em;
  overflow: auto;
  zoom: 1;
}
.flxElement ul.checklist.inline li {
  float: left;
  margin-left: 2.2em;
  margin-right: 0.4em;
}
.flxElement ul.checklist.small li {
  font-size: 14px;
}
* {
  outline: none;
}
#formSent {
  position: fixed;
  z-index: 9999;
  top: 30px;
  background: #000;
  padding: 20px;
  color: #fff;
}
.ImgFloatRight {
  max-width: 40vw;
}
.ImgFloatLeft {
  max-width: 40vw;
  margin-right: 30px;
}
hr,
.hline {
  margin: 40px 0;
  border: none;
  border-top: 1px solid #e9e9e9;
  overflow: hidden;
  height: 1px;
}
/*************************************************************/
/* SITE WIDTH */
/*************************************************************/
#mainarea #canvasMenuContainer {
  max-width: 1140px;
}
#mainarea .flxSection {
  /*padding: 20px;*/
}
#mainarea .flxSection .flxSectionInner {
  margin: auto;
  max-width: calc(1140px + 40px);
  background: transparent;
  padding-left: 20px;
  padding-right: 20px;
}
.gridFull {
  padding: 0 15px;
}
.gridFull,
.gridSplitLeft,
.gridSplitRight,
.gridSplitMid,
.gridSplit3 {
  margin-left: -15px !important;
  margin-right: -15px !important;
  width: calc(100% + 30px);
}
.gridSplit3 {
  /*width: calc(100% + 30px);*/
}
/*************************************************************/
/* BUTTONS */
/*************************************************************/
a.flxLinkButtonInline {
  font-family: 'IBM Plex Serif', serif;
  background: transparent;
  font-size: 18px;
  font-weight: 800;
  color: #57ae8a;
  border-radius: 5px;
  margin-bottom: 0.5em;
  /*text-transform: uppercase;*/
  padding: 10px 25px;
  text-decoration: none;
  background-color: #57ae8a;
  color: #fff;
}
a.flxLinkButtonInline:hover {
  background: #4d9f7d;
  outline: 4px solid rgba(87, 174, 138, 0.2);
  color: #fff;
}
a.flxLinkButtonInline.large {
  font-size: 20px;
  padding: 15px 40px;
}
a.flxLinkButtonInline.green {
  background: #67B611;
  color: #fff;
  border-color: #67B611;
}
a.flxLinkButtonInline.green:hover {
  background: #5a9f0f;
}
a.flxLinkButtonInline.grey {
  background: #C2C8C8;
  color: #fff;
  border-color: #C2C8C8;
}
a.flxLinkButtonInline.grey:hover {
  background: #b5bcbc;
  border-color: #b5bcbc;
}
a.flxLinkButtonInline.blue {
  background: #57ae8a;
  color: #fff;
  border-color: #57ae8a;
}
a.flxLinkButtonInline.blue:hover {
  background: #4d9f7d;
  border-color: #4d9f7d;
}
a.flxLinkButton {
  font-family: 'IBM Plex Serif', serif;
  background: #004862;
  text-decoration: none;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 400;
  color: #fff;
  /*text-transform: uppercase;*/
  padding: 10px 25px;
}
a.flxLinkButton:hover {
  background: #002a39;
  color: #fff;
}
a.flxLinkButton.large {
  font-size: 20px;
  padding: 15px 40px;
}
a.flxLinkButton.green {
  background: #67B611;
  color: #fff;
  border-color: #67B611;
}
a.flxLinkButton.green:hover {
  background: #5a9f0f;
}
a.flxLinkButton.grey {
  background: #C2C8C8;
  color: #fff;
  border-color: #C2C8C8;
}
a.flxLinkButton.grey:hover {
  background: #b5bcbc;
  border-color: #b5bcbc;
}
a.flxLinkButton.blue {
  background: #57ae8a;
  color: #fff;
  border-color: #57ae8a;
}
a.flxLinkButton.blue:hover {
  background: #4d9f7d;
  border-color: #4d9f7d;
}
.elementNormal1Link a {
  width: 90%;
  margin: 0 auto;
  font-family: 'IBM Plex Serif', serif;
  background: #004862;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 400;
  color: #fff;
  /*text-transform: uppercase;*/
  padding: 10px 25px;
}
.elementNormal1Link a:hover {
  background: #002a39;
  color: #fff;
}
.sectionDarkBackground .elementNormal1Link a {
  text-decoration: none;
  border: 1px solid #fff;
}
.sectionDarkBackground .elementNormal1Link a:hover {
  background: #fff;
  color: #004862;
}
.small {
  font-size: 0.9em;
}
.light {
  color: #777;
}
.dialogContainer h3:first-child {
  margin-top: 0;
}
.dialogContainer h3:last-child {
  margin-bottom: 0;
}
.dialogContainer p {
  line-height: 1.3em;
}
.dialogContainer p:first-child {
  margin-top: 0;
}
.dialogContainer p:last-child {
  margin-bottom: 0;
}
/*************************************************************/
/* FORMS */
/*************************************************************/
/*input[type=text], input[type=password], input[type=mail], textarea {
	width: 100%;
	padding: 6px 12px;
	border: 1px solid #ccc;
	font-size: 14px;
	font-family: Montserrat, sans-serif;
	font-weight: 400;
	-webkit-appearance: none;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;

	&:focus {
		border-color: #bbb;
		-webkit-box-shadow: 0px 0px 3px rgba(50, 50, 50, 0.25);
		-moz-box-shadow: 0px 0px 3px rgba(50, 50, 50, 0.25);
		box-shadow: 0px 0px 3px rgba(50, 50, 50, 0.25);
	}
}*/
button,
input[type=submit],
#submitknap {
  border: none;
  background: #004862;
  color: #fff;
  padding: 12px;
  font-size: 15px;
  -webkit-border-radius: 50px;
  -moz-border-radius: 50px;
  border-radius: 50px;
  cursor: pointer;
  width: 100%;
  -webkit-appearance: none;
  line-height: 1;
  transition: box-shadow 200ms ease-in-out, background-color 200ms ease-in-out;
}
button span,
input[type=submit] span,
#submitknap span {
  display: block;
  font-size: 13px;
  font-weight: normal;
  line-height: 1;
}
button:hover,
input[type=submit]:hover,
#submitknap:hover {
  background: #002a39;
  box-shadow: 0px 2px 7px -2px rgba(0, 0, 0, 0.3);
}
.contactTable {
  width: 100%;
}
.contactTable td {
  padding: 12px;
}
.formStyle1 .FormElement .FormElementTitle {
  margin-bottom: 4px;
}
.formStyle1 .FormElement .FormElementElement {
  margin-bottom: 8px;
}
label.error {
  font-size: 10px;
  text-transform: uppercase;
  color: #ff2c2e;
}
ul.formList {
  margin: 5px 0;
  padding-left: 1.6em;
  font-size: 0.95em;
}
ul.formList li {
  margin-bottom: 0;
  list-style: none;
  font-weight: 400;
}
ul.formList li:before {
  font-family: 'FontAwesome';
  content: '\f00c';
  float: left;
  margin-left: -1.5em;
  /*margin: 0 5px 0 -15px;*/
  color: #67B611;
}
ul.listTick {
  list-style: none;
}
ul.listTick li {
  margin-bottom: 0.3em !important;
  padding-left: 2em;
}
ul.listTick li:before {
  font-family: 'FontAwesome';
  content: '\f00c';
  margin: 0 5px 0 -1.5em !important;
  color: #666;
}
/*************************************************************/
/* SECTIONS */
/*************************************************************/
#page_1 #flxSection_0 {
  display: none;
}
/*.flxSection {
	!*padding: 50px 0;*!

	.flxSectionInner {
		padding: 0 !important;
	}

}*/
#flxSection_0 {
  /*padding-bottom: 30px;*/
}
.flxSectionType1 {
  background: #fff;
  /*font-size: 13px;
	font-weight: 200;*/
}
.flxSectionType1 p {
  /*font-size: 14px;
		font-weight: 200;*/
}
.flxSectionType1 .flxSectionInner {
  background: transparent !important;
}
.flxSectionType2 {
  background: #f9f9f9;
  background: #fafafa;
  /*ze: 13px;
	font-weight: 200;*/
  /*.flxSectionInner {
		padding: 10px 0px !important;
		background: transparent !important;
	}*/
}
.flxSectionType2 p {
  /*font-size: 14px;
		font-weight: 200;*/
}
.greySection {
  background: #f7f7f7;
  font-size: 15px;
}
.greySection p {
  font-size: 15px;
}
.logosSection {
  padding: 20px 0 0 0;
}
.logosSection .flxSectionInner {
  padding-bottom: 15px !important;
}
.darkgreySection {
  padding: 30px 0;
  background: #57ae8a;
  color: #fff;
  font-size: 15px;
  font-weight: 300;
}
.darkgreySection p {
  font-size: 15px;
  font-weight: 300;
  color: #fff;
}
.darkgreySection h1,
.darkgreySection h2,
.darkgreySection h3,
.darkgreySection h4,
.darkgreySection a {
  color: #fff;
}
.blueSection {
  padding: 60px 0;
  background: #004862;
  color: #fff;
  font-size: 20px;
  font-weight: 300;
}
.blueSection p {
  font-size: 18px;
  font-weight: 300;
  color: #fff;
}
.blueSection h1,
.blueSection h2,
.blueSection h3,
.blueSection h4 {
  font-size: 2.5em;
  margin-bottom: 0.2em;
}
.blueSection h1,
.blueSection h2,
.blueSection h3,
.blueSection h4,
.blueSection a {
  color: #fff;
}
.blueSection hr,
.blueSection .hline {
  border-color: #005b7c;
  margin-bottom: 50px;
}
.imageSection {
  padding: 40px 0;
  background: #57ae8a url("/img/section-bg.jpg") top center no-repeat;
  color: #fff;
  font-size: 15px;
  font-weight: 300;
}
.imageSection p {
  font-size: 17px;
  font-weight: 300;
  color: #fff;
}
.imageSection h1,
.imageSection h2,
.imageSection h3,
.imageSection h4,
.imageSection a {
  color: #fff;
}
.imageSection h2 {
  font-size: 34px;
  margin-bottom: 0.1em;
}
.imageSection p:first-of-type {
  margin-top: 0;
}
.imageSection .flxSectionInner {
  background: transparent !important;
}
.imageSection .flxLinkButtonInline {
  margin-top: 15px;
  background: transparent;
  border: 1px solid #fff;
  font-size: 17px;
}
.imageSection .flxLinkButtonInline:hover {
  background: rbga(255, 255, 255, 0.2) !important;
}
.nopaddingSection {
  padding: 0;
}
.nopaddingSection .flxSectionInner {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}
.nopaddingSection .flxSectionInner .gridFull,
.nopaddingSection .flxSectionInner .flxGrid {
  padding: 0;
}
/*************************************************************/
/* CONTAINERS */
/*************************************************************/
#pagecontainer {
  background: #f7f7f7;
  background: #fff;
  position: relative;
  left: 0;
  z-index: 1;
  -webkit-transition: left 250ms ease;
  -moz-transition: left 250ms ease;
  -ms-transition: left 250ms ease;
  -o-transition: left 250ms ease;
  transition: left 250ms ease;
}
#topImage {
  width: 100%;
  height: auto;
  margin: 0 0 30px 0;
  max-height: 100px;
  background: #004862;
  text-align: center;
}
#topImage img {
  display: inline-block;
  position: relative;
  vertical-align: bottom;
  max-width: 100%;
  height: auto;
  max-height: 100px;
  margin: -26px auto 0 auto;
  z-index: 100;
}
.flxSectionImage {
  /*margin-bottom: 30px;
	height: 100px;
	background-image: url('/img/topimage.jpg');
	background-position: 50% -55px;
	background-repeat: no-repeat;
	background-color: @primaryColor;*/
}
@media (max-width: 800px) {
  .responsiveTableContainer {
    position: relative;
  }
  .responsiveTableContainer:before {
    position: absolute;
    top: 1.5rem;
    left: 0;
    font-family: 'Font Awesome 5 Pro';
    font-size: 1.2em;
    content: "\f07e";
    font-weight: 200;
    /* <-- add this or 400 for other styles */
    display: block;
    color: #6CAC21;
    z-index: 100000;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
  }
}
#PageHeader {
  position: relative;
  /*background: #7b736e;*/
  /*background: @primaryColor;
	background: rgba(0, 174, 239, 0.7);*/
  margin: 0;
  padding: 10px 20px;
  box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.05);
  /*background: rgb(240, 240, 240);*/
  /*background: linear-gradient(0deg, rgba(240, 240, 240, 1) 0%, rgba(255, 255, 255, 1) 100%);*/
  z-index: 1000;
}
#PageHeader .breadcrumb {
  display: none;
}
#PageHeader #PageTitle {
  margin: auto;
  max-width: 1140px;
  padding: 0.6rem 0;
}
#PageHeader #PageTitle h1 {
  /*margin: 0 0 .2em 0 !important;*/
  font-family: 'IBM Plex Serif', serif;
  font-size: 2rem;
  font-weight: 600;
  color: #004862;
}
#PageHeader #PageTitle p {
  color: #7b736e;
  color: #333;
  margin: 0.2em 0 0 0;
  font-family: 'IBM Plex Serif', serif;
  font-size: 15px;
  font-weight: 200;
  line-height: 1.2em;
}
#mainarea {
  /*padding-top: 40px;*/
}
#mainarea #canvasContainer {
  margin: 0 auto;
  max-width: 1170px;
  padding-bottom: 30px;
}
#mainarea #canvasContainer #canvas {
  /*-webkit-box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.21);
			-moz-box-shadow:    0px 1px 3px 0px rgba(0, 0, 0, 0.21);
			box-shadow:         0px 1px 3px 0px rgba(0, 0, 0, 0.21);*/
}
#mainarea #canvasMenuContainer {
  padding: 0 15px;
  background: transparent;
  overflow: auto;
  zoom: 1;
}
#mainarea #canvasMenuContainer #canvasMenu {
  margin-bottom: 30px;
  /*border: 1px solid #eee;*/
  /*-webkit-box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.21);
			-moz-box-shadow:    0px 1px 3px 0px rgba(0, 0, 0, 0.21);
			box-shadow:         0px 1px 3px 0px rgba(0, 0, 0, 0.21);*/
}
#mainarea #canvasMenuContainer #canvasMenu .LayoutFull {
  /*margin-top: -80px;*/
}
#mainarea #canvasMenuContainer #canvasMenu .flxSection .flxSectionInner {
  /*padding: 30px 0px;
				margin: 0 auto;*/
  background: transparent;
}
#page_1 #mainarea {
  padding-top: 0;
}
.elementBox1,
.elementBox2,
.elementBox3 {
  padding: 1.5rem;
  /*font-size: 16px;*/
  /* https://smoothshadows.com/#djEsMSw1LDAuMDMsMjQsOSwwLCMwMzA3MTIsI2YzZjRmNiwjZmZmZmZmLDI%3D */
  box-shadow: 0px 0px 1px rgba(3, 7, 18, 0.01), 0px 1px 4px rgba(3, 7, 18, 0.01), 0px 3px 9px rgba(3, 7, 18, 0.02), 0px 6px 15px rgba(3, 7, 18, 0.02), 0px 9px 24px rgba(3, 7, 18, 0.03);
  border-radius: 10px;
}
.elementBox1 h1,
.elementBox2 h1,
.elementBox3 h1,
.elementBox1 h2,
.elementBox2 h2,
.elementBox3 h2,
.elementBox1 h3,
.elementBox2 h3,
.elementBox3 h3,
.elementBox1 h4,
.elementBox2 h4,
.elementBox3 h4,
.elementBox1 h5,
.elementBox2 h5,
.elementBox3 h5,
.elementBox1 h6,
.elementBox2 h6,
.elementBox3 h6 {
  font-size: 1.3rem;
}
.elementBox1 ul,
.elementBox2 ul,
.elementBox3 ul {
  margin-left: 2em;
}
.elementBox1 ul li,
.elementBox2 ul li,
.elementBox3 ul li {
  list-style: disc;
}
.elementBox1 ul:last-child,
.elementBox2 ul:last-child,
.elementBox3 ul:last-child {
  margin-bottom: 0;
}
.elementBox1 p,
.elementBox2 p,
.elementBox3 p {
  font-weight: 400;
}
.elementBox1 .elementBox1Content,
.elementBox2 .elementBox1Content,
.elementBox3 .elementBox1Content,
.elementBox1 .elementBox2Content,
.elementBox2 .elementBox2Content,
.elementBox3 .elementBox2Content,
.elementBox1 .elementBox3Content,
.elementBox2 .elementBox3Content,
.elementBox3 .elementBox3Content {
  /*font-size: 14px;*/
  font-weight: 400;
}
.elementBox1 form,
.elementBox2 form,
.elementBox3 form {
  font-size: 15px;
}
.elementBox1 form input[type=text],
.elementBox2 form input[type=text],
.elementBox3 form input[type=text] {
  /*width: 100% !important;*/
  padding: 7px 10px;
  margin-bottom: 4px;
}
.elementBox1:last-child,
.elementBox2:last-child,
.elementBox3:last-child {
  margin-bottom: 0;
}
.elementBox1 {
  background: #fff;
}
.elementBox2 {
  background: #f5f5f5;
}
.elementBox3 {
  background-color: #fff;
  color: #333;
  padding: 0 0 20px 0;
  position: relative;
  max-width: 360px;
  /*border: 1px solid #f2f2f2;*/
}
.elementBox3 .elementImage {
  z-index: 0;
}
.elementBox3 h2 {
  position: relative;
  z-index: 99;
  display: block;
  padding: 20px 20px 0 20px;
  margin: 0;
  font-family: 'IBM Plex Serif', serif;
  font-size: 36px !important;
  color: #fff;
  background: #57ae8a;
}
.elementBox3 h3 {
  margin: 0;
  padding: 0 20px 20px 20px;
  font-weight: 400;
  font-size: 16px;
  background: #57ae8a;
  color: #fff;
}
.elementBox3 p,
.elementBox3 li {
  color: #333;
}
.elementBox3 a.flxLinkButton {
  background: #67B611;
  margin: 0 20px;
  font-size: 18px;
}
.elementBox3 a.flxLinkButton:hover {
  background: #52910e;
}
.elementBox3 .elementBox3Link {
  position: relative;
  width: 80%;
  margin: -50px auto 0 auto;
  z-index: 99;
}
.elementBox3 .elementBox3Link a {
  background: #57ae8a;
  padding: 25px 0;
  text-transform: uppercase;
  border-bottom: 3px solid #5EA7A6;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
}
.elementBox3 .elementBox3Link a:hover {
  background: #5EA7A6;
  margin: -55px auto 0 auto;
}
/*#page_6 .elementBox3 {
	border: 1px solid #f2f2f2;
}*/
/*************************************************************/
/* TOP */
/*************************************************************/
#top {
  position: relative;
  z-index: 10000;
  height: 80px;
  border: none;
  /*margin-bottom: 40px;*/
  border-bottom: 1px solid #f9f9f9;
  background-color: #fff;
}
#top .inner {
  position: relative;
  max-width: calc(1140px + 40px);
  margin: auto;
  padding: 0 20px;
}
#top .inner {
  position: relative;
  height: 80px;
  text-align: left;
  /* Mobile nav */
}
#top .inner #logo {
  position: absolute;
  display: block;
  z-index: 10000;
  padding: 0;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
  /*left: 0;
			top: 0;*/
  margin: 0;
}
#top .inner #logo .areaName {
  display: block;
  float: left;
  font-size: 30px;
  line-height: 27.5px;
  height: 27.5px;
  margin-left: 10px;
}
#top .inner #logo img {
  float: left;
  max-height: 100%;
  width: 250px;
  max-width: 100%;
  -webkit-transition: all 200ms ease;
  -moz-transition: all 200ms ease;
  -ms-transition: all 200ms ease;
  -o-transition: all 200ms ease;
  transition: all 200ms ease;
  /*position: relative;
				z-index: 1000;*/
}
#top .inner .slicknav_menuline {
  display: none;
}
#top .inner #mobilemenu {
  position: absolute;
  left: 0;
  right: 0;
  display: none;
  /*margin-top: 15px;*/
  /*width: 100%;*/
  height: 90px;
  margin-left: 0px;
  float: none;
  z-index: 10001;
  padding: 0 20px;
}
#top .inner #mobilemenu .slicknav_nav {
  position: absolute;
  width: 100%;
  left: 0;
  z-index: 20001;
  -webkit-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.1);
}
#top .inner #menuline {
  float: right;
  height: 80px;
  overflow: hidden;
}
#top .inner #menuline li {
  float: left;
  position: relative;
  display: block;
  z-index: 2000;
  height: 80px;
  line-height: 80px;
  transition: border-color 300ms ease-in-out;
  /*&:hover {
					border-color: #d9d9d9;
				}*/
}
#top .inner #menuline li a {
  z-index: 9999;
  display: inline-block;
  height: 80px;
  text-decoration: none;
  color: #777;
  font-family: 'IBM Plex Serif', serif;
  font-size: 13px;
  line-height: 80px;
  text-transform: uppercase;
  padding: 0 0px;
  font-weight: 500;
  margin: 0;
  margin: 0 1em;
  float: none;
}
#top .inner #menuline li a.active {
  font-weight: 600;
  color: #004862;
}
#top .inner #menuline li a:hover {
  color: #004862;
}
#top .inner #menuline li:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 3px;
  bottom: 0;
  left: 0;
  background-color: #004862;
  visibility: hidden;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: all 0.5s cubic-bezier(1, 0.25, 0, 0.75);
  transition: all 0.5s cubic-bezier(1, 0.25, 0, 0.75);
}
#top .inner #menuline li:hover:before {
  visibility: visible;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
#top .inner #menuline li.active {
  /*background: url("/img/menu-active-bg.png") top center no-repeat;*/
  color: #004862;
  border-color: #004862;
}
#top .inner #menuline li.active:before {
  background-color: #146A86;
  visibility: visible;
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}
#top .inner #menuline #mi_1 a {
  display: none;
  font-size: 20px;
}
#top .inner #mi_5 a {
  background-color: #6cad20;
  border-radius: 30px;
  line-height: 1em !important;
  padding: 10px !important;
  color: #fff !important;
}
#siteOverlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.35);
  z-index: 999998;
}
#siteOverlay.visible {
  display: block;
}
#mobileSidebarTrigger {
  display: none;
  color: #000;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  padding: 5px;
  width: 32px;
  border: 1px solid #e0e0e0;
  text-align: center;
  line-height: 22px;
  vertical-align: top;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}
@media (max-width: 767px) {
  #pagecontainer {
    padding-top: 60px;
  }
  #preHeader {
    display: none;
  }
  #top {
    position: fixed;
    top: 0;
    width: 100%;
    height: 70px;
    border-bottom: none;
    box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.3);
  }
  #top .inner {
    height: 100%;
  }
  #top .inner #logo {
    /*max-width: calc(100% - 60px);
				img {
					width: 140px !important;
				}*/
  }
  #top #mobileSidebarTrigger {
    display: block;
  }
  #top #menuline {
    display: none;
  }
  body.menuOpen #mobileSidebar {
    display: block;
    right: 0;
  }
  body.menuOpen #siteOverlay {
    display: block;
  }
}
#closeSidebar {
  color: #fff;
  float: right;
  font-size: 1.2em;
  line-height: 1em;
  vertical-align: top;
  display: inline-block;
}
.flxPageLoadMessage {
  max-width: 90%;
}
#loginlink {
  position: absolute;
  top: 50%;
  right: 20px;
  translate: 0 -50%;
}
#mobileSidebar {
  position: fixed;
  top: 0;
  right: -280px;
  bottom: 0;
  width: 280px;
  background: #004862;
  color: #fff;
  z-index: 999999;
  -webkit-transition: right 250ms ease;
  -moz-transition: right 250ms ease;
  -ms-transition: right 250ms ease;
  -o-transition: right 250ms ease;
  transition: right 250ms ease;
}
#mobileSidebar .top {
  padding: 10px 15px;
}
#mobileSidebar a {
  color: #fff;
  text-decoration: none;
}
#mobileSidebar #mobileNav {
  list-style: none;
  padding: 0.5rem;
  margin: 0;
}
#mobileSidebar #mobileNav > li > a {
  font-family: 'IBM Plex Serif', serif;
  color: #fff;
  display: block;
  padding: 0.5rem 1rem;
  border-radius: 30px;
  text-transform: uppercase;
  font-size: 1.2rem;
  font-weight: 500;
  border-bottom: 1px solid #003d53;
  text-decoration: none;
}
#mobileSidebar #mobileNav > li > a.active {
  background-color: #57ae8a;
  border-bottom: 1px solid #50a682;
}
#mobileSidebar #mobileNav > li ul {
  padding: 0.5rem;
}
#mobileSidebar #mobileNav > li ul > li > a {
  display: block;
  padding: 0.4rem 1rem;
  margin: 0.3rem 0;
  border-radius: 30px;
}
#mobileSidebar #mobileNav > li ul > li > a:active,
#mobileSidebar #mobileNav > li ul > li > a:hover,
#mobileSidebar #mobileNav > li ul > li > a.active {
  background-color: #57ae8a;
  border-bottom: 1px solid #50a682;
}
#mobileSidebar .changeArea {
  padding: 20px 20px 0px 20px;
  position: absolute;
  bottom: 0;
}
#mobileSidebar .changeArea > div {
  font-size: 0.8em;
}
#mobileSidebar .changeArea ul {
  padding: 10px 0;
}
#mobileSidebar .changeArea ul a {
  color: #fff;
  display: block;
  padding: 0.5em 0;
}
#mobileSidebar .changeArea ul a.active {
  font-weight: bold;
}
/*************************************************************/
/* GALLERY */
/*************************************************************/
.gallery .type2 .imageContainer {
  display: inline-block;
  width: 25% !important;
  height: auto !important;
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}
.gallery .type2 .imageContainer:before {
  content: "";
  display: block;
  padding-top: 68%;
}
.gallery .type2 .imageContainer .image {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  padding: 0 10px;
}
.gallery .type2 .imageContainer .image table td {
  height: auto !important;
  border: 1px solid #eee;
}
.gallery .type2 .imageContainer .descriptionContainer {
  display: none;
  width: 100%;
  position: absolute;
  padding: 0 10px;
  bottom: 0px;
}
.gallery .type2 .imageContainer .descriptionContainer .title {
  width: 100%;
  color: #fff;
  background: #57ae8a;
  padding: 8px;
  text-align: center;
  margin-bottom: -50px;
  -webkit-transition: all 300ms ease;
  -moz-transition: all 300ms ease;
  -ms-transition: all 300ms ease;
  -o-transition: all 300ms ease;
  transition: all 300ms ease;
}
.gallery .type2 .imageContainer:hover .descriptionContainer {
  display: block;
}
.gallery .type2 .imageContainer:hover .descriptionContainer .title {
  margin-bottom: 0;
}
#page_1 .fancybox-skin {
  padding: 0 !important;
}
@media (max-width: 767px) {
  .flxElement h2 {
    font-size: 1.6rem;
  }
}
.flxElement h1,
.flxElement h2,
.flxElement h3,
.flxElement h4,
.flxElement h5,
.flxElement h6 {
  color: #004862;
}
.flxElement .elementIconContainer {
  padding: 0.2em;
  margin: 0.3em;
  color: #b0b0b0;
  transition: color 300ms ease-in-out;
  position: relative;
}
.flxElement .elementIconContainer [class^='fa'] {
  font-size: 40px;
}
.flxElement .elementIconContainer:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  bottom: -3px;
  left: 0;
  background-color: #c0c0c0;
  visibility: hidden;
  -webkit-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: all 0.5s cubic-bezier(1, 0.25, 0, 0.75);
  transition: all 0.5s cubic-bezier(1, 0.25, 0, 0.75);
}
.flxElement:hover .elementIconContainer:before {
  visibility: visible;
  background-color: #146a86;
  -webkit-transform: scaleX(0.3);
  transform: scaleX(0.3);
}
.flxElement:hover .elementIconContainer {
  color: #146a86;
}
.flxElement .flxElementCollapsibleButton:hover {
  background-color: #004862;
  color: #fff;
}
.formtable {
  border-collapse: collapse;
  width: 100%;
}
.formtable th,
.formtable td {
  padding: 5px;
}
.formtable th:first-child,
.formtable td:first-child {
  padding-left: 0;
}
.buttonline {
  padding: 0 !important;
  list-style: none;
}
.buttonline::after {
  content: "";
  clear: both;
  display: table;
}
.buttonline li {
  float: left;
  margin: 0;
  padding: 0 !important;
  list-style: none !important;
}
.buttonline li a {
  text-decoration: none;
  display: inline-block;
  padding: 7.5px 15px;
  background-color: #e9e9e9;
  border-radius: 20px;
  margin-right: 0.4em;
  margin-bottom: 0.4em;
}
.buttonline li a:hover {
  background-color: #004862;
  color: #fff;
}
.buttonline li a.active {
  background-color: #004862;
  color: #fff;
}
/*************************************************************/
/* MULTIELEMENT */
/*************************************************************/
.flxMultiElement {
  /*margin-bottom: 70px;*/
}
.flxMultiElement .swiper {
  /*padding: 2rem;*/
  padding: 15px;
}
.flxMultiElement .sliderTabLine {
  margin-bottom: 36px;
}
.flxMultiElement .sliderTabLine .inner .tabItem.active {
  background: #57ae8a;
  color: #fff;
}
.flxMultiElement .bx-wrapper .bx-pager.bx-default-pager a {
  border-color: #57ae8a;
}
.flxMultiElement .bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #57ae8a;
  border-color: #57ae8a;
}
.primaryColorSection {
  background-color: #004862;
}
.primaryColorSection * {
  color: #fff !important;
}
.flxTextSmaller {
  line-height: 1.3em;
}
.flxSectionType1.imageSection .bx-wrapper .bx-pager.bx-default-pager a {
  border-color: #fff;
}
.flxSectionType1.imageSection .bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #fff;
  border-color: #fff;
}
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.listtable {
  width: 100%;
}
.listtable td.stickyLeft,
.listtable th.stickyLeft {
  background-color: #fff;
}
.listtable tr.small th {
  font-size: 0.7em;
}
.listtable th {
  text-transform: uppercase;
  font-size: 0.8em;
}
.listtable th.header {
  padding-top: 20px;
  color: #004862;
  font-size: 1.2em;
}
.listtable .nobr {
  white-space: nowrap;
}
.listtable th,
.listtable td {
  padding: 5px;
}
.listtable th:first-child,
.listtable td:first-child {
  padding-left: 0;
}
.listtable tbody td {
  border-bottom: 1px solid #f5f5f5;
}
.listtable.hover tr:hover td {
  background-color: #fafafa;
}
.listtable tr:last-child td {
  border-bottom: none;
}
.nopad {
  margin: 0 -1.5rem !important;
}
.nopad .listtable th:first-child,
.nopad .listtable td:first-child {
  padding-left: 1.5rem;
}
.nopad .listtable th:last-child,
.nopad .listtable td:last-child {
  padding-right: 1.5rem;
}
/*************************************************************/
/* FOOTER */
/*************************************************************/
.footer {
  background: #004862;
  width: 100%;
}
.footer * {
  color: #fff;
}
.footer .inner {
  position: relative;
  height: 100%;
}
.footer .inner #bottombar {
  font-size: 0.7rem;
  padding: 20px;
  font-weight: 300;
  /*text-align: center;*/
}
.footer .inner #bottombar .fa {
  color: #bbb;
}
.footer .inner #bottombar a,
.footer .inner #bottombar p,
.footer .inner #bottombar span {
  color: #fff;
}
.footer .inner #bottombar .elementNormal1Content {
  color: #fff;
}
.footer .inner #bottombar .elementNormal1Content p {
  color: #fff;
}
.flxTableBasic {
  width: 100%;
}
.flxTableBasic th,
.flxTableBasic td {
  padding: 0.5em 1em;
  border-bottom: 1px solid #e9e9e9;
}
.flxTableBasic th:first-child,
.flxTableBasic td:first-child {
  padding-left: 0;
}
.flxTableBasic th {
  color: #888;
  font-weight: 200;
}
.flxTextLarger,
p.flxTextLarger {
  font-size: 130%;
}
/*# sourceMappingURL=styles.css.map */