
@-webkit-keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
            transform: translate3d(0, -100%, 0);
  }

  100% {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
  }
}

.fadeInDown {
  -webkit-animation-name: fadeInDown;
          animation-name: fadeInDown;
}


/*----------- ALLGEMEIN  ------------*/

* {margin: 0; padding: 0; border: 0; outline: 0; background-repeat: no-repeat; text-rendering: optimizeLegibility; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}

body{
	font-family: Lato;
	font-size:16px;
	font-weight: 400;
	color: #5D5D5D;
	overflow-x: hidden;
}


/*----------- HEADER  ------------*/
#header{
	position: relative;
	width: 100%;
	height: 80px;
	display: block;
	box-shadow: 0px 1px 3px 0px rgba(153, 153, 153, 0.8);
}

#header .inside {
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 2%;

}



#logo{
	width: 320px;
	height: auto;
	display: inline-block;
	float:left;
	margin-right: 4%;
	padding-top: 16px;
}

#logo a{
	text-decoration: unset;
	text-transform:uppercase;
	font-size: 13pt;
	color: #5D5D5D;
}

#logo a img{
	width: 300px;
}

#logo a span{
	margin-left: 10px;
	position: relative;
	bottom: 13px;
}



/* :header ::fbicon */
#fbicon {width: 120px; float: right; margin: 20px 0 0 1%;}
#sticky-header #fbicon {width: 30px; float: right; margin: 10px 0 0 1%;}
#fbicon img {width: 30%; height: auto; float: right; padding-left: 2%;}

.container-header-image {
	margin-top: 40px;
	min-width:100%;
	width: 100vw;
	max-height: 850px !important;
	left: calc(-50vw + 50%);
	position: relative;
}

.header-image > .image_container > img{
	width:100%;
	width: 100vw;
	height:auto;
}

#sprachenwechsler {
	width: 55px;
	position: absolute;
	margin-left: 94%;
	margin-top: -22px;
	font-size: 9pt;
}


#sprachenwechsler a{
	text-transform:uppercase;
	text-decoration: unset;
	color: #5D5D5D;
}

#sprachenwechsler a:hover {
	color: #cb0606;
}

/* Sticky-HEADER */

#sticky-header {
    position: fixed;
    z-index: 10000;
    left: 0;	
    top: 0;
    width: 100%;
	box-sizing: border-box;
	height: 50px;
	background-color: white;
	display: none;
	box-shadow: 0 0 2px 2px rgba(0,0,0,0.1);
	-webkit-animation: fadeInDown 1s;
	animation: fadeInDown 1s;
	transition: line-height 0.3s ease;
	-webkit-transition: line-height 0.3s ease;
	
}

#sticky-header #logo {
	padding: 0;
	width: 150px;
	height: 17px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background: url(../img/logo-sticky.png) no-repeat;
	background-size: 150px 17px;
	top: 16px;
	position: relative;
}

#sticky-header #logo a img{
	display: none;
}



#sticky-header .inside {
	position: unset;
	width: 1280px !important;
	height: 100%;
	margin: 0 auto;
}

#sticky-header .container-header-image {
	display: none;
}

#sticky-header #mainmenu {
	padding: 0;
	margin-top: 14px;
}

#sticky-header #sprachenwechsler {
	position: relative;
	top: -34px;
	margin-top: 0;
}

#sticky-header #mainmenu ul ul {
	padding-top: 30px;
}

#sticky-header #wrapper-level_2 {
	box-shadow: 0 0 2px 2px rgba(0,0,0,0.1);
}

/* Navigationsmenüs */

nav#mainmenu {
	display: inline-block;
	overflow:visible!important;
	/* line-height:2.2em; */
	letter-spacing:0;
	float:left;
	/* margin-top: 127px; */
	height: 33px;
	font-size:11pt;
	margin-right: 10px;
	padding-top: 32px;
}

