
/* frank-ruhl-libre-regular - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Frank Ruhl Libre';
	font-style: normal;
	font-weight: 400;
	src: url('fonts/frank-ruhl-libre-v20-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* frank-ruhl-libre-500 - latin */
  @font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Frank Ruhl Libre';
	font-style: normal;
	font-weight: 500;
	src: url('fonts/frank-ruhl-libre-v20-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* frank-ruhl-libre-600 - latin */
  @font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Frank Ruhl Libre';
	font-style: normal;
	font-weight: 600;
	src: url('fonts/frank-ruhl-libre-v20-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* frank-ruhl-libre-700 - latin */
  @font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Frank Ruhl Libre';
	font-style: normal;
	font-weight: 700;
	src: url('fonts/frank-ruhl-libre-v20-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
  /* frank-ruhl-libre-800 - latin */
  @font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Frank Ruhl Libre';
	font-style: normal;
	font-weight: 800;
	src: url('fonts/frank-ruhl-libre-v20-latin-800.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
  }
  
:root 
{
	--blue: #00408a;
	--darkblue: #142445;
	--dark: #777777;
	--grey: #f6f6f6;
	--midgrey: #989898;
	--darkgrey: #a2a2a2;
	--copper: #b55a30;
	--copper-alt: #ca8a6d;
}

* 
{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

body 
{
	font-size: 1.1em;
	color: var(--dark);
	font-family: 'Corporate S Pro', sans-serif;
	font-weight: 300;
	line-height: 1.5;
	overflow-x: hidden;
	position: relative;
}

::selection 
{
	background-color: var(--blue);
 	color: #fff;
}

::-moz-selection 
{
  	background-color: var(--blue);
 	color: #fff;
}

h1, h2, h3, h4
{
	line-height: 1.4;
	font-weight: 400;
	font-family: 'Frank Ruhl Libre';
}

h1
{
	font-size: 1.9em;
}

#contentBox h1
{
	color: var(--blue);
	font-weight: 700;
}

h2, h4
{
	font-size: 1.7em;
}

h4
{
	margin-bottom: 0.5em;
}

h3
{
	font-size: 1.5em;
}

h1 + p, h1 + ul, h2 + p, h2 + ul, h3 + p, h3 + ul
{
	margin-top: 0.5em;
}

p + p, ul + p
{
	margin-top: 1em;
}

#linesBlue
{
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -10;
}

#header-top {
	background: #fff;
	padding: 25px;
	text-align: center;
}

#header {
	background: url(header-lines-big.jpg) no-repeat;
	background-position: bottom center;
}

.container {
	max-width: 1400px;
	margin: 0 auto;
}

.cta-box {
	background: #fff;
	padding: 50px;
	margin: 0 auto;
	max-width: 700px;
}

#topSpace
{
	width: 100%;
	padding-bottom: 12%;
}

.cbtn {
	display: inline-block;
  text-align: center;
  line-height: 1.45;
  color: #fff !important;
  padding: 0.5em 2.5em;
  transition: all 0.2s;
  text-decoration: none;
  background-color: var(--copper) !important;
  border: none !important;
  }

  .cbtn:hover {
	background-color: var(--copper-alt) !important;
  }


  .btn:hover {
	opacity: 0.8;
  }

.wrap
{
	max-width: 1400px;
	margin: 0 auto;
	position: relative;
	padding: 0 25px;
	z-index: 10;
}
/*
#headerTitle
{
	position: absolute;
	width: 100%;
	padding: 0px 20%;
	top: 50%;
	transform: translateY(-50%);
	left: -40px;
}
*/

#headerTitle
{
	padding: 17px 18% 0;

}


@media (min-width: 1500px) {
#headerTitle
{
	padding: 17px 23% 0;
}
}




#header a {display: inline-block;}

#header .wrap
{
	height: 85px;
	padding: 0px;
	max-width: 100%;
	width: 100%;
}



#content
{
	padding: 80px 0px 0px;
	background-color: #b2c9d3;
}

#content .text:first-child
{
	margin-top: 0;
}

.programBox
{
	padding: 20px 25px;
	background-color: #fff;
}

.time
{
	color: var(--blue);
}

.programTitle
{
	color: var(--blue);
	font-size: 1.2em;
	font-weight: 500;
	padding-right: 25px;
	line-height: 1.3;
}

.time + .programTitle
{
	margin-top: 11px;
}

.program + .program
{
	margin-top: 20px;
}

strong
{
	font-weight: 700;
}

.programFlex
{
	display: flex;
	align-items: center;
	margin-top: 20px;
}

.programFlex p
{
	font-size: 0.9em;
	color: #658cb8;
	line-height: 1.3em;
}
.programImgItem {
	padding-right: 30px;
}

.programFlex p strong
{
	font-size: 1.3em;
	color: var(--copper);
}

.programFlexItem
{
	width: 50%;
}

.programImgFlex
{
	display: flex;
	align-items: center;
}

.programImg
{
	width: 100px;
	height: 100px;
	display: block;
	border-radius: 1000px;
	background-color: var(--grey);
	background-size: cover;
	background-position: center;
	margin-right: 25px;
}

#start-buttons-top {margin-top: 0;}

.buttonFlex .flex-items-inline {display: flex;flex-wrap: wrap; margin-top: 10px; margin-left: -15px;}
.buttonFlex .flex-items-inline a {margin-left: 20px;}
.buttonFlex .flex-items-inline a:nth-child(2) {margin-left: auto;}



#content .text
{
	color: #fff;
}

.text
{
	margin: 80px 0px;
}

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

.form-success p {color: var(--blue);}

.text.withButton p a, .buttonFlex a, .text .buttonArea p a, .blue-btn
{
	display: inline-block;
	text-align: center;
	line-height: 1.45;
	color: var(--copper)!important;
	background-color: #fff;
	padding: 0.5em 2.5em;
	transition: all 0.2s;
	text-decoration: none;
}

.text .twoText .buttonArea p a
{
	background-color: #fff!important;
	color: var(--blue)!important;
}

.text.withButton p a:hover, .buttonFlex a:hover, .text .buttonArea p a:hover, .blue-btn:hover, .text .twoText .buttonArea p a:hover
{
	opacity: 0.8;
}

.buttonFlex a.blue, .text .buttonArea p a, .text.withButton.blue p a, .blue-btn
{
	background-color: var(--copper);
	color: #fff!important;
}

.buttonFlex a.blue:hover
{
	background-color: var(--copper-alt);
	color: #fff !important;
	opacity: 1;
}

.text .buttonArea p a:hover, .text.withButton.blue p a:hover
{
	background-color: var(--darkblue);
	opacity: 1;
}

.buttonFlex a
{
	margin-left: 5px;
	margin-top: 10px;
}

.buttonFlex
{
	margin-left: -5px;
	margin-top: -10px;
	flex-wrap: wrap;
}

.withButton
{
	margin-top: -60px;
}

#linesWhite
{
	width: 100%;
	margin-bottom: -10px!important;
	margin-top: -100px;
	position: relative;
	z-index: 0;
}

#partner
{
	padding: 80px 0px;
	background-color: #fff;
	color: var(--blue);
}

#footer
{
	padding: 35px 0px 32px;
	background-color: var(--grey);
	text-align: center;
	margin-left: -15px;
	font-size: 0.8em;
}

#footerList li
{
	display: inline-block;
	margin-left: 30px;
    font-size: 16px;
}
#footerList li:first-child {margin: 0;}

#footerList li a
{
	color: var(--midgrey);
	text-decoration: none;
	transition: all 0.2s;
}

#footerList li a:hover
{
	opacity: 0.8;
}

.textFlex
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: -15px;
	margin-left: -20px;
}

.textFlexItem
{
	margin-top: 15px;
	padding-left: 20px;
}

#content .text + .program
{
	margin-top: -60px;
}


#slideshowInner
{
	position: relative;
	width: 100%;
	padding-bottom: 50%;
}

.slide
{
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: var(--grey);
	background-size: cover;
}

.slideContent .big,
.slideContent .small
{
display: block;
}


.slideContent
{
	position: absolute;
	bottom: 65px;
	left: 6.5%;
	z-index: 1000;
}

.big, .small
{
	display: inline;
	font-size: 1.9em;
	color: var(--blue);
	line-height: 1.45;
	background-color: #fff;
	padding: 14px 40px 14px 25px;
	font-weight: 500;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
	-moz-box-decoration-break: clone;
}

.big {
	font-family: 'Frank Ruhl Libre';
}

.headerBig
{
	font-size: 1.9em;
	color: var(--blue);
	font-weight: 500;
    line-height: 1.1em;
}

.headerSmall
{
	font-size: 1.2em;
	color: var(--blue);
	font-weight: 500;
}

.small
{
	font-size: 1.2em;
	font-weight: 300;
	background-color: var(--copper);
	color: #fff;
}

.sponsor img
{
	height: 50px;
	filter: grayscale(1);
	opacity: 0.5;
	transition: all 0.2s ease;
}

.sponsor:hover img
{
	filter: grayscale(0);
	opacity: 1;
}

#sponsors
{
	margin-top: 40px;
}

.sponsor
{
	padding: 20px;
	margin: 0px 10px;
}

#contentBox
{
	padding: 35px 40px;
	background-color: #fff;
}

#contentBox .text
{
	color: var(--blue);
}

#contentBox .wrap
{
	padding: 0;
}

#contentBox h2, #contentBox h3
{
	color: var(--blue);
}

.subpage-4 #contentBox h1,
.subpage-4 #contentBox h2 {margin-top: 20px;}

#contentBox .text
{
	margin-top: 40px;
}

.buttonArea
{
	margin-top: 20px;
}

.imgFlex
{
	display: flex;
	background-color: var(--grey);
	align-items: center;
}

.textBox
{
	padding: 35px 40px;
}

.imgFlexItem
{
	width: 50%;
}

.inline
{
	width: 100%;
	margin-bottom: -8px!important;
}

#contentBox .withButton
{
	margin-top: -60px;
}

#contentBox .text:last-child
{
	margin-bottom: 5px;
}

#contentBox .text
{
	margin: 40px 0px;
}

#contentBox .text.withButton
{
	margin-top: -20px;
}

#form
{
	padding-top: 160px;
	margin-top: -160px;
}

form .row
{
	display: flex;
	flex-wrap: wrap;
	width: calc(100% + 40px);
	margin-left: -40px;
}

form .row .col-md-6
{
	width: 50%;
	padding-left: 40px;
}

form .row .col-12
{
	width: 100%;
	padding-left: 40px;
}

form h4
{
	color: var(--blue);
}
form p
{
	color: var(--blue);
}

.form-required
{
	text-align: right;
	color: var(--midgrey);
	margin: 0;
}

form label
{
	font-family: 'Corporate S Pro', sans-serif;
	color: var(--copper);
	font-weight: 500;
	display: block;
	margin-bottom: 0.2em;
}

#yform-formular-newsletter {margin-top: 20px;}

#profile_form #yform-formular-email {margin-bottom: 15px;}
#profile_form #yform-formular-email .form-control-static {color: var(--dark);}

input[type = "text"], input[type = "email"], input[type = "password"], textarea, button
{
	-webkit-appearance: none;
   	-moz-appearance: none;
   	appearance: none;
   	border-radius: 0px;
   	font-size: 1em;
   	width: 100%;
   	border: none;
   	font-family: 'Corporate S Pro', sans-serif;
   	line-height: 1.6;
   	color: var(--blue);
   	font-weight: 300;
   	background-color: var(--grey);
}

input, textarea
{
	color: var(--dark);
	margin-bottom: 1.2em;
	transition: border-color 0.2s;
}

input[type = "text"], input[type = "email"], input[type = "password"], textarea
{
	border-bottom: 1px solid var(--copper);
	padding: 0.4em;
}

input:focus, textarea:focus
{
	border-color: var(--blue);
	outline: 1px solid transparent;
}

textarea
{
	height: 12em;
	resize: none;
	margin-bottom: 1em;
}

.alert.alert-danger ul:before
{
	content: "Folgende Fehler sind aufgetreten. Bitte überprüfen Sie Ihre Eingaben.";
	font-weight: 700;
	color: red;
	display: block;
}

.alert.alert-danger
{
	margin-bottom: 1.5em;
}

.alert.alert-danger ul li
{
	color: red;
}

.alert.alert-danger ul li:before
{
	background-color: red!important;
}

.checkbox
{
	position: relative;
	padding-left: 1.3em;
}

.form-helper
{
	position: absolute;
	left: 0;
	top: 0.05em;
	display: block;
	width: 1.3em;
	height: 1.3em;
	background-color: var(--grey);
	background-size: auto 60%;
	background-position: center;
	background-repeat: no-repeat;
}

.checkbox + .checkbox
{
	margin-top: 0.8em;
}

input[type="checkbox"]
{
	display: none;
}

input[type="checkbox"]:checked + .form-helper
{
	background-image: url(checked.svg);
}

.checkbox label
{
	font-family: 'Corporate S Pro', sans-serif;
	color: var(--blue);
	font-weight: 300;
	cursor: pointer;
	text-transform: none;
	padding-left: 0.6em;
}

.form-required
{
	margin-bottom: 1em;
}

button
{
	display: inline-block;
	text-align: center;
	line-height: 1.45;
	color: #fff;
	background-color: var(--copper);
	padding: 0.5em 2.5em;
	transition: all 0.2s;
	text-decoration: none;
	margin-top: 1em;
	width: auto;
	cursor: pointer;
}


button[type="submit"] {
	margin-top: 40px;
}

button:hover
{
	background-color: var(--copper-alt);
	opacity: 1;
}

form
{
	color: var(--dark);
}

.text p a, .text ul a, form a
{
	color: var(--blue);
	text-decoration: none;
	border-bottom: 1px dashed var(--blue);
	transition: all 0.2s;
}

.text p a:hover, .text ul a:hover, form a:hover
{
	color: var(--copper);
	border-bottom: 1px solid var(--copper);
}


.text ul li, form ul li
{
	position: relative;
	list-style: none;
	padding-left: 1.1em;
}

.text ul li:before, form ul li:before
{
	content: "";
	position: absolute;
	width: 0.4em;
	height: 0.4em;
	left: 0;
	top: 0.53em;
	background-color: var(--blue);
}


#login_form_password_link,
#login_form_register_link {display: block; border:none;}

#login_form_password_link {margin-top: 20px;}

#content {position: relative;}

#intern-navigation-wrapper {padding: 0% 23%; width: 100%; top: -50px; position: absolute; margin: 0 auto; text-align: right;}

#intern-navigation {background: var(--blue); height: 50px; z-index: 2; display: inline-block;}
#intern-navigation ul li {display: inline-block;}
#intern-navigation ul li a {color: #fff; display: inline-block; text-decoration: none; line-height: 40px; padding: 5px 20px;}
#intern-navigation ul li a:hover {background: #5590b9;}

#yform-formular-activation_date,
#yform-formular-termination_time {display: none;}

#anmeldung_optin_form button,
#abmeldung_optin_form button,
#livestream_optin_form button {
margin: 30px auto 0;
display: block;
}

