@import url(fonts.css);
@import url(registrierung.css);

:root{
	--st-red-1: #FF4773;
    --st-red-2: #FF0A00;
    --st-red-3: #DB001C;
    --st-red-4: #B50024;
    --st-red-5: #85052E;
}

body{
	font-family:'ST Allegra', Arial, sans-serif;
	font-size: calc(14px + .25vw);
	font-weight: 400;
	line-height: 1.5;
	color: #686867;
	margin: 0;
}

h1{
	font-size: calc(24px + 2.5vw);
	font-weight: 500;
	line-height: 1.2;
	color: #111111;
	margin: 0 0 calc(30px + .1ex) 0;
}
h2{
	font-size: calc(16.668px + 1.083vw);
	font-weight: 400;
	line-height: 1.3;
	color: #333333;
	margin: 3rem 0 25px 0;
}
	h2.intro-headline{
		font-weight: 300;
	}
	#content-keyvisual + h2{
		font-weight: 400;
	}
h3{
	font-size: calc(16px + .5vw);
	font-weight: 500;
	line-height: 1.2;
	color: #111111;
	margin: 1.5em 0 1em 0;
}

p{
	margin: 1em 0;
}

a{
	color: var(--st-red-4);
	text-decoration: none;
/*	border-bottom: 1px solid rgba(218,32,44,.5);*/
	outline: none;
}
	a:hover,
	a:active{
		color: var(--st-red-5);
		border-bottom-color: var(--st-red-5);
	}
a.btn{
	color: #FFFFFF;
	font-weight: 500;
	display: inline-block;
	padding: 12px 20px;
	background-color: var(--st-red-4);
	border-radius: 4px;
}


a.download{
	border-bottom: 0 none;
}
	a.download:after{
		font-family: fontAwesome;
		content: '\f175';
		margin-left: 5px;
	}
a.link{
	color: #686867;
	border-bottom: 0 none;
}
	a.link:hover{
		color: var(--st-red-5);
	}
	a.link:before{
		font-family: fontAwesome;
		content: '\f105';
		color: var(--st-red-4);
		margin-right: 5px;
	}

img{
	max-width: 100%;
	/*image-rendering: -webkit-optimize-contrast;*/
}

strong,
b {
	font-weight: 600;
}

.hide{
	display: none;
}


#divContent ul{
	padding-left: 31px;
}

#divContent .ms-drop ul{
	padding-left: 10px;
}

#divContent ul li {
	position: relative;
	list-style-type: none;
}

#divContent ul li:before{
	content: '';
    width: 9.3px;
    height: 1px;
    background: var(--st-red-4);
    display: inline-block;
    position: absolute;
    left: -29.3px;
    top: 14px;
}

#divContent .ms-drop ul li:before{
	display: none;
}


/* *** HEADER *** */
.container.header.with-keyvisual{
	height: 100vh;
}

#divLogotext{
	position: relative;
	z-index: 300;
}

#logo{
	width: 80px;
	cursor: pointer;
}

#logo[src="/custom/img/microsite/2030_Template/logo.svg"] {
    width: unset;
    position: relative;
    top: 20px;
    left: 20px;
    margin-bottom: 20px;
}


/* --- HEADER -> Navigation --- */
/* --- HEADER -> Navigation -> Toggler --- */
.navbar-header .navbar-toggle span:not(#navigationToggleLabel){
	display: none;
}
	button.navbar-toggle{
		font-family:'ST Allegra', Arial, sans-serif;
		position: absolute;
		z-index: 400;
		top: 0;
		right: 0;
		padding: 0 15px;
		height: 60px;
		background-color: #FFFFFF;
		border: 0 none;
		border-left: 1px solid rgba(17, 17, 17, 0.1);
		border-bottom: 1px solid rgba(17, 17, 17, 0.1);
		outline: none;
	}
	button.navbar-toggle:not(.collapsed){
		position: fixed;
		border: 0 none;
	}
	button.navbar-toggle:after{
		font-family: fontAwesome;
		content: '\f0c9';
		font-size: 24px;
		float: right;
		margin: -5px 0 0 10px;
	}
	button.navbar-toggle:not(.collapsed):after{
		content: '\f00d';
	}

/* --- HEADER -> Navigation -> Navbar Collapsing Styles --- */
body.openNav{
	overflow-y: hidden;
}
	body.openNav:after{
		content: '';
		position: absolute;
		z-index: 200;
		top: 0;
		left: 0;
		width: 100%;
		height: 100vh;
		background-color: rgba(0,0,0,.5);
	}

#navbar-collapse{
	height: 0;
	overflow: hidden;
	clear: both;

	-webkit-transition:	height 500ms ease;
	-moz-transition:	height 500ms ease;
	-ms-transition:		height 500ms ease;
	-o-transition:		height 500ms ease;
	transition:			height 500ms ease;
}
	#navbar-collapse.in{
		height: 100vh !important;
	}

/* --- HEADER -> Navigation -> Navbar Styles --- */
#navbar-collapse{
	position: fixed;
	z-index: 300;
	overflow-y: scroll;
	top: 0;
	right: 0;
	width: 100%;
	max-width: 420px;
	background-color: #FFFFFF;
}
	#navbar-collapse #top-menu,
	#navbar-collapse #top-menu ul{
		list-style-type: none;
		margin: 0;
		padding: 0;
	}
	#navbar-collapse #top-menu{
		padding: 50px 25px 20px 25px;
		border-bottom: 1px solid rgba(17, 17, 17, 0.1);
	}
	#navbar-collapse #top-menu a{
		font-size: 18px !important;
		color: #111111;
		display: block;
		border-bottom: 0 none;
	}
	#navbar-collapse #top-menu > li > a{
		font-size: 28px;
		font-weight: 500;
		position: relative;
		padding-right: 10px;
	}
	#navbar-collapse #top-menu > li > a:after{
		font-family: fontAwesome;
		content: '\f105';
		font-size: 14px;
		color: var(--st-red-4);
		position: absolute;
		right: 0;
		top: 10px;
	}
	#navbar-collapse #top-menu ul li a{
		padding-left: 20px;
	}

	/**Link auf Home liegt auf Logo**/