nav#mainmenu ul {
	position:relative;
	display:flex;
	width:100%;
	white-space:nowrap;
	padding: 0;
}

nav#mainmenu ul ul {
	display:none;
	top:0px;
}

nav#mainmenu ul li {
	float:left;	
	text-transform:uppercase;
	margin-right:15px;
	margin-left: 15px;
	display: inline-block;
	text-align: left;
	list-style-type: none;
	z-index: 100000;
}

nav#mainmenu ul li a{
	text-decoration: unset;
	color: #5D5D5D;
}

nav#mainmenu ul li a:hover {
	color: rgb(147, 147, 147);

}

nav#mainmenu ul li a.active, nav#mainmenu ul li a.trail {
	    color:#DB8E02;
}


/*------------ 2 Level -------------------*/

#wrapper-level_2{
 	
	padding-bottom: 25px;
	text-align: center;		
	background-color: white;
	padding-top: 10px;
}

/* @-moz-document url-prefix() {
    #wrapper-level_2{
		padding-top: 20px;
	}
} */


nav#mainmenu ul li:hover > ul, nav#mainmenu ul li:hover > ul ul {
	display:flex;
}

nav#mainmenu ul ul {
	padding: 0;
	display:none;
	width:320px;
	/* height: 220px; */
	padding-top: 16px;
	margin-left: -34px;
	position:absolute;
	top:100%;
	z-index: 999;
	/*---- HIER PROZENTE ANPASSEN FALLS HEIGHT VERÄNDERT WIRD (TRANSPARENT/WEISS) ----*/
	background-color: transparent;
	/* background: linear-gradient(180deg, transparent 25%, white 25%	);  */
	
	overflow-y:visible;
}


nav#mainmenu ul ul li a:hover, nav#mainmenu ul ul li a.trail, nav#mainmenu ul ul li a.active {
	font-weight: normal;
}

nav#mainmenu ul ul li a{
	text-align: left;
	float: left;
	width: 100%;
	padding-left: 20px;
	text-transform:uppercase;
}

nav#mainmenu ul ul li {
	color: rgba(194, 0, 27, 0);
	width: 100%;
	height: 2em;
}

nav#mainmenu ul ul li.listbreak {
	clear: both;
}

nav#mainmenu ul ul ul {
	position:relative;
	left:0px;
	top:0;
	color:#fff;
	width: 240px;
	padding:0px;
	border-radius:0px;
	-webkit-box-shadow:none;	/* webkit browser*/ -moz-box-shadow:none;	/* firefox */ box-shadow:none;
}

#mobnav {
	display: none;
}


/*----------- CONTAINER(Hauptspalte)  ------------*/
#container{
	position: relative;
	max-width: 100%;
	margin: 0 auto 100px auto;
}

h1{
	text-transform:uppercase;
	font-family: Lato;
	font-size: 32px;
	font-size: 2rem;
	margin: 2% 0 2%  0;
}

.ce_revolutionslider h1 {font-size: 48px; font-size: 3rem;}