.alert-success {color:#2a914c; margin-bottom: 20px; font-weight: bold;}

.twoText
{
	display: flex;
	margin-left: -40px;
}

.twoTextItem
{
	width: 50%;
	margin-left: 40px;
}

.livestream-meta {
	display: flex;
	margin-top: 25px;
}

.meta-headline {
	margin-bottom: 20px;
	color: var(--blue);
font-size: 1.2em;
font-weight: 500;
line-height: 1.3;
}

#programm {
	position: relative;
	padding: 35px 40px;
	background-color: #fff;
	width: 30%;
}
#programm ul {position: relative;}

#programm ul:before {
content: "";
position: absolute;
left:6px;
height: 100%;
width: 1px;
top:0;
background: #d9d9d9;
}

#programm ul li {
	color: var(--dark);
	margin-bottom: 10px;
	padding-left: 25px;
}
#programm ul li.past {
	color: #b9b9b9;
}
#programm ul li:before {
display: none;
}
#programm ul li.active:before {
	content: "";
position: absolute;
width: 12px;
height: 12px;
left: 0;
border-radius: 50%;
top: 0;
transform: translateY(50%);
background-color: rgb(211, 57, 95);
display: block;
}

#info {
	position: relative;
	padding: 35px 40px;
	background-color: #fff;
	width: 70%;
}