/*	#divNavPunkt_B_HOME{ 
		display: none;
	}*/

/* --- HEADER -> Subnavigation --- */
#subnavigation{
	padding: 20px 25px;
}
	#subnavigation ul{
		list-style-type: none;
		margin: 0;
		padding: 0;
	}
	#subnavigation ul li a{
		font-size: 14px;
		font-weight: 500;
		color: #696969;
		display: block;
		border-bottom: 0 none;
	}
	#subnavigation ul li a.btn{
		color: #FFFFFF;
		margin-bottom: 10px;
	}

/* --- HEADER -> Subnavigation -> Language --- */
#subnavigation ul li#naviLanguage a.dropdown-toggle.open{
	color: #111111;
}
	#subnavigation ul li#naviLanguage a.dropdown-toggle:before{
		font-family: fontAwesome;
		content: '\f0ac';
		float: left;
		margin: 0px 5px 0 0;
	}
	#subnavigation ul li#naviLanguage a.dropdown-toggle:after{
		font-family: fontAwesome;
		content: '\f0d7';
		margin-left: 20px;
	}
	#subnavigation ul li#naviLanguage a.dropdown-toggle.open:after{
		content: '\f0d8';
	}

#naviLanguage .dropdown-menu{
	display: none;
	margin-top: 20px;
	border-top: 1px solid rgba(17, 17, 17, 0.1);
}
	#naviLanguage .dropdown-menu li a{
		padding: 10px 0;
		border-bottom: 1px solid rgba(17, 17, 17, 0.1);
	}
	#naviLanguage .dropdown-menu li.active a{
		color: var(--st-red-4);
	}

/* --- HEADER -> Keyvisual --- */
#keyvisual{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-size: cover;
	background-position: center;
}
	#keyvisual #teaser{
		color: #111111;
		font-size: calc(22px + 2vw);
		font-weight: 500;
		line-height: 1.1;
		position: absolute;
		bottom: 15px;
		left: 15px;
		padding: 15px 15px 90px 15px;
		width: calc(75% - 50px);
		min-height: 145px;
		background-color: #FFFFFF;
		border-bottom: 0 none;
	}
	#keyvisual #teaser .jump-in{
		font-size: calc(13.332px + .417vw);
		font-weight: 400;
		color: #696969;
		position: absolute;
		bottom: 50px;
		left: 15px;
	}
	#keyvisual #teaser .jump-in:hover{
		color: var(--st-red-5);
	}
	#keyvisual #teaser .jump-in:after{
		font-family: fontAwesome;
		content: '\f178';
		color: var(--st-red-4);
		position: relative;
		top: 2px;
		margin: 10px;

		-webkit-transition:	margin-left 250ms ease;
		-moz-transition:	margin-left 250ms ease;
		-ms-transition:		margin-left 250ms ease;
		-o-transition:		margin-left 250ms ease;
		transition:			margin-left 250ms ease;
	}
	#keyvisual #teaser .jump-in:hover:after{
		margin-left: 15px;
	}

/* --- HEADER -> Register Here Button --- */
#register-here-button{
	display: none;
}


/* *** CONTENT *** */
#divContent{
	margin: 20px 15px;
}

#lower-bar{
	padding: 20px 15px;
	background-color: rgba(200, 200, 200, 0.1);
	border-top: 1px solid #e5e5e5;
}

#lower-bar-new{
	padding: 20px 15px;
	background-color: rgba(200, 200, 200, 0.1);
	border-top: 1px solid #e5e5e5;
}

#more-tiles,
#sponsoren{
	padding: 20px 15px;
	background-color: #FFFFFF;
	border-top: 1px solid #e5e5e5;
}
	#more-tiles a,
	#sponsoren a{
		color: #696969;
		cursor: pointer;
		display: block;
		box-sizing: border-box;
		border: 0 none;
	}
	#more-tiles a:not(:last-child),
	#sponsoren a:not(:last-child){
		margin-bottom: 20px;
	}
	#more-tiles img,
	#sponsoren img{
		display: block;
		margin-bottom: 10px;
	}
	#more-tiles span.headline,
	#sponsoren span.headline{
		font-size: calc(16px + .5vw);
		font-weight: 500;
		line-height: 1.2;
		color: #111111;
		display: block;
		margin-bottom: 5px;
	}
	#more-tiles span.more,
	#sponsoren span.more{
		color: var(--st-red-4);
		display: block;
		margin-top: 10px;
	}
	#more-tiles a:hover span.more,
	#sponsoren a:hover span.more{
		color: var(--st-red-5);
	}
	#more-tiles span.more:after,
	#sponsoren span.more:after{
		font-family: fontAwesome;
		content: '\f178';
		margin-left: 15px;

		-webkit-transition:	margin-left 250ms ease;
		-moz-transition:	margin-left 250ms ease;
		-ms-transition:		margin-left 250ms ease;
		-o-transition:		margin-left 250ms ease;
		transition:			margin-left 250ms ease;
	}
	#more-tiles a:hover span.more:after,
	#sponsoren a:hover span.more:after{
		margin-left: 20px;
	}

#content-keyvisual{
	display: block;
	margin-top: 20px;
	width: 100%;
}


