
 @import url("https://use.typekit.net/mrs6xnl.css");

/* ############################################################
	SCHRIFTEINBETTUNG
############################################################ */

/*
Hersteller: Typekit
Projekt: LED
Schriften:
-	Myriad Pro Regular (400)
-	Myriad Pro Bold (700)
*/

/* ############################################################
	FARBKLIMA
###############################################################
	
	Orange:					#ee832f - rgb(238,131,47)
	Grün:						#286565 - rgb(40,101,101)
	Mint:						#e5f2ec - rgb(229,242,236)
	Grau:						#413c38 - rgb(65,60,56)
	
###############################################################
	ALLGEMEINES
############################################################ */

* {
	margin: 0;
	padding: 0;
}
*, *:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

img, table, tr, td {
	border: 0;
}

html, body { /* html = IE text resize correction */
	font-size: 100%;
}
html {
	height: 100%;
	-webkit-font-smoothing: antialiased;
	font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
body {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	position: relative;
	overflow-x: hidden;
	min-height: 100%;
}

a, a:focus {
	outline: none;
}

main img, footer img {
	max-width: 100% !important;
	height: auto !important;
	display: block;
	-ms-interpolation-mode: bicubic;
	image-rendering: optimizeQuality;
}

.css-transitions-only-after-page-load * {
	-o-transition: none !important;
	-ms-transition: none !important;
	-moz-transition: none !important;
	-webkit-transition: none !important;
	transition: none !important;
}

/* Effekt: FadeIn / Lightning */
body:not(.cms-active) header,
body:not(.cms-active) main,
body:not(.cms-active) footer {
	opacity: 0;
}


/* ############################################################
	SCHRIFTEN / TEXTE / ABSÄTZE / HYPERLINKS / TITEL
############################################################ */

/* Allgemeines */
body {
	font-family: myriad-pro, sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.25rem; /* 20px */
	line-height: 1.875rem; /* 30px */
	color: #413c38;
}
@media (min-width: 760px) {
}

i, em {
	font-family: myriad-pro, sans-serif;
	font-weight: 400;
	font-style: italic;
}
b, strong {
	font-family: myriad-pro, sans-serif;
	font-weight: 700;
	font-style: normal;
}
strong > em, em > strong,
strong > i, i > strong,
b > em, em > b,
b > i, i > b {
	font-family: myriad-pro, sans-serif;
	font-weight: 700;
	font-style: italic;
}

/* Titel */
h1, h2, h3 {
	margin: 0;
	padding: 0;
	font-family: myriad-pro, sans-serif;
	font-weight: 400;
	font-style: normal;
}
h1, h2 {
	margin-bottom: 32px;
	font-size: 2rem; /* 32px */
	line-height: 2.25rem; /* 36px */
	color: #286565;
}
h3 {
	font-weight: 400;
	font-size: 1.25rem; /* 20px */
	line-height: 1.875rem; /* 30px */
	color: #ee832f;
}
@media (max-width: 759px) {
	h1, h2, h3, h4 {
		word-wrap: break-word;
	}
}
@media (min-width: 760px) {
}


/* Text-Grössen */
.text-large {
	font-size: 1.125rem !important; /* 18px */
	line-height: 1.5rem !important; /* 24px */
}
.text-normal {
	font-size: 1.25rem !important; /* 20px */
	line-height: 1.875rem !important; /* 30px */
}
.text-small {
	font-size: 1.0625rem !important; /* 17px */
	line-height: 1.625rem !important; /* 26px */
}
@media (min-width: 760px) {
	.text-large {
	}
	.text-normal {
	}
	.text-small {
	}
}


/* Abstände */
h3 + p.text-gross {
}
@media (min-width: 760px) {
	h3 + p.text-gross {
	}
}


/* Zeichen */
.text-uppercase {
	text-transform: uppercase;
}
.text-lowercase {
	text-transform: lowercase;
}


/* Kopfzeile */
header,
nav {
	color: #1f4b7e;
	font-size: 1.25rem; /* 20px */
	line-height: 2.375rem; /* 38px */
}


/* Fusszeile */
footer,
footer h3 {
	font-size: 1.0625rem; /* 17px */
	line-height: 1.875rem; /* 30px */
	color: #fff;
}
	footer h3 {
		margin-bottom: 14px;
		font-weight: 700;
	}


/* ############################################################
	HYPERLINKS
############################################################ */

/* Allgemeines */
header a,
nav a,
main a,
footer a {
	text-decoration: none;
	-o-transition: color 0.15s ease-in-out;
	-ms-transition: color 0.15s ease-in-out;
	-moz-transition: color 0.15s ease-in-out;
	-webkit-transition: color 0.15s ease-in-out;
	transition: color 0.15s ease-in-out;
}
header a,
nav a,
main a {
	color: #413c38;
}
footer a {
	color: #fff;
}
header a:hover,
nav a:hover,
main a:hover,
footer a:hover {
	color: #ee832f;
}

/* Lange Hyperlinks */
@media (max-width: 759px) {
	#top__panel a,
	#bottom__panel a,
	#middle__panel a,
	#left__panel a {
		word-wrap: break-word;
	}
}

