@font-face {
font-family: "Pulp Display";
src: url("fonts/PulpDisplay-Regular.eot");
src: url("fonts/PulpDisplay-Regular.woff") format("woff"),
url("fonts/PulpDisplay-Regular.otf") format("opentype"),
url("fonts/PulpDisplay-Regular.svg") format("svg");
font-weight: normal;
font-style: normal;
}

@font-face {
font-family: "Pulp Display";
src: url("fonts/PulpDisplay-Bold.eot");
src: url("fonts/PulpDisplay-Bold.woff") format("woff"),
url("fonts/PulpDisplay-Bold.otf") format("opentype"),
url("fonts/PulpDisplay-Bold.svg") format("svg");
font-weight: bold;
font-style: normal;
}

@font-face {
font-family: "Pulp Display";
src: url("fonts/PulpDisplay-RegularItalic.eot");
src: url("fonts/PulpDisplay-RegularItalic.woff") format("woff"),
url("fonts/PulpDisplay-RegularItalic.otf") format("opentype"),
url("fonts/PulpDisplay-RegularItalic.svg") format("svg");
font-weight: normal;
font-style: italic;
}

* {
	box-sizing: border-box;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

html, body {
	overflow-x: hidden;
}

html {
  font-size: -moz-calc(4px + 0.45vw);
  font-size: -webkit-calc(4px + 0.45vw);
	font-size: calc(4px + 0.45vw);
}

body {
	font-family: 'Pulp Display', sans-serif;
  font-weight: normal;
	color: rgba(29, 40, 44, 1);
  max-width: 100%;
	position: relative;
}

.js div#preloader {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  overflow: visible;
  background: url(../images/t-preloader.gif) white center no-repeat;
}

.js div#preloader2 {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  overflow: visible;
  background: url(../images/t-preloader2.gif) white center no-repeat;
}

a {
	text-decoration: none;
	color: #000;
}

*:focus {
  outline: 0;
}

h2 {
  font-size: 1.2em;
  font-family: 'Pulp Display', sans-serif;
  font-weight: bold;
  margin: 10.5rem 0 0 0;
}

.main {
	max-width: 110rem;
	margin: 0 auto;
	padding: 0 2rem;
}

header {
	line-height: 12rem;
	height: 12rem;
  margin: 0 0 2rem 0;
}

header h1 {
	font-size: 2.5rem;
	font-family: 'Pulp Display', sans-serif;
  font-weight: bold;
  margin: -0.5rem;
}

header ul {
	list-style: none;
  display: flex;
  justify-content: space-between;
  flex-flow: row;
  object-position: center;
  padding-inline-start: 0px;
}


header li a {
	font-weight: normal;
	font-size: 1.4rem;
	letter-spacing: 1px;
  color: rgba(212, 212, 250, 1);
}

header li a:hover {
  color: rgba(247, 240, 159, 1);
  transition: .3s ease;
}

.text {
	font-size: 2rem;
	-moz-columns: 3;
	-webkit-columns: 3;
	columns: 3;
}

.text p {
	margin-bottom: 2rem;
}

.abouttext {
	hyphens: auto;
	text-align: left;
	font-size: 1.4rem;
	-moz-columns: 3;
	-webkit-columns: 3;
	columns: 3;
}

.abouttext p {
	margin-bottom: 2rem;
	margin: 0 1rem 2rem 1rem;
	-ms-word-break: break-all;
	word-break: break-all;
	word-break: break-word;
}

.starttext {
  font-size: 3rem;
  text-align: center;
}

.endtext {
	margin: 15rem 0 5rem;
  font-size: 2rem;
  text-align: left;
}

.starttext a {
  color: rgba(212, 212, 250, 1);
  font-weight: bold;
}

.starttext a:hover {
  color: rgba(247, 240, 159, 1);
  transition: .3s ease;
}

.navtextin:hover {
  color: rgba(247, 240, 159, 1);
  transition: .3s ease;
}

.move {
  margin-left: 38%;
}


/* Slider Style
--------------------------------------*/
.cd-slider {
	position: relative;
	width: 100%;
	height: 50rem;
	overflow: hidden;
	margin-bottom: 8rem;
}

.cd-slider li {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	visibility: hidden;
	transition: visibility 0s 1s;
  will-change: visibility;
	list-style: none;
}