/* *** POWERLINE *** */
#powerline{
	padding: 20px 15px;
	background-color: #fff;
	border-top: 1px solid #e5e5e5;
}
	#powerline #tlnSchleifeContent:after{
		content: '';
		display: table;
		clear: both;
	}
	#powerline #tlnSchleifeContent > a{
		float: left;
		margin: 0 20px 20px 0;
		width: calc(50% - 10px);
		border: 0 none;
	}
	#powerline #tlnSchleifeContent > a:nth-child(2n+2){
		margin-right: 0;
	}
	#powerline #tlnSchleifeContent span.headline{
		color: #111111;
		white-space: nowrap;
		text-overflow: ellipsis;
		overflow: hidden;
		display: block;
		margin-bottom: 5px;
		width: 100%;
	}


/* *** FOOTER *** */
#divFooter{
	background-color: #f2f2f2;
	border-top: 1px solid #e5e5e5;
}
	#divFooter .headline{
		font-size: calc(14px + .25vw);
		font-weight: 500;
		cursor: pointer;
		display: block;
		margin-bottom: 10px;
	}
	#divFooter .footer-link{
		color: #686867;
		display: block;
		padding: .5em 0;
		border-bottom: 0 none;
	}
	#divFooter .footer-link:hover{
		color: var(--st-red-4);
	}
	#divFooter .footer-link:not(:last-child){
		border-bottom: 1px solid #e5e5e5;
	}
	#divFooter .social-media{
		list-style-type: none;
		margin: 10px 0 0 0;
		padding: 0;
	}
	#divFooter .social-media:after{
		content: '';
		display: table;
		clear: both;
	}
	#divFooter .social-media a{
		text-align: center;
		color: #333333;
		line-height: 40px;
		float: left;
		margin: 0 5px 5px 0;
		width: 40px;
		height: 40px;
		background-color: #FFFFFF;
		border-bottom: 0 none;
		border-radius: 3px;
	}
		#divFooter .social-media a.footer-icon_twitter {
			display: none !important;
		}
	#divFooter .social-media a:hover{
		color: #696969;
	}
	#divFooter .social-media a:before{
		font-family: fontAwesome;
		content: '\f08e';
	}
	#divFooter .social-media a.footer-icon_instagram:before{
		content: '\f16d';
	}
	#divFooter .social-media a.footer-icon_twitter {
	    display: flex;
	    align-items: center;
	    justify-content: center;
	}
		#divFooter .social-media a.footer-icon_twitter:before{
			content: '';
			background-image: url(/custom/img/microsite/1800_Template/icons/Twitter-X-Logo.svg);
		    width: 35px;
            height: 20px;
		    background-repeat: no-repeat;
		    background-size: cover;
		    background-position: center;
		    position: absolute;
		}
	#divFooter .social-media a.footer-icon_youtube:before{
		content: '\f16a';
	}
	#divFooter .social-media a.footer-icon_flickr:before{
		content: '\f16e';
	}
	#divFooter .social-media a.footer-icon_linkedin:before{
		content: '\f08c';
	}


#divFooter .downloads a.link:before{
	content: '\f178';
	transform: rotate(90deg);
    display: inline-block;
    margin-right: 0;
}

#divFooter .upper-footer > div{
	padding: 15px;
}

#divFooter .lower-footer{
	font-size: calc(11.332px + .167vw);
	margin-top: 30px;
	padding: 15px;
	border-top: 1px solid #e5e5e5;
}
	#divFooter .lower-footer span{
		font-weight: 500;
		color: #696969;
		display: block;
	}
	#divFooter .lower-footer a{
		color: #333333;
		display: inline-block;
		margin-right: 10px;
		border-bottom: 0 none;
	}
	#divFooter .lower-footer a:hover{
		color: var(--st-red-4);
	}

.footer-accordion{
	margin: 0 -15px;
	border-bottom: 1px solid #e5e5e5;
}
	.footer-accordion:first-child{
		margin-top: -15px;
	}
	.footer-accordion:last-child{
		margin-bottom: -15px;
	}
	.footer-accordion .footer-accordion-head{
		position: relative;
		padding: 1em 30px 1em 15px;
	}
	.footer-accordion .footer-accordion-head.headline{
		margin-bottom: 0 !important;
	}
	.footer-accordion .footer-accordion-head:after{
		font-family: fontAwesome;
		content: '\f107';
		position: absolute;
		right: 15px;
	}
	.footer-accordion .footer-accordion-head.open:after{
		content: '\f106';
	}
	.footer-accordion .footer-accordion-content{
		font-size: calc(12px + .25vw);
		display: none;
		padding: 0 15px 15px 15px;
	}


/* *** GRID *** */
.box-wrapper{
	margin-bottom: 20px;
}
	.box-wrapper.row-2 .col:not(:last-child),
	.box-wrapper.row-3 .col:not(:last-child){
		margin-bottom: 5px;
	}
	.box-wrapper .col h3{
		margin-top: 15px;
	}

/* *** ELEMENTS *** */
/* --- ELEMENTS -> Boxes --- */
.box-wrapper .box{
	padding: 15px;
	background-color: #FFFFFF;
	box-shadow: 0 10px 25px 0 rgba(0,0,0,.15);
}
	.box-wrapper .box h3{
		margin-top: 0;
	}

/* --- ELEMENTS -> Contact Boxes --- */
.contact-box span{
	display: block;
}
	.contact-box .icon:before{
		font-family: fontAwesome;
		display: inline-block;
		width: 25px;
	}
	.contact-box .icon.name:before{
		content: '\f007';
	}
	.contact-box .icon.function:before{
		content: '\f0c0';
	}
	.contact-box .icon.tel:before{
		content: '\f095';
	}
	.contact-box .icon.mobile:before{
		content: '\f10b';
	}
	.contact-box .icon.fax:before{
		content: '\f1ac';
	}
	.contact-box .icon.mail:before{
		content: '\f003';
	}