/* Spezielle Links */
main a.link-pdf:before {
	content:"\203A";
	margin-right: 14px;
	font-size: 1.625rem; /* 26px */
}
main a.link-underline,
main a.link-underline:hover {
	text-decoration: underline;
}

/* Anker */
a.nav-anchor[name] {
	display: block;
	width: 0;
	height: 0;
	position: relative;
	top: -118px !important;
	visibility: hidden;
}
@media (min-width: 760px) {
	a.nav-anchor[name] {
		top: -197px !important;
	}
}
@media (min-width: 1020px) {
	a.nav-anchor[name] {
		top: -236px !important;
	}
}

/* Farben */
.text-weiss {
	color: #fff;
}
.text-orange {
	color: #ee832f;
}
.text-gruen {
	color: #286565;
}
.text-mint {
	color: #e5f2ec;
}
.text-grau {
	color: #413c38;
}
.bg-weiss {
	background-color: #fff;
}
.bg-orange {
	background-color: #ee832f;
}
.bg-gruen {
	background-color: #286565;
}
.bg-mint {
	background-color: #e5f2ec;
}
.bg-grau {
	background-color: #413c38;
}


/* ############################################################
	PANELS/BOXEN
############################################################ */

/* Allgemein */
header, nav, main, footer,
.main__box {
	position: relative;
	width: 100%;
}
header, footer,
.main__box {
	padding-right: 20px;
	padding-left: 20px;
}

/* Kopfzeile */
header {
	z-index: 10;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	height: 118px;
	background-color: #fff;
}
	.header__logobox {
		position: absolute;
		top: 26px;
		left: 20px;
		width: 180px;
		height: auto;
	}

/* Navigation (Mobile) */
.navigation__top {
	padding: 37px 20px 0 8px;
}
.navigation__middle,
.navigation__bottom {
	padding: 0 20px;
}

/* Inhalt */
main {
	margin-top: 118px;
}
	.main__box {
		padding-top: 60px;
	}

/* Fusszeile */
footer {
	margin-top: 60px;
	background-color: #286565;
}
	.mobile-kontakt-box {
		height: 65px;
	}
@media (min-width: 760px) {
	/* Allgemein */
	header, footer,
	.main__box {
		padding-left: 50px;
		padding-right: 50px;
	}
	
	/* Kopfzeile */
	header {
		height: 197px;
	}
		.header__logobox {
			top: 50px;
			left: 50px;
			width: 270px;
		}
	
	/* Navigation (Mobile) */
	.navigation__top {
		padding: 81px 50px 0 38px;
	}
	.navigation__middle,
	.navigation__bottom {
		padding: 0 50px;
	}
	
	/* Inhalt */
	main {
		margin-top: 197px;
	}
		.main__box {
			padding-top: 75px;
		}
	
	/* Fusszeile */
	footer {
		margin-top: 110px;
		padding-top: 60px;
		padding-bottom: 60px;
	}
}
@media (min-width: 1020px) {
	/* Kopfzeile */
	header {
		height: 236px;
	}
		.header__logobox {
			top: 89px;
		}
		.header__langbox,
		.header__navbox {
			position: absolute;
			display: inline-block;
			top: 50px;
			right: 38px;
		}
		.header__navbox {
			top: 124px;
		}
	
	/* Inhalt */
	main {
		margin-top: 236px;
	}
		.main__box {
			padding-top: 90px;
		}
	
	/* Fusszeile */
}
@media (min-width: 1440px) {
	/* Allgemein */
	header, footer,
	.main__box {
		padding-left: 202px;
		padding-right: 202px;
	}
	
	/* Kopfzeile */
	.header__logobox {
		left: 202px;
	}
	.header__langbox,
	.header__navbox {
		right: 182px;
	}
}


/* ############################################################
	BILDER
############################################################ */

/* Logo */
.logo,
.logo-link {
	width: 180px;
	height: auto;
}
.logo-link {
	position: absolute;
	display: inline-block;
}
@media (min-width: 760px) {
	.logo,
	.logo-link {
		width: 270px;
	}
}


/* Footer Mobile */
.link-footer {
	position: relative;
	display: inline-block;
	width: 25%;
	height: 60px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 20px;
}
	.icon-footer-telefon {
		background-image: url("/Portal/led/Images/Icons/footer-mobile-telefon.svg");
	}
	.icon-footer-mail {
		background-image: url("/Portal/led/Images/Icons/footer-mobile-mail.svg");
	}
	.icon-footer-maps {
		background-image: url("/Portal/led/Images/Icons/footer-mobile-maps.svg");
		background-size: auto 21px;
	}
	.icon-footer-home {
		background-image: url("/Portal/led/Images/Icons/footer-mobile-home.svg");
	}


