:root{
	--red: #810d09;
	--menu-height:74px;
	--top-height:50px;
}
/* ALLGEMEIN */
* { box-sizing:border-box; }

html,body{
	width:100%;
	height:100%;
	overscroll-behavior-y: none;
	font-size:16px;
}

body {
	border:0;
	margin:0;
	padding:0;
	font-family: 'Roboto', sans-serif;
	color:#595959;
	overflow-y: scroll;
	background-color:#ffffff;
}
#starter-container{
	max-width:1000px;
	margin:0 auto;
    position: relative;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    height: 100%;
}

#main{
    flex-grow: 1;
    overflow-y: auto;
	background-color:#ffffff;
	padding-bottom:20px;
	font-size:1rem;
	position:relative;
}

#content{
	margin:0px auto;
	width:90%;
	width:100%;
	padding:0 20px;
	padding-top:50px;
}
#content._partner{
	/*background-color:var(--red);*/
}
#content._aussteller{
	padding-top:100px;
	padding-right:35px;
}

.countdown{
	margin:20px 0;
	display:flex;
	flex-flow:row nowrap;
	width:100%;
	gap:10px;
	justify-content: space-between;
}
.countdown-item{
	background-color:#f0f0f0;
	border-radius:6px;
	padding:15px;
	display:flex;
	flex-flow:column nowrap;
	text-align:center;
	width:33.33%;
}
.countdown-number{
	font-weight:700;
	font-size:2rem;
}
.countdown-text{
	font-weight:400;
	font-size:1rem;
}

/* MENU */

#starter-menu{
	width:100%;
	position:relative;
	/* position:absolute; */
	/* bottom:0px; */
	/* height:74px; */
	z-index:999;
	background-color:var(--red);
}
.starter-menu-itemcontainer{
	width:100%;
	margin:0px auto;
	display:flex;
	flex-flow:row nowrap;
}
.starter-menu-item{
	width:20%;
	text-align:center;
	cursor:pointer;
	height:74px;
	position:relative;
	display:inline-flex;
	flex-flow:column nowrap;
    justify-content: center;
    align-items: center;
}
.starter-menu-item img{
	width: 45px;
    height: 45px;
    filter: grayscale(100%) brightness(800%);
}
.starter-menu-item a{
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
}

.starter-menu-item._active{
	background-color:#ffffff;
}
.starter-menu-item._active img{
    filter: none;
}

.starter-submenu{
	background-color:#ffffff;
	position:fixed;
	bottom:var(--menu-height);
	left:0;
	right:0;
	transform:translateY(-50px);
	opacity:0;
	transition:transform 0.4s, opacity 0.4s;
	pointer-events:none;
	z-index:1001;
	padding:20px;
	border-top:1px solid #cccccc;
	max-width:500px;
}
.starter-submenu.active{
	transform:translateY(0px);
	opacity:1;
	pointer-events:auto;
}
.starter-submenu > div{
	padding:2px 20px;
}
.starter-submenu a{
	color:var(--red);
	font-size:1.3rem;
}


/* START */
#starter-start{
	
}
#starter-start #content{
	padding-top:0;
}
#starter-start > img{
	width:100%;
	position:relative;
	z-index:6;
	/* margin-bottom:40px; */
}
#slider-wrapper{
	overflow:hidden;
	width:100%;
	position:relative;
	top:-40px;
}
#slider{
	display:flex;
	flex-flow:row nowrap;
	gap:1px;
	height:40vw;
	z-index:5;
	transition: transform 0.5s ease-in-out;
}
#slider img{
	height:100%;
	width:25%;
	flex-shrink:0;
	object-fit:cover;
}
.textinput{
	border-radius:7px;
	border:2px solid #c8c8c8;
	background-image:URL('../images/input-bg.jpg');
	background-size:100% auto;
	background-repeat:repeat-x;
	height:26px;
	padding:10px;
	font-size:1.6rem;
}