.ce_revolutionslider h1, .ce_revolutionslider h2, .ce_revolutionslider p {color: #FFFFFF;}
.ce_revolutionslider .black  h1, .ce_revolutionslider .black  h2, .ce_revolutionslider .black  p {color: #000000;}

h2{
	text-transform:uppercase;
	font-family: Lato;
	font-size: 24px;
	font-size: 1.5rem;
	margin: 4% 0 2% 0;
}

#footer h2{
	text-transform: none;
	font-family: Lato;
	font-size: 20px;
	font-size: 1.25rem
}

h3 {font-size: 20px; font-size: 1.25rem; border-bottom: 1px solid #efefef; padding: 0; font-weight: 400;}


.layout_upcoming h3 {margin-top: 20px;}
.layout_upcoming.first h3 {margin-top: 0;}


p {font-weight: 300; line-height: 26px;}
#footer p, #footer h2 {margin:0;}

.ce_revolutionslider p {font-size: 24px; font-size: 1.5rem;}

a {color: #DB8E02; text-decoration: none; font-weight: 300;}
a:hover {color: #865701; text-decoration: none;}


.event .date, .event .time, .event .location {font-weight: 300; line-height: 26px;}

figcaption {font-size: 12px; font-size: 0.75rem;}


/* <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< hi1
 * Listen
 * >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> hi1 */

.ce_text ul, .ce_text li, .ce_downloads ul, .ce_downloads li  {list-style-type: none; margin-left: 0; padding-left: 0; }
.ce_text ul, .ce_list ul, .ce_text ol, .ce_list ol {margin-bottom: 15px; list-style-type: none; }
.ce_text li, .ce_list li,.ce_downloads li, .ce_text ol, .ce_list ol {line-height: 1.6em; font-size: 16px; font-size: 1rem; font-weight: 300; padding-left: 1.5em;}
.ce_text ul li, .ce_list ul li, .ce_downloads ul li  {list-style-type: none; list-style-position: outside; font-weight: 300; line-height: 22px;}
.ce_text ol, .ce_list ol {list-style: decimal; padding-left: 25px;}
.ce_text ol ol, .ce_list ol ol {list-style: upper-alpha;}
.ce_text ol ol ol, .ce_list ol ol ol {list-style: lower-roman;}
.ce_text li::before {font-family: 'FontAwesome'; content: '\f105'; display: inline-block; margin-left: -1.3em; width: 1.3em; font-size: 18px; font-size: 1.125rem; font-weight: 300; }

#main .ce_downloads ul li::before, .ce_downloads li::before {font-family: 'FontAwesome'; content: '\f019'; display: inline-block; margin-left: -1.3em; width: 1.3em; font-size: 18px; font-size: 1.125rem; font-weight: 300; }

.ce_downloads ul li {line-height: 30px;}

#footer ul li::before {font-family: 'FontAwesome'; content: '\f105'; display: inline-block; margin-left: -0.8em; width: 0.8em; font-size: 18px; font-size: 1.125rem;  font-weight: 300; }
#footer ul li {padding-left: 1em;}



.hauptartikel {
	margin-top: 40px;
	display: block;
	width: 100%;
	position: relative;
}

.artikel-carousel {
	overflow: visible;
}



.bt-anfragen {
	/* margin-top: 40px; */
	/* margin-left: 83%; */
	width: 170px;
	height: 23px;
	position: absolute;
	background-color: #453C3C;
	text-align: center;
	padding-top: 3px;
	right: 0;
	top: 23px;
}

.bt-anfragen:hover{
	background-color: #a21515;
}

.bt-anfragen a {
	color: white;
	text-decoration: none;
	text-transform:uppercase;
}

.bt-weiteres {
	background-color: #fff;
	border: none;
	color: #5D5D5D;
	padding: 0;
	text-transform: uppercase;
	text-decoration: none;
	display: block;
	margin-bottom: 20px;
	margin-top: 20px;
}

.bt-weiteres a {
	color: #5D5D5D;
	text-transform: uppercase;
	text-decoration: none;
	width:100%;
}

.bt-weiteres a:hover{
	color: #cb0606;
}

.container-artikel-image {
	margin-top: 70px;
	min-width:100%;
	width: 100vw;
	max-height: 650px !important;
	left: calc(-50vw + 50%);
	position: relative;
}

.artikel-image > .image_container > img{
	width:100%;
	width: 100vw;
	height: auto;
}

.hauptartikel > .artikel-inline-image {
	margin-top: 40px;
	width: 100%;
	max-height: 600px;
}

.artikel-inline-image > .image_container > img{
	width:100%;
	height: auto;
}

.artikel-gallerie{
	width: 340px;
	height: 500px;
	display: inline-table;
}

.artikel-gallerie h3{
	text-transform: uppercase;
	font-family: Lato;
	font-size: 11pt;
	text-decoration: none;
	margin-bottom: 0;	
}

.artikel-gallerie p{
	line-height: 1.9em;
	margin-top: 5px	;
}

.artikel-gallerie p a {
	color: #5D5D5D;
	text-transform: uppercase;
	text-decoration: none;
	bottom: -15px;
	position: relative;
}

.artikel-gallerie p a:hover{
	color: #cb0606;
}

.artikel-gallerie figure img {
	width: 100%;
	height: 320px;
}


.carousel { 
	position:relative;
	min-height: 20px; 
	height:auto !important; 
	height: 20px;
	min-width:100%;
	width: 100vw;
	left: calc(-50vw + 50%);	
}

.carousel .next,
.carousel .prev { 
	display:none; 
	width:56px; 
	height:56px; 
	position:absolute; 
	bottom:35%;
	margin-top:-28px; 
	z-index:9999; 
	cursor:pointer;
	line-height: 1;
	width: 3vw;
	height: 3vw;
	font-size: 2.7vw;
	font-weight: bold;
	border: solid 4px white;
	text-align: center;
	color: white;
}
.carousel .prev {
	left: 2%;
}
.carousel .next { 
	left: unset;
	right: 4%;
	
}
.carousel li { 
	display:none; 
}
.carousel li img { 
	width:100%; 
	height:auto; 
	cursor: none;
}
.paging { 
	position:absolute; 
	z-index:9998; 
}
.paging > a { 
	display:block; 
	cursor:pointer; 
	width:40px; 
	height:40px; 
	float:left; 
	/* background:url(images/dots.png) 0px -40px no-repeat; */
}
.paging > a:hover,
.paging > a.current { 
	/* background:url(images/dots.png) 0px 0px no-repeat; */
}

.carousel ul li div figure {
	margin: 40px 10px;
}



/* <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< hi1
 * MODULE
 * >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> hi1 */


/* :ce_revoslider */


.mod_article  {max-width: 1280px; margin: 2% auto; padding: 0 2%;}
.mod_article.fullwidth {max-width: 100%; padding: 0; margin: 0;}
#footer .autogrid_wrapper {border-top: 1px solid #CCCCCC; padding-top: 2%;}
.autogrid_wrapper.article {max-width: 1280px; margin: 0 auto;}
.nopadding {margin: 0 auto;}
.nopadding h1{margin-bottom: 0; margin-top: 3%;}



/* <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< hi1
 * Forms
 * >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> hi1 */


input,
textarea,
select {
  padding: 2%;
  background-color: rgba(255,255,255,0.5);
  border:1px solid rgba(0,0,0,0.2);
  transition:all 0.15s linear 0s;
  width: 96%;
}

body.ie input.upload::-ms-value {
  padding:10px;
  background-color:#fff;
  border:1px solid #eee;
  transition:all 0.15s linear 0s;
  width: 100%;
}

label {
	margin-bottom: 3px;
	font-weight: 300;
}

form .widget input,
form .widget textarea,
form .widget select {
	width: 100%;
}

textarea {
	height: 240px;
}

input:hover:not([type="submit"]),
textarea:hover {
	 border:1px solid rgb(153,153,153);
}

input:focus,
textarea:focus {
  background-color:#fff;
  border:1px solid rgb(152,152,152);
  border-radius:0;
}

form .checkbox_container {
	overflow: hidden;
	margin-bottom: 2px;
}

input.checkbox {
	margin-right: 5px;
}

input.checkbox,
input.captcha {
	width: auto!important;
}

form div.widget {
  margin-bottom:20px;
}

form fieldset {
  padding:10px;
  border: 1px solid rgba(0,0,0,0.2);
}

form fieldset {
  margin-bottom:20px;
}

form fieldset legend {
  width:auto;
  padding-right:10px;
  padding-left:10px;
  background-color:rgb(152,152,152);
  color:#fff;
}

form select {
  padding:10px;
  border:1px solid rgba(0,0,0,0.2);
  border-radius: 0;
  line-height: 60px;
}

.chrome form select,
.safari form select {
	height: 35px;
}

form select option {
  padding-right:10px;
  padding-left:10px;
}

form select.multiselect option {
  padding-right:0;
  padding-left:0;
}

form .checkbox_container span,
form .widget-radio span {
  display: block;
  overflow: hidden;
  margin-bottom: 5px;
}

form .widget-radio input {
	width: auto;
	margin-right: 5px;
	margin-left: 3px;
}

form .widget-radio label {
	width: auto;
} 

form span.mandatory {
  color:#f00;
}

form .captcha_text {
	margin: 10px 0 15px 15px;
	color: red;
}

form p.error {
	color: red;
}

.android .widget-radio label,
.android .widget-checkbox label {
	position: relative;
	top: -3px;
}

.ios input[type=checkbox],
.ios input[type=radio] {
  -webkit-transform: scale(0.5);
  transform: scale(0.5);
  vertical-align: middle;
  position: relative;
  bottom: 1px;
}

.ie form .widget-radio input,
.ie form .widget-checkbox input {
	border: 0;
}

/* =============================================================================
 * submit input
 * ========================================================================== */

input.submit {
	display: inline-block;
	padding: 15px 20px;
	cursor:pointer;
	transition:all 0.2s ease-out 0s;
	width: auto;
	background: #DB8E02;
	color: #fff;
	border-radius: 3px;
	font-weight: bold;
	font-size: 0.8rem;
	min-width: 140px;
	text-align: center;
	position: relative;
	-webkit-appearance: none;
}

input.submit[type="submit"]:hover {
	background: #865701;
}





/* <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< hi1
 * Inhaltselemente 
 * >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> hi1 */


/* :ce_revoslider */
.ce_revolutionslider {background-color: #000000;}
.ce_revolutionslider .rs-container {margin: 0 auto;}



/*     --ce_video
------------------------------------------------- */
.responsive-video iframe {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}
.responsive-video {position: relative;padding-bottom: 56.25%; /* Default for 1600x900 videos 16:9 ratio*/padding-top: 0px;height: 0;overflow: hidden; }

/* :respo_iframe */

.respo_iframe {position:absolute; top:0; left:0; width:100%; height: 100%;}
.respo_iframe {position: relative;padding-bottom: 56.25%; /* Default for 1600x900 videos 16:9 ratio*/padding-top: 0px;height: 0;overflow: hidden; }
.respo_iframe div {width: 100%!important; height: auto!important; position: relative; display: block;}


/*----------- FOOTER  ------------*/




#footer img{
	width:65%;
	height:auto;
}


#article-footer {
	width: 100%;
	height: 300px;
	border-bottom: 1px solid rgb(229,229,229);
}
#article-footer div {
	padding-top: 10px;
}



/*----------- Breite beträgt höchstens 1024px  ------------*/
@media (max-width: 1024px) {
	/*----------- ALLGEMEIN  ------------*/
	html{
		overflow-x: hidden;
	}
	
	body{
		font-family: Lato;
		font-size:10pt;
		color: #5D5D5D;
	}


/*----------- HEADER  ------------*/
	#header {
		max-width: 100%;
	}
	
	#header .inside{
		max-width: 100%;
		padding-right: 20px;
		padding-left: 20px;
	}
	
	#container{
		max-width: 100%;
	}
	
	#container .inside{
		max-width: 100%;
	
	}
	
	#footer{
		max-width: 100%;
	}
	
	#footer .inside{
		max-width: 100%;
		padding-right: 20px;
		padding-left: 20px;
	}
	
	#footer img{
	width:40%;
	
}
	
	nav#mainmenu {
		margin-right: -28px;
		float: right;
	}
	
	/* #logo {
		display: block;
		float: left;
		width: 100%;
		height: auto;
		padding: 0;
	} */
	/* #logo a img{
		width: 120px;
		height: auto;
	}
	 */
	 
	nav#mainmenu ul li {
		margin-right: 30px;
	}
	
	#sticky-header #mainmenu {
		padding: 0;
		float: right;
		margin-top: 10px;
		margin-left: 20px;
		margin-right: 20px;
	}
	
	#sticky-header #mainmenu ul li {
		margin-right: 25px;
		
	}
	
	.container-header-image {
		display: inline-block;
	}
	
	.artikel-gallerie{
		width: 47vw;
		height: 68vw;
	}
	
	.artikel-gallerie figure img{
		height: 45vw;
	}
	
	#sprachenwechsler {
		display: none;
	}
	
}

