/* HTML5 display definitions
--------------------------------------------------- */
article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary { display: block; }
audio, canvas, video { display: inline-block; }
audio:not([controls]) { display: none; height: 0; }
[hidden], template { display: none; }

/* source-sans-3
--------------------------------------------------- */
@font-face {
  font-display: swap;
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/source-sans-3-v15-latin-regular.eot');
  src: url('../fonts/source-sans-3-v15-latin-regular.eot?#iefix') format('embedded-opentype'),
	   url('../fonts/source-sans-3-v15-latin-regular.woff2') format('woff2'),
	   url('../fonts/source-sans-3-v15-latin-regular.woff') format('woff'),
	   url('../fonts/source-sans-3-v15-latin-regular.ttf') format('truetype'),
	   url('../fonts/source-sans-3-v15-latin-regular.svg#SourceSans3') format('svg');
}
@font-face {
  font-display: swap;
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/source-sans-3-v15-latin-600.eot');
  src: url('../fonts/source-sans-3-v15-latin-600.eot?#iefix') format('embedded-opentype'),
	   url('../fonts/source-sans-3-v15-latin-600.woff2') format('woff2'),
	   url('../fonts/source-sans-3-v15-latin-600.woff') format('woff'),
	   url('../fonts/source-sans-3-v15-latin-600.ttf') format('truetype'),
	   url('../fonts/source-sans-3-v15-latin-600.svg#SourceSans3') format('svg');
}
@font-face {
  font-display: swap;
  font-family: 'Source Sans 3';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/source-sans-3-v15-latin-700.eot');
  src: url('../fonts/source-sans-3-v15-latin-700.eot?#iefix') format('embedded-opentype'),
	   url('../fonts/source-sans-3-v15-latin-700.woff2') format('woff2'),
	   url('../fonts/source-sans-3-v15-latin-700.woff') format('woff'),
	   url('../fonts/source-sans-3-v15-latin-700.ttf') format('truetype'),
	   url('../fonts/source-sans-3-v15-latin-700.svg#SourceSans3') format('svg');
}

/* Basics
--------------------------------------------------- */
html {
	font-size: 100%;
	font-family: 'Source Sans 3', sans-serif;
	font-weight: 400;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	height: 100%;
}
body {
	margin: 0;
	color: #666;
	font-family: 'Source Sans 3', sans-serif;
	font-weight: 400;
	font-size: 1em;
	line-height: 1.5em;
	height: 100%;
	background: #fff;
}
body.body-blocked {
	overflow: hidden;
}
a {
	background: transparent;
}
a:focus {
	outline: thin dotted;
}
a:active, a:hover {
	outline: 0;
}

/* Typography
--------------------------------------------------- */
abbr[title] {
	border-bottom: 1px dotted;
}
b, strong {
	font-weight: 600;
}
em, dfn {
	font-style: italic;
}
hr {
	border: solid #ccc;
	border-width: 1px 0 0;
	clear: both;
	margin: 20px 0 20px 0;
	height: 0;
}
mark {
	background: #f56108;
	color: #000;
}
code, kbd, pre, samp {
	font-family: monospace, serif;
	font-size: 1em;
}
pre {
	white-space: pre-wrap;
}
q {
	quotes: "\201C" "\201D" "\2018" "\2019";
}
small {
	font-size: 80%;
}
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup {
	top: -0.5em;
}
sub {
	bottom: -0.25em;
}
img {
	border: 0;
}
svg:not(:root) {
	overflow: hidden;
}
figure {
	margin: 0;
}

ul, ol {
	/* list-style: none; */
	padding: 0;
}
ol {
	list-style: decimal inside;
}
blockquote {
	display: block;
	margin: 15px 30px;
	border-left: 5px solid #eee;
	padding-left: 10px;
	font-style: italic;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
th, td {
	vertical-align: top;
}

/* Forms
--------------------------------------------------- */
fieldset {
	border: 1px solid #ccc;
	margin: 1em 0;
	padding: 0.5em 0.625em;
}
legend {
	border: 0;
	padding: 0;
}
button, input, select, textarea {
	font-family: inherit;
	font-size: 100%;
	margin: 0;
}
button, input {
	line-height: normal;
}
button, select {
	text-transform: none;
}
button, html input[type="button"], input[type="reset"], input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}
button[disabled], html input[disabled] {
	cursor: default;
}
input[type="checkbox"], input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}
input[type="search"] {
	-webkit-appearance: textfield;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}
button::-moz-focus-inner, input::-moz-focus-inner {
	border: 0;
	padding: 0;
}
textarea {
	overflow: auto;
	vertical-align: top;
	min-height: 80px;
}
select {
	-webkit-appearance: none;
	background: #fff url('../images/icon-select.png') right center no-repeat;
	width: auto;
	min-width: 80px;
	outline: none;
	border-radius: 0;
}
input[type="file"] {
	display: block;
	font-size: 0.875em;
}