.image {
	position: absolute;
	top: 0;
	left: 0;
	width: 70%;
	height: 100%;
	background-size: cover;
	background-position: 50% 50%;
	clip: rect(0, 80rem, 50rem, 80rem);
	transition: clip .5s cubic-bezier(0.99, 0.01, 0.45, 0.9) .5s;
  will-change: clip;
}

.content {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	padding: 2rem 0 0 2rem;
	font-size: 9rem;
	text-align: right;
}

.content h2 {
	text-overflow: ellipsis;
	overflow: hidden;
	transform: translateY(-30%);
	opacity: 0;
	transition: transform .5s, opacity .5s;
  will-change: transform, opacity;
}

.content a {
	display: inline-block;
	font-size: 1.8rem;
  font-weight: normal;
  color: rgba(212, 212, 250, 1);
	text-transform: lowercase;
	padding: 1.5rem;
	opacity: 0;
	transform: translateY(-200%);
	transition: transform .5s .1s, opacity .5s .1s;
  will-change: transform, opacity;
}

.content a:hover {
  color: rgba(247, 240, 159, 1);
}

/* Current Slide*/
li.current {
	visibility: visible;
	transition-delay: 0s;
}

li.current .image {
	clip: rect(0, 80rem, 50rem, 0);
}

li.current .content h2 {
	transform: translateY(0);
	opacity: 1;
	transition-delay: 1s;
}

li.current .content a {
	transform: translateY(-100%);
	opacity: 1;
	transition-delay: 1.1s;
}

/* Prev Slide*/
li.prev_slide .image {
	clip: rect(0, 0, 50rem, 0);
}

nav {
	position: absolute;
	bottom: 0;
	right: 0;
	background: #fff;
	z-index: 2;
}

.prev, .next, .counter {
	vertical-align: middle;
}

.prev, .next {
	position: relative;
	display: inline-block;
	height: 5rem;
	width: 5rem;
  border: 0;
  cursor: pointer;
  background: transparent;
}

.prev::before, .next::before {
	content: '';
	position: absolute;
	top: 50%;
  left: 0;
	transform: translateY(-50%);
	border: .8rem solid transparent;
	border-right-width: 1rem;
	border-right-color: #000;
	border-left-width: 0;
	width: 0;
	height: 0;
}

.prev::after, .next::after {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%) translateZ(0);
	left: .5rem;
	background: #000;
	height: .1rem;
	min-height: 1px;
	width: 2.5rem;
	transition: width .3s;
}

.next::before {
	right: 0;
  left: auto;
	border-left-width: 1rem;
	border-left-color: #000;
	border-right-width: 0;
}

.next::after {
	right: .5rem;
	left: auto;
}

.counter {
	display: inline-block;
	font-size: 4rem;
	font-family: 'Pulp Display', sans-serif;
  font-weight: normal;
	font-style: italic;
}

.counter span:last-child::before {
	content: '/';
	margin: 0 1rem;
}

.prev:hover::after, .next:hover::after {
	width: 3.5rem;
}

.contactcorrection {
  font-size: 2.5rem;
  display: flex;
	justify-content: flex-start;
  margin: .5rem;
}

.contactcorrection a {
  margin-left: 1.5rem;
}

.contactcorrection a:hover {
  color: rgba(192, 240, 228, 1);
  transition: .3s ease;
}

.cHeader {
  font-size: 2.5rem;
  margin-bottom: .8rem;
}

#phone {
  margin-left: .29rem;
}

footer {
  font-size: 10pt;
  height: 8rem;
  width: 100%;
  text-align: center;
  display: table;
  margin-top: 20vh;
	margin-left: 0;
	overflow-x: hidden;
}

footer small {
  color: #ccc;
  letter-spacing: .025rem;
  margin-bottom: 1.5rem;
  display: block;
}

footer .footer-nav a {
  text-decoration: none;
  color: rgba(212, 212, 250, 1);
  margin: 0 .5rem;
  display: inline-block;
}

footer .footer-nav a:hover {
  color: rgba(247, 240, 159, 1);
  transition: .3s ease;
}

strong {
  font-weight: bold;
}

.projectslider {
	margin: 13rem 0 15rem 0;
}

#profilimg {
	width: 21vw;
	height: auto;
	margin: 0 1rem 2rem 1rem;
}

@media screen and (max-width: 850px) {
	#scenemazwei img {
		margin: 25rem 25rem 20rem 20rem !important;
	}
}

