/*
	Colors and other TS constants are set in: overrides.css
*/

ul {
    list-style: none;
}

fieldset,
img {
    border: none;
	max-width: 100%;
	height: auto;
}

caption,
th {
    text-align: left;
}

table {
    border-spacing: 0;
}

iframe {
    border: none;
}


body {
    font-weight: 400;
    -webkit-font-smoothing: antialiased;
    color: var(--textColor);
    background-color: var(--bodyBgColor);
}
header {
	position: relative;
}
section {
    box-sizing: border-box;
    padding-top: 5.25rem;
    padding-bottom: 5.25rem;
    width: 100%;
    position: relative;
    display: flex;
    height: auto;
}
section.fullheight {
	min-height: 100vh;
	min-height: calc(var(--csvh, 1vh) * 100);
}
h1 {
	color: var(--mainColor);
}
b,
strong {
    font-weight: 700;
}

a,
a:visited {
    text-decoration: underline;
    color: var(--accentColor);
}

a:hover {
    text-decoration: none;
}

ul {
    list-style: disc;
}

hr {
    border: none;
    background-color: #ddd;
    color: #ddd;
    margin-top: 1em;
    margin-bottom: 1em;
    line-height: 1em;
    padding: 0;
    height: 1px;
}

table {
    width: 100%;
    font-size: .9em;
}

th {
    font-weight: bold;
}

th,
td {
    border-bottom: 1px solid #ddd;
    border-right: 1px solid #ddd;
    padding: .2em;
    padding-left: .6em;
    padding-right: .6em;
}

th:last-child,
td:last-child {
    border-right: none;
    padding-right: 0;
}

tbody tr:last-child th,
tbody tr:last-child td {
    border-bottom: none;
    padding-bottom: 0;
}

.clear {
    clear: both;
}

.btn,
.btn:visited {
    background-color: var(--accentColor);
    font-size: .86em;
    text-align: center;
    display: inline-block;
    color: #fff;
    padding: .6em 1.7em;
    margin-top: 1em;
    margin-bottom: 1em;
    transition: color .4s, font-size .4s;
    border: 2px solid;
    border-color: var(--accentColor);
    border-radius: 3px;
}

.btn:hover,
.btn:visited:hover,
button.btn:disabled {
    text-decoration: none;
    background-color: transparent;
    cursor: pointer;
    color: var(--accentColor);
    border-color: var(--accentColor);
}

.align-center .btn {
    margin-left: .2em;
    margin-right: .2em;
}

.align-right .btn {
    margin-left: .4em;
    margin-right: 0;
}

.container {
	position: relative;
}

.content {
    margin: auto;
    /*position: relative;*/
    z-index: 1;
}


#footer-navigation {
	list-style: none;
	padding-left: 0;
	text-align: right;
}
#footer-navigation li {
	display: inline-block;
}
#footer-navigation li a {
	padding: 0px 5px;
	border-right: 1px solid;
	color: var(--textColor);
	font-size: 18px;
	line-height: 22px;
	text-decoration: none;
}
#footer-navigation li:last-child a {
	border-right: none;
}
#footer-navigation li a:hover {
	text-decoration: underline;
}
#content,
#footer {
    margin: auto;
}

#logo {
    position: absolute;
    top: 1.75rem;
    left: 0rem;
    z-index: 98;
    overflow: hidden;
    transition: all .4s ease-in-out;
    max-width: 270px;
}

#logo svg {
    height: 1.25rem;
    width: auto;
    transition: height .4s;
}

.has-lightbox #logo {
    display: none;
}

/* ext:fluid_styled_content */
.align-right {
    text-align: right;
}

.align-center {
    text-align: center;
}

.frame-space-before-10 { padding-top: 10px !important;}
.frame-space-before-15 { padding-top: 15px !important;}
.frame-space-before-20 { padding-top: 20px !important; padding-top: 1.25rem !important}
.frame-space-before-25 {padding-top: 25px !important;  padding-top: 1.5625rem !important;}
.frame-space-before-30 {padding-top: 30px !important;  padding-top: 1.875rem !important;}
.frame-space-before-40 { padding-top: 40px !important;  padding-top: 2.5rem !important;}
.frame-space-before-45 { padding-top: 45px !important;  padding-top: 2.8125rem !important;}
.frame-space-before-50 {padding-top: 50px !important;  padding-top: 3.125rem !important;}
.frame-space-before-60 {padding-top: 60px !important;  padding-top: 3.75rem !important;}
.frame-space-before-70 {padding-top: 70px !important;  padding-top: 4.375rem !important;}
.frame-space-before-80 {padding-top: 80px !important;  padding-top: 5rem !important;}
.frame-space-before-90 {padding-top: 90px !important; padding-top: 5.625rem !important;}