#info .wrap {padding: 0 !important;}
#info .programFlex p {color: var(--dark);}
#info .programBox {padding: 0;}
#info .programTitle {margin: 0 0 20px 0;}
#info .programFlex {flex-wrap: wrap;margin-top: 0;}
#info .programFlexItem {
	width: 100%;
	margin-bottom: 20px;
  }

#info .time {display: none;}

@media all and (max-width: 480px){
	.textBox
	{
		padding: 20px 25px;
	}

	#subPage #headerTitle
	{
		padding: 70px 0 0 0 !important;
		display: block;
	}

	#subPage  #header .wrap
	{
		height: 120px!important;
	}

	#subPage #logo
	{
		height: 60px!important;
	}

	#header .wrap
	{
		height: 60px!important;
	}
}

@media all and (min-width: 481px) and (max-width: 1000px){
	#header .wrap
	{
		height: 60px;
	}
}


@media all and (max-width: 720px){
	.programFlex
	{
		display: block;
	}
	
	.programFlexItem
	{
		width: 100%;
	}

	.programTitle
	{
		padding-right: 0;
	}

	.programFlex .programFlexItem:nth-child(2)
	{
		margin-top: 20px;
	}

	.sponsor img
	{
		height: 35px!important;
	}

	.programImg
	{
		width: 80px!important;
		height: 80px!important;
	}
}