@media screen and (max-width: 800px) {
	header ul li a{
		font-size: 9pt;
		height: 10rem;
	}

	.starttext {
	  font-size: 2.5rem !important;
	}

	.endtext {
	  font-size: 2.5rem !important;
	}

	footer {
		width: 100vw;
	}

	.abouttext {
		font-size: 11pt;
		-moz-columns: 1;
		-webkit-columns: 1;
		columns: 1;
		padding: 7rem 7rem 0rem 7rem;
	}

	.text {
		font-size: 11pt;
		-moz-columns: 1;
		-webkit-columns: 1;
		columns: 1;
		padding: 7rem 7rem 0rem 7rem;
	}

	#profilimg {
		width: 34vw;
		height: auto;
	}

	.move {
		margin-left: 34%;
	}

	.icon {
		width: 7rem !important;
	}

	#zeitzwei img {
		margin-left: 16vw !important;
		width: 150% !important;
	}

	#scenemazwei img {
		margin: 10rem 15rem !important;
	}

	#mxdzwei img {
		width: 50% !important;
		margin: 3rem 0rem 8rem 34rem !important;
	}

	img#phone {
		width: 1.7rem;
		height: auto;
	}

	img#mail {
		width: 2.4rem;
		height: auto;
	}
}

@media only screen and ( max-width: 550px ) {
	.image {
    width: 100%;
  }

	.content {
    margin-top: 65%;
    padding-right: 2rem;
  }

	.content a {
		font-size: 2.5rem;
	}

	.content h2 {
		font-size: .9em;
		margin-top: 12.5rem;
	}

  .cd-slider {
  margin-top: 5rem;
	overflow: visible;
  }

	header {
	margin-bottom: 10rem;
	}

	nav {
    left: 0;
		right: auto;
  }

  header ul {
    flex-flow: row;
    justify-content: flex-start;
  }

  header ul li {
    display: inline-grid;
		margin-right: 5rem;
  }

  header ul li a{
    display: inline-grid;
    height: 5rem;
		font-size: 2rem;
		font-weight: bold;
  }

  /*Nochmal überarbeiten!*/
  header ul li h1 {
    display: inline-block;
    float: right;
    position: absolute;
    right: 5rem;
    top: 2rem;
  }

  .contactcorrection img {
    transform: scale(.6);
  }

  .starttext {
    padding-top: 14rem;
    font-size: 3.4rem !important;
  }

	#profilimg {
		width: 75vw;
		height: auto;
	}

	#movenav {
		margin-left: -5rem;
	}

	.move {
		margin-left: 21vw;
	}

	#zeitzwei img {
		margin-left: 16vw !important;
	}

	#scenemazwei img {
		margin: 10rem 6rem 0 6rem !important;
	}

	#mxdzwei img {
		width: 100% !important;
		margin: 3rem 0rem 8rem 18rem !important;
	}

	img#phone {
		width: 3rem;
		height: auto;
	}

	img#mail {
		width: 4rem;
		height: auto;
	}

	#phone {
		margin-left: .5rem;
	}

	.icontop {
		margin-top: -.55rem;
	}

	.cHeader {
		margin-bottom: 3rem;
	}
}

#fader {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999999;
		pointer-events: none;
		background: white;
		animation-duration: 500ms;
    animation-timing-function: ease-in-out;
	}

@keyframes fade-out {
    from { opacity: 1 }
      to { opacity: 0 }
}

@keyframes fade-in {
    from { opacity: 0 }
      to { opacity: 1 }
}

#fader.fade-out {
    opacity: 0;
    animation-name: fade-out;
}

#fader.fade-in {
    opacity: 1;
    animation-name: fade-in;
}

@media only screen and ( max-width: 550px ) {
	.text {
		-moz-columns: 1 !important;
		-webkit-columns: 1 !important;
		columns: 1 !important;
		padding: 7rem 7rem 0rem 7rem;
	}

	.abouttext {
		-moz-columns: 1 !important;
		-webkit-columns: 1 !important;
		columns: 1 !important;
		padding: 7rem 7rem 0rem 7rem;
	}

	#profilimg {
		width: 55vw;
		height: auto;
		display: block;
		margin: 0 auto 7rem auto;
	}
}

/* Extra small devices (phones, 600px and down) */
@media only screen and (max-width: 600px) {
	header ul li a{
		font-size: 2.4rem;
	}
}

@media only screen and (max-width: 450px) {
	.content h2 {
		font-size: .7em;
	}

	.content a {
		font-size: 2.3rem;
	}

	header ul li a{
		font-size: 2rem;
  }

	header h1 {
		font-size: 2.5rem;
	  margin: 5rem 0 0 0;
	}
}