@media (max-width: 768px) {
	html{
		overflow-x: hidden;
	}
	
	body{font-size:18px;}
		
	
	
	#header {
		height: unset;
	}
	
	#footer p {font-size:14px; line-height: 20px;}
	
	#mobnav{
		display: block;
		z-index:10000;
		/* position: absolute; */
		border: none;
	}
	
	.navbar-default {
		background-color: #fff;
	}
	
	/* .navbardefault .navbar-toggle:focus, .navbar-default .navbar-toggle:hover {
		background-color: #cb0606;
	} */ 
	
	.navbar-brand {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		padding: 45px 1%;
		height: 140px;
		width: 200px;
	}
	
	.navbar-brand > img {
		height: 60px;
		width: auto;
	}
	
	#fbicon {
		margin: 0;
		width: 140px;
		position: absolute;
		top: 10px;
		z-index: 100000;
		right: 10px;
	}
	
	.navbar-default .navbar-toggle {
		border-color: #fff;
	}
	
	.navbar-toggle {
		top: 64px;
		margin-top: 0;
		margin-right:0;
	}
	
	.navbar-toggle .icon-bar {
		width: 50px;
		background-color: #344834 !important;
		height: 5px;
	}
	
	.navbar-collapse {
		border: 1px solid transparent;
	}
	
	.navbar-nav .open {
		border-bottom: 1px solid transparent;
		border-top: 1px solid transparent;
		-webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
		box-shadow: inset 0 1px 0 rgba(255,255,255,.1);
		border-color: #e7e7e7;	
	}
	
	.navbar-default .navbar-nav > li > a {
		text-decoration: none;
	}
	
	.navbar-default .navbar-nav > li > a:focus, .navbar-default .navbar-nav > li > a:hover {
		color: #cb0606;
		background-color: transparent;
	}
	
	.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:focus, .navbar-default .navbar-nav > .open > a:hover {
		color: #cb0606;
		background-color: #e7e7e7;
	}
	
	.navbar-default .navbar-nav .open .dropdown-menu > li > a {
		text-decoration: none;
	}
	
	.navbar-default .navbar-nav .open .dropdown-menu > li > a:focus, .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover {
		color: #cb0606;
		background-color: transparent;
	}
	
	.navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover {
		color: #cb0606;
		background-color: #e7e7e7;
	}
	
	#sprachenwechsler {
		display: none;
	}
	#mainmenu {
		display: none !important;
	}
	
	#sticky-header {
		display: none !important;
	}
	#logo {
		display: none;
	}
	
	#main .ce_text {margin: 0 2%;}
	
	
	.container-header-image {
		margin-top: 0;
	}
	
	.bt-anfragen {
		margin-top: 10px;
		margin-bottom: 20px;
		top: 58%;
		right:0;
		position: relative;
	}
	
	#footer-info{
		display: block;
		width:100%;
		text-align: center;
		margin-bottom: 10%;
	}
	
	#footer-newsletter{
		display: block;
		width:100%;
		text-align: center;
		margin-bottom: 10%;
	}
	
	#footer-agb-datenschutz-impressum{
		width:100%;
		display: block;
		text-align: center;
		margin-bottom: 10%;
	}
	
}

@media (max-width: 480px) {
	.carousel .next, .carousel .prev {
		font-size: 6vw;
		width: 7vw;
		height: 7vw;
	}
	
}