.frame-space-after-10 {padding-bottom: 10px !important;}
.frame-space-after-15 {padding-bottom: 15px !important;}
.frame-space-after-20 {padding-bottom: 20px !important;  padding-bottom: 1.25rem !important}
.frame-space-after-25 {padding-bottom: 25px !important;  padding-bottom: 1.5625rem !important;}
.frame-space-after-30 {padding-bottom: 30px !important;  padding-bottom: 1.875rem !important;}
.frame-space-after-35 {padding-bottom: 35px !important;  padding-bottom: 2.1875rem !important;}
.frame-space-after-40 {padding-bottom: 40px !important;  padding-bottom: 2.5rem !important;}
.frame-space-after-45 {padding-bottom: 45px !important;  padding-bottom: 2.8125rem !important;}
.frame-space-after-50 {padding-bottom: 50px !important;  padding-bottom: 3.125rem !important;}
.frame-space-after-60 {padding-bottom: 60px !important;  padding-bottom: 3.75rem !important;}
.frame-space-after-70 {padding-bottom: 70px !important;  padding-bottom: 4.375rem !important;}
.frame-space-after-80 {padding-bottom: 80px !important;  padding-bottom: 5rem !important;}
.frame-space-after-90 {padding-bottom: 90px !important; padding-bottom: 5.625rem !important;}


.ce-bodytext .blueText {
    color: #000e9b;
    font-weight: 100;
}


.ce-textpic.ce-above .ce-gallery {
    margin-bottom: 1.125rem;
}

.ce-textpic.ce-below .ce-gallery {
    margin-top: 1.125rem;
}

.ce-textpic.ce-right.ce-intext .ce-gallery,
.ce-textpic.ce-left.ce-intext .ce-gallery {
    margin-bottom: 1em;
    max-width: 55%;
}

.ce-textpic.ce-right.ce-intext .ce-gallery {
    float: right;
    padding-left: 1em;
    margin-right: -.3em;
}

.ce-textpic.ce-left.ce-intext .ce-gallery {
    float: left;
    padding-right: 1em;
    margin-left: -.3em;
}

.text-center {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

.text-right {
    text-align: right;
    margin-left: auto;
}


.form-group {
	position: relative;
}
.form-group .form-label {
	position: absolute;
	bottom: 0rem;
	left: 0.5625rem;
	transition: transform 375ms cubic-bezier(.4,0,.2,1),color 375ms cubic-bezier(.4,0,.2,1);
	transform-origin: left top;
	pointer-events: none;
	color: #555555;
	white-space: nowrap;
	font-size: 20px;
}
.form-group .form-control:focus + .form-label,
.smalltext .form-label {
	transform: translateY(-0.4rem) scale(.7);
	color: #6D6D6D;
}
.form-group div .captcha {
	display: inline-block;
	width: 50%;
}
.form-group div .captcha + .form-control {
	display: inline-block; 
	width: 50%;
	position: absolute;
	left: 50%;
}
.form-group .input.checkbox .form-check {
	padding-left: 0;
}
.form-group .input.checkbox .form-check .form-check-label input {
	width: 18px;
	height: 18px;
	margin-right: 7px;
}
.error.form-text {
	color: var(--mainColor);
}

@media screen and (min-width: 576px) {
	.space-1 > div:first-child {
		padding-right: 1.5rem;
	}
	.space-1 > div:last-child {
		padding-left: 1.5rem;
	}
	.space-2 > div:first-child {
		padding-right: 2rem;
	}
	.space-2 > div:last-child {
		padding-left: 2rem;
	}
	.space-3 > div:first-child {
		padding-right: 3rem;
	}
	.space-3 > div:last-child {
		padding-left: 3rem;
	}
	.space-4 > div:first-child {
		padding-right: 4rem;
	}
	.space-4 > div:last-child {
		padding-left: 4rem;
	}
}

.form-control {
	border-radius: 0;
	font-size: inherit;
	color: var(--textColor);
	background-color: var(--bodyBg);
	
}
textarea.form-control {
	min-height: 10rem;
}
.form-group {
	margin-bottom: 1rem;
}

.scroll-to-next {
  padding-top: 7.5rem;
   position: relative;
  top: 0rem;
  left: 50%;
  z-index: 2;
  display: inline-block;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  color: var(--bgDark);

  transition: opacity .3s;
}
.scroll-to-next:hover {
  opacity: .5;
  
}
.scroll-to-next span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 5.5rem;
  height: 5.5rem;
  margin-left: -2.75rem;
  border-left: 2px solid var(--bgDark);
  border-bottom: 2px solid var(--bgDark);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
 
  box-sizing: border-box;
}
.scroll-to-next:hover span {
	border-left-color: var(--mainColor);
	border-bottom-color: var(--mainColor);
	 -webkit-animation: slidetobottom 2s infinite;
  animation: slidetobottom 2s infinite;
}
@keyframes slidetobottom {
  0% {
    transform: rotate(-45deg) translate(0, 0);
  }
  50% {
   transform: rotate(-45deg) translate(-20px, 20px);
  }
   100% {
    transform: rotate(-45deg) translate(0, 0);
  }
}


@media screen and (max-width: 520px) {

   header br {
        display: none;
    }
}