/* PAGETOP */

#pagetop{
	width:100%;
	height:var(--top-height);
	background-image:URL('../images/topbg.jpg');
	background-size:100% auto;
	background-position:center;
	position:fixed;
	z-index: 100;
	left:0;
	right:0;
}
.pagetop-logo{
	float:left;
	width:120px;
	margin-left:27px;
	margin-top:20px;
}

.pagetop-logo img{
	width:100%;
}

.pagetop-bg-content{
	float:right;
	font-size:1.6rem;
	font-weight:600;
	color:#ffffff;
	margin-right:30px;
	margin-top:12px;
}
#pagetop::after{
	display:block;
	clear:both;
	content:'';
}

/* CONTENT */
#content-scrollcontent{
	height:100%;
	overflow-y:scroll;
	overflow-x:hidden;
	width:616px;
}
.content-area{
	float:left;
	margin-top:27px;
	margin-left:27px;
}
.content-box{
	float:left;
	width:255px;
	height:195px;
	margin-bottom:30px;
}
	
#scroll-menu{
	position:fixed;
	right:0;
	top:var(--top-height);
	bottom:var(--menu-height);
	text-align:center;
	padding:10px;
	background-color:#f0f0f0;
	display:flex;
	flex-flow:column nowrap;
	justify-content: space-between;
	z-index:52;
}
.scroll-menu-item{
	font-size:1rem;
	z-index:2;
	position:relative;
	color:#333333;
}
.scroll-menu-dot{
	border-radius:50%;
	width:24px;
	height:24px;
	position:absolute;
	background-color:var(--red);
	z-index:1;
	top:0;
	left:5px;
	transition:top 0.1s;
	transform:translateY(-2px);
}
.scroll-menu-item._active{
	color:#ffffff;
	font-weight:700;
}
.scroll-menu-item.disabled{
	opacity:0.3;
}

/* Aussteller */
.filter-berufswelten{
	position:absolute;
	top:var(--top-height);
	left:0px;
	right:0px;
	background:var(--red);
	padding:10px 30px;
	color:#ffffff;
	display:none;
}
.filter-berufswelten label{
	margin-bottom:10px;
	display:flex;
	flex-flow:row nowrap;
	gap:10px;
}
.filter-berufswelten input{
	transform:scale(1.5);
}
.filter-berufswelten .berufswelt-icon{
	filter:grayscale(100%);
	opacity:0.5;
}
.filter-berufswelten input:checked + .berufswelt-icon{
	filter:grayscale(0%);
	opacity:1;
}
.filter-berufswelten .berufswelt-name{
	flex-grow:1;
}

.aussteller-favorit{
	position:absolute;
	top:-6px;
	right:5px;
}
.aussteller-favorit img{
	height:20px;
	width:auto;
}

.tabs{
	position:fixed;
	top:50px;
	left:0;
	display:flex;
	flex-flow:row nowrap;
	gap: 5px;
    padding: 10px;
    padding-right: 40px;
	width:100%;
	z-index:51;
	background-color:#ffffff;
}
.tab{
	display: inline-flex;
	padding: 5px;
	border-radius: 4px;
	background-color: #eeeeee;
	align-items: center;
	justify-content: center;
    color: var(--red);
	flex-grow: 1;
}
.tab._active{
	background-color: var(--red);
    color: #ffffff;
}

.search-icon{
	vertical-align:middle;
}
.search-options{
	vertical-align:middle;
}
.search-input{
	border:0;
	border-radius:6px;
	background-color:#ffffff;
	border:1px solid #cccccc;
	padding:4px;
	width:130px;
	margin-top:12px;
	max-width: 34vw;
}