@media all and (max-width: 800px){


	.slideContent .big,
	.slideContent .small
	{
		padding: 5px 20px;
	}
	

	#contentBox .wrap
	{
		padding: 0!important;
	}

	.headerBig, .big
	{
		font-size: 1.1em!important;
	}

	.headerSmall, .small
	{
		font-size: 0.7em!important;
	}

	#logo
	{
		left: 40px!important;
	}

	#topSpace
	{
		padding-bottom: 8%!important;
	}

	h1
	{
		font-size: 1.5em!important;
	}

	h2, h4
	{
		font-size: 1.3em!important;
	}

	h3
	{
		font-size: 1.15em!important;
	}

	.programTitle
	{
		font-size: 1em!important;
	}


	.twoText
	{
		width: 100%;
		display: block;
	}

	.twoTextItem
	{
		width: 100%;
	}

	.twoText .twoTextItem:nth-child(2)
	{
		margin-top: 40px;
	}
}

@media all and (max-width: 850px){
	.imgFlex
	{
		display: block;
	}

	.imgFlexItem
	{
		width: 100%;
	}
}


@media all and (max-width: 1290px){

	.buttonFlex .flex-items-inline a {padding: 0.5em 1.5em;}
}

@media all and (max-width: 900px){

	.buttonFlex .flex-items-inline {display: block;margin: 20px 0 -20px 5px;}
	.buttonFlex .flex-items-inline a {display: block;margin:0 0 10px 0;}
}