/* --- ELEMENTS -> Download Boxes, Link Boxes --- */
.box-download,
.box-link{
	position: relative;
	padding: 15px 15px 15px 165px !important;
}
	.box-download:before,
	.box-link:before{
		font-family: fontAwesome;
		font-size: 53px;
		display: flex;
		flex-direction: row;
		justify-content: center;
		align-items: center;
		position: absolute;
		top: 0;
		left: 0;
		width: 150px;
		height: 100%;
		border-right: 1px solid rgba(17, 17, 17, 0.1);
	}
	.box-download:before{
		content: '\f019';
	}
	.box-link:before{
		content: '\f0c1';
	}
	.box-download span.headline,
	.box-link span.headline{
		font-size: calc(16px + .5vw);
		font-weight: 500;
		line-height: 1.2;
		color: #111111;
		display: block;
		margin-bottom: 10px;
	}
	.box-download a,
	.box-link a{
		display: inline-block;
		border: 0 none;
	}

/* --- ELEMENTS -> Partner Boxes --- */
.slick-partner .slick-arrow:before{
	color: #686867;
}
	.slick-partner .slick-slide{
		outline: none;
	}
	.slick-partner .slick-slide .center{
		text-align: center;
	}
	.slick-partner .slick-slide img{
		display: inline;
	}

/* --- ELEMENTS -> Werbebanner Boxes --- */
.box .werbebanner{
	text-align: center;
	display: block;
	border-bottom: 0 none;
}

/* --- ELEMENTS -> Weather Boxes --- */
#weather #weather-days-wrapper > div:after{
	content: '';
	display: table;
	clear: both;
}
	#weather #weather-days-wrapper > div.day_0{
		margin-bottom: 20px;
		padding-bottom: 20px;
		border-bottom: 1px solid #e5e5e5;
	}
	#weather strong{
		display: block;
		margin-bottom: 10px;
	}
	#weather img{
		float: left;
		margin-right: 20px;
		width: 30%;
		max-width: 100px;
	}
	#weather span{
		float: left;
		width: calc(70% - 20px);
	}
	#weather span.temperature{
		font-size: 30px;
	}

#next-day-wrapper .slick-arrow:before{
	color: #686867;
}

/* --- ELEMENTS -> Overview Boxes --- */
.overview-box a{
	border: 0 none;
}

.overview-box a.nostyle{
	color: #111;
}

.overview-box span.title,
.overview-box span.subtitle{
	display: block;
}
.overview-box span.title{
	font-size: 24px;
    font-weight: 500;
    line-height: 1.2;
    color: #111;
    max-width: 90%;
    margin-bottom: 5px;
}

.overview-box span.subtitle{
	font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    position: relative;
    color: #696969;
    margin-bottom: 10px;
    max-width: 90%;
}

.overview-box a.more{
	color: var(--st-red-4);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
}
.overview-box a.more:hover{
	color: var(--st-red-5);
}

.overview-box a.more:after {
    font-family: fontAwesome;
    content: '\f178';
    margin-left: 15px;
}

/* --- ELEMENTS -> Programm --- */
.programm{
	margin-top: 40px;
}
	.programm h3{
		color: var(--st-red-4);
		margin: 0 0 10px 0;
	}
	.programm h3:not(:first-child){
		margin-top: 30px;
	}
	.programm .programmpunkt{
		margin-bottom: 10px;
	}
	.programm .programmpunkt h3{
		display: none;
	}
	.programm .programmpunkt .time{
		font-weight: 500;
	}
	.programm .programmpunkt .content > p:first-child{
		margin-top: 0;
	}
	.programm .programmpunkt .content > p:last-child{
		margin-bottom: 0;
	}

.referent-item-agenda:after{
	content: '';
	display: table;
	clear: both;
}
	.referent-item-agenda .i-agenda{
		text-align: center;
		cursor: pointer;
		float: left;
		margin-top: 4px;
		width: 30px;
	}
	.referent-item-agenda .i-agenda.open{
		background: var(--st-red-4);
    	color: #fff;
    	padding: 10px 0;
    	box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
    	border-radius: 10px 0 0 10px;
	}
	.referent-item-agenda .referent{
		float: left;
		width: calc(100% - 30px);
		position: relative;
	}
	.referent-item-agenda .referent .name{
		cursor: pointer;
	}
	.referent-item-agenda .referent .name:hover{
		color: var(--st-red-4);
	}
	.referent-item-agenda .referent .infoblock{
		/*display: none;*/
		margin-top: 10px;
		opacity: 0;
		visibility: hidden;
		position: absolute;
		left: 0px;
		transform: translate(0, 10px);
		background-color: #e2e2e2;
		padding: 1.5rem;
		box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);
		width: auto;
		top: 0px;
	}

	.referent-item-agenda .referent .infoblock.open{
		z-index: 10;
 		opacity: 1;
  		visibility: visible;
  		transform: translate(0, -20px);
  		transition: all 0.5s cubic-bezier(0.75, -0.02, 0.2, 0.97);
	}

	.referent-item-agenda .referent .infoblock .info-title{
		color: var(--st-red-4);
		margin-bottom: 5px;
		font-size: 22px;
	}

/* --- ELEMENTS -> Large List --- */
.large-list{
	margin-top: 40px;
}
	.large-list h4{
		margin: 0;
	}
	.large-list .large-item{
		margin-bottom: 10px;
		cursor: pointer;
	}
	.large-list .large-item img{
		display: block;
		margin-bottom: 10px;
		width: 100%;
	}
	.large-list .large-item .content > p:first-child{
		margin-top: 0;
	}
	.large-list .large-item .content > p:last-child{
		margin-bottom: 0;
	}