.aussteller-char{
	color:#ffffff;
	font-weight:700;
	font-size:2.3rem;
	margin-left:-20px;
	padding:10px 20px 10px 50px;
	line-height:1;
	background-color:var(--red);
	width:120px;
	text-align:right;
	margin-bottom:20px;
}
.aussteller-box{
	padding:10px 0;
	margin-bottom:10px;
	border-bottom:1px solid #cccccc;
	display:flex;
	flex-flow:row nowrap;
	gap:20px;
	position:relative;
}
.aussteller-image{
	width:75px;
	height:75px;
	max-width: 20vw;
	/* background-color:#eeeeee; */
	flex-shrink: 0;
	background-position:center;
	background-size:contain;
	background-repeat:no-repeat;
}
.aussteller-info{
	display:flex;
	flex-flow:column nowrap;
}
.aussteller-name{
	/* min-height: 50%; */
	font-weight:600;
	padding-right:30px;
}
.aussteller-data{
	font-size:0.9rem;
}
.aussteller-berufswelt{
	display:inline-block;
	border-radius:50%;
	width:22px;
	height:22px;
	margin-right:1px;
	background-size:cover;
	background-position:center;
	background-repeat:no-repeat;
}
.aussteller-berufswelten{
	margin-top:3px;
	padding:3px 0;
}
.aussteller-berufswelt._inactive{
	opacity:0.2;
}
.berufswelt-box{
	display:flex;
	flex-flow:row nowrap;
	gap:10px;
	margin-bottom:10px;
	align-items: center;
}
.berufswelt-icon{
	width:32px;
	flex-shrink:0;
}
.berufswelt-icon img{
	width:100%;
	height:auto;
}

@media(max-height:700px){
	.scroll-menu-item{
		font-size:0.8rem;
	}
}

.partner-logos{
	text-align:center;
}
.partner-logo{
	display:inline-block;
	vertical-align:middle;
	background-color:#ffffff;
	/* margin:20px; */
	text-align:center;
	padding:20px;
	/* height:150px; */
}
.partner-logo img{
	vertical-align:middle;
	max-width:200px;
	max-height:150px;
	width:auto;
	/* max-width: calc(100% - 1px); */
}
.partner-logo:after{
	content:'';
	display:inline-block;
	height:100%;
	width:1px;
	vertical-align:middle;
}
@media(max-width:1400px){	
	.partner-logo img{
		max-width: calc(100% - 1px);
	}
}

/* Halle */

.hallenplan-container{
	margin-top:20px;
	overflow:hidden;
	min-height: calc(100vh - 240px);
}
.hallenplan{
	/* padding:20px; */
	position:relative;
	max-height: calc(100vh - 220px);
}

.halle{
	border:1px solid #cccccc;
	width:100%;
	position:relative;
}
.plan-tabs{
	display:flex;
	flex-flow:row nowrap;
	gap:5px;
	padding:10px 0 5px;
}
.plan-subtabs{
	display:flex;
	flex-flow:row wrap;
	gap:5px;
}
.plan-tabs > a{
	flex-grow:1;
}
.plan-tabs a{
	display:inline-flex;
	padding:5px;
	border-radius:4px;
	background-color:#eeeeee;
	align-items: center;
	justify-content:center;
}
.plan-tabs a.active{
	background-color:var(--red);
	color:#ffffff;
}
.plan-subtabs a{
	width:calc(50% - 5px);
}

.halle-halle{
	position:absolute;
	/* outline:2px solid hsl(2 93% 31%); */
	outline-offset: -2px;
	/* border:1px solid #ff0000; */
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	color:#ffffff;
	font-weight:700;
	font-size:2.6vw;
}