::-webkit-input-placeholder { color: #999; font-size: 0.875em; line-height: 20px; }
::-moz-placeholder 			{ color: #999; font-size: 0.875em; line-height: 20px; }
:-moz-placeholder 			{ color: #999; font-size: 0.875em; line-height: 20px; }
:-ms-input-placeholder 		{ color: #999; font-size: 0.875em; line-height: 20px; }

.required {
	color: #ff0000;
	font-size: 0.875em;
}

.alert {
	padding: 0.75em 0.75em;
	margin: 5px 0 20px 0;
}
.alert.warning {
	border: 0px solid #e10000;
	background-color: rgba(225, 0, 0, 0.15);
	color: #e10000;
}
.alert.success {
	border: 0px solid #7faf45;
	background-color: #cef0ab;
	color: #41740b;
}
.alert.information {
	border: 0px solid #e8c2af;
	background-color: rgba(232, 194, 175, 0.7);
	color: #b44f1d;
}
.alert .headline {
	margin: 0 0 0.5em 0;
	font-size: 1.25em;
	font-weight: 600;
}
.alert ul {
	list-style: none;
	margin: 0;
}
.alert ul li {
	font-size: 1em;
	line-height: 1.3725em;
	margin: 0.375em 0;
}

/* Font, Color
--------------------------------------------------- */
h1, h2, h3, h4, h5, h6 {
	line-height: 1.125em;
 	margin: 0 0 0.5em 0;
 	font-weight: 600;
	color: #4b4b4b;
}
h2, h3, h4, h5, h6 {
 	margin-top: 1em;
}
h1 {
	font-size: 2.125em;
}
h2 {
	font-size: 1.5625em;
}
h3 {
	font-size: 1.4375em;
}
h4 {
	font-size: 1.375em;
}
h5 {
	font-size: 1.25em;
}
h6 {
	font-size: 1.125em;
}
p {
	margin: 0 0 1em 0;
	font-size: 1em;
	line-height: 1.5em;
}
a:link, a:visited {
	color: #db0020;
	text-decoration: underline;
}
a:hover, a:focus, a:active {
	text-decoration: none;
}
#start::before {
	display: block;
	content: ' ';
	height: 60px;
	margin-top: -60px;
	visibility: hidden;
}

/* Styles, Basics
--------------------------------------------------- */

/* apply a natural box layout */
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.wrapper {
	width: 100%;
	max-width: 75em;
	margin: 0 auto;
	position: relative;
}
a.morelink {
	display: inline-block;
	margin-top: 0.75em;
	color: #555;
	font-size: 1em;
	line-height: 44px;
	text-decoration: none;
}
a.backlink {
	display: inline-block;
	margin-top: 2em;
	color: #555;
	font-size: 1em;
	line-height: 44px;
	text-decoration: none;
}
a.morelink:hover,
a.backlink:hover {
	color: #333;
}
.arrow-box {
	display: inline-block;
	width: 40px;
	height: 44px;
	background-color: #f0f0f0;
}
.arrow-box-left {
	float: left;
	margin-right: 14px;
}
.arrow-box-right {
	float: right;
	margin-left: 14px;
}
.arrow-box.arrow-left {
	background: #f0f0f0 url('../images/arrow-left.png') center center no-repeat;
}
.arrow-box.arrow-right {
	background: #f0f0f0 url('../images/arrow-right.png') center center no-repeat;
}
a.backlink:hover .arrow-left,
a.backlink:hover .arrow-right {
	background-color: #e3e3e3;
}
.nowrap {
	white-space: nowrap;
}
.italic {
	font-style: italic;
}

.bold {
	font-weight: 600;
}
.strong {
	font-weight: 600;
}
.uppercase {
	text-transform: uppercase;
}
.alignleft {
	float: left;
	margin-right: 10px;
}
.alignright {
	float: right;
	margin-left: 10px;
}
.ta-center {
	text-align: center;
}
.ta-left {
	text-align: right;
}
.ta-right {
	text-align: right;
}
.text-small {
	font-size: 80%;
}
.image-left {
	width: 100%;
	height: auto;
	margin: 0 0 1em 0;
	padding: 0;
}
.image-right {
	width: 100%;
	height: auto;
	margin: 0 0 1em 0;
	padding: 0;
}

.no-text-overflow {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.break-word {
	word-wrap: break-word;
}
.divider {
	height: 2em;
	margin: 0 0 2.5em 0;
	border-bottom: 1px solid #999;
	text-indent: -999em;
}
.divider.download {
	border-color: #ddd;
	height: 1px;
	margin: 0 0 1em 0;
}
p.smalltext {
	font-size: 80% !important;
	line-height: 1.5em;
}

.clear {
	clear: both;
}
.clear-row {
	clear: both;
	line-height: 0.5em;
}
.clearfix::after {
  content: "";
  clear: both;
  display: table;
}
.hidden {
	position: absolute;
	clip: rect(1px 1px 1px 1px); /* IE6 & 7 */
	clip: rect(1px, 1px, 1px, 1px);
}
.hide {
	display: none;
}
.mt0 {
	margin-top: 0;
}
.mt10 {
	margin-top: 10px;
}
.mt20 {
	margin-top: 20px;
}
.mt30 {
	margin-top: 30px;
}
.mt40 {
	margin-top: 40px;
}
.mt50 {
	margin-top: 50px;
}
.mb0 {
	margin-bottom: 0;
}
.mb10 {
	margin-bottom: 10px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb30 {
	margin-bottom: 30px;
}
.mb40 {
	margin-bottom: 40px;
}
.mb50 {
	margin-bottom: 50px;
}
.no-padding-bottom {
	padding-bottom: 0 !important;
}
.more-padding-top {
	padding-top: 2em !important;
}
a.btn {
	padding: 0.25em 1.125em;
	font-size: 0.875em;
	font-weight: 600;
	text-decoration: none !important;
	display: inline-block;
	border-radius: 4px;
	background: #db0020;
	border: 1px solid #db0020;
	color: #fff !important;
}
a.btn:hover {
	border-color: #930015;
	background-color: #930015;
}

.desktop {
	display: none;
}

.anchor {
	visibility: hidden;
}

/* Grid */
.grid {
	padding: 0;
	margin: 0;
}
.grid:before,
.grid:after {
	content: " ";
	display: table;
}
.grid:after {
	clear: both;
}
.col {
	position: relative;
	display: block;
	float: left;
	margin: 0 0 30px 1.6%;
	min-height: 1px;
}
.col:first-child {
	margin-left: 0;
}
.col.no-margin-bottom {
	margin-bottom: 0;
}
.col-12 { width: 100%; }
.col-11 { width: 91.53%; }
.col-10 { width: 83.06%; }
.col-9  { width: 74.6%; }
.col-8  { width: 66.13%; }
.col-7  { width: 57.66%; }
.col-6  { width: 49.2%; }
.col-5  { width: 40.73%; }
.col-4  { width: 32.26%; }
.col-3  { width: 23.8%; }
.col-2  { width: 15.33%; }
.col-1  { width: 6.86%; }

@media (max-width: 800px) {
	.col {
		float: none;
		margin: 0 0 20px 0;
	}
	.col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1  {
		width: 100%;
	}
}

.transition-all-02,
.nav-content > ul > li > a,
.nav-content > ul > li > ul > li > a,
ul.subNav li a,
.flex-control-paging li a,
ul.pages li a,
a.backlink .arrow-left,
.btn,
a.btn,
.btn-submit,
footer a {
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
.transition-all-03 {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.transition-all-04,
.header .logo a img
{
	-webkit-transition: all 0.4s ease;
	-moz-transition: all 0.4s ease;
	-ms-transition: all 0.4s ease;
	-o-transition: all 0.4s ease;
	transition: all 0.4s ease;
}
.transition-none {
	-webkit-transition-property: none;
	-moz-transition-property: none;
	-o-transition-property: none;
	transition-property: none;
}

/* Header
--------------------------------------------------- */
.header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 50;
	width: 100%;
	background: rgba(255, 255, 255, 0.97);
	border-top: 4px solid #db0020;
}
.header.sticky {
	box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.07), 0 5px 10px -5px rgba(0, 0, 0, .07);
}
.header.cms-mode {
	top: 40px;
}
.header .header-wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto;
}
.header .logo {
	padding: 0.75em 0 0.75em 20px;
}
.header .logo a {
	display: block;
	line-height: 0;
}
.header .logo a img {
	height: 60px;
	width: auto;
}
.header.sticky .logo {
	padding: 0.5em 0 0.5em 1em;
}
.header.sticky .logo a img {
	height: 46px;
}

.header .navigation {
	padding: 0 0.75em 0 0;
}
.header-spacer {
	height: 88px;
}
.header-spacer.cms-mode {
	height: 128px;
}

/* Header image default
--------------------------------------------------- */
.header-image-default {
	position: relative;
	line-height: 0;
	background: #c9c8cd;
	overflow: hidden;
}
.header-image-default img {
	width: 100%;
	height: 80px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	/* -webkit-filter: blur(3px);
	filter: blur(3px);
	-webkit-filter: sepia(1) blur(2px);
	filter: sepia(1) blur(2px); */
	-webkit-filter: sepia(1);
	filter: sepia(1);
}

/* Header image
--------------------------------------------------- */
.header-image figure {
	position: relative;
	line-height: 0;
	background: #c9c8cd;
}
.header-image img {
	width: 100%;
	height: auto;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.header-image img.desktop {
	display: none;
}

/* Header slider
--------------------------------------------------- */
.header-slider figure {
	position: relative;
	background: #c9c8cd;
}
.header-slider ul.slides li img.mobile {
	width: 100%;
	height: auto;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}
.header-slider ul.slides li img.desktop {
	display: none;
}

/* Header capture
--------------------------------------------------- */
.header-image .header-caption,
.header-slider .header-caption {
	position: absolute;
	bottom: 40px;
	left: 20px;
	z-index: 20;
	color: #fff;
	font-weight: 400;
	padding: 0;
	max-width: 90%;
	background: rgba(0, 0, 0, 0.3);
	padding: 0.375em 0.75em;
	border-left: 5px solid #db0020;
}
.header-image .header-caption .title,
.header-slider .header-caption .title {
	font-size: 1.5em;
	line-height: 1.125em;
	margin-bottom: 0.25em;
	font-weight: 600;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}
.header-image .header-caption .subtitle,
.header-slider .header-caption .subtitle {
	font-size: 1em;
	line-height: 1.375em;
}

/* Main Content
--------------------------------------------------- */

.main {
	position: relative;
}
#main::before,
#contactForm:before {
	display: block;
	content: ' ';
	height: 100px;
	margin-top: -100px;
	visibility: hidden;
}

.mainContent {
	padding: 35px 0 40px 0;
	width: 100%;
}
.mainContent.brands {
	background: #f5f5f5;
	padding: 1.5em 1em 1.5em 1em;
	margin-top: 1em;
}
.mainContent.more-padding {
	padding: 40px 20px;
}
.mainContent.less-padding {
	padding: 20px;
}
.mainContent.mainLeft {
	padding-bottom: 20px;
}
.mainContent .wrapper {
	max-width: 75em;
	padding: 0 20px;
}
.mainContent img {
	max-width: 100%;
	height: auto;
}
.mainContent p,
.mainContent ul li,
.mainContent ol li {
	font-size: 1.125em;
}
.mainContent a {
	color: #db0020;
	text-decoration: underline
}
.mainContent a:hover {
	text-decoration: none;
}
aside {
	width: 100%;
	margin: 0;
	padding: 25px 20px 10px 20px;
}
ul, ol {
	padding: 0;
	margin: 0 0 1.5em 10px;
	font-size: 1em;
	line-height: 1.5em;
	list-style-position: inside;
}


/* Navigation
--------------------------------------------------- */
.submenu {
	margin: 0;
}
ul.subNav {
	list-style: none;
	margin: 0;
	padding: 0 0 20px 0;
}
ul.subNav li {
	margin-bottom: 3px;
}
ul.subNav li a {
	position: relative;
	display: block;
	text-decoration: none;
	font-size: 1em;
	line-height: 1.25em;
	padding: 0.5em 1em;
	background: #ddd;
	color: #555;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;

}
ul.subNav li a:hover {
	background: #db0020;
	color: #fff;
}
ul.subNav li a.selected {
	background: #db0020;
	color: #fff;
}

ul.subNav li ul {
	list-style: none;
	margin-bottom: 10px;
	margin-top: 1px;
}
ul.subNav li ul li {
	font-size: 0.875em;
	padding: 0;
	margin-bottom: 1px;
}
ul.subNav li ul li a.selected {
	background-color: #db0020;
	padding: 0.5em 1em;
	font-size: 1em;
	color: #fff;
}

/* Flexbox
--------------------------------------------------- */
.flex-container {
	display: flex;
	flex-wrap: wrap;
}
.flex-container .flex-item {
	width: 100%;
	margin: 0.5em 0 0.5em 0;
}

/* Brands
--------------------------------------------------- */
.brands h3 {
	font-size: 1.125em;
	margin: 0 0 1em 0;
}
ul.brand {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0;
}
ul.brand li {
	text-align: center;
	margin: 0.5em;
	background: #fff;
	line-height: 0;
	padding: 0.25em;
}
ul.brand li a {
	display: block;
}
ul.brand li img {
	padding: 0.25em 1em;
	height: 60px;
	width: auto;
}


/* News
--------------------------------------------------- */
ul.news-overview {
	list-style: none;
	margin: 0;
	margin-top: 40px;
}
ul.news-overview li {
	margin-bottom: 3em;
}
ul.news-overview li .date {
	margin: 0 0 1em 0;
	font-weight: 600;
	color: #4b4b4b;
}
ul.news-overview li .content {}
ul.news-overview li .content h2.title {
	font-size: 1.25em;
	line-height: 1.125em;
	margin: 0 0 0.5em 0;
}
ul.news-overview li .content p {
	font-size: 1em;
}

.news .date {
	font-size: 1.25em;
	font-weight: 600;
	color: #4b4b4b;
}

/* Team
--------------------------------------------------- */
ul.team {
	list-style: none;
	margin: 0;
}
ul.team > li {
	overflow: hidden;
	position: relative;
	margin-bottom: 30px;
}
ul.team > li:last-child {
	margin-bottom: 0px;
}
ul.team > li > figure {
	line-height: 0;
	overflow: hidden;
}
ul.team > li > figure > img {
	margin: 0 auto;
	z-index: 1;
	display: block;
	max-width: 100%;
	height: auto;
}
ul.team > li > .content-wrap {
	padding: 15px 0;
	text-align: center;
}
ul.team > li > .content-wrap > h3 {
	line-height: 1.25em;
	margin: 0 0 5px 0;
	word-break: break-word;
	font-size: 1.25em;
	color: 00497f;
}
ul.team > li > .content-wrap > ul {
	list-style: none;
	margin: 0;
}
ul.team > li > .content-wrap > ul > li {
	margin-bottom: 0;
	font-size: 1em;
	line-height: 1.375em;
}
ul.team > li > .content-wrap > p {
	font-size: 1em;
	line-height: 1.375em;
}

/* Gallery
--------------------------------------------------- */
.gallery {
	overflow: hidden;
	margin: 35px 0;
}
.gallery > .imagebox {
	float: left;
	overflow: hidden;
	line-height: 0;
	margin-bottom: 10px;
	background: #eee url('../images/loading-small-circle.gif') center center no-repeat;
}
.gallery .imagebox {
	width: 50%;
	margin: 0;
	border: 4px solid #fff;
}

.gallery > .imagebox > a > .image {
	margin: 0 auto;
	z-index: 1;
	display: block;
	max-width: 100%;
	height: auto;
	-moz-transition: all 0.3s;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
	/* -webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%); */
}
.gallery > .imagebox > a:hover > .image {
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	/* filter: none; */
}

/* Pagination
--------------------------------------------------- */
.pagination {
	padding: 0.75em 0 1em 0;
}
ul.pages {
	margin: 0;
	list-style: none;
	float: right;
}
ul.pages li {
	float: left;
	display: block;
	width: auto;
	height: 33px;
	background-color: #ddd;
	margin-left: 5px;
	font-size: 1.125em;
	line-height: 2em;
	white-space: nowrap;
}
ul.pages li.alternative {
	display: none;
}
ul.pages li.active {
	color: #fff;
	background-color: #db0020;
	padding: 4px 13px;
}
ul.pages li a {
	display: block;
	width: auto;
	height: 33px;
	padding: 0px 14px;
	color: #333;
	text-decoration: none;
}
ul.pages li a:hover {
	background-color: #db0020;
	color: #fff;
	text-decoration: none;
}

/* Button ontop
--------------------------------------------------- */
.ontop {
	position: fixed;
	bottom: 40px;
	right: 20px;
	display: inline-block;
	width: 40px;
	height: 40px;
	-webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.35);
	-moz-box-shadow: 0 0 10px rgba(0, 0, 0, 0.35);
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.35);
	overflow: hidden;
	text-indent: -999em;
	white-space: nowrap;
	background: #db0020 url('../images/icon-arrow-top.png') center 50% no-repeat;
	background-size: 16px 16px;
	border: 1px solid rgba(255, 255, 255, 0.6);
	border-radius: 50%;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: opacity .3s 0s, visibility 0s .3s;
	-moz-transition: opacity .3s 0s, visibility 0s .3s;
	transition: opacity .3s 0s, visibility 0s .3s;
	z-index: 1;
}
.ontop.is-visible, .ontop.fade-out, .no-touch .ontop:hover {
	-webkit-transition: opacity .3s 0s, visibility 0s 0s;
	-moz-transition: opacity .3s 0s, visibility 0s 0s;
	transition: opacity .3s 0s, visibility 0s 0s;
}
.ontop.is-visible {
	visibility: visible;
	opacity: 1;
}
.ontop.fade-out {
	opacity: .9;
}
.no-touch .ontop:hover {
	opacity: 1;
}

/* Footer
--------------------------------------------------- */
.footer {
	background: #4b4b4b;
}
.footer .flex-container {
	padding: 20px 10px;
}
.flex-container.footer-column .flex-item {
	margin-bottom: 0;
}
.flex-container.footer-column .content {
	padding: 1em 2em 1em 1em;
	color: rgba(255, 255, 255, 0.7);
	text-align: center;
}
.flex-container.footer-column .content a {
	color: rgba(255, 255, 255, 0.7);
	text-decoration: none;
}
.flex-container.footer-column .content a:hover {
	color: rgba(255, 255, 255, 0.9);
}
.flex-container.footer-column .content h3 {
	color: rgba(255, 255, 255, 0.7);
	margin: 0 0 0.75em 0;
	font-size: 1.25em;
}
.flex-container.footer-column .content h3 a {
	color: rgba(255, 255, 255, 0.7);
}
.flex-container.footer-column .content h3 a:hover {
	color: rgba(255, 255, 255, 0.9);
	text-decoration: none;
}
.flex-container.footer-column .content ul {
	list-style: none;
	margin: 0 0 1em 0;
}
.flex-container.footer-column .content ul li {
	margin: 0 0 0.125em 0;
}
.flex-container.footer-column .content ul li a {}

.footer-nav {
	background: #fff;
	padding-top: 0.75em;
}
.footer-nav .flex-container {
	width: 100%;
	margin: 0 auto;
	position: relative;
}
.footer-nav .flex-container .content {
	padding: 1em 1em;
	color: #666;
	font-size: 0.875em;
	justify-content: space-between;
	text-align: center;
}
.footer-nav .flex-container .flex-item {
	margin: 0
}
.footer-nav .flex-container .flex-item.info .content ul {
	list-style: none;
	margin: 0;
}
.footer-nav .flex-container .flex-item.info .content ul li {
	margin: 0 0 0.75em 0;
}

.footer-nav .flex-container .flex-item.info .content ul li a {
	color: #666;
	text-decoration: none;
}
.footer-nav .flex-container .flex-item.info .content ul li a:hover {
	color: #333;
	text-decoration: underline;
}
.footer-nav .flex-container .flex-item.siteby .content a {
	display: inline-block;
	text-indent: -999em;
	width: 70px;
	height: 12px;
	background: url("../images/icon-siteby.png") center center no-repeat;
	background-size: 70px 12px;
	opacity: 0.3;
}
.footer-nav .flex-container .flex-item.siteby .content a:hover {
	opacity: 0.5;
}

/* Modal
--------------------------------------------------- */
.modal-dialog {
	position: relative;
	width: 500px;
	max-width: 98%;
	margin: 60px auto;
}
.modal-dialog.wide {
	width: 980px;
}
.modal-dialog.fullwidth {
	width: 90%;
	max-width: 1200px;
}
.modal-dialog.download {
	width: 95%;
	max-width: 1120px;
	background: #fff;
}

.modal-content {
	position: relative;
	background-color: #fff;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.5);
}
.modal-header {
	padding: 15px 20px;
	border-bottom: 1px solid #e5e5e5;
}
.modal-header h1 {
	margin: 0;
}
.modal-header a.btn-close {
	text-decoration: none;
	color: #444;
	font-size: 0.875em;
	float: right;
	margin-left: 15px;
}
.modal-body {
	position: relative;
	padding: 20px;
}
.modal-body .wrapper.more-padding{
	padding-top: 0;
	padding-bottom: 0;
}
.modal-body a:link, .modal-body a:visited {
	color: #db0020;
	text-decoration: underline;
}
.modal-body a.btn {
	color: #444;
}
.modal-body a:hover, .modal-body a:focus, .modal-body a:active {
	color: #db0020;
	text-decoration: none;
}

.modal-footer {
	padding: 15px 20px 15px 20px;
	text-align: right;
	border-top: 1px solid #e5e5e5;
}

/* Form
--------------------------------------------------- */
fieldset {
	position: relative;
	border: none;
	padding: 1em 1em 2em 1em;
	background-color: #f4f5f6;
	margin-bottom: 1.5em;
}
fieldset h2 {
	font-size: 1.5em;
	margin: 0 0 0.75em 0;
}
fieldset.fieldset-border.border-required {
	border: 1px solid #ff0000;
}

.formset {
	margin: 0.875em 0;
}
.formset.no-margin-top {
	margin-top: 0;
}
.formset.more-margin-top {
	margin-top: 2em;
}
.formset.more-margin-bottom {
	margin-bottom: 2em;
}
.formset.small-30 {
	width: 27%;
	margin-right: 3%;
	float: left;
}
.formset.small-70 {
	width: 70%;
	float: right;
}
.formset label, .formset input[type="text"], .formset input[type="password"], .formset input[type="tel"], .formset input[type="date"], .formset input[type="time"], .formset input[type="file"], .formset textarea {
	display: inline-block;
}
.formset label {
	width: 100%;
	font-size: 1em;
	line-height: 1.5em;
	font-weight: 400;
	word-break: break-word;
	text-align: left;
}
.formset label.radio {
	width: auto;
	font-weight: normal;
	margin-left: 0.25em;
}
.formset label.selection {
	width: 100%;
	text-align: left;
	padding-left: 1.5em;
	padding-bottom: 0;
	position: absolute;
	top: 0;
	left: 0;
}
.formset label.default {
	display: none;
}
.formset input[type="text"], .formset input[type="password"], .formset input[type="tel"], .formset input[type="email"], .formset input[type="date"], .formset input[type="time"], .formset input[type="file"], .formset textarea, .formset select.maxwidth {
	width: 100%;
	border: 1px solid rgba(0, 0, 0, 0.2);
	border-radius: 5px;
	padding: 0.625em;
	outline: none;
	font-weight: 400;
	line-height: 1.125em;
}
.formset input[type="text"]:focus, .formset input[type="password"]:focus, .formset input[type="tel"]:focus, .formset input[type="email"]:focus, .formset input[type="date"]:focus, .formset input[type="time"]:focus, .formset input[type="file"]:focus, .formset textarea:focus, .formset select:focus {
	margin-bottom: 0;
	border: 1px solid rgba(0, 0, 0, 0.5);
/*
	box-shadow: 0px 0px 6px #e0e0e0;
	-moz-box-shadow: 0px 0px 6px #e0e0e0;
	-webkit-box-shadow: 0px 0px 6px #e0e0e0;
*/
}
.formset input[type="text"].datepicker {
	background-image: url(../images/cal-green.svg);
	background-position: 94% center;
	background-repeat: no-repeat;
}
.formset input[type="text"].small {
	width: 6em;
}
.formset input[type="text"].smaller {
	width: 4em;
}
.formset select {
	border: 1px solid rgba(0, 0, 0, 0.2);
	border-radius: 5px;
	padding: 0.625em 1.75em 0.625em 0.5625em;
	font-weight: 400;
	color: #444;
	line-height: 1.125em;
}
.formset select.fullwidth {
	background-position: 97% center;
	width: 100%;
}
.formset input.input-required,
.formset input:focus.input-required,
.formset input.clever_form_error,
.formset input:focus.clever_form_error,
.formset select.select-required,
.formset select:focus.select-required,
.formset textarea.input-required,
.formset textarea:focus.input-required {
	border-color: #ff0000;
}
.formset.secret {
	display: none !important;
	opacity: 0;
	height: 0;
}
.formset.secret label {
	display: none;
}
.formset.secret input[type="text"] {
	display: none;
	border: none;
	background: transparent;
	width: 0;
	height: 0;
	padding: 0;
}

.captcha {
	width: 100%;
	display: inline-block;
}
.captcha .number {
	font-size: 1.375em;
	margin-right: 0.25em;
}

.checkbox-wrap {
	margin-top: 40px;
	position: relative;
	display: block;
}
.checkbox-wrap .input-check {
	position: absolute;
	left: 0;
	top: -3px;
}
.checkbox-wrap p {
	text-align: left;
	margin-top: 4px;
	margin-left: 40px;
}

@media only screen and (min-width: 60em) {
	.checkbox-wrap .input-check {
		left: 8%;
	}
	.checkbox-wrap p {
		margin-left: 12.5%;
	}
}
@media only screen and (min-width: 93.75em) {
	.checkbox-wrap .input-check {
		left: 4%;
		top: 0;
	}
	.checkbox-wrap p {
		margin-left: 8.5%;
	}
}

.formset input[type="text"].w1, .input-text.w1 {
	width: 5em;
}
.formset input[type="text"].w2, .input-text.w2 {
	width: 7em;
}
.formset input[type="text"].w3, .formset input[type="date"].w3, .formset input[type="time"].w3, .input-text.w3 {
	width: 9em;
}
.formset input[type="password"].w1 {
	width: 14em;
	max-width: 100%;
}
.formset input[type="file"] {
	background: #fff;
}
.formset .input-info {
	display: inline-block;
	font-size: 0.75em;
	line-height: 1.375em;
	margin: 5px 0 0 3px;
}
.formset .btn-file {
	position: relative;
	overflow: hidden;
	display: inline-block;
	padding: 0.5em 0.75em;
	margin: 0;
	font-size: 0.875em;
	font-weight: normal;
	text-align: center;
	white-space: nowrap;
	vertical-align: middle;
	text-decoration: none;
	cursor: pointer;
	color: #444;
	background-color: #d9d9d9;
	border: 1px solid #ccc;
	border-radius: 5px;
}
.formset .file-selected  {
	padding-right: 28px;
	display: inline-block;
	color: #000;
	background: url('../images/icon-check.png') right center no-repeat;
}
.formset .file-filename {
	font-weight: 600;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	padding: 0 5px;
	line-height: 2em;
}

.formset .btn-file input[type="file"] {
	position: absolute;
	top: 0;
	left: 0;
	min-width: 100%;
	min-height: 100%;
	font-size: -999px;
	text-align: left;
	filter: alpha(opacity=0);
	opacity: 0;
	cursor: inherit;
	display: block;
}
.formset input[type="text"].required_input,
.formset textarea.required_input {
	border-color: #ff0000;
}
ul.form-selection {
	margin: 0;
	list-style: none;
	overflow: hidden;
}
ul.form-selection li {
	margin: 0 0 10px 0;
	position: relative;
	height: auto;
}
ul.form-selection li input[type="radio"] {
	position: absolute;
	top: 4px;
	left: 0;
}
ul.form-selection li input[type="checkbox"] {
	position: absolute;
	top: 4px;
	left: 0;
}
ul.form-selection li.distance-left {
	margin-left: 25px ;
}
ul.form-selection.inlineblock li {
	display: inline-block;
	margin-right: 20px;
}

.loader {
	height: 15px;
	padding: 30px 0;
	background: url('../images/loading-bar.gif') center center no-repeat;
}
.form-print .formset input[type="text"]:focus, .form-print .formset input[type="password"]:focus, .form-print .formset textarea:focus, .form-print .formset select:focus {
	border-color: #c6c6c6;
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	font-weight: normal;
}
.form-print .required {
	display: none;
}
.styledRadio, .styledCheckbox {
	display: inline-block;
}
.styledRadio-disabled, .styledCheckbox-disabled {
	opacity: 0.5;
	cursor:pointer !important
}
.styledCheckbox-disabled-checked {
	background-position: 0 -60px !important;
}
.checkbox-left {
	float: left; -moz-appearance: margin: 2px 12px 0 0 ;
}
.container-wrap {
	overflow: hidden;
	margin-bottom: 2.5em;
}
.container.two-columns:first-child {
	border-bottom: 1px solid #000;
	padding-bottom: 2em;
}
.container.two-columns:last-child {
	padding-top: 0.5em;
}
.container-wrap.account h2 {
	font-weight: 400;
	font-size: 1.375em;
}
.container.confirmation {
	font-weight: 400;
	margin: 1em 0 0 0;
	font-size: 0.875em;
	line-height: 1.5em;
}
.container.confirmation.border-required {
	border: 1px solid #ff0000;
}
.container.confirmation p {
	margin: 0 0 10px 40px;
	font-size: 1.25em;
}
.container.confirmation.request {
	font-weight: 400;
}
.container.confirmation.request p {
	margin: 0 0 0 36px;
}

.pass-lost {
	margin-top: 20px;
}
.pass-lost a {
	text-decoration: none;
	font-size: 0.8125em;
}
.pass-lost a:hover {
	text-decoration: underline;
}
.smalltext {
	font-size: 0.75em;
	font-size: 400;
}
.formset textarea.fullwidth {
	width: 100%;
	max-width: 100%;
}
.formset textarea.more-height {
	height: 150px;
}
form .back a {
	font-size: 0.8125em;
}
form .back a:hover {
	text-decoration: underline;
}
.btn-submit {
	border-radius: 4px;
	padding: 0.75em 1.5em;
	color: #fff;
	font-size: 0.875em;
	font-weight: 600;
	background-color: #db0020;
	text-transform: uppercase;
	display: inline-block;
	text-decoration: none;
	border: 1px solid #db0020;
}
.btn-submit:hover {
	border-color: #930015;
	background-color: #930015;
}

.form-background {}
.form-background.active {
	position: fixed;
	z-index: 10;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: noscroll;
	background-color: rgb(0,0,0);
	background-color: rgba(0,0,0,0.2);
}
@media only screen and (min-width: 36em) {
	fieldset {
		padding: 1.5em 2em 1.5em 2em;
	}
	.formset.fullwidth label {
		width: 100%;
		padding-right: 0;
		text-align: left;
	}
	.formset.fullwidth input[type="text"] {
		width: 100%;
	}
	.formset label {
		width: 36%;
		padding-right: 2%;
		text-align: right;
	}
	.formset label.default {
		width: 36%;
		padding-right: 2%;
		text-align: right;
		display: inline-block;
	}
	.formset label.title-selection {
		float: left;
	}
	.formset.agb label {
		width: 100%;
		text-align: left;
	}
	.formset input[type="text"], .formset input[type="password"], .formset input[type="tel"], .formset input[type="email"], .formset input[type="date"], .formset input[type="file"], .formset textarea {
		width: 62%;
		max-width: 30em;
	}
	.captcha {
		width: 62%;
		max-width: 30em;
	}
	ul.form-selection {
		width: 62%;
		max-width: 30em;
		margin-left: 36%;
		margin-bottom: 1.25em;
	}
	.formset select.maxwidth {
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}
	.btn.account {
		margin-left: 36%;
	}

	.container.form-fullwidth .formset label {
		width: 100%;
		padding-right: 0;
		text-align: left;
	}
	.container.form-fullwidth .formset input[type="text"],
	.container.form-fullwidth .formset textarea {
		width: 100%;
		max-width: 100%;
	}
	.btn-submit.btn-right {
		float: right;
	}
}

/* Checkbox Styles */
.label-checkbox {
	display: block;
	position: relative;
	margin-bottom: 3px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.label-checkbox.checkbox1 {
	padding-left: 30px;
	margin-bottom: 5px;
	font-size: 1em;
	line-height: 1.25em;
}
.label-checkbox.checkbox2 {
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-bottom: 0;
}
.label-checkbox input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
}
.checkmark {
	position: absolute;
	top: 0;
	left: 0;
	height: 25px;
	width: 25px;
	background-color: #fff;
	border-radius: 3px;
	border: 1px solid rgba(0, 0, 0, 0.2);
}
.checkbox1 .checkmark {
	height: 18px;
	width: 18px;
}
.checkbox2 .checkmark {
	height: 18px;
	width: 18px;
}
.label-checkbox:hover input ~ .checkmark {
	/* background-color: #f9f9f9; */
	border-color: rgba(0, 0, 0, 0.5);
}
 input:focus ~ .checkmark {
  /* border-color: rgba(0, 0, 0, 0.5); */
  /* box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.5); */
}
.checkmark:after {
	content: "";
	position: absolute;
	display: none;
}
.label-checkbox input:checked ~ .checkmark:after {
	display: block;
}
.label-checkbox .checkmark:after {
	left: 8px;
	top: 3px;
	width: 7px;
	height: 14px;
	border: 1px solid rgba(0, 0, 0, 0.8);
	border-width: 0 3px 3px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.label-checkbox.checkbox1 .checkmark:after {
	left: 5px;
	top: 1px;
	width: 6px;
	height: 12px;
}
.label-checkbox.checkbox2 .checkmark:after {
	left: 5px;
	top: 1px;
	width: 6px;
	height: 12px;
}

/* Cookies
--------------------------------------------------- */
#cookies::before {
	display: block;
	content: "";
	height: 100px;
	margin-top: -100px;
	visibility: hidden;
}

/* Cookie-Banner footer-column */
.cookie-hint {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 1000;
	background: rgba(255, 255, 255, 0.98);
	box-shadow: 0 -8px 8px -8px #444;
}
.cookie-hint .wrapper {
	width: 100%;
	/* max-width: 90em; */
	padding: 1.5em 1em;
	font-size: 0.875em;
	line-height: 1.375em;
	color: #000;
}
.cookie-hint h3 {
	color: #db0020;
	margin-top: 0;
	font-size: 1.75em;
	text-transform: uppercase;
}

.cookie-hint ul.links {
	list-style: none;
	margin: 10px 0 0 0;
}
.cookie-hint ul.links li {
	margin-bottom: 7px;
}
.cookie-hint ul.links li a {
	font-size: 1.0625em;
}
.cookie-hint a.btn {
	margin: 0 0.375em 1.25em 0;
	padding: 0.6875em 1.5em;
	display: block;
	font-size: 0.875em;
	text-align: center;
	text-decoration: none;
	border-radius: 5px;
	font-weight: 400;
	outline: none;
	text-transform: uppercase;
}

/* Cookie settings */
.cookie-background {
	display: none;
	position: fixed;
	z-index: 10;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: noscroll;
	background-color: rgba(0,0,0,0.6);
}
.cookie-background.dark {
	display: block;
}

.cookie-settings-area {
	display: none;
	position: fixed;
	top: 0;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 100%;
	padding: 30px;
	background: #fff;
	box-shadow: 5px 5px 25px rgba(0, 0, 0, 0.3);
	z-index: 1000;
	overflow: scroll;
}
.cookie-settings-area.open {
	display: block;
}
.cookie-settings-area #cookie-settings-container {
	overflow: scroll;
	position: absolute;
	padding: 25px 20px 0 20px;
	top: 0;
	left: 0;
	right: 0;
	bottom: 175px;
}
.cookie-settings-area .chapter {}
.cookie-settings-area .divider {
	height: 1em;
	margin: 0 0 1.75em 0;
}
.cookie-settings-area h1 {
	font-size: 1.75em;
}
.cookie-settings-area h2 {
	font-size: 1.325em;
}
.cookie-settings-area p {
	font-size: 1em;
}
.cookie-settings-area ul {
	list-style: none;
	margin: 0 0 10px 0;
}
.cookie-settings-area ul li {
	display: inline-block;
	margin-right: 15px;
}
.cookie-settings-area .toggle-switch {
	margin-right: 10px;
	margin-top: 3px;
}
.cookie-settings-area .toggle-radio {
	width: 36px;
	height: 18px;
}
.cookie-settings-area .toggle-radio .radio-button {
	margin: 3px;
	width: 12px;
	height: 12px;
}

.button-wrap-fixed {
	border-top: 1px solid #999;
	background: #fff;
	position: fixed;
	bottom: 0px;
	left: 0px;
	right: 0px;
	padding: 25px 20px 10px 20px;
}
.cookie-settings-area .btn.cookies {
	width: 100%;
}
.cookie-settings-area .btn {
	font-size: 0.875em;
	width: 100%;
	cursor: pointer;
	margin: 0 0.375em 1.25em 0;
	padding: 0.75em 1.5em;
	display: block;
	text-align: center;
	text-decoration: none;
	border-radius: 5px;
	font-weight: 400;
	outline: none;
	border: 1px solid #db0020;
	background: #db0020;
	color: #fff !important;
	text-transform: uppercase;
}
.cookie-settings-area .btn.cookies.all,
.cookie-settings-area .btn.save {
	border: 1px solid #db0020;
	background: #db0020;
	color: #fff !important;
}
.cookie-settings-area .btn.cookies.all:hover,
.cookie-settings-area .btn.save:hover {
	border-color: #930015;
	background-color: #930015;
}
.cookie-settings-area a.close-hint {
	position: absolute;
	top: 30px;
	right: 20px;
	width: 17px;
	height: 17px;
	background: url('../images/icon-close.png') 0 0 no-repeat;
	background-size: 17px 17px;
	text-indent: -999em;
}

/* Toggle Switch */
.toggle-switch {
	float: left;
	margin-right: 12px;
	margin-top: 5px;
	line-height: 0;
}
.toggle-radio {
	position: relative;
	display: inline-block;
	width: 47px;
	height: 25px;
	border-radius: 25px;
	cursor: pointer;
}
.toggle-radio.hide {
	display: none;
}
.toggle-radio.switch-off {
	background: rgba(43, 69, 56, 0.4);
}
.toggle-radio.switch-on {
	background: #db0020;
}
.toggle-radio.switch-on-light {
	background: #000;
}
.toggle-radio .radio-button {
	position: relative;
	display: block;
	margin: 3px;
	width: 19px;
	height: 19px;
	border-radius: 50%;
	text-indent: -999em;
	background: #fff;
}
.toggle-radio .radio-button.off {
	float: left;
}
.toggle-radio .radio-button.on {
	float: right;
}

/* Google Maps, Youtube */
.cookie-info-wrap {
	position: relative;
}
.cookie-info-wrap.maps {
	position: relative;
	width: 100%;
	height: 400px;
	background: #ccc url('../images/google-maps.jpg') 0 0 no-repeat;
	background-size: cover;
}
.cookie-info-wrap.youtube {
	position: relative;
	width: 100%;
	height: 400px;
	background: #ccc url('../images/youtube.jpg') center center no-repeat;
	background-size: cover;
}
.cookie-info-wrap .cookie-info-text {
	text-align: center;
	position: absolute;
	top: 25%;
	left: 0;
	width: 100%;
	padding: 1.5em 1em;
	font-size: 0.875em;
	line-height: 1.5em;
	color: #000;
	background: rgba(255, 255, 255, 0.4);
}
.cookie-info-wrap .cookie-info-text a {
	text-decoration: underline;
	color: #db0020;
}
.cookie-info-wrap .cookie-info-text a:hover {
	color: #db0020;
	text-decoration: none;
}
.cookie-info-wrap .cookie-info-text a.btn {
	margin-top: 15px;
	text-decoration: none;
	background-color: #db0020;
	color: #fff;
	padding: 0.5em 1.25em
}
.cookie-info-wrap .cookie-info-text a:hover.btn {
	background-color: #930015;

}