/* --- ELEMENTS -> Referenten List --- */
.referenten-list .referenten-item{
	cursor: pointer;

	-webkit-transition:	background-color 500ms ease;
	-moz-transition:	background-color 500ms ease;
	-ms-transition:		background-color 500ms ease;
	-o-transition:		background-color 500ms ease;
	transition:			background-color 500ms ease;
}
	.referenten-list .referenten-item:hover{
		background-color: rgba(17, 17, 17, 0.1);
	}


/* *** PAGE SPECIFIC *** */
/* --- PAGE SPECIFIC -> Login --- */
.site-login #formGroup_loginName,
.site-login #formGroup_password{
	width: 100%;
	max-width: 400px;
}
	.site-login #formGroup_password{
		margin-top: 20px;
	}
	.site-login input[type="text"],
	.site-login input[type="password"]{
		line-height: 1.3;
		padding: 14px;
		box-sizing: border-box;
		width: 100%;
		background-color: #f2f2f2;
		border: 1px solid #696969;
		outline: none;
	}
	.site-login input[type="text"]:focus,
	.site-login input[type="password"]:focus{
		background-color: #FFFFFF;
		box-shadow: 0 0 8px 1px rgba(0,0,0,.2);
		transition: box-shadow .5s,background-color .1s;
	}
	.site-login .password-field-base > .input-group:after{
		content: '';
		display: table;
		clear: both;
	}
	.site-login #msPasswordInput{
		float: left;
		margin-right: 10px;
		width: calc(100% - 57px);
	}
	.site-login #msPasswordInput + .input-group-btn .btn{
		float: left;
		width: 47px;
		height: 47px;
	}


@media only screen and (min-width: 401px){
	/* *** HEADER *** */
	/* --- HEADER -> Keyvisual --- */
	#keyvisual #teaser{
		left: 30px;
		bottom: 30px;
	}


	/* *** CONTENT *** */
	#divContent{
		margin: 30px 25px;
	}

	#lower-bar{
		padding: 30px 25px;
	}

	#lower-bar-new{
		padding: 30px 25px;
	}

	#more-tiles,
	#sponsoren{
		padding: 30px 25px;
	}


	/* *** POWERLINE *** */
	#powerline{
		padding: 30px 25px;
	}


	/* *** FOOTER *** */
	#divFooter .upper-footer > div{
		padding: 15px 25px;
	}

	#divFooter .lower-footer{
		padding: 15px 25px;
	}

	.footer-accordion{
		margin: 0 -25px;
	}
		.footer-accordion .footer-accordion-head{
			padding: 1em 40px 1em 25px;
		}
		.footer-accordion .footer-accordion-content{
			padding: 0 25px 15px 25px;
		}
}


@media only screen and (min-width: 581px){
	/* *** HEADER *** */
	/* --- HEADER -> Keyvisual --- */
	#keyvisual #teaser{
		padding: 30px 30px 90px 30px;
	}
		#keyvisual #teaser .jump-in{
			left: 30px;
		}


	/* *** POWERLINE *** */
	#powerline #tlnSchleifeContent > a{
		margin-right: 20px !important;
		width: calc(25% - 15px);
	}
		#powerline #tlnSchleifeContent > a:nth-child(4n+4){
			margin-right: 0 !important;
		}


	/* *** FOOTER *** */
	#divFooter .lower-footer span{
		display: inline-block;
		margin-right: 10px;
	}
}


@media only screen and (min-width: 751px){
	/* *** HEADER *** */
	#logo{
		width: 90px;
	}

	/* --- HEADER -> Keyvisual --- */
	#keyvisual #teaser{
		left: 55px;
		bottom: 55px;
	}


	/* *** CONTENT *** */
	#divContent{
		margin: 55px 60px;
	}

	#lower-bar{
		padding: 55px 60px;
	}

	#lower-bar-new{
		padding: 55px 60px;
	}

	#more-tiles,
	#sponsoren{
		padding: 55px 60px;
	}
		#more-tiles .more-tiles-inner > div,
		#sponsoren .sponsoren-inner > div{
			display: flex;
			flex-wrap: wrap;
		}
		#more-tiles .more-tiles-inner > div > a,
		#sponsoren .sponsoren-inner > div > a{
			margin: 0 5px 10px 0;
			width: calc(50% - 5px / 2);
		}
		#more-tiles .more-tiles-inner > div > a:nth-child(2n+2),
		#sponsoren .sponsoren-inner > div > a:nth-child(2n+2){
			margin-right: 0;
		}


	/* *** POWERLINE *** */
	#powerline{
		padding: 55px 60px;
	}


	/* *** FOOTER *** */
	#divFooter .headline{
		cursor: auto;
	}
		#divFooter .social-media a{
			font-size: 23px;
			line-height: 50px;
			width: 50px;
			height: 50px;
		}

	#divFooter .upper-footer{
		padding: 50px 60px 20px 60px;
	}
		#divFooter .upper-footer > div{
			padding: 0;
		}
		#divFooter .upper-footer > div.row-1{
			margin-right: 20px;
		}
		#divFooter .upper-footer > div.row-1,
		#divFooter .upper-footer > div.row-2{
			float: left;
			width: calc(50% - 10px);
		}
		#divFooter .upper-footer > div.row-3{
			clear: both;
			padding-top: 50px;
		}

	#divFooter .lower-footer{
		padding: 30px 60px;
	}

	.footer-accordion{
		border-bottom: 0 none;
	}
		.footer-accordion .footer-accordion-head:after{
			display: none;
		}
		.footer-accordion .footer-accordion-content{
			display: block !important;
		}

	.footer-accordion{
		margin: 0;
	}
		.footer-accordion .footer-accordion-head{
			padding: 1em 0;
		}
		.footer-accordion .footer-accordion-content{
			padding: 0 0 15px 0;
		}


	/* *** GRID *** */
	.box-wrapper.row-2,
	.box-wrapper.row-2 #tlnSchleifeContent{
		display: flex;
		flex-wrap: wrap;
	}
		.box-wrapper.row-2 #tlnSchleifeContent{
			width: 100%;
		}
		.box-wrapper.row-2:after{
			content: '';
			display: table;
			clear: both;
		}
		.box-wrapper.row-2 .col{
			box-sizing: border-box;
			margin: 0 25px 25px 0 !important;
		}
		.box-wrapper.row-2  .col{
			width: calc(50% - 25px / 2);
		}
		.box-wrapper.row-2  .col:nth-child(2n+2){
			margin-right: 0 !important;
		}
}


