@charset "utf-8";
/* CSS Document */

body {
	color: #fff;
}

.hg, .vg {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.hg {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	background-color: #000;
	opacity: 0;
	transition: opacity 1s;
	z-index: 1;
}

.hg.im-sichtfeld {
	opacity: 1;
}

.vg {
	z-index: 50;
	background-color: transparent;
	overflow: hidden;
	display: none;
}

#hg1 {
	background-image: url(../pic/sm_01.jpg);
}

#hg2 {
	background-image: url(../pic/sm_02.jpg);
}

#hg3 {
	background-image: url(../pic/sm_03.jpg);
}

#hg4 {
	background-image: url(../pic/sm_03.jpg);
}

.abschnitt {
	position: relative;
	background-image: url(../pic/scala.svg);
	background-position: top left;
	background-repeat: repeat-y;
	opacity: 0;
	transition: opacity 1s;
	z-index: 20;
}

.abschnitt.im-sichtfeld {
	opacity: 1;
	margin-top: 0px;
}

.scrolldown {
	position: fixed;
	left: 0;
	right: 0;
	text-align: center;
	bottom: 30px;
	animation: huepf;
	animation-duration: 1s;
	animation-iteration-count: infinite;
	opacity: 0;
	transition: opacity 1s;
	z-index: 10;
}

.scrolldown.im-sichtfeld {
	opacity: 1;
}


@keyframes huepf {
  0% {
	bottom: 60px;
  }
  50% {
	bottom: 30px;
  }
  100% {
	bottom: 60px;
  }
}


.hgtrans {
	border-color: #ddd;
	background-color: rgba(0,0,0,0.75);
}

.punkt {
	position: fixed;
	width: 0px;
	height: 0px;
	z-index: 50;
}

.blink {
	border: 4px solid #F00;
	border-radius: 23px;
	width: 46px;
	height: 46px;
	margin-left: -23px;
	margin-top: -23px;
	background-color: #fff;
	animation: blinken;
	animation-duration: 2s;
	animation-iteration-count: infinite;
}

.punkt-text {
	position: absolute;
	top: -55px;
	margin-left: -10px;
	white-space: nowrap;
	color: #fff;
	opacity: 0;
	transition: opacity 1s;
	z-index: 100;
	pointer-events: none;
}

.punkt-text-center {
	margin-left: 0px;
	left: -250px;
	width: 500px;
	text-align: center;
}

.punkt-text-right {
	margin-left: 0px;
	right: -10px;
}

.punkt-text-low {
	top: 30px;
}

.punkt:hover .punkt-text {
	opacity: 1;
}

@keyframes blinken {
  0% {
	  width: 20px;
	  height: 20px;
	  margin-left: -10px;
	  margin-top: -10px;
  }
  50% {
	  width: 46px;
	  height: 46px;
	  margin-left: -23px;
	  margin-top: -23px;
  }
  100% {
	  width: 20px;
	  height: 20px;
	  margin-left: -10px;
	  margin-top: -10px;
  }
}

.video {
	position: absolute;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50%;
	z-index: 40;
}

.video-caption {
	position: relative;
	z-index: 60;
}


.fuss {
	z-index: 40;
}

.cfg-btn {
	opacity: 0.3;
}

.cfg-btn:hover {
	opacity: 1;
}