.halle-halle._color1{
	background-color:hsl(2 93% 51%);
}
.halle-halle._color2{
	background-color:hsl(2 93% 41%);
}
.halle-halle._color3{
	background-color:hsl(2 93% 31%);
}
.halle-halle._color4{
	background-color:hsl(2 93% 61%);
}
.halle-stand{
	position:absolute;
	/* outline:2px solid hsl(2 93% 31%); */
	outline-offset: -2px;
	/* border:1px solid #ff0000; */
	display:flex;
	justify-content:center;
	align-items:center;
	text-align:center;
	color:#ffffff;
	font-weight:700;
	font-size:2.6vw;
}
.halle-stand._color1{
	background-color:hsl(2 93% 51%);
}
.halle-stand._color2{
	background-color:hsl(2 93% 41%);
}
.halle-stand._color3{
	background-color:hsl(2 93% 31%);
}
.halle-stand._color4{
	background-color:hsl(2 93% 61%);
}
.halle-stand.vip::after{
	content:'';
	display:block;
	position:absolute;
	top:0;
	right:0;
	width:10px;
	height:10px;
	background-image:url('../images/star.svg');
	background-repeat:no-repeat;
	background-position:center;
	background-size:100% 100%;
}
.halle-stand._active{
	outline:2px solid #ffff00;
	z-index:6;
	box-shadow:0 0 10px rgba(0,0,0,0.2);
}
.halle-stand._active::before{
	z-index:7;
	display:block;
	content:'';
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-color:rgba(255,255,255,0.2);
}
.halle-stand.highlight{
	background-color:rgb(255, 153, 0) !important;
	animation: pulse 2s ease-in-out infinite;
	z-index:10;
}
.halle-tooltip{
	position:fixed;
	left:0;
	right:0;
	bottom:var(--menu-height);
	padding:20px;
	background-color:#ffffff;
	box-shadow:2px 2px 8px rgba(0,0,0,0.5);
	display:none;
	z-index:10;
}
.halle-tooltip-close{
	position:absolute;
	top:0;
	right:0;
}
.halle-tooltip-content{
	padding-right:20px;
}
.halle-tooltip-content .button{
	width:calc(100% + 20px);
}
.tooltip-headline{
	font-weight:700;
	font-size:1.2rem;
	margin-bottom:0.5em;
}
.tooltip-headline.vip::after{
	content:'';
	display:inline-block;
	width:22px;
	height:22px;
	margin-left:5px;
	background-image:url('../images/star.svg');
	background-repeat:no-repeat;
	background-position:center;
	background-size:100% 100%;
	vertical-align: top;
}
.halle-overlay{
	position:fixed;
	left:10px;
	right:10px;
	top:10px;
	bottom:calc(var(--menu-height) + 10px);
	padding:20px;
	background-color:#ffffff;
	display:none;
	z-index:100;
	box-shadow:0px 0px 8px rgba(0,0,0,0.8);
	border:1px solid #cccccc;
	overflow-y:auto;
}
.halle-overlay-close{
	position:fixed;
	top:0;
	right:0;
	top:10px;
	right:10px;
}
.halle-overlay-content{
	/* padding-right:40px; */
}

/* Halle END */
	
/* Profil */
.profil-block a{
	word-break: break-word;
}
.profil-headline{
	font-size:1.4rem;
	font-weight:700;
	color: var(--red);
	border-bottom:2px solid var(--red);
	margin: 1em 0;
}
.profil-toplogo{
	text-align:center;
	min-height:100px;
}
.profil-toplogo img{
	/* min-height:100px; */
	max-width:300px;
	max-height:150px;
	width:auto;
	height:auto;
}
.profil-socialmedia img{
	width:32px;
	height:auto;
}
.profil-ap{
	display:flex;
	flex-flow:row nowrap;
	gap:20px;
	margin-bottom:20px;
}
.profil-ap-text{
	word-break: break-word;
}
.profil-ap-text a{
	word-break: break-word;
}
.profil-ap-image{
	min-width:60px;
	width:25%;
	max-width: 100px;
	flex-shrink:0;
}
.profil-ap-image img{
	width:100%;
	height:auto;
}
.profil-ap-text{
	flex-grow:1;
}
.dokument-box a{
	display:flex;
	flex-flow:row nowrap;
	gap:10px;
	align-items:center;
	margin-bottom:20px;
}
.video-box a{
	display:flex;
	flex-flow:row nowrap;
	gap:10px;
	align-items:center;
	margin-bottom:20px;
}
.video-name{
	word-break:break-word;
}
.dokument-box img, .video-box img{
	width:32px;
	height:32px;
	flex-shrink:0;
}
	