@media only screen and (min-width: 1001px){
	/* *** HEADER *** */
	#divLogotext{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		background-color: #FFFFFF;
		box-shadow: 0 1px 35px rgba(0,0,0,.05);
	}
		#divLogotext:after{
			content: '';
			display: table;
			clear: both;
		}

	#logo{
		float: left;
	}

    #logo[src="/custom/img/microsite/2030_Template/logo.svg"] {
        position: relative;
        top: 34px;
        left: 64px;
        margin-right: 64px;
    }


	/* --- HEADER -> Navigation --- */
	/* --- HEADER -> Navigation -> Toggler --- */
	.navbar-header{
		display: none;
	}

	/* --- HEADER -> Navigation -> Navbar Collapsing Styles --- */
	body.openNav{
		overflow-y: auto;
	}

	#navbar-collapse,
	#navbar-collapse.in{
		height: auto !important;
		max-height: 90px;
	}

	/* --- HEADER -> Navigation -> Navbar Styles --- */
	.navbar.navbar-default{
		float: left;
		/* width: calc(100% - 90px); */
		width: calc(100% - 210px);
	}

	#navbar-collapse{
		position: relative;
		overflow: visible;
		top: auto;
		right: auto;
		width: calc(100% - 90px);
		max-width: none;
		background-color: transparent;
	}
		#navbar-collapse #top-menu{
			padding: 0 25px;
			border-bottom: 0 none;
		}
		#navbar-collapse #top-menu:after{
			content: '';
			display: table;
			clear: both;
		}
		#navbar-collapse #top-menu a{
			color: #333333;
		}
		#navbar-collapse #top-menu > li{
			position: relative;
			float: left;
			padding: 0 15px;
		}
		#navbar-collapse #top-menu > li > a{
			font-size: calc(12.668px + .333vw);
			float: left;
			padding: 33px 0px;
			height: 24px;
		}
		#navbar-collapse #top-menu > li > a:hover{
			color: var(--st-red-4);
		}
		#navbar-collapse #top-menu > li.open > a,
		#navbar-collapse #top-menu > li.active > a{
			color: var(--st-red-4);
			padding-bottom: 31px;
			border-bottom: 2px solid var(--st-red-4);
		}
		body.openNav #navbar-collapse #top-menu > li.active > a{
			color: #333333;
			padding-bottom: 33px;
			border-bottom: 0 none;
		}
		#navbar-collapse #top-menu > li > a:after{
			display: none;
		}
		#navbar-collapse #top-menu li ul.dropdown-menu{
			display: none;
			position: absolute;
			top: 110px;
			left: 10px;
			padding: 25px 40px;
			width: 230px;
			background-color: #FFFFFF;
		}
		#navbar-collapse #top-menu li.open .dropdown-toggle:before{
			content: '';
			position: absolute;
			left: calc(50% - 5px);
			bottom: -22px;
			border-right: 10px solid transparent;
			border-bottom: 10px solid #FFFFFF;
			border-left: 10px solid transparent;
		}
		#navbar-collapse #top-menu li.open ul.dropdown-menu{
			display: block;
		}
		#navbar-collapse #top-menu ul li a{
			padding-left: 0;
		}
		#navbar-collapse #top-menu li ul.dropdown-menu > li.active a,
		#navbar-collapse #top-menu li ul.dropdown-menu > li > a:hover{
			color: var(--st-red-4);
		}
		#navbar-collapse #top-menu ul li a:before{
			font-family: fontAwesome;
			content: '\f105';
			color: var(--st-red-4);
			margin: 0 10px 0 0;
		}

	/* --- HEADER -> Subnavigation --- */
	#subnavigation{
		margin-left: -80px;
		padding: 0;
	}
		#subnavigation #subnavigation-toggler{
			text-align: center;
			line-height: 90px;
			position: absolute;
			top: 0;
			right: 0;
			width: 89px;
			height: 90px;
			border-left: 1px solid rgba(17, 17, 17, 0.1);
		}
		#subnavigation #subnavigation-toggler:after{
			font-family: fontAwesome;
			content: '\f141';
			font-size: 38px;
			color: #7f7f7f;
		}
		#subnavigation #subnavigation-toggler.open:after{
			content: '\f142';
			color: var(--st-red-4);
		}
		#subnavigation ul{
			text-align: right;
			position: relative;
			z-index: 10;
			display: none;
			padding: 20px 10px 10px 10px;
			background-color: #FFFFFF;
			border-top: 1px solid rgba(17, 17, 17, 0.1);
		}
		#subnavigation ul li{
			display: inline-block;
			vertical-align: middle;
		}
		#subnavigation ul li a{
			display: inline-block;
			padding: 0 10px;
		}
		#subnavigation > ul > li:not(:last-child) > a{
			border-right: 1px solid #f2f2f2;
		}
		#subnavigation ul li a.btn{
			margin: 0;
			position: absolute;
		    top: 115px;
		    right: 50px;
		    border-radius: 50%;
		    height: auto;
		    border: none;
		    text-align: center;
		    font-size: 25px;
		    width: 100px;
		    line-height: 30px;
		    padding: 40px 20px;
		    transition:all 500ms;
		}

		#subnavigation ul li a.btn:hover{
			color: var(--st-red-4);
			background: #fff;
		}

	/* --- HEADER -> Subnavigation -> Language --- */
	#subnavigation ul li#naviLanguage{
		position: relative;
	}
		#subnavigation ul li#naviLanguage a.dropdown-toggle.open{
			color: #696969;
		}
		#subnavigation ul li#naviLanguage a.dropdown-toggle:after{
			margin-left: 10px;
		}

	#naviLanguage .dropdown-menu{
		text-align: left;
		position: absolute;
		right: 0;
		margin-top: 20px;
		padding: 0;
		width: 320px;
		background-color: #FFFFFF;
		border-top: 0 none;
		box-shadow: 0 10px 50px 0 rgba(0,0,0,.25);
	}
		#naviLanguage .dropdown-menu:after{
			content: '';
			position: absolute;
			top: -10px;
			right: 40px;
			border-right: 10px solid transparent;
			border-bottom: 10px solid #FFFFFF;
			border-left: 10px solid transparent;
		}
		#naviLanguage .dropdown-menu li{
			display: block;
		}
		#naviLanguage .dropdown-menu li a{
			display: block;
			padding: 15px 25px;
		}
		#naviLanguage .dropdown-menu li:last-child a{
			border-bottom: 0 none;
		}
		#naviLanguage .dropdown-menu li a:hover{
			color: var(--st-red-4);
			background-color: #fbfbfb;
		}

	/* --- HEADER -> Register Here Button --- */
	#register-here-button-mobile{
		display: none !important;
	}

	#register-here-button{
		display: block;
	}
		#register-here-button a{
			font-size: 25px;
			text-align: center;
			line-height: 30px;
			color: #FFFFFF;
			position: fixed;
			top: 115px;
			right: 50px;
			padding: 40px 20px;
			width: 100px;
			background-color: var(--st-red-4);
			border-radius: 50%;

			-webkit-transition:	top 500ms ease;
			-moz-transition:	top 500ms ease;
			-ms-transition:		top 500ms ease;
			-o-transition:		top 500ms ease;
			transition:			top 500ms ease;
		}
		#register-here-button.scroll a{
			top: 50px;
		}


	/* *** CONTENT *** */
	#divContent{
		margin: 75px 60px 100px 60px;
	}
		.container.header:not(.with-keyvisual) + #divContent{
			margin-top: 125px;
		}

	#lower-bar{
		padding: 75px 60px 100px 60px;
	}

	#lower-bar-new{
		padding: 75px 60px 100px 60px;
	}

	#more-tiles,
	#sponsoren{
		padding: 75px 60px 100px 60px;
	}
		#more-tiles a,
		#sponsoren a{
			font-size: 16px;
		}
		#more-tiles .more-tiles-inner > div > a,
		#sponsoren .sponsoren-inner > div > a{
			margin: 0 5px 40px 0 !important;
			width: calc(100% / 3 - 10px / 3);
		}
		#more-tiles .more-tiles-inner > div > a:nth-child(3n+3),
		#sponsoren .sponsoren-inner > div > a:nth-child(3n+3){
			margin-right: 0 !important;
		}


	/* *** POWERLINE *** */
	#powerline{
		padding: 15px 60px;
	}
		#powerline.hasHeadlines{
			padding-top: 40px;
		}
		#powerline #tlnSchleifeContent{
			display: flex;
		}
		#powerline #tlnSchleifeContent > a,
		#powerline #tlnSchleifeContent > a:nth-child(4n+4){
			position: relative;
			flex: 1;
			float: none;
			margin: 0 10px 0 0 !important;
		}
		#powerline #tlnSchleifeContent > a:last-child{
			margin-right: 0 !important;
		}
		#powerline #tlnSchleifeContent span.headline{
			position: absolute;
			top: -30px;
			margin-bottom: 0;
		}
		#powerline #tlnSchleifeContent img{
			max-height: 60px;
		}

	#powerline.fixed{
		position: fixed;
		z-index: 100;
		bottom: 0;
		width: calc(100% - 120px);
		box-shadow: 0 10px 25px 0 rgba(0,0,0,.15);
	}


	/* *** FOOTER *** */
	#divFooter .upper-footer > div{
		float: left;
		width: calc(100% / 3 - 80px / 3) !important;
	}
		#divFooter .upper-footer:after{
			content: '';
			display: table;
			clear: both;
		}
		#divFooter .upper-footer > div:not(:last-child){
			margin-right: 40px;
		}
		#divFooter .upper-footer > div.row-3{
			clear: none;
			padding-top: 0;
		}


	/* *** GRID *** */
	.box-wrapper.row-3,
	.box-wrapper.row-3 #tlnSchleifeContent{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
		.box-wrapper.row-3 #tlnSchleifeContent{
			width: 100%;
		}
		.box-wrapper.row-3:after{
			content: '';
			display: table;
			clear: both;
		}
		.box-wrapper.row-3 .col{
			box-sizing: border-box;
			margin: 0 25px 25px 0 !important;
		}
		.box-wrapper.row-3 .col{
			width: calc(100% / 3 - 50px / 3);
			flex-grow: 1;
			max-width: 390px;
		}
		/*.box-wrapper.row-3 .col:nth-child(3n+3){*/
		.box-wrapper.row-3 .col:last-child{
			margin-right: 0 !important;
		}


	/* *** ELEMENTS *** */
	/* --- ELEMENTS -> Partner Boxes --- */
	#lower-bar .col{
		position: relative;
		padding-bottom: 30px;
	}
		#lower-bar a.bottom{
			position: absolute;
			bottom: 15px;
		}
		#lower-bar .slick-slider{
			position: static;
		}
		#lower-bar .slick-slider .slick-prev{
			left: -10px;
		}
		#lower-bar .slick-slider .slick-next{
			right: -10px;
		}

	.slick-partner{
		height: calc(100% - 30px);
	}
		.slick-partner .slick-slider,
		.slick-partner .slick-track{
			height: 100%;
		}
		.slick-partner .slick-slide img{
			display: block;
			margin: 0 10px;
			width: calc(100% - 20px);
		}

	/* --- ELEMENTS -> Werbebanner Boxes --- */
	.box .werbebanner img{
		display: block;
		width: 100%;
		height: 250px;
		object-fit: cover;
	}

	/* --- ELEMENTS -> Programm --- */
	.programm .programmpunkt .content-wrapper{
		display: flex;
	}
		.programm .programmpunkt .time{
			margin: -15px 15px -15px -15px;
			padding: 15px;
			width: 150px;
			border-right: 1px solid rgba(17, 17, 17, 0.1);
		}
		.programm .programmpunkt .content{
			width: calc(100% - 165px);
		}

	/* --- ELEMENTS -> Large List --- */
	.large-list .large-item .content-wrapper{
		display: flex;
	}
		.large-list .large-item .img{
			margin: -15px 15px -15px -15px;
			padding: 0px;
			width: 250px;
			border-right: 1px solid rgba(17, 17, 17, 0.1);
		}
		.large-list .large-item img{
			margin-bottom: 0;
		}
		.large-list .large-item .content{
			width: calc(100% - 215px);
		}
}