@media all and (max-width: 1000px){
    
    
    
	.text
	{
		margin: 40px 0px;
	}

	#content
	{
		padding: 40px 0px 0px;
	}

	#content .text + .program
	{

		margin-top: 0px;
	}

	#partner
	{
		padding: 40px 0px;
	}

	#footer
	{
		padding: 25px 0px 23px;
	}

	h1
	{
		font-size: 1.7em;
	}

	h2, h4
	{
		font-size: 1.5em;
	}

	h3
	{
		font-size: 1.4em;
	}

	.programTitle
	{
		font-size: 1.1em;
	}

	.withButton, #contentBox .withButton
	{
		margin-top: -20px;
	}

	.buttonArea
	{
		margin-top: 20px;
	}

	.sponsor img
	{
		height: 40px;
	}

	#sponsors
	{
		margin-top: 25px;
	}

	.programImg
	{
		width: 85px;
		height: 85px;
		margin-right: 20px;
	}

	.headerBig, .big
	{
		font-size: 1.6em;
	}

	.headerSmall, .small
	{
		font-size: 0.9em;
	}


	#linesWhite
	{
		margin-top: -80px;
	}
}

@media all and (max-width: 1200px){


	#header .wrap
	{
		height: 75px;
	}

	#headerTitle
	{
		padding: 7px 0 0 0;
		padding-left: 220px;
	}

}

@media (max-width: 1499px) {
	#intern-navigation-wrapper {
		padding: 0 18%;
	}
	}
	@media (max-width: 1200px) {
		#intern-navigation-wrapper {
			padding: 0 10%;
		}
		}


@media (max-width: 1000px) {
#headerTitle {
  padding: 18px 0 0 220px;
}

#intern-navigation-wrapper {
	top: 0;
}

}

@media (max-width: 800px) {
#headerTitle {
  padding: 32px 0 0 190px;
}
}
@media all and (max-width: 767px){

	.slideContent {
		bottom: 30px;
	}

.livestream-meta {
flex-wrap: wrap;
  }
  #programm, #info {width: 100%; padding-left: 20px; padding-right: 20px;}
  #programm {order: 2; padding-top: 0;}
  #info {order: 1;}
}

@media all and (max-width: 650px){
    
    
	button[type="submit"] {
		width: 100%;
	}

#logo {
  left: 25px !important;
}
    
 
	form .row .col-md-6
	{
		width: 100%;
	}

	.checkbox
	{
		position: relative;
		padding-left: 1.1em;
	}

	.form-helper
	{
		top: 0.18em;
		width: 1.1em;
		height: 1.1em;
	}
    
#contentBox {
  padding: 35px 25px;
} 
    .textFlexItem {
  padding-left: 0;
}
    .textFlex {margin: 0; display: block;}
    .buttonFlex a {display: block;} 
    
}

@media (max-width: 480px) {

	.slideContent .big {
		font-size: 0.8125em !important;
	  }

	  .slideContent .small {
		font-size: 0.6em !important;
	  }

	  .programFlex p strong {
		margin-bottom: 4px;
		display: inline-block;
	  }

	  .programImgFlex {
		display: block;
	  }

	  .programImg {
		margin-bottom: 10px;
	  }

	  .programImgItem {
		padding-right: 0;
	  }

	#intern-navigation-wrapper {
		text-align: center;
		padding: 0 15px;
	  }
	#intern-navigation ul li a {
		padding: 5px;
		font-size: 16px;
	  }

	  .subpage-8 #content #contentBox {
		padding: 0;
	  }
	
	}