/* Profil End */

/* Other screens */
.help-box{
	display:flex;
	flex-flow: row nowrap;
	gap:30px;
	margin-bottom:30px;
}
.help-icon{
	width:20%;
	max-width:50px;
	flex-shrink:0;
}
.help-icon img{
	width:100%;
	height:auto;
}
.help-text{
	flex-grow:1;
}

hr{
	height:1px;
	border:0;
	background-color:#aaaaaa;
}

.left{ 
	float:left; 
}
.right{ 
	float:right; 
}
.clear{
	clear:both;
}

.button{
	display:înline-block;
	width:100%;
	padding:10px;
	border-radius:8px;
	border:0px;
	background-color:#84943b;
	color:#ffffff;
	font-family: 'Roboto', sans-serif;
	font-size:1.2rem;
	text-align:center;
	cursor:pointer;
	margin-top:1px;
	margin-top:15px;
	transition:0.3s;
	background: #838383; /* Old browsers */
	background:#f0f0f0;
	background:#595959;
	/* color:var(--red); */
	/* border:2px solid var(--red); */
}
.button:hover{

}

h1{
	font-family: 'Roboto', sans-serif;
	font-size:2.5rem;
	padding:0px;
	margin:0px;
	border:0px;
	/* color:#ffffff; */
	color:var(--red);
	font-weight:700;
	margin-bottom:30px;
	margin-top:10px;
}
#starter-start h1{
	margin-bottom:0px;
	margin-top:0px;
}

h2{
	font-family: 'Roboto', sans-serif;
	font-size:1.8rem;
	padding:0px;
	margin:0px;
	border:0px;
	color:#4b4b4b;
	font-weight:600;
}

h3{
	font-family: 'Roboto', sans-serif;
	font-size:1.6rem;
	padding:0px;
	margin:0px;
	border:0px;
	font-weight:400;
}


.bold{
	font-weight:600;
}
.italic{
	font-style:italic; 
}

a {
	font-family: 'Roboto', sans-serif;
	text-decoration: none;
	color:var(--red);
}

a:hover {
	font-family: 'Roboto', sans-serif;
	text-decoration: none;
	color:#595959;
}

a:active {
	font-family: 'Roboto', sans-serif;
	text-decoration: none;
	color:#595959;
}


table td{
	vertical-align:top;
}

img{
	border: 0px;
}
@media(min-width:1000px){
	.halle-overlay, .halle-tooltip{
		width:1000px;
		left:calc(50% - 500px);
	}
	.halle-overlay-close, .halle-tooltip-close{
		width:1000px;
		left:calc(50% + 450px);
		right:auto;
	}
	.tabs{
		width:1000px;
		left:calc(50% - 500px);
	}
	#pagetop{
		width:1000px;
		left:calc(50% - 500px);
	}
	#scroll-menu{
		left:calc(50% + 465px);
		right:auto;
	}
	.starter-submenu{
		width:500px;
		left:auto;
		right:calc(50% - 500px);
	}
}
@media(min-width:500px){
	.starter-submenu{
		width:500px;
		left:auto;
		right:calc(50% - 500px);
	}
}
@media(max-width:400px){
	.starter-menu-item{
		height:60px;
	}
	.starter-menu-item img{
		width: 30px;
		height: 30px;
	}
	h1{
		font-size:2.0rem;
	}

	h2{
		font-size:1.6rem;
	}

	h3{
		font-size:1.4rem;
	}
	:root{
		--menu-height:60px;
	}
}
@keyframes pulse {
	0% {
	  transform: scale(1);
	}
	50% {
	  transform: scale(1.2);
	}
	100% {
	  transform: scale(1);
	}
  }