@media only screen and (min-width: 1201px){
	/* *** HEADER *** */
	/* --- HEADER -> Keyvisual --- */
	#keyvisual #teaser-wrapper{
		position: relative;
		margin: 75px auto 100px auto;
		max-width: 800px;
		height: calc(100% - 75px);
	}
		#keyvisual #teaser{
			left: 0;
			bottom: 200px;
			font-size:54px;
			line-height:65px;
		}


	/* *** CONTENT *** */
	#divContent{
		margin: 75px auto 100px auto;
		max-width: 800px;
	}
		.container.header:not(.with-keyvisual) + #divContent{
			margin-top: 225px;
		}

	#lower-bar{
		padding: 75px 0 100px 0;
	}
		#lower-bar .lower-bar-inner{
			margin: 0 auto;
			max-width: 800px;
		}

	#lower-bar-new{
		padding: 75px 0 100px 0;
	}
		#lower-bar-new .lower-bar-inner{
			margin: 0 auto;
			max-width: 800px;
		}

	#more-tiles,
	#sponsoren{
		padding: 75px 0 100px 0;
	}
		#more-tiles .more-tiles-inner,
		#sponsoren .sponsoren-inner{
			margin: 0 auto;
			max-width: 800px;
		}


	/* *** POWERLINE *** */
	#powerline{
		padding: 15px 0;
	}
		#powerline.fixed{
			width: 100%;
		}
		#powerline .powerline-inner{
			margin: 0 auto;
			max-width: 800px;
		}


	/* *** FOOTER *** */
	#divFooter .upper-footer{
		margin: 0 auto;
		max-width: 800px;
	}

	#divFooter .lower-footer{
		margin: 0 auto;
		max-width: 800px;
	}
}