/* ############################################################
	MODULE, VORLAGEN
############################################################ */

/* Modulabstände */
@media (max-width: 759px) {
	.AbstandModuleXS {
		margin-top: 90px;
	}
}
@media (min-width: 760px) and (max-width: 1019px) {
	.AbstandModuleSM {
		margin-top: 75px;
	}
}
@media (min-width: 1020px) and (max-width: 1439px) {
	.AbstandModuleMD {
		margin-top: 90px;
	}
}
@media (min-width: 1440px) and (max-width: 1919px) {
	.AbstandModuleLG {
		margin-top: 90px;
	}
}
@media (min-width: 1920px) {
	.AbstandModuleXL {
		margin-top: 90px;
	}
}

/* Animation */
.onLoadFadeInRight/*,
.onLoadFadeInUp*/ {
	opacity: 0;
}

/* Vorlagen */
/* Tabellen */
table.table-one {
	table-layout: fixed;
	border-collapse: collapse;
	width: 100%;
}
	/* Zeilen */
	table.table-one tr {
		vertical-align: top;
	}
		/* Zellen */
		table.table-one td {
			display: block;
			vertical-align: top;
		}
		/* Spaltenbreiten */
		table.table-one td:nth-child(1) {
			padding-top: 6px;
		}
		table.table-one td:nth-child(2) {
			padding-bottom: 6px;
			border-bottom: 1px solid #286565;
		}
@media (min-width: 760px) {
	/* Zellen */
	table.table-one td,
	table.table-one td:nth-child(1),
	table.table-one td:nth-child(2) {
		display: table-cell;
		max-width: 0;
		width: 50%;
		padding: 2px 0;
		border-bottom: 1px solid #286565;
	}
	table.table-one td:nth-child(2) {
		text-align: right;
	}
}


/* Tabellen 3-spaltig */
table.table-two {
	table-layout: fixed;
	border-collapse: collapse;
	width: 100%;
}
	/* Zeilen */
	table.table-two tr {
		vertical-align: top;
	}
		/* Zellen */
		table.table-two th,
		table.table-two td {
			display: block;
			vertical-align: top;
			text-align: left;
		}
		/* Spaltenbreiten */
		table.table-two th:nth-child(1),
		table.table-two td:nth-child(1) {
			padding-top: 6px;
		}
		table.table-two th:nth-child(3) {
			padding-bottom: 6px;
			border-bottom: 2px solid #286565;
		}
		table.table-two td:nth-child(3) {
			padding-bottom: 6px;
			border-bottom: 1px solid #286565;
		}
@media (min-width: 760px) {
	/* Zellen */
	table.table-two th,
	table.table-two td {
		display: table-cell;
		max-width: 0;
		width: 33.333%;
		padding: 2px 0;
		border-bottom: 1px solid #286565;
	}
	table.table-two th {
		border-bottom: 2px solid #286565;
	}
	table.table-two th:nth-child(3),
	table.table-two td:nth-child(3) {
		text-align: right;
	}
}


/* Google-Maps */
.google-maps {
	display: table;
	width: 100%;
	height: 75vw;
	margin: 0;
	padding: 0;
	overflow: hidden;
}
@media (min-width: 760px) {
	.google-maps {
		height: 500px;
	}
}


/* ############################################################
	VIDEOS
############################################################ */

/* Videoplayer */
.movie-container {
	max-width: 100%;
	margin: 0 auto;
}
	.movie-container video {
		width: 100%;
		height: auto;
	}


/* ############################################################
	LISTEN
############################################################ */

/* Aufzählungslisten */
.mdl-container ul {
	position: relative;
	list-style: none;
	margin: 0;
	padding: 0;
}

/* Disc (Standard) */
.mdl-container ul li {
	margin-left: 20px;
	padding-left: 0;
}
.mdl-container ul li::before {
    content: '\2022';
		display: inline-block;
		position: absolute;
		margin-left: -20px;
}
/*@media (min-width: 760px) {
	.mdl-container ul li {
		margin-left: 0;
	}
}*/

/* Aufzählung */
.mdl-container ol {
	margin: 0;
	padding: 0;
	padding-left: 18px;
}
	.mdl-container ol li {
		margin-top: 10px;
		padding-left: 2px;
	}
	.mdl-container ol li:first-child {
		margin-top: 0;
	}
/*@media (min-width: 760px) {
	.mdl-container ol {
		margin-left: -10px;
		padding-left: 0;
	}
}*/