@media only screen and (min-width: 1391px){
	/* *** HEADER *** */
	/* --- HEADER -> Navigation -> Navbar Styles --- */
	.navbar.navbar-default{
		/* width: calc(100% - 380px); */
		width: calc(100% - 510px);
	}

	/* --- HEADER -> Subnavigation --- */
	#subnavigation{
		float: left;
		margin-left: 0;
		/* width: 290px; */
		width: 300px;
	}
		#subnavigation #subnavigation-toggler{
			display: none;
		}
		#subnavigation > ul{
			display: block !important;
			padding: 24px 0 13px 0;
			border-top: 0 none;
		}
		#subnavigation > ul > li > a{
			margin: 12px 0;
		}

    #logo[src="/custom/img/microsite/2030_Template/logo.svg"] + nav + div#subnavigation {
        margin-left: -64px;
    }

	/* --- HEADER -> Keyvisual --- */
	#keyvisual #teaser-wrapper{
		max-width: 1200px;
	}
		#keyvisual #teaser{
			width: 500px;
			padding: 36px 50px 90px 50px;
		}

			#keyvisual #teaser .jump-in {
			    left: 50px;
			}


	/* *** CONTENT *** */
	#lower-bar .lower-bar-inner{
		max-width: 1200px;
	}

	#lower-bar-new .lower-bar-inner{
		max-width: 1200px;
	}

	#more-tiles .more-tiles-inner,
	#sponsoren .sponsoren-inner{
		max-width: 1200px;
	}


	/* *** POWERLINE *** */
	#powerline .powerline-inner{
		max-width: 1200px;
	}


	/* *** FOOTER *** */
	#divFooter .upper-footer,
	#divFooter .lower-footer{
		max-width: 1200px;
	}
}

@media only screen and (min-width: 1492px){
	/* *** HEADER *** */
	#divLogotext{
		height: 90px;
	}

	#logo{
		width: 160px;
	}

	/* --- HEADER -> Navigation -> Navbar Styles --- */
	.navbar.navbar-default{
		/* width: calc(100% - 480px); */
	}
}

@media only screen and (min-width: 1600px){
	body{
		font-size: 18px;
	}

	h1{
		font-size: 64px;
	}
	h2{
		font-size: 32px;
	}
	h3{
		font-size: 24px;
	}
}

@media screen and (-webkit-min-device-pixel-ratio:0) and (min-resolution:.001dpcm) {
	img{
		image-rendering: -webkit-optimize-contrast;
	}
}