/* - (&mdash;) */
.mdl-container ul.list-emdash li {
	margin-left: 0;
	padding-left: 22px;
}
.mdl-container ul.list-emdash li:before {
	content: '\2014';
	position: absolute;
	margin-left: -22px;
}
@media (min-width: 760px) {
	.mdl-container ul.list-emdash li {
		padding-left: 30px;
	}
	.mdl-container ul.list-emdash li:before {
		margin-left: -30px;
	}
}


/* ############################################################
	NAVIGATION
############################################################ */

/* Allgemeines */
ul.nav-mainmenu, ul.nav-mainmenu ul, ul.nav-mainmenu li,
ul.nav-secondmenu, ul.nav-secondmenu ul, ul.nav-secondmenu li,
ul.nav-thirdmenu, ul.nav-thirdmenu ul, ul.nav-thirdmenu li {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.nav-mainmenu li,
ul.nav-secondmenu li,
ul.nav-thirdmenu li {
	position: relative;
}

/*
1st-Menu
*/
@media (min-width: 1020px) {
	ul.nav-mainmenu {
		display: inline-block;
	}
		ul.nav-mainmenu li,
		ul.nav-mainmenu li a {
			display: inline-block;
			position: relative;
			height: 112px;
		}
		ul.nav-mainmenu li a {
			padding-left: 12px;
			padding-right: 12px;
			color: #286565
		}
		ul.nav-mainmenu li:hover a,
		ul.nav-mainmenu li.has-submenu:hover a,
		ul.nav-mainmenu li.active a {
			color: #ee832f;
		}
		/* Reset */
		ul.nav-mainmenu li.has-submenu:hover ul li a,
		ul.nav-mainmenu li.active ul li a {
			color: #fff;
		}
			/* Level 2 */
			ul.nav-mainmenu li ul {
				display: none;
				position: absolute;
				top: 112px;
				left: -6px;
				min-width: 246px;
				line-height: 1.5rem; /* 24px */
			}
			ul.nav-mainmenu li ul.sub-right {
				left: auto;
				right: -6px;
			}
				ul.nav-mainmenu li ul li {
					display: block;
					height: auto;
					background-color: rgba(238,131,47, .9);
				}
				ul.nav-mainmenu li ul li:first-child {
					padding-top: 16px;
				}
				ul.nav-mainmenu li ul li:last-child {
					padding-bottom: 13px;
				}
					/* Hyperlinks */
					ul.nav-mainmenu li ul li a,
					ul.nav-mainmenu li:hover ul li a {
						display: block;
						height: auto;
						padding: 7px 5px 7px 18px;
						color: #fff;
					}
					ul.nav-mainmenu li ul li a:hover,
					ul.nav-mainmenu li ul li.active a {
						font-weight: 700;
					}
}
@media (min-width: 1440px) {
	ul.nav-mainmenu li a {
		padding-left: 20px;
		padding-right: 20px;
	}
		/* Level 2 */
		ul.nav-mainmenu li ul {
			left: -5px;
			min-width: 246px;
		}
		ul.nav-mainmenu li ul.sub-right {
			left: auto;
			right: -5px;
		}
			ul.nav-mainmenu li ul li:first-child {
				padding-top: 16px;
			}
			ul.nav-mainmenu li ul li:last-child {
				padding-bottom: 13px;
			}
				/* Hyperlinks */
				ul.nav-mainmenu li ul li a,
				ul.nav-mainmenu li:hover ul li a {
					padding-left: 25px;
				}
}


/*
2nd-Menu
*/
ul.nav-secondmenu li {
	font-weight: 700;
}
	ul.nav-secondmenu li ul {
		margin-top: 14px;
	}
		ul.nav-secondmenu li ul li {
			font-weight: 400;
		}


/*
3rd-Menu
*/
ul.nav-thirdmenu {
	margin-top: 44px;
}


/*
Sprach-Menu
*/
ul.nav-language-xs,
ul.nav-language {
	display: inline-block;
	font-size: 1.0625rem; /* 17px */
	line-height: 1.1875rem; /* 19px */
}
	ul.nav-language-xs li,
	ul.nav-language-xs li a,
	ul.nav-language li,
	ul.nav-language li a {
		display: inline-block;
		position: relative;
	}
	ul.nav-language-xs li a,
	ul.nav-language li a {
		padding-left: 12px;
		padding-right: 12px;
		color: rgba(255,255,255, .6);
	}
	ul.nav-language-xs li a:hover,
	ul.nav-language-xs li.active a {
		color: rgba(255,255,255, 1);
	}
@media (min-width: 1020px) {
	ul.nav-language li a {
		color: #286565;
	}
	ul.nav-language li a:hover,
	ul.nav-language li.active a {
		color: #ee832f;
	}
}
@media (min-width: 1440px) {
	ul.nav-language li:last-child a {
		padding-right: 20px;
	}
}